getopt: merge bug fixes from glibc
[pspp] / ChangeLog
1 2010-04-13  Eric Blake  <eblake@redhat.com>
2
3         getopt: merge bug fixes from glibc
4         * lib/getopt.c (_getopt_internal_r): Use correct message for 'W;'
5         diagnostics.  Honor '+:' correctly.  Reject ';'.
6
7         getopt-posix: detect MacOS bug
8         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Reject MacOS botch of
9         optind when missing a required argument.
10         * doc/posix-functions/getopt.texi (getopt): Document the bug.
11         * doc/glibc-functions/getopt_long.texi (getopt_long): Likewise.
12         * doc/glibc-functions/getopt_long_only.texi (getopt_long_only):
13         Likewise.
14
15         getopt-posix: avoid spurious failure on Solaris
16         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Check for getopt_clip as
17         an indicator that setting optind=1 is sufficient for reset.
18
19         getopt-posix: avoid spurious failure on FreeBSD
20         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Check for optreset even
21         in POSIX mode, since the m4 test uses it.
22
23         gnulib-tool: silence warning on BSD sh
24         * gnulib-tool: Avoid leaking warning about unknown 'declare'.
25
26 2010-04-13  Jim Meyering  <meyering@redhat.com>
27
28         doc: users.txt: GNU patch now uses gnulib
29         * users.txt: Add patch.
30
31 2010-04-12  Jim Meyering  <meyering@redhat.com>
32
33         maint.mk: generate more concise timing data for syntax-check rules
34         * top/maint.mk ($(sc_z_rules_)): Remove the ":", "sc_" prefix and
35         " done" from each line that reports a syntax-check test duration.
36
37 2010-04-12  Andreas Gruenbacher  <agruen@suse.de>
38
39         git-version-gen: use "git update-index..." rather than "git status"
40         * build-aux/git-version-gen: Use git update-index --refresh, not
41         "git status".  With some versions of git, "git status" would fail
42         to update the index and result in an unwarranted "-dirty" suffix.
43
44 2010-04-11  Jim Meyering  <meyering@redhat.com>
45
46         openat: correct formatting (no semantic change)
47         * m4/openat.m4 (gl_FUNC_FCHOWNAT): Correct formatting in AC_DEFINE.
48         Suggested by Bruno Haible.
49
50 2010-04-11  Bruno Haible  <bruno@clisp.org>
51
52         Stricter declaration checking in testdirs.
53         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
54         If for_tests is true, augment AM_CPPFLAGS to define
55         GNULIB_STRICT_CHECKING.
56         * build-aux/warn-on-use.h (_GL_WARN_ON_USE, _GL_WARN_ON_USE_CXX): When
57         GNULIB_STRICT_CHECKING is defined, verify that the function is
58         declared.
59
60 2010-04-11  Paolo Bonzini  <bonzini@gnu.org>
61             Bruno Haible  <bruno@clisp.org>
62
63         libunistring: Improve configure output.
64         * m4/libunistring.m4 (gl_LIBUNISTRING): Check for libiconv first.
65         Don't say "consider installing GNU libunistring" when checking again
66         with libiconv.
67
68 2010-04-11  Bruno Haible  <bruno@clisp.org>
69
70         libunistring: Correct value of $LTLIBUNISTRING.
71         * m4/libunistring.m4 (gl_LIBUNISTRING): When it depends on libiconv,
72         correct the value of $LTLIBUNISTRING.
73
74 2010-04-11  Bruno Haible  <bruno@clisp.org>
75
76         havelib: Add static libraries to LIBS in the right order.
77         * m4/lib-link.m4 (AC_LIB_HAVE_LINKFLAGS): When $LIB[]NAME contains no
78         -l options, prepend it to $LIBS, instead of appending it to $LIBS.
79
80 2010-04-11  Bruno Haible  <bruno@clisp.org>
81
82         libunistring: Detect libunistring also when it depends on libiconv.
83         * m4/libunistring.m4 (gl_LIBUNISTRING): Unset the cached result before
84         the second AC_LIB_HAVE_LINKFLAGS invocation.
85
86 2010-04-11  James Youngman  <jay@gnu.org>
87
88         close-stream: declare local scalars to be "const"
89         * lib/close-stream.c (close_stream): Make boolean variables const
90         to document the fact that we set but do not change them.
91
92 2010-04-11  Bruno Haible  <bruno@clisp.org>
93
94         * m4/libunistring.m4 (gl_LIBUNISTRING): Fix typo in comment.
95
96 2010-04-11  Jim Meyering  <meyering@redhat.com>
97
98         maint.mk: don't include dist-check.mk
99         * top/maint.mk: Remove bogus include directive.
100
101         maint.mk: improve empty-line-at-EOF check
102         * top/maint.mk (sc_prohibit_empty_lines_at_EOF): Use Perl-based
103         solution, rather than tail+Perl-based one.  The latter would read
104         a few kilobytes from the end of each file, and did not handle empty
105         files properly.
106
107         maint.mk: print the elapsed time for each syntax-check rule
108         * top/maint.mk (sc_m_rules_): Save start time in a file.
109         (sc_z_rules_): New rules: remove temp file and print elapsed time.
110         (local-check): Interpose the .z rules
111
112 2010-04-11  Jim Meyering  <meyering@redhat.com>
113
114         maint.mk: detect_empty_lines_at_EOF_: avoid FP for an empty file
115         * top/maint.mk (detect_empty_lines_at_EOF_): Don't confuse an
116         empty file with one that ends in an empty line.
117
118 2010-04-10  Bruno Haible  <bruno@clisp.org>
119
120         mkdir: Make it work on mingw64.
121         * lib/sys_stat.in.h: Include <direct.h> together with <io.h>.
122         * lib/mkdir.c: Update comment.
123         Reported by Roman Donchenko (Роман Донченко) <dxdragon@yandex.ru>.
124
125 2010-04-10  Bruno Haible  <bruno@clisp.org>
126
127         Don't override improved macro from newer autoconf.
128         * m4/gnulib-common.m4 (AC_C_RESTRICT): Don't define for
129         autoconf >= 2.62.
130         Reported by Joel E. Denny <jdenny@clemson.edu>.
131
132 2010-04-10  Jim Meyering  <meyering@redhat.com>
133
134         maint.mk: new syntax-check rule: prohibit empty lines at end of file
135         * top/maint.mk (sc_prohibit_empty_lines_at_EOF): New rule.
136
137         maint.mk: correct a diagnostic
138         * top/maint.mk (sc_prohibit_HAVE_MBRTOWC): Fix obsolete use of $re
139         in diagnostic; now use $prohibit.
140
141 2010-04-10  Bruno Haible  <address@hidden>
142
143         fchownat: Fix a C++ test error on Solaris 8.
144         * m4/openat.m4 (gl_FUNC_FCHOWNAT): Don't set REPLACE_FCHOWNAT to 1 if
145         the function does not exist.
146
147 2010-04-10  Bruno Haible  <bruno@clisp.org>
148
149         vasnprintf: Add more tests.
150         * tests/test-vasnprintf-posix.c: Include <errno.h>.
151         (test_function): Test converting an invalid wide string.
152
153         vasnprintf: Correct handling of unconvertible wide string arguments.
154         * lib/vasnprintf.c (MAX_ROOM_NEEDED): New function, extracted from
155         VASNPRINTF.
156         (VASNPRINTF): Use it. After snprintf failed, allocate more memory only
157         if HAVE_SNPRINTF_RETVAL_C99 is false and the allocated memory is
158         smaller than the expected maximum need for the directive. Set errno to
159         EILSEQ, not EINVAL, when the directive is 'c' or 's'.
160         (local_strnlen, local_wcslen, local_wcsnlen): Update conditions.
161         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Require AC_C_INLINE and
162         gl_SNPRINTF_RETVAL_C99. Define HAVE_SNPRINTF_RETVAL_C99.
163         * modules/vasnprintf (Files): Add m4/printf.m4.
164         Reported by Jarno Rajahalme <jarno.rajahalme@nsn.com>.
165
166 2010-04-10  Bruno Haible  <bruno@clisp.org>
167
168         vasnprintf: Fix crash in %ls directive.
169         * lib/vasnprintf.c (VASNPRINTF): Don't abort when a unconvertible wide
170         string is passed as argument to %ls, with no precision and no width.
171         Reported by Jarno Rajahalme <jarno.rajahalme@nsn.com>.
172
173 2010-04-10  Bruno Haible  <bruno@clisp.org>
174
175         vasnprintf: Fix multiple test failures on mingw.
176         * lib/vasnprintf.c (SNPRINTF) [mingw]: Define to snprintf, not
177         _snprintf, or snwprintf, not _snwprintf.
178
179 2010-04-10  Bruno Haible  <bruno@clisp.org>
180
181         write: Fix a C++ test error on mingw.
182         * lib/unistd.in.h (write): Use _GL_CXXALIAS_SYS_CAST.
183
184 2010-04-10  Bruno Haible  <bruno@clisp.org>
185
186         vasnprintf test: Reduce code duplication.
187         * tests/test-vasnprintf.c (test_function): New function, extracted from
188         test_vasnprintf.
189         (test_vasnprintf, test_asnprintf): Invoke it.
190
191 2010-04-10  Bruno Haible  <bruno@clisp.org>
192
193         strnlen: Fix warning in C++ mode on MacOS X.
194         * lib/string.in.h (strnlen): Use the modern idiom.
195         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Set REPLACE_STRNLEN to 1, instead of
196         defining strnlen as a macro already in <config.h>.
197         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
198         REPLACE_STRNLEN.
199         * modules/string (Makefile.am): Substitute REPLACE_STRNLEN.
200         Reported by Jarno Rajahalme <jarno.rajahalme@nsn.com>.
201
202 2010-04-08  James Youngman  <jay@gnu.org>
203
204         * doc/manywarnings.texi (manywarnings): Add missing parenthesis in
205         the example.
206
207 2010-04-09  Jim Meyering  <meyering@redhat.com>
208
209         maint.mk: print better diagnostic when there is no $(_hv_file)
210         * top/maint.mk (sc_cross_check_PATH_usage_in_tests): Skip test and
211         announce that when $(_hv_file) (aka help-version) does not exist.
212
213         init.sh: run tr in the "C" locale to avoid multibyte interpretation
214         * tests/init.sh (rand_bytes_): Run tr in the "C" locale so it does
215         not try to interpret its random input bytes.  Jarno Rajahalme reported
216         that ./test-xalloc-die.sh would fail with "tr: Illegal byte sequence".
217         on Darwin 10.3.0 with LC_CTYPE=UTF-8.
218         (mktempd_): Likewise, just in case.
219
220         ftruncate: add two years to projected module removal date: 2012
221         * m4/ftruncate.m4: Adjust comments.
222
223         ftruncate: mark module as obsolete; even MinGW provides it, now
224         * modules/ftruncate (Status): Obsolete.
225         (Notice): Say that.
226         * doc/posix-functions/ftruncate.texi: Don't say MinGW lacks it.
227         http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/9203
228
229 2010-04-08  Bruno Haible  <bruno@clisp.org>
230
231         Fix side effects from tests-related modules.
232         * modules/dprintf-posix (Comment): New section.
233         * modules/fprintf-posix (Comment): Likewise.
234         * modules/obstack-printf-posix (Comment): Likewise.
235         * modules/printf-posix (Comment): Likewise.
236         * modules/snprintf-posix (Comment): Likewise.
237         * modules/sprintf-posix (Comment): Likewise.
238         * modules/vasnprintf-posix (Comment): Likewise.
239         * modules/vasprintf-posix (Comment): Likewise.
240         * modules/vdprintf-posix (Comment): Likewise.
241         * modules/vfprintf-posix (Comment): Likewise.
242         * modules/vprintf-posix (Comment): Likewise.
243         * modules/vsnprintf-posix (Comment): Likewise.
244         * modules/vsprintf-posix (Comment): Likewise.
245         * modules/xprintf-posix (Comment): Likewise.
246         * modules/xvasprintf-posix (Comment): Likewise.
247         * modules/ceilf-tests (Depends-on): Remove fprintf-posix.
248         * modules/floorf-tests (Depends-on): Likewise.
249         * modules/round-tests (Depends-on): Likewise.
250         * modules/roundf-tests (Depends-on): Likewise.
251         * modules/trunc-tests (Depends-on): Likewise.
252         * modules/truncf-tests (Depends-on): Likewise.
253         * tests/test-ceilf2.c (check): Don't invoke fprintf if the
254         'fprintf-posix' module is not present.
255         * tests/test-floorf2.c (check): Likewise.
256         * tests/test-trunc2.c (check): Likewise.
257         * tests/test-truncf2.c (check): Likewise.
258         * tests/test-round2.c (equal): Likewise.
259         Reported by Jarno Rajahalme <jarno.rajahalme@nsn.com>.
260
261 2010-04-07  Karl Berry  <karl@gnu.org>
262
263         * config/srclist.txt,
264         * config/srclistvars.sh,
265         * config/srclist-update: doc fixes.
266
267 2010-04-07  Jim Meyering  <meyering@redhat.com>
268
269         maint.mk: add a PATH crosschecking syntax-check rule
270         * top/maint.mk (sc_cross_check_PATH_usage_in_tests): New rule.
271         Useful if you use a test like the one in help-version (coreutils,
272         diffutils, grep, gzip) that ensures $(VERSION) matches what is
273         printed by prog --version.
274
275 2010-04-06  Bruno Haible  <bruno@clisp.org>
276
277         Fix link error on mingw.
278         * modules/unistd-c++-tests (test_unistd_c___LDADD): Add LIBSOCKET.
279         * modules/fcntl-h-c++-tests (test_fcntl_h_c___LDADD): Likewise.
280
281 2010-04-06  Bruno Haible  <bruno@clisp.org>
282
283         Assume rmdir exists.
284         * lib/rmdir.c (rpl_rmdir): Remove code that invokes the rmdir program.
285
286 2010-04-06  Giuseppe Scrivano <gscrivano@gnu.org>
287
288         doc: update users.txt
289         * users.txt: Add gcal.
290
291 2010-04-06  Jim Meyering  <meyering@redhat.com>
292
293         init.sh: simply unset TMPDIR rather than risking env -i
294         * tests/init.sh (mktempd_): Using env -i is rather harsh, and
295         although it probably works fine on all Unix-based systems, some
296         systems (Cygwin?) cannot tolerate a totally cleared environment.
297         Suggestion from Eric Blake.
298
299 2010-04-06  Jim Meyering  <meyering@redhat.com>
300
301         init.sh: portability fix: use env's POSIX-specified -i option not -u
302         * tests/init.sh (mktempd_): Use env -i and set PATH explicitly rather
303         than unportable env -u.  Solaris 5.11's env lacks support for -u.
304
305 2010-04-05  Bruno Haible  <bruno@clisp.org>
306
307         btowc: Work around Cygwin 1.7.2 bug.
308         * m4/btowc.m4 (gl_FUNC_BTOWC): Set REPLACE_BTOWC to 1 if the function
309         does not map NUL to 0.
310         * doc/posix-functions/btowc.texi: Mention the Cygwin bug.
311
312 2010-04-05  Bruno Haible  <bruno@clisp.org>
313
314         Make the multithread modules work on Cygwin 1.7.2.
315         * m4/threadlib.m4 (gl_THREADLIB_BODY): Improve the test whether
316         imported symbols can be declared weak, so that it returns "no" on
317         Cygwin 1.7.2.
318
319 2010-04-05  Bruno Haible  <bruno@clisp.org>
320
321         Use the module 'strncat'.
322         * modules/unistr/u8-strncat (Depends-on): Add strncat.
323
324         Tests for module 'strncat'.
325         * modules/strncat-tests: New file.
326         * tests/test-strncat.c: New file.
327
328         New module 'strncat'.
329         * lib/string.in.h (strncat): New declaration.
330         * lib/strncat.c: New file, based on lib/unistr/u-strncat.h.
331         * m4/strncat.m4: New file, based on m4/memchr.m4.
332         * modules/strncat: New file.
333         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Also check whether strncat
334         is declared.
335         (gl_HEADER_STRING_H_DEFAULTS): Initialize GNULIB_STRNCAT,
336         REPLACE_STRNCAT.
337         * modules/string (Makefile.am): Substitute GNULIB_STRNCAT,
338         REPLACE_STRNCAT.
339         * doc/posix-functions/strncat.texi: Mention the Solaris bug and the new
340         module.
341         * tests/test-string-c++.cc: Check signature of strncat.
342
343 2010-04-05  Jim Meyering  <meyering@redhat.com>
344
345         xstrtoumax-tests: convert to use init.sh
346         * modules/xstrtoumax-tests (Files): Add tests/init.sh.
347         * tests/test-xstrtoumax.sh: Invoke "$srcdir/init.sh" and path_prepend_.
348         Use Exit, not exit.
349         Remove uses of $EXEEXT and "./" to run a program in the current dir.
350
351         xstrtoimax-tests: convert to use init.sh
352         * modules/xstrtoimax-tests (Files): Add tests/init.sh.
353         * tests/test-xstrtoimax.sh: Invoke "$srcdir/init.sh" and path_prepend_.
354         Use Exit, not exit.
355         Remove uses of $EXEEXT and "./" to run a program in the current dir.
356
357 2010-04-05  Bruno Haible  <bruno@clisp.org>
358
359         sys_socket: Avoid #define replacements in C++ mode.
360         * lib/sys_socket.in.h (close, gethostname, select): In C++, attach a
361         warning to the function if possible, rather than #defining the symbol
362         to a dysfunctional alias.
363
364 2010-04-05  Bruno Haible  <bruno@clisp.org>
365
366         fseeko: Fix C++ test error on mingw.
367         * m4/fseeko.m4 (gl_HAVE_FSEEKO): New macro, extracted from
368         gl_FUNC_FSEEKO.
369         (gl_REPLACE_FSEEKO): Also set REPLACE_FSEEKO if appropriate.
370         (gl_FUNC_FSEEKO): Require gl_HAVE_FSEEKO. Update.
371         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Don't fiddle with internals of the
372         fseeko module. Instead, invoke gl_REPLACE_FSEEKO.
373
374 2010-04-05  Bruno Haible  <bruno@clisp.org>
375
376         duplocale: Improve test output.
377         * tests/test-duplocale.c (main): Print reason for skipped test.
378
379 2010-04-05  Bruno Haible  <bruno@clisp.org>
380
381         Assume rmdir exists.
382         * m4/rmdir.m4 (gl_FUNC_RMDIR): Remove test whether rmdir exists.
383         * doc/posix-functions/rmdir.texi: Remove mention of "old platforms".
384
385 2010-04-05  Bruno Haible  <bruno@clisp.org>
386
387         Fix link error on Solaris 8 with cc.
388         * modules/pty-c++-tests (test_pty_c___LDADD): Add LIBINTL.
389
390 2010-04-05  Bruno Haible  <bruno@clisp.org>
391
392         frexpl: Fix a C++ test error on Solaris 8 and Cygwin.
393         * lib/math.in.h (frexpl): Fix condition on _GL_CXXALIASWARN invocation.
394
395 2010-04-05  Bruno Haible  <bruno@clisp.org>
396
397         vasprintf: Update documentation.
398         * doc/glibc-functions/asprintf.texi: Mention the 'vasprintf' module.
399
400 2010-04-05  Bruno Haible  <bruno@clisp.org>
401
402         ptsname: Improve test.
403         * tests/test-ptsname.c (main): Also try the various master names of BSD
404         systems.
405
406 2010-04-05  Bruno Haible  <bruno@clisp.org>
407
408         memchr: Avoid a possible C++ test error.
409         * lib/string.in.h (memchr): Provide declaration if function is missing.
410         * m4/memchr.m4 (gl_FUNC_MEMCHR): If the function is missing, set
411         HAVE_MEMCHR to 0, not REPLACE_MEMCHR to 1.
412         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize HAVE_MEMCHR.
413         * modules/string (Makefile.am): Substitute HAVE_MEMCHR.
414
415 2010-04-05  Bruno Haible  <bruno@clisp.org>
416
417         strtok_r: Improve idiom.
418         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Invoke gl_PREREQ_STRDUP only when
419         AC_LIBOBJ is used.
420
421 2010-04-05  Bruno Haible  <bruno@clisp.org>
422
423         strdup: Improve idiom.
424         * m4/strdup.m4 (gl_FUNC_STRDUP): Invoke gl_PREREQ_STRDUP only when
425         AC_LIBOBJ is used.
426         (gl_FUNC_STRDUP_POSIX): When strdup is missing and malloc is not POSIX
427         compliant, don't set REPLACE_STRDUP to 1. Invoke gl_PREREQ_STRDUP only
428         when AC_LIBOBJ is used.
429
430 2010-04-05  Bruno Haible  <bruno@clisp.org>
431
432         mbsinit, mbrtowc, wcrtomb: Improve idioms.
433         * m4/mbsinit.m4 (gl_FUNC_MBSINIT): When the function does not exist,
434         don't set REPLACE_MBSINIT to 1.
435         * m4/mbrtowc.m4 (gl_FUNC_MBRTOWC): When the function does not exist,
436         don't set REPLACE_MBRTOWC to 1.
437         * m4/mbsrtowcs.m4 (gl_FUNC_MBSRTOWCS): When the function does not
438         exist, don't set REPLACE_MBSRTOWCS to 1.
439         * m4/mbsnrtowcs.m4 (gl_FUNC_MBSNRTOWCS): When the function does not
440         exist, don't set REPLACE_MBSNRTOWCS to 1.
441         * m4/wcrtomb.m4 (gl_FUNC_WCRTOMB): When the function does not exist,
442         don't set REPLACE_WCRTOMB to 1.
443         * m4/wcsrtombs.m4 (gl_FUNC_WCSRTOMBS): When the function does not
444         exist, don't set REPLACE_WCSRTOMBS to 1.
445         * m4/wcsnrtombs.m4 (gl_FUNC_WCSNRTOMBS): When the function does not
446         exist, don't set REPLACE_WCSNRTOMBS to 1.
447
448 2010-04-05  Bruno Haible  <bruno@clisp.org>
449
450         ldexpl: Improve idiom.
451         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): When the function is not declared,
452         make sure to set HAVE_DECL_LDEXPL to 0.
453
454 2010-04-05  Jim Meyering  <meyering@redhat.com>
455
456         xstrtol-tests: convert to use init.sh
457         * modules/xstrtol-tests (Files): Add tests/init.sh.
458         * tests/test-xstrtol.sh: Invoke "$srcdir/init.sh" and path_prepend_.
459         Use Exit, not exit.
460         Remove uses of $EXEEXT and "./" to run a program in the current dir.
461
462         atexit-tests: convert to use init.sh
463         * modules/atexit-tests (Files): Add tests/init.sh.
464         * tests/test-atexit.sh: Invoke "$srcdir/init.sh" and path_prepend_.
465         Use Exit, not exit.
466         Remove uses of $EXEEXT and "./" to run a program in the current dir.
467
468         init.sh: fix typo
469         * tests/init.sh: Restore omitted ":" before stderr_fileno_ initialization.
470
471         init.sh: make it easier for a test script to write to the tty, ...
472         when using automake's parallel-tests mode.
473         * tests/init.sh (stderr_fileno_): Define overridable variable.
474         (warn_): New function, to use it.
475         (fail_, skip_, framework_failure_): Use warn_.
476
477 2010-04-04  Bruno Haible  <bruno@clisp.org>
478
479         btowc: Avoid warning.
480         * lib/btowc.c: Include <stdlib.h>.
481         Reported by Hauke Fath <hauke@espresso.rhein-neckar.de>.
482
483 2010-04-04  Hauke Fath  <hauke@espresso.rhein-neckar.de>  (tiny change)
484             Bruno Haible  <bruno@clisp.org>
485
486         wchar: Port to NetBSD 1.5.
487         * lib/wchar.in.h (WEOF): Provide fallback also when wint_t exists.
488         * lib/wctype.in.h (WEOF): Likewise.
489
490 2010-04-04  Hauke Fath  <hauke@espresso.rhein-neckar.de>  (tiny change)
491             Bruno Haible  <bruno@clisp.org>
492
493         Port extended stdio to NetBSD 1.5.
494         * lib/stdio-impl.h [NetBSD]: Include <sys/param.h>.
495         (struct __sfileext, fp_ub): Define the "old way" for NetBSD 1.5Z and
496         older.
497
498 2010-04-04  Bruno Haible  <bruno@clisp.org>
499
500         string: Remove unused substitution.
501         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Don't initialize
502         HAVE_DECL_STRERROR.
503         * modules/string (Makefile.am): Don't substitute HAVE_DECL_STRERROR.
504
505 2010-04-04  Bruno Haible  <bruno@clisp.org>
506
507         strtod: Avoid a possible C++ test error.
508         * m4/strtod.m4 (gl_FUNC_STRTOD): When setting HAVE_STRTOD to 0, don't
509         set REPLACE_STRTOD.
510
511 2010-04-04  Bruno Haible  <bruno@clisp.org>
512
513         strerror: Update documentation.
514         * doc/posix-functions/strerror.texi: Remove mention of old platforms.
515
516 2010-04-04  Bruno Haible  <bruno@clisp.org>
517
518         stdio: Fix some C++ test errors on Solaris 8 with GCC.
519         * lib/stdio.in.h (vdprintf, vfprintf, vprintf, vsprintf): Use
520         _GL_CXXALIAS_SYS_CAST.
521
522 2010-04-04  Bruno Haible  <bruno@clisp.org>
523
524         frexpl: Fix a C++ test error on Solaris 8 and Cygwin.
525         * m4/frexpl.m4 (gl_FUNC_FREXPL, gl_FUNC_FREXPL_NO_LIBM): When the
526         function is not declared, set HAVE_DECL_FREXPL to 0, instead of setting
527         REPLACE_FREXPL to 1.
528         * doc/posix-functions/frexpl.texi: Update documentation.
529
530 2010-04-04  Bruno Haible  <bruno@clisp.org>
531
532         math: Fix some C++ test errors on Solaris 8 and Cygwin.
533         * lib/math.in.h (cosl, logl, sinl): Use simpler idiom.
534
535 2010-04-04  Bruno Haible  <bruno@clisp.org>
536
537         Implement nanosleep for native Windows.
538         * lib/nanosleep.c (nanosleep): New implementation for native Windows.
539
540 2010-04-04  Bruno Haible  <bruno@clisp.org>
541
542         math: Fix some C++ test errors on Solaris 8.
543         * lib/math.in.h (truncf, trunc): Use simpler idiom.
544
545 2010-04-04  Bruno Haible  <bruno@clisp.org>
546
547         math: Fix some C++ test errors on Cygwin.
548         * lib/math.in.h (ceilf, ceill, floorf, floorl, roundf, round, roundl,
549         truncl): Provide declaration if the system does not have it.
550         * m4/ceilf.m4 (gl_FUNC_CEILF): If the function is not declared, set
551         HAVE_DECL_CEILF to 0, not REPLACE_CEILF to 1.
552         * m4/ceill.m4 (gl_FUNC_CEILL): If the function is not declared, set
553         HAVE_DECL_CEILL to 0, not REPLACE_CEILL to 1.
554         * m4/floorf.m4 (gl_FUNC_FLOORF): If the function is not declared, set
555         HAVE_DECL_FLOORF to 0, not REPLACE_FLOORF to 1.
556         * m4/floorl.m4 (gl_FUNC_FLOORL): If the function is not declared, set
557         HAVE_DECL_FLOORL to 0, not REPLACE_FLOORL to 1.
558         * m4/round.m4 (gl_FUNC_ROUND): If the function is not declared, set
559         HAVE_DECL_ROUND to 0, not REPLACE_ROUND to 1.
560         * m4/roundf.m4 (gl_FUNC_ROUNDF): If the function is not declared, set
561         HAVE_DECL_ROUNDF to 0, not REPLACE_ROUNDF to 1.
562         * m4/roundl.m4 (gl_FUNC_ROUNDL): If the function is not declared, set
563         HAVE_DECL_ROUNDL to 0, not REPLACE_ROUNDL to 1.
564         * m4/truncl.m4 (gl_FUNC_TRUNCL): If the function is not declared, set
565         HAVE_DECL_TRUNCL to 0, not REPLACE_TRUNCL to 1.
566         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize HAVE_DECL_CEILF,
567         HAVE_DECL_CEILL, HAVE_DECL_FLOORF, HAVE_DECL_FLOORL, HAVE_DECL_ROUND,
568         HAVE_DECL_ROUNDF, HAVE_DECL_ROUNDL, HAVE_DECL_TRUNCL.
569         * modules/math (Makefile.am): Substitute HAVE_DECL_CEILF,
570         HAVE_DECL_CEILL, HAVE_DECL_FLOORF, HAVE_DECL_FLOORL, HAVE_DECL_ROUND,
571         HAVE_DECL_ROUNDF, HAVE_DECL_ROUNDL, HAVE_DECL_TRUNCL.
572
573 2010-04-04  Bruno Haible  <bruno@clisp.org>
574
575         * m4/ceilf.m4 (gl_FUNC_CEILF): Remove redundant AC_SUBST invocation.
576         * m4/ceill.m4 (gl_FUNC_CEILL): Likewise.
577         * m4/floorf.m4 (gl_FUNC_FLOORF): Likewise.
578         * m4/floorl.m4 (gl_FUNC_FLOORL): Likewise.
579         * m4/isfinite.m4 (gl_ISFINITE): Likewise.
580         * m4/isinf.m4 (gl_ISINF): Likewise.
581         * m4/truncl.m4 (gl_FUNC_TRUNCL): Likewise.
582
583 2010-04-04  Bruno Haible  <bruno@clisp.org>
584
585         * m4/trunc.m4 (gl_FUNC_TRUNC): Remove redundant AC_SUBST invocation.
586         * m4/truncf.m4 (gl_FUNC_TRUNCF): Likewise.
587
588 2010-04-04  Bruno Haible  <bruno@clisp.org>
589
590         * m4/tmpfile.m4 (gl_FUNC_TMPFILE): Renamed from gl_TMPFILE.
591         * modules/tmpfile (configure.ac): Update.
592
593         tmpfile: Fix C++ test error on mingw.
594         * lib/stdio.in.h (tmpfile): New declaration.
595         * m4/tmpfile.m4 (gl_TMPFILE): Require gl_STDIO_H_DEFAULTS. Set
596         REPLACE_TMPFILE instead of defining tmpfile as a macro in config.h.
597         * modules/tmpfile (Depends-on): Add stdio.
598         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
599         * m4/stdio_h.m4 (gl_STDIO_H): Also check whether tmpfile is declared.
600         (gl_STDIO_H_DEFAULTS): Initialize GNULIB_TMPFILE and REPLACE_TMPFILE.
601         * modules/stdio (Makefile.am): Substitute GNULIB_TMPFILE and
602         REPLACE_TMPFILE.
603         * tests/test-stdio-c++.cc (tmpfile): Verify signature.
604
605 2010-04-04  Bruno Haible  <bruno@clisp.org>
606
607         ioctl: Fix C++ test error on mingw.
608         * lib/ioctl.c (ioctl): Renamed from rpl_ioctl.
609         * lib/sys_ioctl.in.h (ioctl): When SYS_IOCTL_H_HAVE_WINSOCK2_H is 1,
610         use _GL_FUNCDECL_SYS, not _GL_FUNCDECL_RPL.
611
612 2010-04-03  Bruno Haible  <bruno@clisp.org>
613
614         wcwidth: Fix C++ test error on mingw.
615         * lib/wcwidth.c (wcwidth): Renamed from rpl_wcwidth.
616         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): If the wcwidth function does not
617         exist, don't set REPLACE_WCWIDTH. Instead, rely on HAVE_DECL_WCWIDTH.
618
619 2010-04-03  Bruno Haible  <bruno@clisp.org>
620
621         nanosleep: Fix C++ test error on mingw.
622         * lib/nanosleep.c (nanosleep): Renamed from rpl_nanosleep.
623         * lib/time.in.h (nanosleep): Use modern idiom.
624         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): When the system does not have a
625         nanosleep function, set HAVE_NANOSLEEP to 0, instead of setting
626         REPLACE_NANOSLEEP to 1.
627         * m4/time_h.m4 (gl_HEADER_TIME_H_DEFAULTS): Initialize HAVE_NANOSLEEP.
628         * modules/time (Makefile.am): Substitute HAVE_NANOSLEEP.
629
630 2010-04-03  Bruno Haible  <bruno@clisp.org>
631
632         strptime: Fix C++ test error on mingw.
633         * lib/time.in.h (strptime): Use HAVE_STRPTIME, not REPLACE_STRPTIME.
634         * m4/strptime.m4 (gl_FUNC_STRPTIME): Set HAVE_STRPTIME, not
635         REPLACE_STRPTIME. Invoke gl_PREREQ_STRPTIME.
636         (gl_PREREQ_STRPTIME): New macro, extracted from gl_FUNC_STRPTIME.
637         * m4/time_h.m4 (gl_HEADER_TIME_H_DEFAULTS): Initialize HAVE_STRPTIME,
638         not REPLACE_STRPTIME.
639         * modules/time (Makefile.am): Substitute HAVE_STRPTIME, not
640         REPLACE_STRPTIME.
641
642 2010-04-03  Bruno Haible  <bruno@clisp.org>
643
644         timegm: Fix C++ test error on mingw.
645         * lib/time.in.h (timegm): Use modern idiom.
646         * m4/timegm.m4 (gl_FUNC_TIMEGM): When timegm does not exist, set
647         HAVE_TIMEGM to 0, not REPLACE_TIMEGM to 1.
648         * m4/time_h.m4 (gl_HEADER_TIME_H_DEFAULTS): Initialize HAVE_TIMEGM.
649         * modules/time (Makefile.am): Substitute HAVE_TIMEGM.
650
651 2010-04-03  Bruno Haible  <bruno@clisp.org>
652
653         timegm: Assume declaration if function exists.
654         * m4/timegm.m4 (gl_FUNC_TIMEGM): Assume timegm is declared if and only
655         if it exists. Don't clobber ac_cv_func_timegm.
656
657 2010-04-03  Bruno Haible  <bruno@clisp.org>
658
659         time_r: Fix C++ test error on mingw.
660         * lib/time.in.h (localtime_r, gmtime_r): Use modern idiom.
661         * m4/time_r.m4 (gl_TIME_R): When localtime_r does not exist, set
662         HAVE_LOCALTIME_R to 0, not REPLACE_LOCALTIME_R to 1.
663         * m4/time_h.m4 (gl_HEADER_TIME_H_DEFAULTS): Initialize HAVE_LOCALTIME_R.
664         * modules/time (Makefile.am): Substitute HAVE_LOCALTIME_R.
665
666 2010-04-03  Bruno Haible  <bruno@clisp.org>
667
668         time_r: Minor updates.
669         * modules/time_r (Description): Mention the provided functions.
670         * lib/time_r.c: Don't include <string.h>.
671         * doc/posix-functions/gmtime_r.texi: Mention the 'time_r' module.
672         * doc/posix-functions/localtime_r.texi: Likewise.
673
674 2010-04-03  Bruno Haible  <bruno@clisp.org>
675
676         time: Fix regression introduced on 2010-03-08.
677         * m4/time_h.m4 (gl_TIME_MODULE_INDICATOR): Require
678         gl_HEADER_TIME_H_DEFAULTS, not gl_HEADER_STRING_H_DEFAULTS.
679
680 2010-04-03  Jim Meyering  <meyering@redhat.com>
681
682         maint.mk: don't silently disable project-specific syntax-check rules
683         * top/maint.mk (_prohibit_regexp): Define, to help people realize
684         that they need to convert their project-specific syntax-check rules
685         to use the new _sc_search_regexp.
686
687 2010-04-03  Bruno Haible  <bruno@clisp.org>
688
689         fchdir: Fix regression introduced on 2010-03-08.
690         * lib/unistd.in.h (fchdir): Fix declaration.
691         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Set HAVE_FCHDIR, not REPLACE_FCHDIR.
692         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize HAVE_FCHDIR, not
693         REPLACE_FCHDIR.
694         * modules/unistd (Makefile.am): Substitute HAVE_FCHDIR, not
695         REPLACE_FCHDIR.
696
697 2010-04-03  Bruno Haible  <bruno@clisp.org>
698
699         getpagesize: Fix C++ test error on mingw.
700         * lib/unistd.in.h (getpagesize): Don't use _GL_CXXALIASWARN if the
701         system does not declare the function.
702         * m4/getpagesize.m4 (gl_FUNC_GETPAGESIZE): Also check whether it's
703         declared.
704         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
705         HAVE_DECL_GETPAGESIZE.
706         * modules/unistd (Makefile.am): Substitute HAVE_DECL_GETPAGESIZE.
707
708 2010-04-03  Bruno Haible  <bruno@clisp.org>
709
710         stdio: Make C++ tests work on mingw.
711         * lib/stdio.in.h (getline): Don't use _GL_CXXALIASWARN if the system
712         does not declare the function.
713
714 2010-04-03  Bruno Haible  <bruno@clisp.org>
715
716         ftello: Fix C++ test error on mingw.
717         * lib/stdio.in.h (ftello): Use modern idiom.
718         * lib/ftello.c (ftello): Renamed from rpl_ftello.
719         * m4/ftello.m4 (gl_FUNC_FTELLO): Distinguish the case that the function
720         is missing and that it needs to be replaced.
721         (gl_REPLACE_FTELLO): Don't set REPLACE_FTELLO here.
722         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize HAVE_FTELLO.
723         * modules/stdio (Makefile.am): Substitute HAVE_FTELLO.
724
725 2010-04-03  Bruno Haible  <bruno@clisp.org>
726
727         fseeko: Fix C++ test error on mingw.
728         * lib/stdio.in.h (fseeko): Use modern idiom.
729         * lib/fseeko.c (fseeko): Renamed from rpl_fseeko.
730         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Distinguish the case that the function
731         is missing and that it needs to be replaced.
732         (gl_REPLACE_FSEEKO): Don't set REPLACE_FSEEKO here.
733         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize HAVE_FSEEKO.
734         * modules/stdio (Makefile.am): Substitute HAVE_FSEEKO.
735
736 2010-04-03  Bruno Haible  <bruno@clisp.org>
737
738         mkstemp: Fix C++ test error on mingw.
739         * lib/stdlib.in.h (mkstemp): Use modern idiom.
740         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Distinguish the case that the
741         function is missing and that it needs to be replaced.
742         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize HAVE_MKSTEMP.
743         * modules/stdlib (Makefile.am): Substitute HAVE_MKSTEMP.
744
745 2010-04-03  Bruno Haible  <bruno@clisp.org>
746
747         stpncpy: Fix C++ test error on mingw.
748         * lib/string.in.h (stpncpy): Use modern idiom.
749         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Distinguish the case that the
750         function is missing and that it needs to be replaced.
751         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
752         REPLACE_STPNCPY.
753         * modules/string (Makefile.am): Substitute REPLACE_STPNCPY.
754
755 2010-04-03  Bruno Haible  <bruno@clisp.org>
756
757         sys_stat: Fix C++ test error on mingw.
758         * build-aux/c++defs.h (_GL_CXXALIAS_RPL_CAST_1): New macro.
759         * lib/sys_stat.in.h (lchmod): Use it instead of _GL_CXXALIAS_RPL_1.
760
761 2010-04-03  Bruno Haible  <bruno@clisp.org>
762
763         pty: Update doc.
764         * doc/glibc-headers/pty.texi: Mention changes done since 2010-03-18.
765
766 2010-04-03  Bruno Haible  <bruno@clisp.org>
767
768         unistd: Fix C++ test error on mingw.
769         * lib/unistd.in.h (getcwd): Use _GL_CXXALIAS_SYS_CAST.
770
771 2010-04-03  Bruno Haible  <bruno@clisp.org>
772
773         Update doc regarding mingw.
774         * doc/glibc-functions/openpty.texi: Update regarding mingw.
775         * doc/glibc-functions/login_tty.texi: Likewise.
776         * doc/glibc-functions/forkpty.texi: Likewise.
777
778 2010-04-03  Bruno Haible  <bruno@clisp.org>
779
780         stdlib: Avoid compilation failure of c-strtold on mingw.
781         * lib/stdlib.in.h: Don't include <unistd.h> on native Windows systems.
782
783 2010-04-03  Bruno Haible  <bruno@clisp.org>
784
785         locale: Make C++ tests work on Cygwin and mingw.
786         * lib/locale.in.h (duplocale): Don't use _GL_CXXALIASWARN if gnulib
787         cannot provide the function.
788         Reported by Simon Josefsson.
789
790 2010-04-03  Bruno Haible  <bruno@clisp.org>
791
792         localename: Port to MacOS X 10.6.
793         * lib/localename.c (gl_locale_name_thread_unsafe): On MacOS X, try the
794         memory layout of the locales in MacOS X 10.6 as well.
795         Reported by Panu Kekäläinen <panu@kekalainen.eu>.
796
797 2010-04-02  Bruno Haible  <bruno@clisp.org>
798
799         gnulib-tool: Ensure that long-running tests are executed last.
800         * gnulib-tool (func_emit_tests_Makefile_am): Emit the code for long-
801         running tests after the one for the other tests.
802
803 2010-04-02  Bruno Haible  <bruno@clisp.org>
804
805         gnulib-tool: Ensure the tests in the main directory are executed first.
806         * gnulib-tool (func_emit_tests_Makefile_am): Initialize SUBDIRS to
807         start with the current directory.
808
809 2010-04-02  Bruno Haible  <bruno@clisp.org>
810
811         Tests for module 'havelib', moved here from GNU gettext.
812         * modules/havelib-tests: New file, from gettext/autoconf-lib-link with
813         modifications.
814         * tests/havelib/README: New file, from gettext/autoconf-lib-link.
815         * tests/havelib/Makefile.am: New file, from gettext/autoconf-lib-link
816         with modifications.
817         * tests/havelib/rpath-1: New file, from gettext/autoconf-lib-link with
818         modifications.
819         * tests/havelib/rpath-1a: New file, from gettext/autoconf-lib-link.
820         * tests/havelib/rpath-1b: New file, from gettext/autoconf-lib-link.
821         * tests/havelib/rpath-2_a: New file, from gettext/autoconf-lib-link
822         with modifications.
823         * tests/havelib/rpath-2_b: New file, from gettext/autoconf-lib-link
824         with modifications.
825         * tests/havelib/rpath-2aaa: New file, from gettext/autoconf-lib-link.
826         * tests/havelib/rpath-2aab: New file, from gettext/autoconf-lib-link.
827         * tests/havelib/rpath-2aac: New file, from gettext/autoconf-lib-link.
828         * tests/havelib/rpath-2aad: New file, from gettext/autoconf-lib-link.
829         * tests/havelib/rpath-2aba: New file, from gettext/autoconf-lib-link.
830         * tests/havelib/rpath-2abb: New file, from gettext/autoconf-lib-link.
831         * tests/havelib/rpath-2abc: New file, from gettext/autoconf-lib-link.
832         * tests/havelib/rpath-2abd: New file, from gettext/autoconf-lib-link.
833         * tests/havelib/rpath-2baa: New file, from gettext/autoconf-lib-link.
834         * tests/havelib/rpath-2bab: New file, from gettext/autoconf-lib-link.
835         * tests/havelib/rpath-2bac: New file, from gettext/autoconf-lib-link.
836         * tests/havelib/rpath-2bad: New file, from gettext/autoconf-lib-link.
837         * tests/havelib/rpath-2bba: New file, from gettext/autoconf-lib-link.
838         * tests/havelib/rpath-2bbb: New file, from gettext/autoconf-lib-link.
839         * tests/havelib/rpath-2bbc: New file, from gettext/autoconf-lib-link.
840         * tests/havelib/rpath-2bbd: New file, from gettext/autoconf-lib-link.
841         * tests/havelib/rpath-3_a: New file, from gettext/autoconf-lib-link
842         with modifications.
843         * tests/havelib/rpath-3_b: New file, from gettext/autoconf-lib-link
844         with modifications.
845         * tests/havelib/rpath-3aaa: New file, from gettext/autoconf-lib-link.
846         * tests/havelib/rpath-3aab: New file, from gettext/autoconf-lib-link.
847         * tests/havelib/rpath-3aac: New file, from gettext/autoconf-lib-link.
848         * tests/havelib/rpath-3aad: New file, from gettext/autoconf-lib-link.
849         * tests/havelib/rpath-3aae: New file, from gettext/autoconf-lib-link.
850         * tests/havelib/rpath-3aaf: New file, from gettext/autoconf-lib-link.
851         * tests/havelib/rpath-3aag: New file, from gettext/autoconf-lib-link.
852         * tests/havelib/rpath-3aah: New file, from gettext/autoconf-lib-link.
853         * tests/havelib/rpath-3aba: New file, from gettext/autoconf-lib-link.
854         * tests/havelib/rpath-3abb: New file, from gettext/autoconf-lib-link.
855         * tests/havelib/rpath-3abc: New file, from gettext/autoconf-lib-link.
856         * tests/havelib/rpath-3abd: New file, from gettext/autoconf-lib-link.
857         * tests/havelib/rpath-3abe: New file, from gettext/autoconf-lib-link.
858         * tests/havelib/rpath-3abf: New file, from gettext/autoconf-lib-link.
859         * tests/havelib/rpath-3abg: New file, from gettext/autoconf-lib-link.
860         * tests/havelib/rpath-3abh: New file, from gettext/autoconf-lib-link.
861         * tests/havelib/rpath-3baa: New file, from gettext/autoconf-lib-link.
862         * tests/havelib/rpath-3bab: New file, from gettext/autoconf-lib-link.
863         * tests/havelib/rpath-3bac: New file, from gettext/autoconf-lib-link.
864         * tests/havelib/rpath-3bad: New file, from gettext/autoconf-lib-link.
865         * tests/havelib/rpath-3bae: New file, from gettext/autoconf-lib-link.
866         * tests/havelib/rpath-3baf: New file, from gettext/autoconf-lib-link.
867         * tests/havelib/rpath-3bag: New file, from gettext/autoconf-lib-link.
868         * tests/havelib/rpath-3bah: New file, from gettext/autoconf-lib-link.
869         * tests/havelib/rpath-3bba: New file, from gettext/autoconf-lib-link.
870         * tests/havelib/rpath-3bbb: New file, from gettext/autoconf-lib-link.
871         * tests/havelib/rpath-3bbc: New file, from gettext/autoconf-lib-link.
872         * tests/havelib/rpath-3bbd: New file, from gettext/autoconf-lib-link.
873         * tests/havelib/rpath-3bbe: New file, from gettext/autoconf-lib-link.
874         * tests/havelib/rpath-3bbf: New file, from gettext/autoconf-lib-link.
875         * tests/havelib/rpath-3bbg: New file, from gettext/autoconf-lib-link.
876         * tests/havelib/rpath-3bbh: New file, from gettext/autoconf-lib-link.
877         * tests/havelib/rpathx/rpathx.c: New file, from
878         gettext/autoconf-lib-link.
879         * tests/havelib/rpathx/Makefile.am: New file, from
880         gettext/autoconf-lib-link.
881         * tests/havelib/rpathx/configure.ac: New file, from
882         gettext/autoconf-lib-link with modifications.
883         * tests/havelib/rpathy/rpathy.c: New file, from
884         gettext/autoconf-lib-link.
885         * tests/havelib/rpathy/Makefile.am: New file, from
886         gettext/autoconf-lib-link.
887         * tests/havelib/rpathy/configure.ac: New file, from
888         gettext/autoconf-lib-link with modifications.
889         * tests/havelib/rpathz/rpathz.c: New file, from
890         gettext/autoconf-lib-link.
891         * tests/havelib/rpathz/Makefile.am: New file, from
892         gettext/autoconf-lib-link.
893         * tests/havelib/rpathz/configure.ac: New file, from
894         gettext/autoconf-lib-link with modifications.
895         * tests/havelib/rpathlx/usex.c: New file, from
896         gettext/autoconf-lib-link.
897         * tests/havelib/rpathlx/Makefile.am: New file, from
898         gettext/autoconf-lib-link.
899         * tests/havelib/rpathlx/configure.ac: New file, from
900         gettext/autoconf-lib-link with modifications.
901         * tests/havelib/rpathly/usey.c: New file, from
902         gettext/autoconf-lib-link.
903         * tests/havelib/rpathly/Makefile.am: New file, from
904         gettext/autoconf-lib-link.
905         * tests/havelib/rpathly/configure.ac: New file, from
906         gettext/autoconf-lib-link with modifications.
907         * tests/havelib/rpathlz/usez.c: New file, from
908         gettext/autoconf-lib-link.
909         * tests/havelib/rpathlz/Makefile.am: New file, from
910         gettext/autoconf-lib-link.
911         * tests/havelib/rpathlz/configure.ac: New file, from
912         gettext/autoconf-lib-link with modifications.
913         * tests/havelib/rpathlyx/usey.c: New file, from
914         gettext/autoconf-lib-link.
915         * tests/havelib/rpathlyx/Makefile.am: New file, from
916         gettext/autoconf-lib-link.
917         * tests/havelib/rpathlyx/configure.ac: New file, from
918         gettext/autoconf-lib-link with modifications.
919         * tests/havelib/rpathlzyx/usez.c: New file, from
920         gettext/autoconf-lib-link.
921         * tests/havelib/rpathlzyx/Makefile.am: New file, from
922         gettext/autoconf-lib-link.
923         * tests/havelib/rpathlzyx/configure.ac: New file, from
924         gettext/autoconf-lib-link with modifications.
925         * tests/havelib/rpathcfg.sh: New file, from gettext/autoconf-lib-link
926         with modifications.
927
928 2010-04-02  Bruno Haible  <bruno@clisp.org>
929
930         gnulib-tool: Create distributed built sources also for the tests.
931         * gnulib-tool (func_create_testdir): Also generate distributed built
932         sources in the tests directory.
933
934 2010-04-02  Bruno Haible  <bruno@clisp.org>
935
936         gnulib-tool: Obey user's environment variables.
937         * gnulib-tool (func_create_testdir): When creating built sources,
938         respect the environment variables for autoconf, automake, etc. given by
939         the user.
940
941 2010-04-02  Bruno Haible  <bruno@clisp.org>
942
943         gnulib-tool: Provide the value of --m4-base to modules.
944         * gnulib-tool (func_import, func_create_testdir): Emit a definition
945         of gl_m4_base.
946
947 2010-04-02  Eric Blake  <eblake@redhat.com>
948
949         maint.mk: fix some fallout
950         * NEWS: Document the incompatible change, and its effect on cfg.mk.
951         * top/maint.mk (sc_prohibit_test_minus_ao): Update.
952
953 2010-03-28  Jose E. Marchesi  <jemarch@gnu.org>
954
955         maint.mk: _sc_search_regexp: generalize and rename from _prohibit_regexp
956         * top/maint.mk (_sc_search_regexp): Rename from _prohibit_regexp.
957         (sc_cast_of_argument_to_free): Adapt to use _sc_search_regexp.
958         (sc_cast_of_x_alloc_return_value): Likewise.
959         (sc_cast_of_alloca_return_value): Likewise.
960         (sc_space_tab): Likewise.
961         (sc_prohibit_atoi_atof): Likewise.
962         (sc_prohibit_magic_number_exit): Likewise.
963         (sc_error_exit_success): Likewise.
964         (sc_file_system): Likewise.
965         (sc_prohibit_have_config_h): Likewise.
966         (sc_require_config_h): Likewise.
967         (sc_prohibit_HAVE_MBRTOWC): Likewise.
968         (sc_obsolete_symbols): Likewise.
969         (sc_changelog): Likewise.
970         (sc_program_name): Likewise.
971         (sc_the_the): Likewise.
972         (sc_trailing_blank): Likewise.
973         (sc_two_space_separator_in_usage): Likewise.
974         (sc_useless_cpp_parens): Likewise.
975         (sc_GPL_version): Likewise.
976         (sc_GFDL_version): Likewise.
977         (sc_texinfo_acronym): Likewise.
978         (sc_prohibit_cvs_keyword): Likewise.
979         (sc_prohibit_stat_st_blocks): Likewise.
980         (sc_prohibit_S_IS_definition): Likewise.
981         (sc_redundant_const): Likewise.
982         (sc_makefile_TAB_only_indentation): Likewise.
983         (sc_m4_quote_check): Likewise.
984         (sc_makefile_path_separator_check): Likewise.
985         (sc_copyright_check): Likewise.
986         (sc_Wundef_boolean): Likewise.
987         (sc_vulnerable_makefile_CVE-2009-4029): Likewise.
988
989         maint.mk: match 0 or more whitespace-before-function-call '('
990         * top/maint.mk (sc_error_exit_success): Relax regexp to match uses
991         that have zero or two-and-more spaces between the function name
992         and the open parenthesis.
993         (sc_error_message_warn_fatal): Likewise.
994         (sc_error_message_uppercase): Likewise.
995         (sc_error_message_period): Likewise.
996
997 2010-03-31  Eric Blake  <eblake@redhat.com>
998
999         maint.mk: check for [ as well as test
1000         * top/maint.mk (sc_prohibit_test_minus_ao): Extend test.
1001         Based on a libvirt report by Matthias Bolte.
1002
1003         gnumakefile: don't squelch _version output
1004         * top/GNUmakefile (_version): Create one-shot dependency rather
1005         than using $(shell) when version must be regenerated.
1006         (_autoreconf): Run verbosely, by default.
1007
1008         sys_time: avoid compiler warnings
1009         * lib/sys_time.in.h (includes): Ensure gcc pragma is
1010         unconditional, fixing regression from 2010-03-29.
1011         Reported by Simon Josefsson.
1012
1013 2010-03-28  Jose E. Marchesi  <jemarch@gnu.org>
1014
1015         maint.mk: s/_header_without_use/_sc_header_without_use/
1016         * top/maint.mk (_sc_header_without_use): Rename from _header_without_use.
1017         (sc_prohibit_assert_without_use): Use the new name.
1018         (sc_prohibit_close_stream_without_use): Likewise.
1019         (sc_prohibit_getopt_without_use): Likewise.
1020         (sc_prohibit_quotearg_without_use): Likewise.
1021         (sc_prohibit_quote_without_use): Likewise.
1022         (sc_prohibit_long_options_without_use): Likewise.
1023         (sc_prohibit_inttostr_without_use): Likewise.
1024         (sc_prohibit_ignore_value_without_use): Likewise.
1025         (sc_prohibit_error_without_use): Likewise.
1026         (sc_prohibit_xalloc_without_use): Likewise.
1027         (sc_prohibit_hash_without_use): Likewise.
1028         (sc_prohibit_hash_pjw_without_use): Likewise.
1029         (sc_prohibit_safe_read_without_use): Likewise.
1030         (sc_prohibit_argmatch_without_use): Likewise.
1031         (sc_prohibit_canonicalize_without_use): Likewise.
1032         (sc_prohibit_root_dev_ino_without_use): Likewise.
1033         (sc_prohibit_openat_without_use): Likewise.
1034         (sc_prohibit_c_ctype_without_use): Likewise.
1035         (sc_prohibit_signal_without_use): Likewise.
1036         (sc_prohibit_intprops_without_use): Likewise.
1037
1038 2010-03-30  Eric Blake  <eblake@redhat.com>
1039
1040         maint: improve module indicators
1041         * m4/gnulib-common.m4 (gl_MODULE_INDICATOR_SET_VARIABLE)
1042         (gl_MODULE_INDICATOR, gl_MODULE_INDICATOR_FOR_TESTS): Fit in 80
1043         columns, and avoid extra macro expansion.
1044
1045         fdopendir: work around FreeBSD bug
1046         * m4/dirent_h.m4 (gl_DIRENT_H_DEFAULTS): New witness.
1047         * m4/fdopendir.m4 (gl_FUNC_FDOPENDIR): Set it.
1048         * modules/dirent (Makefile.am): Substitute it.
1049         * lib/dirent.in.h (fdopendir): Supply missing FreeBSD
1050         declaration.
1051         * doc/posix-functions/fdopendir.texi (fdopendir): Document the
1052         fix.
1053         Reported by Christian Weisgerber <naddy@mips.inka.de>.
1054
1055 2010-03-29  Bruno Haible  <bruno@clisp.org>
1056
1057         Emit #pragma system_header after the inclusion guard, not before.
1058         * lib/arpa_inet.in.h: Emit #pragma system_header after the inclusion
1059         guard that spans the entire file, not before. This enables an
1060         optimization in GCC's preprocessor.
1061         * lib/ctype.in.h: Likewise.
1062         * lib/dirent.in.h: Likewise.
1063         * lib/errno.in.h: Likewise.
1064         * lib/float.in.h: Likewise.
1065         * lib/getopt.in.h: Likewise.
1066         * lib/iconv.in.h: Likewise.
1067         * lib/langinfo.in.h: Likewise.
1068         * lib/locale.in.h: Likewise.
1069         * lib/math.in.h: Likewise.
1070         * lib/netdb.in.h: Likewise.
1071         * lib/netinet_in.in.h: Likewise.
1072         * lib/pty.in.h: Likewise.
1073         * lib/sched.in.h: Likewise.
1074         * lib/se-selinux.in.h: Likewise.
1075         * lib/search.in.h: Likewise.
1076         * lib/spawn.in.h: Likewise.
1077         * lib/stdarg.in.h: Likewise.
1078         * lib/stdint.in.h: Likewise.
1079         * lib/string.in.h: Likewise.
1080         * lib/strings.in.h: Likewise.
1081         * lib/sys_file.in.h: Likewise.
1082         * lib/sys_ioctl.in.h: Likewise.
1083         * lib/sys_time.in.h: Likewise.
1084         * lib/sys_times.in.h: Likewise.
1085         * lib/sys_utsname.in.h: Likewise.
1086         * lib/sys_wait.in.h: Likewise.
1087         * lib/sysexits.in.h: Likewise.
1088         * lib/wctype.in.h: Likewise.
1089
1090 2010-03-28  James Youngman  <jay@gnu.org>
1091
1092         save-cwd: don't leak a file descriptor when the caller execs.
1093         * lib/save-cwd.c (save_cwd): set the close-on-exec flag for the
1094         saved file descriptor.
1095         * modules/save-cwd (Depends-on): Depend on cloexec.
1096
1097 2010-03-29  Bruno Haible  <bruno@clisp.org>
1098
1099         Remove vestiges of fts-lgpl module.
1100         * lib/fts_.h: Assume GNULIB_FTS is 1.
1101         * lib/fts.c: Likewise.
1102         * modules/fts (configure.ac): Remove gl_MODULE_INDICATOR invocation.
1103
1104 2010-03-28  Bruno Haible  <bruno@clisp.org>
1105
1106         Fix definition of tests witness macro.
1107         * gnulib-tool (func_import): Fix definition of witness macro.
1108
1109 2010-03-28  Bruno Haible  <bruno@clisp.org>
1110
1111         Fix ioctl's protoype on glibc systems.
1112         * lib/sys_ioctl.in.h (ioctl): If REPLACE_IOCTL is 1, use a wrapper. Use
1113         _GL_CXXALIAS_SYS, not _GL_CXXALIAS_SYS_CAST.
1114         * lib/ioctl.c (rpl_ioctl) [HAVE_IOCTL]: New wrapper.
1115         * modules/ioctl (configure.ac): Test whether ioctl has the POSIX
1116         signature. If not, arrange to replace the ioctl function.
1117         * m4/sys_ioctl_h.m4 (gl_SYS_IOCTL_H_DEFAULTS): Initialize
1118         REPLACE_IOCTL.
1119         * modules/sys_ioctl (Makefile.am): Substitute REPLACE_IOCTL.
1120         * doc/posix-functions/ioctl.texi: Mention the glibc problem.
1121         Reported by Ludovic Courtès <ludo@gnu.org>.
1122
1123 2010-03-28  Javier Villavicencio  <the_paya@gentoo.org>
1124
1125         exclude: fix the case of globs vs. EXCLUDE_INCLUDE
1126         * lib/exclude.c (excluded_file_pattern_p): Fix logic error that
1127         made it so grep -r --include=GLOB* ... did not work.
1128
1129 2010-03-26  Jim Meyering  <meyering@redhat.com>
1130             Eric Blake  <eblake@redhat.com>
1131
1132         maint.mk: prohibit use of test's -o and -a operators
1133         * top/maint.mk (sc_prohibit_test_minus_ao): New rule.
1134
1135 2010-03-28  Bruno Haible  <bruno@clisp.org>
1136
1137         Remove unused GNULIB_XYZ macro definitions.
1138         * modules/crypto/gc-camellia (configure.ac): Remove gl_MODULE_INDICATOR
1139         invocation.
1140
1141 2010-03-28  Bruno Haible  <bruno@clisp.org>
1142
1143         Mark privileged tests modules.
1144         * modules/idpriv-drop-tests (Status): New section.
1145         * modules/idpriv-droptemp-tests (Status): New section.
1146
1147 2010-03-28  Bruno Haible  <bruno@clisp.org>
1148
1149         Split C++ tests into separate tests modules.
1150         * modules/dirent-c++-tests: New file, extracted from
1151         modules/dirent-tests.
1152         * modules/dirent-tests: Depend on it.
1153         * modules/fcntl-h-c++-tests: New file, extracted from
1154         modules/fcntl-h-tests.
1155         * modules/fcntl-h-tests: Depend on it.
1156         * modules/glob-c++-tests: New file, extracted from modules/glob-tests.
1157         * modules/glob-tests: Depend on it.
1158         * modules/iconv-h-c++-tests: New file, extracted from
1159         modules/iconv-h-tests.
1160         * modules/iconv-h-tests: Depend on it.
1161         * modules/langinfo-c++-tests: New file, extracted from
1162         modules/langinfo-tests.
1163         * modules/langinfo-tests: Depend on it.
1164         * modules/locale-c++-tests: New file, extracted from
1165         modules/locale-tests.
1166         * modules/locale-tests: Depend on it.
1167         * modules/math-c++-tests: New file, extracted from modules/math-tests.
1168         * modules/math-tests: Depend on it.
1169         * modules/pty-c++-tests: New file, extracted from modules/pty-tests.
1170         * modules/pty-tests: Depend on it.
1171         * modules/search-c++-tests: New file, extracted from
1172         modules/search-tests.
1173         * modules/search-tests: Depend on it.
1174         * modules/signal-c++-tests: New file, extracted from
1175         modules/signal-tests.
1176         * modules/signal-tests: Depend on it.
1177         * modules/spawn-c++-tests: New file, extracted from
1178         modules/spawn-tests.
1179         * modules/spawn-tests: Depend on it.
1180         * modules/stdio-c++-tests: New file, extracted from
1181         modules/stdio-tests.
1182         * modules/stdio-tests: Depend on it.
1183         * modules/stdlib-c++-tests: New file, extracted from
1184         modules/stdlib-tests.
1185         * modules/stdlib-tests: Depend on it.
1186         * modules/string-c++-tests: New file, extracted from
1187         modules/string-tests.
1188         * modules/string-tests: Depend on it.
1189         * modules/sys_ioctl-c++-tests: New file, extracted from
1190         modules/sys_ioctl-tests.
1191         * modules/sys_ioctl-tests: Depend on it.
1192         * modules/sys_select-c++-tests: New file, extracted from
1193         modules/sys_select-tests.
1194         * modules/sys_select-tests: Depend on it.
1195         * modules/sys_socket-c++-tests: New file, extracted from
1196         modules/sys_socket-tests.
1197         * modules/sys_socket-tests: Depend on it.
1198         * modules/sys_stat-c++-tests: New file, extracted from
1199         modules/sys_stat-tests.
1200         * modules/sys_stat-tests: Depend on it.
1201         * modules/sys_time-c++-tests: New file, extracted from
1202         modules/sys_time-tests.
1203         * modules/sys_time-tests: Depend on it.
1204         * modules/time-c++-tests: New file, extracted from modules/time-tests.
1205         * modules/time-tests: Depend on it.
1206         * modules/unistd-c++-tests: New file, extracted from
1207         modules/unistd-tests.
1208         * modules/unistd-tests: Depend on it.
1209         * modules/wchar-c++-tests: New file, extracted from
1210         modules/wchar-tests.
1211         * modules/wchar-tests: Depend on it.
1212         * modules/wctype-c++-tests: New file, extracted from
1213         modules/wctype-tests.
1214         * modules/wctype-tests: Depend on it.
1215         Reported by Simon Josefsson.
1216
1217 2010-03-28  Bruno Haible  <bruno@clisp.org>
1218
1219         gnulib-tool: Allow 'foo-tests' module even if there is no module 'foo'.
1220         * gnulib-tool (func_exists_module): New function, extracted from
1221         func_verify_module.
1222         (func_verify_module): Use it.
1223         (func_get_dependencies): Synthetize a dependency from 'foo-tests' to
1224         'foo' only if 'foo' exists.
1225         * doc/gnulib.texi (Extra tests modules): Explain how to split a tests
1226         module.
1227
1228 2010-03-28  Bruno Haible  <bruno@clisp.org>
1229
1230         gnulib-tool: Add support for special categories of tests.
1231         * gnulib-tool: New options --with-c++-tests, --with-longrunning-tests,
1232         --with-privileged-tests, --with-unportable-tests, --with-all-tests.
1233         (func_usage): Document them.
1234         (inc_cxx_tests, inc_longrunning_tests, inc_privileged_tests,
1235         inc_unportable_tests, inc_all_tests): New variables.
1236         (func_acceptable): Consider these variables.
1237         (func_modules_transitive_closure): Make it work when the 'Status' field
1238         consists of multiple words.
1239         (func_import): Store and restore the values of inc_cxx_tests,
1240         inc_longrunning_tests, inc_privileged_tests, inc_unportable_tests,
1241         inc_all_tests in gnulib-comp.m4.
1242         (func_create_testdir): Set inc_all_tests to true.
1243         * doc/gnulib.texi (Extra tests modules): New section.
1244         Suggested by Jim Meyering.
1245
1246 2010-03-28  Bruno Haible  <bruno@clisp.org>
1247
1248         ansi-c++-opt: Allow turning off the C++ build by default.
1249         * m4/ansi-c++.m4 (gl_CXX_CHOICE): Let CXX_CHOICE default to 'no' if
1250         gl_CXX_CHOICE_DEFAULT_NO is defined.
1251         Requested by Eric Blake.
1252
1253 2010-03-28  Bruno Haible  <bruno@clisp.org>
1254
1255         unistd: Avoid #define replacements in C++ mode.
1256         * lib/unistd.in.h (socket, connect, accept, bind, getpeername,
1257         getsockname, getsockopt, listen, recv, send, recvfrom, sendto,
1258         setsockopt, shutdown, select): In C++, attach a warning to the function
1259         if possible, rather than #defining the symbol to a dysfunctional alias.
1260         Reported by John W. Eaton <jwe@gnu.org>.
1261
1262 2010-03-28  Bruno Haible  <bruno@clisp.org>
1263
1264         Fix link errors on mingw.
1265         * lib/sys_ioctl.in.h (ioctl): Fix declaration idiom.
1266         * modules/sys_ioctl-tests (Makefile.am): Link test-sys_ioctl-c++ with
1267         $(LIBSOCKET).
1268         * modules/sys_select-tests (Makefile.am): Link test-sys_select-c++ with
1269         $(LIBSOCKET).
1270
1271 2010-03-28  Bruno Haible  <bruno@clisp.org>
1272             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1273
1274         lib-ignore: Determine different options for different compilers.
1275         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Set a variable which
1276         depends on the current language (C/C++/Fortran). Don't set LDFLAGS.
1277         Add comments.
1278         (_gl_IGNORE_UNUSED_LIBRARIES_OPTIONS): New macro.
1279         * NEWS: Mention the change.
1280
1281 2010-03-27  Bruno Haible  <bruno@clisp.org>
1282
1283         Remove unused GNULIB_XYZ macro definitions.
1284         * modules/dup3 (configure.ac): Remove gl_MODULE_INDICATOR invocation.
1285         * modules/fseek (configure.ac): Likewise.
1286         * modules/ioctl (configure.ac): Likewise.
1287         * modules/open (configure.ac): Likewise.
1288         * modules/stdlib-safer (configure.ac): Likewise.
1289
1290 2010-03-27  Bruno Haible  <bruno@clisp.org>
1291
1292         Add a remark about certain modules.
1293         * modules/malloc (Comment): New section.
1294         * modules/realloc (Comment): Likewise.
1295         * modules/sigpipe (Comment): Likewise.
1296
1297 2010-03-27  Bruno Haible  <bruno@clisp.org>
1298
1299         Resolve conflict between the two kinds of module indicators.
1300         * m4/gnulib-common.m4 (gl_MODULE_INDICATOR_FOR_TESTS): Define
1301         GNULIB_TEST_XYZ instead of GNULIB_XYZ.
1302         * modules/canonicalize (configure.ac): Invoke
1303         gl_MODULE_INDICATOR_FOR_TESTS.
1304         * tests/test-canonicalize-lgpl.c: Test GNULIB_TEST_XYZ instead of
1305         GNULIB_XYZ.
1306         * tests/test-dirent-c++.cc: Likewise.
1307         * tests/test-dirent-safer.c: Likewise.
1308         * tests/test-dup2.c: Likewise.
1309         * tests/test-fchdir.c: Likewise.
1310         * tests/test-fcntl-h-c++.cc: Likewise.
1311         * tests/test-getopt.c: Likewise.
1312         * tests/test-getopt.h: Likewise.
1313         * tests/test-langinfo-c++.cc: Likewise.
1314         * tests/test-locale-c++.cc: Likewise.
1315         * tests/test-math-c++.cc: Likewise.
1316         * tests/test-pty-c++.cc: Likewise.
1317         * tests/test-search-c++.cc: Likewise.
1318         * tests/test-signal-c++.cc: Likewise.
1319         * tests/test-spawn-c++.cc: Likewise.
1320         * tests/test-stdio-c++.cc: Likewise.
1321         * tests/test-stdlib-c++.cc: Likewise.
1322         * tests/test-string-c++.cc: Likewise.
1323         * tests/test-sys_ioctl-c++.cc: Likewise.
1324         * tests/test-sys_select-c++.cc: Likewise.
1325         * tests/test-sys_socket-c++.cc: Likewise.
1326         * tests/test-sys_stat-c++.cc: Likewise.
1327         * tests/test-sys_time-c++.cc: Likewise.
1328         * tests/test-time-c++.cc: Likewise.
1329         * tests/test-unistd-c++.cc: Likewise.
1330         * tests/test-wchar-c++.cc: Likewise.
1331         * tests/uninorm/test-u8-nfc.c: Likewise.
1332         * tests/uninorm/test-u8-nfd.c: Likewise.
1333         * tests/uninorm/test-u8-nfkc.c: Likewise.
1334         * tests/uninorm/test-u8-nfkd.c: Likewise.
1335         * tests/uninorm/test-u16-nfc.c: Likewise.
1336         * tests/uninorm/test-u16-nfd.c: Likewise.
1337         * tests/uninorm/test-u16-nfkc.c: Likewise.
1338         * tests/uninorm/test-u16-nfkd.c: Likewise.
1339         * tests/uninorm/test-u32-nfc.c: Likewise.
1340         * tests/uninorm/test-u32-nfc-big.c: Likewise.
1341         * tests/uninorm/test-u32-nfd.c: Likewise.
1342         * tests/uninorm/test-u32-nfd-big.c: Likewise.
1343         * tests/uninorm/test-u32-nfkc.c: Likewise.
1344         * tests/uninorm/test-u32-nfkc-big.c: Likewise.
1345         * tests/uninorm/test-u32-nfkd.c: Likewise.
1346         * tests/uninorm/test-u32-nfkd-big.c: Likewise.
1347         * tests/uninorm/test-u32-normalize-big.c: Likewise.
1348
1349 2010-03-27  Bruno Haible  <bruno@clisp.org>
1350
1351         Distinguish two kinds of module indicators.
1352         * m4/gnulib-common.m4 (gl_MODULE_INDICATOR_FOR_TESTS): Renamed from
1353         gl_MODULE_INDICATOR.
1354         (gl_MODULE_INDICATOR): New macro.
1355         * m4/dirent_h.m4 (gl_DIRENT_MODULE_INDICATOR): Invoke
1356         gl_MODULE_INDICATOR_FOR_TESTS instead of gl_MODULE_INDICATOR.
1357         * m4/fcntl_h.m4 (gl_FCNTL_MODULE_INDICATOR): Likewise.
1358         * m4/langinfo_h.m4 (gl_LANGINFO_MODULE_INDICATOR): Likewise.
1359         * m4/locale_h.m4 (gl_LOCALE_MODULE_INDICATOR): Likewise.
1360         * m4/math_h.m4 (gl_MATH_MODULE_INDICATOR): Likewise.
1361         * m4/pty_h.m4 (gl_PTY_MODULE_INDICATOR): Likewise.
1362         * m4/search_h.m4 (gl_SEARCH_MODULE_INDICATOR): Likewise.
1363         * m4/signal_h.m4 (gl_SIGNAL_MODULE_INDICATOR): Likewise.
1364         * m4/spawn_h.m4 (gl_SPAWN_MODULE_INDICATOR): Likewise.
1365         * m4/stdio_h.m4 (gl_STDIO_MODULE_INDICATOR): Likewise.
1366         * m4/stdlib_h.m4 (gl_STDLIB_MODULE_INDICATOR): Likewise.
1367         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): Likewise.
1368         * m4/sys_ioctl_h.m4 (gl_SYS_IOCTL_MODULE_INDICATOR): Likewise.
1369         * m4/sys_select_h.m4 (gl_SYS_SELECT_MODULE_INDICATOR): Likewise.
1370         * m4/sys_socket_h.m4 (gl_SYS_SOCKET_MODULE_INDICATOR): Likewise.
1371         * m4/sys_stat_h.m4 (gl_SYS_STAT_MODULE_INDICATOR): Likewise.
1372         * m4/sys_time_h.m4 (gl_SYS_TIME_MODULE_INDICATOR): Likewise.
1373         * m4/time_h.m4 (gl_TIME_MODULE_INDICATOR): Likewise.
1374         * m4/unistd_h.m4 (gl_UNISTD_MODULE_INDICATOR): Likewise.
1375         * m4/wchar_h.m4 (gl_WCHAR_MODULE_INDICATOR): Likewise.
1376         * modules/cloexec (configure.ac): Likewise.
1377         * modules/getopt-gnu (configure.ac): Likewise.
1378         * modules/uninorm/u8-normalize (configure.ac): Likewise.
1379         * modules/uninorm/u16-normalize (configure.ac): Likewise.
1380         * modules/uninorm/u32-normalize (configure.ac): Likewise.
1381         * modules/fdopendir (configure.ac): Invoke gl_MODULE_INDICATOR.
1382
1383 2010-03-27  Bruno Haible  <bruno@clisp.org>
1384
1385         New module description field 'Comment'.
1386         * gnulib-tool: New option --extract-comment.
1387         (func_usage): Document it.
1388         (sed_extract_prog, sed_extract_field_header): Support 'Comment' field.
1389         (func_get_comment): New function.
1390         * modules/TEMPLATE-EXTENDED: Add a blank Comment field.
1391
1392 2010-03-27  Bruno Haible  <bruno@clisp.org>
1393
1394         Addendum to 2010-02-07 commit.
1395         * gnulib-tool (func_usage): Document --extract-applicability option.
1396
1397 2010-03-27  Bruno Haible  <bruno@clisp.org>
1398
1399         Use GNULIB_POSIXCHECK instead of GNULIB_PORTCHECK.
1400         * lib/time.in.h (asctime, asctime_r, ctime, ctime_r): Test
1401         GNULIB_POSIXCHECK, not GNULIB_PORTCHECK. Provide compile-time warnings
1402         rather than link errors.
1403
1404 2010-03-27  Bruno Haible  <bruno@clisp.org>
1405
1406         Avoid side effects from tests-related modules on the compilation of lib.
1407         * m4/gnulib-common.m4 (gl_MODULE_INDICATOR_CONDITION): New macro.
1408         (gl_MODULE_INDICATOR_SET_VARIABLE): Use its expansion as a value.
1409         * gnulib-tool (func_emit_tests_Makefile_am): Accept a witness_macro
1410         parameter. Emit into AM_CPPFLAGS a definition of the designated C
1411         macro.
1412         (func_import): Define a witness macro. Assign it a value that depends
1413         on the current package. Override gl_MODULE_INDICATOR_CONDITION for the
1414         tests-related modules.
1415         (func_create_testdir): Update func_emit_tests_Makefile_am invocation.
1416         Reported by Jim Meyering.
1417
1418 2010-03-27  Bruno Haible  <bruno@clisp.org>
1419
1420         Factorize common .m4 code.
1421         * m4/gnulib-common.m4 (gl_MODULE_INDICATOR_SET_VARIABLE): New macro.
1422         * m4/arpa_inet_h.m4 (gl_ARPA_INET_MODULE_INDICATOR): Use it.
1423         * m4/ctype.m4 (gl_CTYPE_MODULE_INDICATOR): Likewise.
1424         * m4/dirent_h.m4 (gl_DIRENT_MODULE_INDICATOR): Likewise.
1425         * m4/fcntl_h.m4 (gl_FCNTL_MODULE_INDICATOR): Likewise.
1426         * m4/iconv_h.m4 (gl_ICONV_MODULE_INDICATOR): Likewise.
1427         * m4/inttypes.m4 (gl_INTTYPES_MODULE_INDICATOR): Likewise.
1428         * m4/langinfo_h.m4 (gl_LANGINFO_MODULE_INDICATOR): Likewise.
1429         * m4/locale_h.m4 (gl_LOCALE_MODULE_INDICATOR): Likewise.
1430         * m4/math_h.m4 (gl_MATH_MODULE_INDICATOR): Likewise.
1431         * m4/netdb_h.m4 (gl_NETDB_MODULE_INDICATOR): Likewise.
1432         * m4/pty_h.m4 (gl_PTY_MODULE_INDICATOR): Likewise.
1433         * m4/search_h.m4 (gl_SEARCH_MODULE_INDICATOR): Likewise.
1434         * m4/signal_h.m4 (gl_SIGNAL_MODULE_INDICATOR): Likewise.
1435         * m4/spawn_h.m4 (gl_SPAWN_MODULE_INDICATOR): Likewise.
1436         * m4/stddef_h.m4 (gl_STDDEF_MODULE_INDICATOR): Likewise.
1437         * m4/stdio_h.m4 (gl_STDIO_MODULE_INDICATOR): Likewise.
1438         * m4/stdlib_h.m4 (gl_STDLIB_MODULE_INDICATOR): Likewise.
1439         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): Likewise.
1440         * m4/strings_h.m4 (gl_STRINGS_MODULE_INDICATOR): Likewise.
1441         * m4/sys_file_h.m4 (gl_HEADER_SYS_FILE_MODULE_INDICATOR): Likewise.
1442         * m4/sys_ioctl_h.m4 (gl_SYS_IOCTL_MODULE_INDICATOR): Likewise.
1443         * m4/sys_select_h.m4 (gl_SYS_SELECT_MODULE_INDICATOR): Likewise.
1444         * m4/sys_socket_h.m4 (gl_SYS_SOCKET_MODULE_INDICATOR): Likewise.
1445         * m4/sys_stat_h.m4 (gl_SYS_STAT_MODULE_INDICATOR): Likewise.
1446         * m4/sys_time_h.m4 (gl_SYS_TIME_MODULE_INDICATOR): Likewise.
1447         * m4/sys_times_h.m4 (gl_SYS_TIMES_MODULE_INDICATOR): Likewise.
1448         * m4/sys_utsname_h.m4 (gl_SYS_UTSNAME_MODULE_INDICATOR): Likewise.
1449         * m4/sys_wait_h.m4 (gl_SYS_WAIT_MODULE_INDICATOR): Likewise.
1450         * m4/time_h.m4 (gl_TIME_MODULE_INDICATOR): Likewise.
1451         * m4/unistd_h.m4 (gl_UNISTD_MODULE_INDICATOR): Likewise.
1452         * m4/wchar_h.m4 (gl_WCHAR_MODULE_INDICATOR): Likewise.
1453
1454 2010-03-27  Bruno Haible  <bruno@clisp.org>
1455
1456         Fix a compilation error on Cygwin with g++ >= 4.3.
1457         * lib/sys_stat.in.h (lchmod): Don't warn about the use of this function
1458         if it is undefined or if we alias it to chmod.
1459         (lstat): Don't warn about the use of this function if it is undefined
1460         or if we alias it to stat.
1461         Reported by Simon Josefsson.
1462
1463 2010-03-27  Bruno Haible  <bruno@clisp.org>
1464
1465         * m4/getlogin.m4 (gl_FUNC_GETLOGIN): Renamed from gl_GETLOGIN.
1466         * modules/getlogin (configure.ac): Update.
1467
1468         * m4/getlogin_r.m4 (gl_FUNC_GETLOGIN_R): Renamed from gl_GETLOGIN_R.
1469         * modules/getlogin_r (configure.ac): Update.
1470
1471         * m4/inet_ntop.m4 (gl_FUNC_INET_NTOP): Renamed from gl_INET_NTOP.
1472         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Update.
1473         * modules/inet_ntop (configure.ac): Update.
1474
1475         * m4/inet_pton.m4 (gl_FUNC_INET_PTON): Renamed from gl_INET_PTON.
1476         * modules/inet_pton (configure.ac): Update.
1477
1478         * m4/mbslen.m4 (gl_FUNC_MBSLEN): Renamed from gl_MBSLEN.
1479         * modules/mbslen (configure.ac): Update.
1480
1481         * m4/pty.m4 (gl_FUNC_FORKPTY): Renamed from gl_FORKPTY.
1482         (gl_FUNC_OPENPTY): Renamed from gl_OPENPTY.
1483         * modules/forkpty (configure.ac): Update.
1484         * modules/openpty (configure.ac): Update.
1485
1486 2010-03-26  Simon Josefsson  <simon@josefsson.org>
1487
1488         * top/maint.mk (sc_texinfo_acronym): Don't infloop if there is
1489         no *.texi files.  Reported by Eric Blake <eblake@redhat.com>.
1490
1491 2010-03-25  Eric Blake  <eblake@redhat.com>
1492
1493         maint: use pragma consistently across replacement headers
1494         * lib/ctype.in.h (system_header): Hoist for consistent placement.
1495         * lib/dirent.in.h (system_header): Likewise.
1496         * lib/errno.in.h (system_header): Likewise.
1497         * lib/float.in.h (system_header): Likewise.
1498         * lib/getopt.in.h (system_header): Likewise.
1499         * lib/iconv.in.h (system_header): Likewise.
1500         * lib/inttypes.in.h (system_header): Likewise.
1501         * lib/langinfo.in.h (system_header): Likewise.
1502         * lib/locale.in.h (system_header): Likewise.
1503         * lib/math.in.h (system_header): Likewise.
1504         * lib/netdb.in.h (system_header): Likewise.
1505         * lib/netinet_in.in.h (system_header): Likewise.
1506         * lib/pty.in.h (system_header): Likewise.
1507         * lib/sched.in.h (system_header): Likewise.
1508         * lib/se-selinux.in.h (system_header): Likewise.
1509         * lib/search.in.h (system_header): Likewise.
1510         * lib/spawn.in.h (system_header): Likewise.
1511         * lib/stdarg.in.h (system_header): Likewise.
1512         * lib/stdint.in.h (system_header): Likewise.
1513         * lib/string.in.h (system_header): Likewise.
1514         * lib/strings.in.h (system_header): Likewise.
1515         * lib/sys_file.in.h (system_header): Likewise.
1516         * lib/sys_ioctl.in.h (system_header): Likewise.
1517         * lib/sys_socket.in.h (system_header): Likewise.
1518         * lib/sys_times.in.h (system_header): Likewise.
1519         * lib/sys_utsname.in.h (system_header): Likewise.
1520         * lib/sys_wait.in.h (system_header): Likewise.
1521         * lib/sysexits.in.h (system_header): Likewise.
1522         * lib/unistd.in.h (system_header): Likewise.
1523         * lib/wctype.in.h (system_header): Likewise.
1524
1525         arpa/inet: fix mingw compilation warning
1526         * lib/arpa_inet.in.h (system_header): Hoist to be unconditional.
1527         Reported by Matthew Bolte.
1528
1529 2010-03-25  Bruno Haible  <bruno@clisp.org>
1530
1531         Avoid collision between gnulib wrapper and libintl wrapper.
1532         * lib/printf.c (printf): Don't define if a printf wrapper is already
1533         defined in intl/printf.c.
1534         Reported by Michel Boaventura <michel@michelboaventura.com>.
1535
1536 2010-03-25  Bruno Haible  <bruno@clisp.org>
1537
1538         Use ANSI C.
1539         * lib/readutmp.h (getutent): Provide ANSI C prototype.
1540
1541 2010-03-25  Bruno Haible  <bruno@clisp.org>
1542
1543         Minor formatting changes.
1544         * lib/acosl.c: Insert space before function argument list.
1545         * lib/argz.c: Likewise.
1546         * lib/asinl.c: Likewise.
1547         * lib/expl.c: Likewise.
1548         * lib/gen-uni-tables.c: Likewise.
1549         * lib/gettext.h: Likewise.
1550         * lib/glthread/lock.h: Likewise.
1551         * lib/tanl.c: Likewise.
1552         * lib/uniname/uniname.c: Likewise.
1553         * tests/test-idpriv-drop.c: Likewise.
1554         * tests/test-idpriv-droptemp.c: Likewise.
1555         * tests/test-lock.c: Likewise.
1556         * tests/test-tls.c: Likewise.
1557         * lib/argp-help.c: Insert space before function-like macro argument
1558         list.
1559         * lib/memcmp.c: Likewise.
1560         * tests/test-base64.c: Likewise.
1561         * lib/localename.c: Insert space before sizeof's argument list.
1562         * lib/safe-alloc.h: Likewise.
1563         * lib/file-set.h: Insert space before macro argument list.
1564         * tests/test-argp.c: Likewise.
1565         * lib/argp-namefrob.h: Insert space before function parameter list.
1566         * lib/getaddrinfo.c: Likewise.
1567         * lib/netdb.in.h: Likewise.
1568         * lib/parse-duration.h: Likewise.
1569         * lib/parse-duration.c: Likewise.
1570         * lib/poll.c: Likewise.
1571         * lib/select.c: Likewise.
1572         * lib/trim.h: Likewise.
1573         * tests/test-usleep.c: Likewise.
1574         * lib/ldexpl.c: Insert space before function parameter list and before
1575         function argument list.
1576         * lib/logl.c: Likewise.
1577         * lib/sqrtl.c: Likewise.
1578         * lib/trim.c: Likewise.
1579         * lib/cosl.c: Use GNU style indentation. Insert space before function
1580         argument list.
1581         * lib/sinl.c: Likewise.
1582         * lib/tsearch.c: Insert space after 'for'.
1583         Reported by Jim Meyering.
1584
1585 2010-03-23  Pádraig Brady  <P@draigBrady.com>  (tiny change)
1586
1587         * maint.mk (sc_Wundef_boolean): Check for the presence of the
1588         config header before grepping, as it's not present before
1589         autoreconf/configure are run.  Reported by Simon Josefsson.
1590
1591 2010-03-23  Bruno Haible  <bruno@clisp.org>
1592
1593         pt_chown: Make it work with automake < 1.11.
1594         * modules/pt_chown (Makefile.am): Define pkglibexecdir.
1595         Reported by Simon Josefsson.
1596
1597 2010-03-23  Bruno Haible  <bruno@clisp.org>
1598
1599         pt_chown: Don't depend on GPLed modules.
1600         * lib/pt_chown.c: Don't include idpriv.h.
1601         (main): Don't drop privileges.
1602         * modules/pt_chown (Depends-on): Remove idpriv-drop.
1603         Reported by Simon Josefsson.
1604
1605 2010-03-24  Simon Josefsson  <simon@josefsson.org>
1606
1607         * top/maint.mk (sc_texinfo_acronym): Add rule, based on
1608         suggestions from karl@freefriends.org (Karl Berry).
1609
1610 2010-03-22  Eric Blake  <eblake@redhat.com>
1611
1612         gethostname: further tweaks
1613         * lib/unistd.in.h (includes): Only worry about <winsock2.h> if we
1614         are overriding gethostname.
1615         Suggested by Bruno Haible.
1616
1617 2010-03-21  Bruno Haible  <bruno@clisp.org>
1618
1619         Fix comments.
1620         * lib/forkpty.c (rpl_forkpty): Fix comment.
1621         * lib/openpty.c (rpl_openpty): Likewise.
1622         Reported by Eric Blake.
1623
1624 2010-03-22  Eric Blake  <eblake@redhat.com>
1625
1626         gethostname: fix build on mingw
1627         * lib/unistd.in.h (includes): Work around fact that mingw
1628         <winsock2.h> re-includes <unistd.h>, by avoiding any
1629         redeclarations if we are being included by <winsock2.h>.
1630         Reported by Matthias Bolte.
1631
1632 2010-03-21  Bruno Haible  <bruno@clisp.org>
1633
1634         forkpty: Provide replacement on AIX, HP-UX, IRIX, Solaris.
1635         * lib/forkpty.c (forkpty): New replacement function, from glibc with
1636         modifications.
1637         * lib/pty.in.h (forkpty): Update declaration. Add comments.
1638         * m4/pty.m4 (gl_FORKPTY): If forkpty is not declared, arrange to
1639         provide the replacement.
1640         * modules/forkpty (Depends-on): Add openpty, login_tty.
1641         * m4/pty_h.m4 (gl_PTY_H_DEFAULTS): Initialize HAVE_FORKPTY.
1642         * modules/pty (Makefile.am): Substitute HAVE_FORKPTY.
1643         * doc/glibc-functions/forkpty.texi: More supported platforms.
1644         * config/srclist.txt: Add forkpty.c (commented).
1645
1646 2010-03-21  Bruno Haible  <bruno@clisp.org>
1647
1648         * modules/forkpty-tests: Use the common TEMPLATE-TESTS.
1649         (Makefile.am): Verify that PTY_LIB is defined.
1650
1651         * modules/openpty-tests: Use the common TEMPLATE-TESTS.
1652
1653 2010-03-21  Bruno Haible  <bruno@clisp.org>
1654
1655         Tests for module 'login_tty'.
1656         * modules/login_tty-tests: New file.
1657         * tests/test-login_tty.c: New file.
1658
1659         New module 'login_tty'.
1660         * lib/login_tty.c: New file.
1661         * m4/pty.m4 (gl_FUNC_LOGIN_TTY): New macro.
1662         * modules/login_tty: New file.
1663         * doc/glibc-functions/login_tty.texi: Mention the new module.
1664
1665 2010-03-21  Bruno Haible  <bruno@clisp.org>
1666
1667         login_tty: Documentation.
1668         * doc/glibc-functions/login_tty.texi: New file.
1669         * doc/gnulib.texi (Glibc <utmp.h>): Include it.
1670
1671 2010-03-21  Bruno Haible  <bruno@clisp.org>
1672
1673         pty: Consistent macro naming.
1674         * m4/pty_h.m4 (gl_PTY_H): Renamed from gl_PTY.
1675         * m4/pty.m4 (gl_FORKPTY, gl_OPENPTY): Update.
1676         * modules/pty (configure.ac): Update.
1677
1678 2010-03-21  Bruno Haible  <bruno@clisp.org>
1679
1680         Tests for openpty: Make stricter.
1681         * tests/test-openpty.c (main): Add test of canonical processing and
1682         erase.
1683         * modules/openpty-tests (Makefile.am): Verify that PTY_LIB is defined.
1684
1685         openpty: Provide replacement on AIX, HP-UX, IRIX, Solaris.
1686         * lib/openpty.c (openpty): New replacement function.
1687         * lib/pty.in.h: Include <termios.h>.
1688         (openpty): Update declaration. Add comments.
1689         * m4/pty.m4 (gl_OPENPTY): Require AC_USE_SYSTEM_EXTENSIONS. If openpty
1690         is not declared, arrange to provide the replacement. Check for _getpty
1691         and posix_openpt.
1692         * modules/openpty (Depends-on): Add extensions, fcntl-h, ioctl.
1693         * m4/pty_h.m4 (gl_PTY_H_DEFAULTS): Initialize HAVE_OPENPTY.
1694         * modules/pty (Makefile.am): Substitute HAVE_OPENPTY.
1695         * modules/pty-tests (test_pty_c___LDADD): New variable.
1696         * doc/glibc-functions/openpty.texi: More supported platforms.
1697
1698 2010-03-21  Bruno Haible  <bruno@clisp.org>
1699
1700         setenv: Tweaks.
1701         * m4/setenv.m4 (gl_FUNC_SETENV_SEPARATE): Include necessary headers in
1702         the test program.
1703         * doc/posix-functions/setenv.texi: Update platforms list.
1704
1705 2010-03-21  Bruno Haible  <bruno@clisp.org>
1706
1707         New module 'unlockpt'.
1708         * lib/unlockpt.c: New file, from glibc with modifications.
1709         * m4/unlockpt.m4: New file.
1710         * modules/unlockpt: New file.
1711         * lib/stdlib.in.h (unlockpt): New declaration.
1712         * m4/stdlib_h.m4 (gl_STDLIB_H): Check whether unlockpt is declared.
1713         (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_UNLOCKPT, HAVE_UNLOCKPT.
1714         * modules/stdlib (Makefile.am): Substitute GNULIB_UNLOCKPT,
1715         HAVE_UNLOCKPT.
1716         * doc/posix-functions/unlockpt.texi: Mention the new module.
1717         * tests/test-stdlib-c++.cc: Check GNULIB_NAMESPACE::unlockpt.
1718         * config/srclist.txt: Add unlockpt.c (commented).
1719
1720 2010-03-21  Jim Meyering  <meyering@redhat.com>
1721
1722         maint.mk: prohibit inclusion of "intprops.h" without use
1723         * top/maint.mk (sc_prohibit_intprops_without_use): New rule.
1724
1725 2010-03-21  Bruno Haible  <bruno@clisp.org>
1726
1727         New module 'grantpt'.
1728         * lib/grantpt.c: New file, from glibc with modifications.
1729         * m4/grantpt.m4: New file.
1730         * modules/grantpt: New file.
1731         * lib/stdlib.in.h (grantpt): New declaration.
1732         * m4/stdlib_h.m4 (gl_STDLIB_H): Check whether grantpt is declared.
1733         (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_GRANTPT, HAVE_GRANTPT.
1734         * modules/stdlib (Makefile.am): Substitute GNULIB_GRANTPT,
1735         HAVE_GRANTPT.
1736         * doc/posix-functions/grantpt.texi: Mention the new module.
1737         * tests/test-stdlib-c++.cc: Check GNULIB_NAMESPACE::grantpt.
1738         * config/srclist.txt: Add grantpt.c (commented).
1739
1740 2010-03-21  Bruno Haible  <bruno@clisp.org>
1741
1742         New module 'pt_chown'.
1743         * lib/pt_chown.c: New file, from glibc with modifications.
1744         * lib/pty-private.h: New file, from glibc with modifications.
1745         * modules/pt_chown: New file.
1746         * config/srclist.txt: Add pt_chown.c, pty-private.h (commented).
1747
1748 2010-03-21  Bruno Haible  <bruno@clisp.org>
1749
1750         Tests for module 'ptsname'.
1751         * modules/ptsname-tests: New file.
1752         * tests/test-ptsname.c: New file.
1753
1754         New module 'ptsname'.
1755         * lib/ptsname.c: New file, from glibc with modifications.
1756         * m4/ptsname.m4: New file.
1757         * modules/ptsname: New file.
1758         * lib/stdlib.in.h (ptsname): New declaration.
1759         * m4/stdlib_h.m4 (gl_STDLIB_H): Check whether ptsname is declared.
1760         (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_PTSNAME, HAVE_PTSNAME.
1761         * modules/stdlib (Makefile.am): Substitute GNULIB_PTSNAME,
1762         HAVE_PTSNAME.
1763         * doc/posix-functions/ptsname.texi: Mention the new module.
1764         * tests/test-stdlib-c++.cc: Check GNULIB_NAMESPACE::ptsname.
1765         * config/srclist.txt: Add ptsname.c (commented).
1766
1767 2010-03-21  Bruno Haible  <bruno@clisp.org>
1768
1769         Tests for module 'ttyname_r'.
1770         * modules/ttyname_r-tests: New file.
1771         * tests/test-ttyname_r.c: New file.
1772
1773         New module 'ttyname_r'.
1774         * lib/ttyname_r.c: New file.
1775         * m4/ttyname_r.m4: New file.
1776         * modules/ttyname_r: New file.
1777         * lib/unistd.in.h (ttyname_r): New declaration.
1778         * m4/unistd_h.m4 (gl_UNISTD_H): Check whether ttyname_r is declared.
1779         (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_TTYNAME_R, HAVE_TTYNAME_R.
1780         * modules/unistd (Makefile.am): Substitute GNULIB_TTYNAME_R,
1781         HAVE_TTYNAME_R.
1782         * tests/test-unistd-c++.cc: Check GNULIB_NAMESPACE::ttyname_r.
1783         * doc/posix-functions/ttyname_r.texi: Mention the new module.
1784
1785 2010-03-20  Bruno Haible  <bruno@clisp.org>
1786
1787         signal: Undefine macro definitions in C++ mode.
1788         * lib/signal.in.h (sigismember, sigemptyset, sigaddset, sigdelset,
1789         sigfillset): Undefine macro definitions from the system header in C++
1790         mode.
1791         Reported by John W. Eaton <jwe@gnu.org>.
1792
1793 2010-03-20  Bruno Haible  <bruno@clisp.org>
1794
1795         Ensure no #include statements inside extern "C" { ... }.
1796         * lib/obstack.h: Shrink extern "C" { ... } region so that it does not
1797         contain #include statements.
1798         * lib/time.in.h: Likewise.
1799
1800 2010-03-20  Bruno Haible  <bruno@clisp.org>
1801
1802         Make _GL_WARN_ON_USE usable in C++ and C mode in the same compilation.
1803         * build-aux/warn-on-use.h (_GL_WARN_EXTERN_C): New macro.
1804         (_GL_WARN_ON_USE, _GL_WARN_ON_USE_CXX): Likewise.
1805         Reported by John W. Eaton <jwe@gnu.org>.
1806
1807 2010-03-20  Bruno Haible  <bruno@clisp.org>
1808
1809         * m4/unlink.m4 (gl_FUNC_UNLINK): Fix last commit.
1810         Reported by Jim Meyering.
1811
1812 2010-03-20  Bruno Haible  <bruno@clisp.org>
1813
1814         pipe: Set errno upon failure.
1815         * lib/pipe.h: Specify that when -1 is returned, errno is set.
1816         * lib/pipe.c (create_pipe): Set errno when returning -1. Use the right
1817         errno value in error message.
1818
1819 2010-03-20  Bruno Haible  <bruno@clisp.org>
1820             Jim Meyering  <meyering@redhat.com>
1821
1822         lchown: Avoid "unused variable" warning.
1823         * lib/lchown.c (rpl_lchown): Move variable 'st' into #if block.
1824
1825 2010-03-20  Bruno Haible  <bruno@clisp.org>
1826
1827         Work around unlink() bug on MacOS X 10.5.6.
1828         * lib/unlink.c (rpl_unlink): If UNLINK_PARENT_BUG is defined, fail when
1829         attempting to unlink a parent directory.
1830         * m4/unlink.m4 (gl_FUNC_UNLINK): Require AC_CANONICAL_HOST. Test for
1831         MacOS X 10.5 bug. If the bug is present, define UNLINK_PARENT_BUG and
1832         activate for the replacement function.
1833         * doc/posix-functions/unlink.texi: Mention the MacOS X 10.5 bug.
1834
1835 2010-03-20  Bruno Haible  <bruno@clisp.org>
1836
1837         Fix link errors on Solaris 8.
1838         * modules/dirent-tests (test_dirent_c___LDADD): Add LIB_NANOSLEEP.
1839         * modules/wctype-tests (test_wctype_c___LDADD): Likewise.
1840
1841 2010-03-19  Jim Meyering  <meyering@redhat.com>
1842
1843         regcomp.c: make non-_LIBC implementation of build_range_exp consistent
1844         The _LIBC implementation of build_range_exp correctly honors the
1845         RE_NO_EMPTY_RANGES flag when checking for reversed range endpoints.
1846         However, the non-_LIBC implementation would ignore that syntax-bit
1847         flag and return REG_ERANGE unconditionally.
1848         This change makes it honor that flag.
1849         * lib/regcomp.c (build_range_exp) [!_LIBC]: Add a parameter: "syntax".
1850         Make two pointer parameters "const".
1851         Use "syntax" bits in order to honor RE_NO_EMPTY_RANGES.
1852         (parse_bracket_exp): Update caller.
1853
1854         regex.m4: correct the reversed range endpoint ([b-a]) test
1855         * m4/regex.m4: When requiring that [b-a] evoke failure,
1856         use RE_NO_EMPTY_RANGES.  This makes this entire configure-time
1857         test pass once again for x86-based systems.
1858
1859 2010-03-19  Bruno Haible  <bruno@clisp.org>
1860
1861         scandir: Fix link error on Solaris 8.
1862         * lib/scandir.c (_D_EXACT_NAMLEN, _D_ALLOC_NAMLEN): New fallback
1863         macros.
1864
1865 2010-03-19  Bruno Haible  <bruno@clisp.org>
1866
1867         getusershell: Fix documentation.
1868         * doc/glibc-functions/endusershell.texi: Refer to the getusershell
1869         module.
1870         * doc/glibc-functions/setusershell.texi: Likewise.
1871
1872         getusershell: Provide declaration, missing on Solaris 9.
1873         * lib/unistd.in.h (getusershell, setusershell, endusershell): Declare
1874         also if HAVE_GETUSERSHELL && !HAVE_DECL_GETUSERSHELL.
1875         * m4/getusershell.m4 (gl_FUNC_GETUSERSHELL): When the function exists,
1876         check whether it is declared. Set HAVE_DECL_GETUSERSHELL.
1877         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
1878         HAVE_DECL_GETUSERSHELL, not HAVE_GETUSERSHELL.
1879         * modules/unistd (Makefile.am): Substitute HAVE_DECL_GETUSERSHELL, not
1880         HAVE_GETUSERSHELL.
1881         * doc/glibc-functions/getusershell.texi: Mention the Solaris problem.
1882
1883 2010-03-19  Bruno Haible  <bruno@clisp.org>
1884
1885         wctype: Provide iswblank function.
1886         * lib/wctype.in.h (iswblank): Provide a replacement also when iswcntrl
1887         exists and is fine.
1888         * m4/wctype_h.m4 (gl_WCTYPE_H): Also check whether iswcntrl exists.
1889         * modules/wctype (Makefile.am): Substitute HAVE_ISWBLANK.
1890         * tests/test-wctype.c (main): Re-enable the iswblank tests.
1891         * doc/posix-functions/iswblank.texi: Update.
1892
1893 2010-03-19  Bruno Haible  <bruno@clisp.org>
1894
1895         Tests of module 'pty' in C++ mode.
1896         * modules/pty-tests: New file.
1897         * tests/test-pty-c++.cc: New file.
1898         * m4/pty_h.m4 (gl_PTY_MODULE_INDICATOR): Invoke gl_MODULE_INDICATOR.
1899
1900 2010-03-19  Eric Blake  <eblake@redhat.com>
1901
1902         logb: fix documentation
1903         * doc/posix-functions/logb.texi (logb): Gnulib fixes the cygwin
1904         1.5 declaration bug.
1905
1906         forkpty, openpty: prefer glibc's const-safe prototype
1907         * lib/forkpty.c (rpl_forkpty): New file.
1908         * lib/openpty.c (rpl_openpty): Likewise.
1909         * modules/forkpty (Files): Distribute it.
1910         * modules/openpty (Files): Likewise.
1911         * m4/pty_h.m4 (gl_PTY_H_DEFAULTS): Add new witnesses.  Move decl
1912         check...
1913         * m4/pty.m4 (gl_FORKPTY, gl_OPENPTY): ...here.  Request
1914         replacement for for non-const BSD signature.
1915         * modules/pty (Makefile.am): Substitute witnesses.
1916         * lib/pty.in.h (forkpty, openpty): Declare replacements.
1917         * tests/test-forkpty.c: Update signature check.
1918         * tests/test-openpty.c: Likewise.
1919         * doc/glibc-functions/forkpty.texi (forkpty): Document the fix.
1920         * doc/glibc-functions/openpty.texi (openpty): Likewise.
1921
1922         forkpty, openpty: split functions into new modules
1923         * modules/pty (Makefile.am): Substitute new witnesses.
1924         (Libraries): Move library detection...
1925         * modules/forkpty: ...into new module.
1926         * modules/openpty: Another new module.
1927         * modules/pty-tests: Rename and split...
1928         * modules/forkpty-tests: ...to this...
1929         * modules/openpty-tests: ...and this.
1930         * tests/test-pty.c: Rename and split...
1931         * tests/test-forkpty.c: ...to this...
1932         * tests/test-openpty.c: ...and this.
1933         * m4/pty_h.m4 (gl_PTY_H_DEFAULTS): Add new witnesses.
1934         (gl_PTY): Split library searching...
1935         * m4/pty.m4 (gl_PTY_LIB): ...into new file.
1936         (gl_FORKPTY, gl_OPENPTY): New macros.
1937         * lib/pty.in.h (forkpty, openpty): Honor new witnesses.
1938         * NEWS: Mention the split.
1939         * MODULES.html.sh (Misc): Document the modules.
1940         * doc/glibc-functions/forkpty.texi (forkpty): Likewise.
1941         * doc/glibc-functions/openpty.texi (openpty): Likewise.
1942
1943         pty: improve replacement header
1944         * lib/pty.in.h: New file.
1945         * modules/pty (Files): Ship it.
1946         (Makefile.am): Always build replacement.
1947         * m4/pty.m4: Rename...
1948         * m4/pty_h.m4: ...to this.
1949         (gl_PTY): Modernize setting of witness macros; update check of
1950         forkpty to take proper advantage of cache.
1951         (gl_PTY_MODULE_INDICATOR, gl_PTY_H_DEFAULTS): New macros.
1952
1953         getopt: avoid compiler warning
1954         * lib/getopt.c (attribute_hidden): Remove unused macro.
1955
1956 2010-03-18  Bruno Haible  <bruno@clisp.org>
1957
1958         Fix link errors on Solaris 8.
1959         * modules/iconv-h-tests (test_iconv_h_c___LDADD): Add LIB_NANOSLEEP.
1960         * modules/search-tests (test_search_c___LDADD): Likewise.
1961         * modules/signal-tests (test_signal_c___LDADD): Likewise.
1962         * modules/spawn-tests (test_spawn_c___LDADD): Likewise.
1963         * modules/stdio-tests (test_stdio_c___LDADD): Likewise.
1964         * modules/sys_select-tests (test_sys_select_c___LDADD): Likewise.
1965         * modules/sys_socket-tests (test_sys_socket_c___LDADD): Likewise.
1966         * modules/sys_time-tests (test_sys_time_c___LDADD): Likewise.
1967         * modules/wchar-tests (test_wchar_c___LDADD): Likewise.
1968
1969 2010-03-18  Bruno Haible  <bruno@clisp.org>
1970
1971         Fix bug introduced on 2010-03-14.
1972         * m4/spawn_h.m4 (gl_HAVE_POSIX_SPAWN): New macro.
1973         (gl_SPAWN_H): Require it.
1974         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_BODY): Likewise.
1975         Reported by Simon Josefsson.
1976
1977 2010-03-18  Bruno Haible  <bruno@clisp.org>
1978
1979         Fix typo introduced on 2009-12-31.
1980         * m4/spawn_h.m4 (gl_SPAWN_H): Check for the declaration of
1981         posix_spawn_file_actions_adddup2.
1982
1983 2010-03-17  Bert Wesarg  <bert.wesarg@googlemail.com>  (tiny change)
1984         and Eric Blake  <eblake@redhat.com>
1985
1986         test-vc-list-files-git: make more robust
1987         * tests/test-vc-list-files-git.sh: Unset problematic environment
1988         variables.  Chain commands together.
1989
1990 2010-03-17  Ludovic Courtès <ludo@gnu.org>  (tiny change)
1991
1992         * m4/pty.m4: Unset $ac_cv_have_decl_forkpty before the second
1993         `AC_CHECK_DECL' invocation.
1994
1995 2010-03-15  Sergey Poznyakoff  <gray@gnu.org.ua>
1996
1997         * lib/inttostr.c (inttostr): Make sure the invocation of verify
1998         appears before executable statements. Suggested by Petr Sumbera
1999         <Petr.Sumbera@Sun.COM>.
2000
2001 2010-03-14  Bruno Haible  <bruno@clisp.org>
2002
2003         * tests/test-flock.c (test_exclusive): Comment out a test that causes
2004         portability problems. Instead use a simpler test.
2005         (main): Check that invalid arguments are rejected only on Linux.
2006
2007 2010-03-14  Bruno Haible  <bruno@clisp.org>
2008
2009         Fix bug introduced on 2009-12-31.
2010         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Invoke
2011         gl_PREREQ_SYS_H_WINSOCK2 always.
2012         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise. Remove
2013         SYS_SOCKET_H variable.
2014         * m4/sys_file_h.m4 (gl_HEADER_SYS_FILE_H): Remove test for flock.
2015         Update comments.
2016         * m4/ctype.m4 (gl_CTYPE_H): Update comments.
2017         * m4/langinfo_h.m4 (gl_LANGINFO_H): Likewise.
2018         * m4/sys_times_h.m4 (gl_SYS_TIMES_H): Likewise.
2019         * m4/sys_utsname_h.m4 (gl_SYS_UTSNAME_H): Likewise.
2020         * m4/sys_wait_h.m4 (gl_SYS_WAIT_H): Likewise.
2021
2022 2010-03-14  Bruno Haible  <bruno@clisp.org>
2023
2024         Fix values returned by sinl, cosl.
2025         * lib/trigl.h: Add specification comments.
2026         * lib/sincosl.c (kernel_sinl, kernel_cosl): Fix comments and formula
2027         that combines the values from the precomputed table with the values of
2028         the Chebyshev polynomials.
2029
2030 2010-03-14  Bruno Haible  <bruno@clisp.org>
2031
2032         Fix compilation error when modules 'posix_spawn[p]' are not used.
2033         * m4/spawn_h.m4 (gl_SPAWN_H): Set HAVE_POSIX_SPAWN here.
2034         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_BODY): ... not here.
2035
2036 2010-03-14  Bruno Haible  <bruno@clisp.org>
2037
2038         Fix compilation error on mingw when module 'time_r' is not used.
2039         * lib/time.in.h (localtime_r, gmtime_r): Declare only if GNULIB_TIME_R
2040         is 1.
2041         * tests/test-time-c++.cc (localtime_r, gmtime_r): Likewise.
2042         * modules/time_r (configure.ac): Invoke gl_TIME_MODULE_INDICATOR.
2043         * modules/time (Makefile.am): Substitute GNULIB_TIME_R.
2044         * m4/time_h.m4 (gl_HEADER_TIME_H_DEFAULTS): Initialize GNULIB_TIME_R.
2045
2046 2010-03-14  Bruno Haible  <bruno@clisp.org>
2047
2048         Fix compilation error with Sun C.
2049         * lib/strtol.c: Use LLONG_MIN instead of GCC specific LONG_LONG_MIN.
2050         Use LLONG_MAX instead of GCC specific LONG_LONG_MAX. Use ULLONG_MAX
2051         instead of GCC specific ULONG_LONG_MAX.
2052         * lib/xstrtoll.c: Likewise.
2053         * lib/xstrtoull.c: Likewise.
2054
2055 2010-03-13  Bruno Haible  <bruno@clisp.org>
2056
2057         Allow the user to disable C++ code and tests.
2058         * m4/ansi-c++.m4 (gl_CXX_CHOICE): New macro.
2059         (gl_PROG_ANSI_CXX): Require it.
2060
2061 2010-03-13  Bruno Haible  <bruno@clisp.org>
2062
2063         * DEPENDENCIES (libtool): Mention libtool 2.2.x requirement in special
2064         cases.
2065
2066 2010-03-13  Bruno Haible  <bruno@clisp.org>
2067
2068         Test that gnulib does not break the standard C++ headers.
2069         * tests/test-locale-c++2.cc: New file.
2070         * modules/locale-tests (Files): Add it.
2071         (Makefile.am): Compile it for test-locale-c++.
2072         * tests/test-math-c++2.cc: New file.
2073         * modules/math-tests (Files): Add it.
2074         (Makefile.am): Compile it for test-math-c++.
2075         * tests/test-signal-c++2.cc: New file.
2076         * modules/signal-tests (Files): Add it.
2077         (Makefile.am): Compile it for test-signal-c++.
2078         * tests/test-stdio-c++2.cc: New file.
2079         * modules/stdio-tests (Files): Add it.
2080         (Makefile.am): Compile it for test-stdio-c++.
2081         * tests/test-stdlib-c++2.cc: New file.
2082         * modules/stdlib-tests (Files): Add it.
2083         (Makefile.am): Compile it for test-stdlib-c++.
2084         * tests/test-string-c++2.cc: New file.
2085         * modules/string-tests (Files): Add it.
2086         (Makefile.am): Compile it for test-string-c++.
2087         * tests/test-time-c++2.cc: New file.
2088         * modules/time-tests (Files): Add it.
2089         (Makefile.am): Compile it for test-time-c++.
2090         Reported by John W. Eaton <jwe@gnu.org>.
2091
2092 2010-03-13  Bruno Haible  <bruno@clisp.org>
2093
2094         * gnulib-tool (func_usage): Clarify which options are available for
2095         --create-testdir and --create-megatestdir.
2096
2097 2010-03-13  Bruno Haible  <bruno@clisp.org>
2098
2099         Fix compilation error with glibc >= 2.10 and g++ >= 4.4.
2100         * build-aux/warn-on-use.h (_GL_WARN_ON_USE_CXX): New macro.
2101         * build-aux/c++defs.h (_GL_CXXALIASWARN1): New macro.
2102         * lib/string.in.h (memchr, memrchr, rawmemchr, strchrnul, strpbrk,
2103         strstr, strcasestr): Use _GL_CXXALIASWARN1 instead of _GL_CXXALIASWARN
2104         when appropriate.
2105         Reported by Jim Meyering.
2106
2107 2010-03-12  Simon Josefsson  <simon@josefsson.org>
2108
2109         * gnulib-tool (func_import): Explain origin of code.
2110
2111 2010-03-12  Bruno Haible  <bruno@clisp.org>
2112
2113         Fix problem with automake's definition of CXXLINK.
2114         * gnulib-tool (func_create_testdir): After LT_INIT, also use LT_LANG.
2115         Reported by Simon Josefsson and Ludovic Courtès.
2116
2117 2010-03-12  Bruno Haible  <bruno@clisp.org>
2118
2119         * doc/gnulib-intro.texi (Steady Development): Mention Ian Beckwith's
2120         stable releases.
2121
2122 2010-03-11  Bruno Haible  <bruno@clisp.org>
2123
2124         Fix problems with overloaded C++ definitions of memchr, strpbrk, etc.
2125         * build-aux/c++defs.h (_GL_CXXALIAS_SYS_CAST2): Make it work regardless
2126         whether the system provides one variant or multiple variants of the
2127         function.
2128         * lib/string.in.h (memchr, strpbrk): Use _GL_CXXALIAS_SYS_CAST2 for all
2129         C++ compilers.
2130         (memrchr, rawmemchr, strchrnul, strstr, strcasestr): Use
2131         _GL_CXXALIAS_SYS_CAST2 instead of _GL_CXXALIAS_SYS.
2132         Reported by Jim Meyering.
2133
2134 2010-03-09  Simon Josefsson  <simon@josefsson.org>
2135
2136         * gnulib-tool (LIBTOOLPATH): Fix cut'n'paste bug.
2137
2138 2010-03-08  Bruno Haible  <bruno@clisp.org>
2139
2140         gnulib-tool: Add support for --libtool in --create-testdir.
2141         * gnulib-tool (LIBTOOLPATH, LIBTOOLIZE): New variables.
2142         (func_create_testdir): Emit LT_INIT invocations. Invoke LIBTOOLIZE.
2143
2144 2010-03-08  Eric Blake  <eblake@redhat.com>
2145
2146         gnulib-tool.texi: mention possibility of git submodule
2147         * doc/gnulib-tool.texi (VCS Issues): Add details about using git
2148         submodules.
2149         * doc/.gitignore: Ignore another generated file.
2150
2151 2010-03-08  Karl Berry  <karl@gnu.org>
2152
2153         * doc/gnulib-tool.texi (VCS Issues): Mention third option
2154         of committing gnulib files while skipping others.
2155
2156 2010-03-07  Bruno Haible  <bruno@clisp.org>
2157
2158         Tests of module 'wctype' in C++ mode.
2159         * tests/test-wctype-c++.cc: New file.
2160         * modules/wctype-tests (Files): Add it and tests/signature.h.
2161         (Depends-on): Add ansi-c++-opt.
2162         (Makefile.am): Arrange to compile and run test-wctype-c++.
2163
2164         Tests of module 'wchar' in C++ mode.
2165         * tests/test-wchar-c++.cc: New file.
2166         * modules/wchar-tests (Files): Add it and tests/signature.h.
2167         (Depends-on): Add ansi-c++-opt.
2168         (Makefile.am): Arrange to compile and run test-wchar-c++.
2169         * m4/wchar_h.m4 (gl_WCHAR_MODULE_INDICATOR): Invoke
2170         gl_MODULE_INDICATOR.
2171
2172         Tests of module 'unistd' in C++ mode.
2173         * tests/test-unistd-c++.cc: New file.
2174         * modules/unistd-tests (Files): Add it and tests/signature.h.
2175         (Depends-on): Add ansi-c++-opt.
2176         (Makefile.am): Arrange to compile and run test-unistd-c++.
2177         * m4/unistd_h.m4 (gl_UNISTD_MODULE_INDICATOR): Invoke
2178         gl_MODULE_INDICATOR.
2179
2180         Tests of module 'time' in C++ mode.
2181         * tests/test-time-c++.cc: New file.
2182         * modules/time-tests (Files): Add it and tests/signature.h.
2183         (Depends-on): Add ansi-c++-opt.
2184         (Makefile.am): Arrange to compile and run test-time-c++.
2185         * m4/time_h.m4 (gl_TIME_MODULE_INDICATOR): Invoke gl_MODULE_INDICATOR.
2186
2187         Tests of module 'sys_time' in C++ mode.
2188         * tests/test-sys_time-c++.cc: New file.
2189         * modules/sys_time-tests (Files): Add it and tests/signature.h.
2190         (Depends-on): Add ansi-c++-opt.
2191         (Makefile.am): Arrange to compile and run test-sys_time-c++.
2192         * m4/sys_time_h.m4 (gl_SYS_TIME_MODULE_INDICATOR): Invoke
2193         gl_MODULE_INDICATOR.
2194
2195         Tests of module 'sys_stat' in C++ mode.
2196         * tests/test-sys_stat-c++.cc: New file.
2197         * modules/sys_stat-tests (Files): Add it and tests/signature.h.
2198         (Depends-on): Add ansi-c++-opt.
2199         (Makefile.am): Arrange to compile and run test-sys_stat-c++.
2200         * m4/sys_stat_h.m4 (gl_SYS_STAT_MODULE_INDICATOR): Invoke
2201         gl_MODULE_INDICATOR.
2202
2203         Tests of module 'sys_socket' in C++ mode.
2204         * tests/test-sys_socket-c++.cc: New file.
2205         * modules/sys_socket-tests (Files): Add it and tests/signature.h.
2206         (Depends-on): Add ansi-c++-opt.
2207         (Makefile.am): Arrange to compile and run test-sys_socket-c++.
2208         * m4/sys_socket_h.m4 (gl_SYS_SOCKET_MODULE_INDICATOR): Invoke
2209         gl_MODULE_INDICATOR.
2210
2211         Tests of module 'sys_select' in C++ mode.
2212         * tests/test-sys_select-c++.cc: New file.
2213         * modules/sys_select-tests (Files): Add it and tests/signature.h.
2214         (Depends-on): Add ansi-c++-opt.
2215         (Makefile.am): Arrange to compile and run test-sys_select-c++.
2216         * m4/sys_select_h.m4 (gl_SYS_SELECT_MODULE_INDICATOR): Invoke
2217         gl_MODULE_INDICATOR.
2218
2219         Tests of module 'sys_ioctl' in C++ mode.
2220         * tests/test-sys_ioctl-c++.cc: New file.
2221         * modules/sys_ioctl-tests (Files): Add it and tests/signature.h.
2222         (Depends-on): Add ansi-c++-opt.
2223         (Makefile.am): Arrange to compile and run test-sys_ioctl-c++.
2224         * m4/sys_ioctl_h.m4 (gl_SYS_IOCTL_MODULE_INDICATOR): Invoke
2225         gl_MODULE_INDICATOR.
2226
2227         Tests of module 'string' in C++ mode.
2228         * tests/test-string-c++.cc: New file.
2229         * modules/string-tests (Files): Add it and tests/signature.h.
2230         (Depends-on): Add ansi-c++-opt.
2231         (Makefile.am): Arrange to compile and run test-string-c++.
2232         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): Invoke
2233         gl_MODULE_INDICATOR.
2234
2235         Tests of module 'stdlib' in C++ mode.
2236         * tests/test-stdlib-c++.cc: New file.
2237         * modules/stdlib-tests (Files): Add it and tests/signature.h.
2238         (Depends-on): Add ansi-c++-opt.
2239         (Makefile.am): Arrange to compile and run test-stdlib-c++.
2240         * m4/stdlib_h.m4 (gl_STDLIB_MODULE_INDICATOR): Invoke
2241         gl_MODULE_INDICATOR.
2242
2243         Tests of module 'stdio' in C++ mode.
2244         * tests/test-stdio-c++.cc: New file.
2245         * modules/stdio-tests (Files): Add it and tests/signature.h.
2246         (Depends-on): Add ansi-c++-opt.
2247         (Makefile.am): Arrange to compile and run test-stdio-c++.
2248         * m4/stdio_h.m4 (gl_STDIO_MODULE_INDICATOR): Invoke
2249         gl_MODULE_INDICATOR.
2250
2251         Tests of module 'spawn' in C++ mode.
2252         * tests/test-spawn-c++.cc: New file.
2253         * modules/spawn-tests (Files): Add it and tests/signature.h.
2254         (Depends-on): Add ansi-c++-opt.
2255         (Makefile.am): Arrange to compile and run test-spawn-c++.
2256         * m4/spawn_h.m4 (gl_SPAWN_MODULE_INDICATOR): Invoke
2257         gl_MODULE_INDICATOR.
2258
2259         Tests of module 'signal' in C++ mode.
2260         * tests/test-signal-c++.cc: New file.
2261         * modules/signal-tests (Files): Add it and tests/signature.h.
2262         (Depends-on): Add ansi-c++-opt.
2263         (Makefile.am): Arrange to compile and run test-signal-c++.
2264         * m4/signal_h.m4 (gl_SIGNAL_MODULE_INDICATOR): Invoke
2265         gl_MODULE_INDICATOR.
2266
2267         Tests of module 'search' in C++ mode.
2268         * tests/test-search-c++.cc: New file.
2269         * modules/search-tests (Files): Add it and tests/signature.h.
2270         (Depends-on): Add ansi-c++-opt.
2271         (Makefile.am): Arrange to compile and run test-search-c++.
2272         * m4/search_h.m4 (gl_SEARCH_MODULE_INDICATOR): Invoke
2273         gl_MODULE_INDICATOR.
2274
2275         Tests of module 'math' in C++ mode.
2276         * tests/test-math-c++.cc: New file.
2277         * modules/math-tests (Files): Add it and tests/signature.h.
2278         (Depends-on): Add ansi-c++-opt.
2279         (Makefile.am): Arrange to compile and run test-math-c++.
2280         * m4/math_h.m4 (gl_MATH_MODULE_INDICATOR): Invoke gl_MODULE_INDICATOR.
2281
2282         Tests of module 'locale' in C++ mode.
2283         * tests/test-locale-c++.cc: New file.
2284         * modules/locale-tests (Files): Add it and tests/signature.h.
2285         (Depends-on): Add ansi-c++-opt.
2286         (Makefile.am): Arrange to compile and run test-locale-c++.
2287         * m4/locale_h.m4 (gl_LOCALE_MODULE_INDICATOR): Invoke
2288         gl_MODULE_INDICATOR.
2289
2290         Tests of module 'langinfo' in C++ mode.
2291         * tests/test-langinfo-c++.cc: New file.
2292         * modules/langinfo-tests (Files): Add it and tests/signature.h.
2293         (Depends-on): Add ansi-c++-opt.
2294         (Makefile.am): Arrange to compile and run test-langinfo-c++.
2295         * m4/langinfo_h.m4 (gl_LANGINFO_MODULE_INDICATOR): Invoke
2296         gl_MODULE_INDICATOR.
2297
2298         Tests of module 'iconv-h' in C++ mode.
2299         * tests/test-iconv-h-c++.cc: New file.
2300         * modules/iconv-h-tests (Files): Add it and tests/signature.h.
2301         (Depends-on): Add ansi-c++-opt.
2302         (Makefile.am): Arrange to compile and run test-iconv-h-c++.
2303
2304         Tests of module 'glob' in C++ mode.
2305         * tests/test-glob-c++.cc: New file.
2306         * modules/glob-tests (Files): Add it.
2307         (Depends-on): Add ansi-c++-opt.
2308         (Makefile.am): Arrange to compile and run test-glob-c++.
2309
2310         Tests of module 'fcntl-h' in C++ mode.
2311         * tests/test-fcntl-h-c++.cc: New file.
2312         * modules/fcntl-h-tests (Files): Add it and tests/signature.h.
2313         (Depends-on): Add ansi-c++-opt.
2314         (Makefile.am): Arrange to compile and run test-fcntl-h-c++.
2315         * m4/fcntl_h.m4 (gl_FCNTL_MODULE_INDICATOR): Invoke
2316         gl_MODULE_INDICATOR.
2317
2318         Tests of module 'dirent' in C++ mode.
2319         * tests/test-dirent-c++.cc: New file.
2320         * modules/dirent-tests (Files): Add it and tests/signature.h.
2321         (Depends-on): Add ansi-c++-opt.
2322         (Makefile.am): Arrange to compile and run test-dirent-c++.
2323         * m4/dirent_h.m4 (gl_DIRENT_MODULE_INDICATOR): Invoke
2324         gl_MODULE_INDICATOR.
2325
2326         New module 'ansi-c++-opt'.
2327         * modules/ansi-c++-opt: New file.
2328         * m4/ansi-c++.m4: New file, from GNU gettext with modifications.
2329
2330         Document C++ namespace mode.
2331         * doc/gnulib.texi (A C++ namespace for gnulib): New section.
2332
2333         wctype: Avoid #define replacements in C++ mode.
2334         * lib/wctype.in.h: Include c++defs.h, warn-on-use.h.
2335         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph, iswlower,
2336         iswprint, iswpunct, iswspace, iswupper, iswxdigit, towlower, towupper):
2337         In C++, define a namespaced alias symbol.
2338         * m4/wctype_h.m4 (gl_WCTYPE_H): Don't set WCTYPE_H.
2339         * modules/wctype (Depends-on): Add c++defs, warn-on-use.
2340         (Makefile.am): Provide a wctype.h replacement always. Update wctype.h
2341         rule.
2342
2343         wchar: Avoid #define replacements in C++ mode.
2344         * lib/wchar.in.h: Include c++defs.h.
2345         (btowc, wctob, mbsinit, mbrtowc, mbrlen, mbsrtowcs, mbsnrtowcs,
2346         wcrtomb, wcsrtombs, wcsnrtombs): In C++, define a namespaced alias
2347         symbol.
2348         (wcwidth): Likewise. Fix prototype to be POSIX compliant.
2349         * modules/wchar (Depends-on): Add c++defs.
2350         (Makefile.am): Update wchar.h rule.
2351
2352         unistd: Avoid #define replacements in C++ mode.
2353         * lib/unistd.in.h: Include c++defs.h.
2354         (chown, close, dup, dup2, dup3, euidaccess, faccessat, fchdir,
2355         fchownat, fsync, ftruncate, getcwd, getdomainname, getdtablesize,
2356         getgroups, gethostname, getlogin, getlogin_r, getpagesize,
2357         getusershell, setusershell, endusershell, lchown, link, linkat, lseek,
2358         pipe2, pread, readlink, readlinkat, rmdir, sleep, symlink, symlinkat,
2359         unlink, unlinkat, usleep, write): In C++, define a namespaced alias
2360         symbol.
2361         (environ): Update.
2362         * modules/unistd (Depends-on): Add c++defs.
2363         (Makefile.am): Update unistd.h rule.
2364
2365         time: Avoid #define replacements in C++ mode.
2366         * lib/time.in.h: Include c++defs.h, warn-on-use.h.
2367         (nanosleep, mktime, localtime_r, gmtime_r, strptime, timegm): In C++,
2368         define a namespaced alias symbol.
2369         * m4/time_h.m4 (gl_TIME_MODULE_INDICATOR): New macro.
2370         (gl_HEADER_TIME_H_DEFAULTS): Initialize also GNULIB_MKTIME,
2371         GNULIB_NANOSLEEP, GNULIB_STRPTIME, GNULIB_TIMEGM.
2372         * modules/time (Depends-on): Add c++defs, warn-on-use.
2373         (Makefile.am): Update time.h rule.
2374         * modules/mktime (configure.ac): Invoke gl_TIME_MODULE_INDICATOR.
2375         * modules/nanosleep (configure.ac): Likewise.
2376         * modules/strptime (configure.ac): Likewise.
2377         * modules/timegm (configure.ac): Likewise.
2378
2379         sys_time: Avoid #define replacements in C++ mode.
2380         * lib/sys_time.in.h: Include c++defs.h.
2381         (gettimeofday): In C++, define a namespaced alias symbol.
2382         * modules/sys_time (Depends-on): Add c++defs.
2383         (Makefile.am): Update sys/time.h rule.
2384
2385         sys_stat: Avoid #define replacements in C++ mode.
2386         * lib/sys_stat.in.h: Include c++defs.h.
2387         (fchmodat, fstat, fstatat, futimens, lchmod, lstat, mkdir, mkdirat,
2388         mkfifo, mkfifoat, mknod, mknodat, utimensat): In C++, define a
2389         namespaced alias symbol.
2390         In C++, define a namespaced alias symbol.
2391         * modules/sys_stat (Depends-on): Add c++defs.
2392         (Makefile.am): Update sys/stat.h rule.
2393
2394         sys_socket: Avoid #define replacements in C++ mode.
2395         * lib/sys_socket.in.h: Handle the case of recursive include on Cygwin.
2396         Include c++defs.h. Include warn-on-use.h earlier. Enable the function
2397         definitions also when the system has a <sys/socket.h>.
2398         (socket, connect, accept, bind, getpeername, getsockname, getsockopt,
2399         listen, recv, send, recvfrom, sendto, setsockopt, shutdown, accept4):
2400         In C++, define a namespaced alias symbol.
2401         * modules/sys_socket (Depends-on): Add c++defs.
2402         (Makefile.am): Update sys/socket.h rule.
2403
2404         sys_select: Avoid #define replacements in C++ mode.
2405         * lib/sys_select.in.h: Include c++defs.h. Enable the function
2406         definitions also when the system has a <sys/select.h>.
2407         (select): In C++, define a namespaced alias symbol.
2408         * modules/sys_select (Depends-on): Add c++defs.
2409         (Makefile.am): Update sys/select.h rule.
2410
2411         sys_ioctl: Avoid #define replacements in C++ mode.
2412         * lib/sys_ioctl.in.h: Include c++defs.h.
2413         (ioctl): In C++, define a namespaced alias symbol.
2414         * modules/sys_ioctl (Depends-on): Add c++defs.
2415         (Makefile.am): Update sys/ioctl.h rule.
2416
2417         string: Avoid #define replacements in C++ mode.
2418         * lib/string.in.h: Include c++defs.h.
2419         (stpncpy): Define to rpl_stpncpy, not gnu_stpncpy.
2420         (memchr, memmem, mempcpy, memrchr, rawmemchr, stpcpy, stpncpy,
2421         strchrnul, strdup, strndup, strnlen, strpbrk, strsep, strstr,
2422         strcasestr, strtok_r, mbslen, mbschr, mbsrchr, mbspbrk, strerror,
2423         strsignal, strverscmp): In C++, define a namespaced alias symbol.
2424         * modules/string (Depends-on): Add c++defs.
2425         (Makefile.am): Update string.h rule.
2426
2427         stdlib: Avoid #define replacements in C++ mode.
2428         * lib/stdlib.in.h: Include c++defs.h.
2429         (atoll, calloc, canonicalize_file_name, getloadavg, getsubopt, malloc,
2430         mkdtemp, mkostemp, mkostemps, mkstemp, mkstemps, putenv, random_r,
2431         srandom_r, initstate_r, setstate_r, realloc, realpath, rpmatch, setenv,
2432         strtod, strtoll, strtoull, unsetenv): In C++, define a namespaced alias
2433         symbol.
2434         * modules/stdlib (Depends-on): Add c++defs.
2435         (Makefile.am): Update stdlib.h rule.
2436
2437         stdio: Avoid #define replacements in C++ mode.
2438         * lib/stdio.in.h: Include c++defs.h.
2439         (dprintf, fclose, fflush, fopen, fprintf, fpurge, fputc, fputs,
2440         freopen, fseek, fseeko, ftell, ftello, fwrite, getdelim, getline,
2441         obstack_printf, obstack_vprintf, perror, popen, printf, fputc, putchar,
2442         puts, remove, rename, renameat, snprintf, sprintf, asprintf, vasprintf,
2443         vdprintf, vfprintf, vprintf, vsnprintf, vsprintf): In C++, define a
2444         namespaced alias symbol.
2445         * modules/stdio (Depends-on): Add c++defs.
2446         (Makefile.am): Update stdio.h rule.
2447
2448         spawn: Avoid #define replacements in C++ mode.
2449         * lib/spawn.in.h: Include c++defs.h.
2450         (posix_spawn, posix_spawnp, posix_spawnattr_init,
2451         posix_spawnattr_destroy, posix_spawnattr_getsigdefault,
2452         posix_spawnattr_setsigdefault, posix_spawnattr_getsigmask,
2453         posix_spawnattr_setsigmask, posix_spawnattr_getflags,
2454         posix_spawnattr_setflags, posix_spawnattr_getpgroup,
2455         posix_spawnattr_setpgroup, posix_spawnattr_getschedpolicy,
2456         posix_spawnattr_setschedpolicy, posix_spawnattr_getschedparam,
2457         posix_spawnattr_setschedparam, posix_spawn_file_actions_init,
2458         posix_spawn_file_actions_destroy, posix_spawn_file_actions_addopen,
2459         posix_spawn_file_actions_addclose, posix_spawn_file_actions_adddup2):
2460         In C++, define a namespaced alias symbol.
2461         * modules/spawn (Depends-on): Add c++defs.
2462         (Makefile.am): Update spawn.h rule.
2463
2464         signal: Avoid #define replacements in C++ mode.
2465         * lib/signal.in.h: Include c++defs.h.
2466         (sigismember, sigemptyset, sigaddset, sigdelset, sigfillset,
2467         sigpending, sigprocmask, signal, raise, sigaction): In C++, define a
2468         namespaced alias symbol.
2469         * modules/signal (Depends-on): Add c++defs.
2470         (Makefile.am): Update signal.h rule.
2471
2472         search: Avoid #define replacements in C++ mode.
2473         * lib/search.in.h: Include c++defs.h.
2474         (_gl_search_compar_fn, _gl_search_action_fn): New types.
2475         (tsearch, tfind, tdelete, twalk): In C++, define a namespaced alias
2476         symbol.
2477         * modules/search (Depends-on): Add c++defs.
2478         (Makefile.am): Update search.h rule.
2479
2480         math: Avoid #define replacements in C++ mode.
2481         * lib/math.in.h: Include c++defs.h.
2482         (frexp, acosl, asinl, atanl, ceilf, ceill, cosl, expl, floorf, floorl,
2483         frexpl, ldexpl, logl, roundf, round, roundl, sinl, sqrtl, tanl, truncf,
2484         trunc, truncl): In C++, define a namespaced alias symbol.
2485         * modules/math (Depends-on): Add c++defs.
2486         (Makefile.am): Update math.h rule.
2487
2488         locale: Avoid #define replacements in C++ mode.
2489         * lib/locale.in.h: Include c++defs.h.
2490         (duplocale): In C++, define a namespaced alias symbol.
2491         * m4/locale_h.m4 (gl_LOCALE_H_DEFAULTS): Initialize HAVE_DUPLOCALE.
2492         * m4/duplocale.m4 (gl_FUNC_DUPLOCALE): Set HAVE_DUPLOCALE.
2493         * modules/locale (Depends-on): Add c++defs.
2494         (Makefile.am): Update locale.h rule. Substitute HAVE_DUPLOCALE.
2495
2496         langinfo: Avoid #define replacements in C++ mode.
2497         * lib/langinfo.in.h: Include c++defs.h.
2498         (nl_langinfo): In C++, define a namespaced alias symbol.
2499         * modules/langinfo (Depends-on): Add c++defs.
2500         (Makefile.am): Update langinfo.h rule.
2501
2502         iconv-h: Avoid #define replacements in C++ mode.
2503         * lib/iconv.in.h: Include c++defs.h, warn-on-use.h.
2504         (iconv_open, iconv, iconv_close): In C++, define a namespaced alias
2505         symbol.
2506         * m4/iconv_open.m4 (gl_FUNC_ICONV_OPEN): Invoke gl_REPLACE_ICONV_H
2507         whenever iconv is present.
2508         * modules/iconv-h (Depends-on): Add c++defs, warn-on-use.
2509         (Makefile.am): Update iconv.h rule.
2510
2511         glob: Avoid #define replacements in C++ mode.
2512         * lib/glob.in.h: Include c++defs.h, warn-on-use.h.
2513         (_gl_glob_errfunc_fn): New type.
2514         (glob, globfree, glob_pattern_p): In C++, define a namespaced alias
2515         symbol.
2516         * modules/glob (Depends-on): Add c++defs, warn-on-use.
2517         (Makefile.am): Update glob.h rule.
2518
2519         fcntl-h: Avoid #define replacements in C++ mode.
2520         * lib/fcntl.in.h: Include c++defs.h.
2521         (fcntl, open, openat): In C++, define a namespaced alias symbol.
2522         * modules/fcntl-h (Depends-on): Add c++defs.
2523         (Makefile.am): Update fcntl.h rule.
2524
2525         dirent: Avoid #define replacements in C++ mode.
2526         * lib/dirent.in.h: Include c++defs.h.
2527         (closedir, fdopendir, opendir, scandir, alphasort): In C++, define a
2528         namespaced alias symbol.
2529         (dirfd): Update declaration.
2530         * modules/dirent (Depends-on): Add c++defs.
2531         (Makefile.am): Update dirent.h rule.
2532
2533         ctype: Make it usable in C++ code.
2534         * lib/ctype.in.h: Include c++defs.h.
2535         (isblank): Declare as extern "C".
2536         * modules/ctype (Depends-on): Add c++defs.
2537         (Makefile.am): Update ctype.h rule.
2538
2539         New module 'c++defs'.
2540         * modules/c++defs: New file.
2541         * build-aux/c++defs.h: New file.
2542         Reported by John W. Eaton <jwe@gnu.org>.
2543
2544 2010-03-07  Bruno Haible  <bruno@clisp.org>
2545
2546         logb: Provide missing declaration for Cygwin.
2547         * lib/math.in.h (logb): New declaration.
2548         * m4/logb.m4: New file.
2549         * modules/logb (Files): Add m4/logb.m4.
2550         (Depends-on): Add math.
2551         (configure.ac): Invoke gl_FUNC_LOGB, gl_MATH_MODULE_INDICATOR.
2552         * m4/math_h.m4 (gl_MATH_H): Check also for logb declaration.
2553         (gl_MATH_H_DEFAULTS): Initialize GNULIB_LOGB, HAVE_DECL_LOGB.
2554         * modules/math (Makefile.am): Substitute GNULIB_LOGB, HAVE_DECL_LOGB.
2555         * doc/posix-functions/logb.texi: Mention the Cygwin bug.
2556
2557 2010-03-07  Bruno Haible  <bruno@clisp.org>
2558
2559         Fix test-cond link error.
2560         * tests/test-cond.c: Include <stdio.h>.
2561
2562 2010-03-07  Bruno Haible  <bruno@clisp.org>
2563
2564         Fix test-dirent-safer link error.
2565         * modules/dirent-safer-tests (Makefile.am): Define
2566         test_dirent_safer_LDADD.
2567
2568 2010-03-07  Bruno Haible  <bruno@clisp.org>
2569
2570         * gnulib-tool (func_create_testdir): Don't use 'lib-ignore' module
2571         among default module list.
2572
2573 2010-03-07  Bruno Haible  <bruno@clisp.org>
2574
2575         Fix link error on platforms with GNU libiconv.
2576         * modules/unistr/u8-strcoll-tests (Makefile): Define
2577         test_u8_strcoll_LDADD.
2578         * modules/unistr/u16-strcoll-tests (Makefile): Define
2579         test_u16_strcoll_LDADD.
2580         * modules/unistr/u32-strcoll-tests (Makefile): Define
2581         test_u32_strcoll_LDADD.
2582
2583 2010-03-07  Bruno Haible  <bruno@clisp.org>
2584
2585         Use POSIX declarations for socket functions.
2586         * lib/sys_socket.in.h (rpl_connect, rpl_accept, rpl_bind,
2587         rpl_getpeername, rpl_getsockname, rpl_recv, rpl_send, rpl_recvfrom,
2588         rpl_sendto): Change declaration to match POSIX.
2589         * lib/connect.c (rpl_connect): Likewise.
2590         * lib/accept.c (rpl_accept): Likewise.
2591         * lib/bind.c (rpl_bind): Likewise.
2592         * lib/getpeername.c (rpl_getpeername): Likewise.
2593         * lib/getsockname.c (rpl_getsockname): Likewise.
2594         * lib/recv.c (rpl_recv): Likewise.
2595         * lib/send.c (rpl_send): Likewise.
2596         * lib/recvfrom.c (rpl_recvfrom): Likewise.
2597         * lib/sendto.c (rpl_sendto): Likewise.
2598
2599 2010-03-06  Bruno Haible  <bruno@clisp.org>
2600
2601         Clarify access, euidaccess, faccessat.
2602         * doc/posix-functions/faccessat.texi: Mention security problem under
2603         "Other problems", not "Portability problems".
2604         * doc/posix-functions/access.texi: Likewise. Mention a related security
2605         problem.
2606         * doc/glibc-functions/euidaccess.texi: Mention security problems.
2607         * lib/euidaccess.c: Add comments about platforms.
2608         * lib/unistd.in.h (access, euidaccess): Add warnings.
2609
2610 2010-03-07  Bruno Haible  <bruno@clisp.org>
2611
2612         Ensure posix_spawnattr_{get,set}sched{policy,param} are defined.
2613         * lib/spawn.in.h (POSIX_SPAWN_SETSCHEDPARAM): Define fallback.
2614         (POSIX_SPAWN_SETSCHEDULER): Likewise.
2615         (POSIX_SPAWN_USEVFORK): Define in a way that works when
2616         POSIX_SPAWN_SETSCHEDPARAM and POSIX_SPAWN_SETSCHEDULER are zero.
2617         (posix_spawnattr_getschedpolicy, posix_spawnattr_setschedpolicy): Also
2618         declare when POSIX_SPAWN_SETSCHEDULER is zero.
2619         (posix_spawnattr_getschedparam, posix_spawnattr_setschedparam): Also
2620         declare when POSIX_SPAWN_SETSCHEDPARAM is zero.
2621         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_BODY): Test whether
2622         POSIX_SPAWN_SETSCHEDULER or POSIX_SPAWN_SETSCHEDPARAM are zero.
2623         * modules/posix_spawnattr_getschedparam (configure.ac): Enable the
2624         replacement also when POSIX_SPAWN_SETSCHEDPARAM is zero.
2625         * modules/posix_spawnattr_setschedparam (configure.ac): Likewise.
2626         * modules/posix_spawnattr_getschedpolicy (configure.ac): Enable the
2627         replacement also when POSIX_SPAWN_SETSCHEDULER is zero.
2628         * modules/posix_spawnattr_setschedpolicy (configure.ac): Likewise.
2629         * lib/spawnattr_getschedparam.c (posix_spawnattr_getschedparam): Do
2630         nothing if POSIX_SPAWN_SETSCHEDPARAM is zero.
2631         * lib/spawnattr_setschedparam.c (posix_spawnattr_setschedparam):
2632         Likewise.
2633         * lib/spawnattr_getschedpolicy.c (posix_spawnattr_getschedpolicy): Do
2634         nothing if POSIX_SPAWN_SETSCHEDULER is zero.
2635         * lib/spawnattr_setschedpolicy.c (posix_spawnattr_setschedpolicy):
2636         Likewise.
2637         * tests/test-spawn.c (main): Make it work when
2638         POSIX_SPAWN_SETSCHEDPARAM and POSIX_SPAWN_SETSCHEDULER are zero.
2639
2640 2010-03-07  Bruno Haible  <bruno@clisp.org>
2641
2642         Fix incorrect Makefile.am generation in German locale.
2643         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
2644         Execute sed command with character range in C locale.
2645
2646 2010-03-06  Bruno Haible  <bruno@clisp.org>
2647
2648         Tests for module 'iconv-h'.
2649         * modules/iconv-h-tests: New file.
2650         * tests/test-iconv-h.c: New file.
2651
2652         New module 'iconv-h'.
2653         * modules/iconv-h: New file.
2654         * modules/iconv_open (Files): Remove lib/iconv.in.h, m4/iconv_h.m4.
2655         (Depends-on): Add iconv-h. Remove include_next, arg-nonnull.
2656         (configure.ac): Remove gl_ICONV_H.
2657         (Makefile.am): Remove rule for iconv.h.
2658
2659 2010-03-06  Bruno Haible  <bruno@clisp.org>
2660
2661         More consistent naming of *.m4 files.
2662         * m4/wctype_h.m4: Renamed from m4/wctype.m4.
2663         * modules/wctype (Files): Update.
2664
2665         More consistent naming of *.m4 files.
2666         * m4/wchar_h.m4: Renamed from m4/wchar.m4.
2667         * modules/wchar (Files): Update.
2668
2669 2010-03-06  Jim Meyering  <meyering@redhat.com>
2670
2671         euidaccess: relax license to LGPLv2+
2672         * modules/euidaccess (License): Relax to LGPLv2+.
2673
2674 2010-03-06  Bruno Haible  <bruno@clisp.org>
2675
2676         Prefer lib_SOURCES over unconditional AC_LIBOBJ.
2677         * modules/exitfail (configure.ac): Remove AC_LIBOBJ invocation.
2678         (Makefile.am): Augment lib_SOURCES instead.
2679
2680 2010-03-04  Jim Meyering  <meyering@redhat.com>
2681
2682         utime: remove obsolete module
2683         This module, like autoconf's AC_FUNC_UTIME_NULL macro, has been
2684         unnecessary for years, and has been marked as obsolete for 10 months.
2685         * modules/utime: Remove file.
2686         * lib/utime.c: Remove file.
2687         * m4/utime.m4: Remove file.
2688         * m4/utimes-null.m4: Remove file.
2689         * doc/posix-functions/utime.texi (utime): Remove reference to
2690         the module.  Move the sole "fixed by gnulib" item into the
2691         "problems not fixed by Gnulib" list.
2692         * MODULES.html.sh (func_all_modules): Remove reference to "utime".
2693
2694 2010-03-05  Simon Josefsson  <simon@josefsson.org>
2695
2696         * modules/exit (License): Relax license to LGPLv2+.
2697         (Status): Mark as obsolete.
2698         * NEWS: Mention deprecated 'exit' module.
2699         * doc/posix-functions/exit.texi: Recommend 'stdlib' module instead
2700         of now obsolete 'exit'.
2701
2702 2010-03-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2703
2704         fts-lgpl: remove unused module
2705         * modules/fts-lgpl: Remove.
2706         * MODULES.html.sh (func_all_modules): Adjust.
2707         * check-module (find_included_lib_files): Adjust.
2708         * m4/fts.m4 (gl_FUNC_FTS_LGPL): Remove.
2709
2710 2010-03-02  Ben Walton  <bwalton@artsci.utoronto.ca>  (tiny change)
2711
2712         copy-acl: enhance Solaris ACL error handling
2713         * lib/copy-acl.c (qcopy_acl): Also ignore EOPNOTSUPP.
2714         * lib/set-mode-acl.c (qset_acl): Likewise.
2715
2716 2010-03-02  Bruno Haible  <bruno@clisp.org>
2717
2718         spawn: Don't override the system defined values on FreeBSD 8.
2719         * lib/spawn.in.h (POSIX_SPAWN_RESETIDS, POSIX_SPAWN_SETPGROUP,
2720         POSIX_SPAWN_SETSIGDEF, POSIX_SPAWN_SETSIGMASK,
2721         POSIX_SPAWN_SETSCHEDPARAM, POSIX_SPAWN_SETSCHEDULER): Don't redefine
2722         if HAVE_POSIX_SPAWN is 1.
2723         Reported by Johan van Selst <johans@stack.nl> via Eric Blake.
2724
2725 2010-03-01  Bruno Haible  <bruno@clisp.org>
2726
2727         * doc/gnulib-tool.texi (Initial import): Clarify the requirements
2728         regarding Automake.
2729
2730 2010-02-25  Bruno Haible  <bruno@clisp.org>
2731
2732         Fix breakage of gnulib-tool with ksh, introduced on 2010-02-21.
2733         * gnulib-tool: Define 'echo' as a function only before the ksh alias
2734         setting, not afterwards.
2735         Reported by Ben Walton <bwalton@artsci.utoronto.ca>.
2736
2737 2010-02-24  Eric Blake  <eblake@redhat.com>
2738
2739         bootstrap, git-version-gen: use timestamp
2740         * build-aux/git-version-gen (scriptversion): Force UTC.
2741         * build-aux/bootstrap (scriptversion): New variable.
2742
2743         bootstrap: allow older git
2744         * build-aux/bootstrap (GNULIB_SRCDIR): Add fallback if git is
2745         older than 1.6.4.  Requested by the libvirt project.
2746
2747 2010-02-23  Eric Blake  <eblake@redhat.com>
2748
2749         warn-on-use: work with old autoconf
2750         * m4/warn-on-use.m4 (gl_WARN_ON_USE_PREPARE): Accomodate older
2751         AS_VAR semantics of autoconf 2.60.
2752         Reported by Bruno Haible.
2753
2754         bootstrap: improve some comments
2755         * build-aux/bootstrap: Drop unneeded emacs hint.  Add some
2756         clarification comments.
2757
2758         gettimeofday: provide correct function
2759         * lib/gettimeofday.c (gettimeofday): Provide rpl_gettimeofday only
2760         when replacement is declared, otherwise provide gettimeofday.
2761         Reported by Michael Goffioul.
2762
2763 2010-02-23  Jim Meyering  <meyering@redhat.com>
2764
2765         lib-ignore: relax license to "unlimited", not LGPLv2+
2766         * modules/lib-ignore (License): Relax to "unlimited".
2767
2768 2010-02-23  Jim Meyering  <meyering@redhat.com>
2769
2770         lib-ignore: relax license to LGPLv2+
2771         * modules/lib-ignore (License): Relax to LGPLv2+.
2772
2773 2010-02-22  Eric Blake  <eblake@redhat.com>
2774
2775         lseek: avoid bash 3.2 broken pipe bug
2776         * m4/lseek.m4 (gl_FUNC_LSEEK): Drain pipe, to avoid spurious
2777         warning from bash 3.2.
2778         Reported by Ben Pfaff, with analysis from Bruno Haible.
2779
2780         bootstrap: support non-FSF copyright holder
2781         * build-aux/bootstrap (COPYRIGHT_HOLDER, with_gettext): Allow
2782         bootstrap.conf override of COPYRIGHT_HOLDER.
2783         (MSGID_BUGS_ADDRESS): Allow URL rather than email.
2784
2785         bootstrap: interoperate with gettext 0.14.1
2786         * build-aux/bootstrap (slurp): Fix typo when using older gettext.
2787
2788         bootstrap: allow for alternate submodule location
2789         * build-aux/bootstrap (gnulib_path): New variable; use instead of
2790         hardcoding submodule location.
2791         (gnulib_mk): Allow direct use of Makefile.am.
2792
2793         bootstrap: use GNULIB_SRCDIR to reduce disk usage
2794         * build-aux/bootstrap (GNULIB_SRCDIR): If set, use as a reference,
2795         rather than reconfiguring where the submodule points.
2796
2797         gettimeofday: restore support for platforms that lack function
2798         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): Also compile
2799         replacement if function is missing.
2800         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_DEFAULTS): New witness.
2801         * modules/sys_time (Makefile.am): Substitute it.
2802         * lib/sys_time.in.h (gettimeofday): Check it.
2803         Reported by Michael Goffioul.
2804
2805 2010-02-21  Bruno Haible  <bruno@clisp.org>
2806
2807         * lib/stdio.in.h (obstack_printf): Fix typo.
2808
2809 2010-02-21  Jose E. Marchesi  <jemarch@gnu.org>
2810
2811         vc-list-files: use bzr ls's -R option
2812         * build-aux/vc-list-files: Invoke bazaar to generate a recursive
2813         list of versioned files based on 'dir' (usage of -R in 'bzr ls').
2814
2815 2010-02-21  Jim Meyering  <meyering@redhat.com>
2816
2817         init.sh: fix EXEEXT shims to work also for names like test-prog
2818         * tests/init.sh: Re-exec a better shell, when needed.
2819         If the current shell lacks support for posix $(...), an init.sh-using
2820         test will now try to find a shell that supports that.  If EXEEXT is
2821         nonempty, we also require support for hyphen-in-alias-name and shell
2822         substitutions like ${var#glob}.  Failure to find such a shell results
2823         in a skipped test.
2824
2825 2010-02-21  Bruno Haible  <bruno@clisp.org>
2826
2827         Really work around around "broken pipe" error message from bash 3.2.
2828         * gnulib-tool (func_reset_sigpipe): Remove function.
2829         (echo): In bash 3.2, define to a function that uses printf.
2830         Analyzed by Ralf Wildenhues, Chet Ramey, Ben Pfaff.
2831
2832 2010-02-20  Bruno Haible  <bruno@clisp.org>
2833
2834         Restore support for automake 1.9.6 with autoconf 2.61.
2835         * m4/gnulib-common.m4 (AC_PROG_MKDIR_P): Ensure MKDIR_P is AC_SUBSTed.
2836         Reported by James Youngman <jay@gnu.org>.
2837
2838 2010-02-20  Bruno Haible  <bruno@clisp.org>
2839
2840         Improve *printf warning condition.
2841         * lib/stdio.in.h (fprintf, printf, vfprintf, vprintf): Emit warning
2842         also if GNULIB_POSIXCHECK is defined, the *-posix module is not used,
2843         and the function is overridden due to SIGPIPE emulation.
2844
2845 2010-02-20  Bruno Haible  <bruno@clisp.org>
2846
2847         * lib/stdio.in.h: Tweak comments.
2848
2849 2010-02-19  Bruno Haible  <bruno@clisp.org>
2850
2851         Make it easier to find modules. New gnulib-tool option '--find'.
2852         * gnulib-tool: New option --find.
2853         (func_usage): Document it.
2854         (func_sanitize_modulelist): New function, extracted from
2855         func_all_modules.
2856         (func_all_modules): Invoke it.
2857         * doc/gnulib-tool.texi (Which modules?): New node.
2858
2859 2010-02-18  Markus Duft <mduft@gentoo.org>  (tiny change)
2860
2861         * lib/sys_select.in.h: Provide select replacement even if
2862         sys/select.h exists on a system, for Interix.
2863
2864 2010-02-18  Jim Meyering  <meyering@redhat.com>
2865
2866         init.sh: don't use $(...) just yet
2867         * tests/init.sh (create_exe_shim_functions_): Use `...`, not $(...),
2868         to accommodate e.g., Solaris' /bin/sh.
2869
2870 2010-02-17  Bruno Haible  <bruno@clisp.org>
2871
2872         * doc/posix-headers/netdb.texi: Mention NetBSD 5.0 problem.
2873         Reported by Ludovic Courtès <ludo@gnu.org>.
2874
2875 2010-02-16  Simon Josefsson  <simon@josefsson.org>
2876
2877         * modules/userspec-tests (test_userspec_LDADD): Add variable, for
2878         linking with -lintl.
2879
2880 2010-02-17  Simon Josefsson  <simon@josefsson.org>
2881
2882         * lib/netdb.in.h (AI_V4MAPPED, AI_ALL, AI_ADDRCONFIG): Define to 0
2883         if not provided by the system's netdb.h.  Reported by
2884         ludo@gnu.org (Ludovic Courtès).
2885
2886 2010-02-15  Jim Meyering  <meyering@redhat.com>
2887
2888         init.sh: improve portability and efficiency
2889         * tests/init.sh (find_exe_basenames_): Remove unnecessary use of
2890         "dummy" in a for loop.
2891         Use '!', not '^' to select the complement of a character set used
2892         in a "case" statement.
2893         Use shell variable manipulation, a la ${...%.exe}, rather than sed.
2894         Suggestions from Eric Blake.
2895
2896         init.sh: automatically accommodate programs with the .exe suffix
2897         Automatically arrange for an invocation of "prog" to execute the
2898         program named "prog$EXEEXT" (usually prog.exe).  Thus, all invocations
2899         may use the simpler "prog", yet still work when built on a system
2900         that requires specifying the added suffix.
2901         Do this by constructing a function named "prog" that invokes
2902         "prog.exe" for each .exe file in selected directories.
2903         * tests/init.sh (find_exe_basenames_): New function.
2904         (create_exe_shim_functions_): New function.
2905         (path_prepend_): Use it.
2906
2907         maint.mk: mark syntax-check sc_*.m rules as .PHONY
2908         * top/maint.mk ($(syntax-check-rules)): Add .PHONY, so that
2909         "make -t syntax-check" doesn't create a ton of sc_*.m files.
2910
2911 2010-02-14  Jim Meyering  <meyering@redhat.com>
2912
2913         maint.mk: prohibit inclusion of "hash-pjw.h" without_use
2914         * top/maint.mk (sc_prohibit_hash_without_use): Re-add "@".
2915         (sc_prohibit_hash_pjw_without_use): New rule.
2916
2917         maint.mk: allow the default upload destination dir to be overridden
2918         * top/maint.mk (upload_dest_dir_): Define with a default that
2919         preserves the status quo.
2920         (emit_upload_commands): Use it, rather than hard-coding $(PACKAGE).
2921         Reported by Peter Simons.
2922
2923         maint.mk: prohibit inclusion of "hash.h" without_use
2924         * top/maint.mk (sc_prohibit_hash_without_use): New rule.
2925
2926 2010-02-10  Jim Meyering  <meyering@redhat.com>
2927
2928         maint.mk: prohibit inclusion of "ignore-value.h" without_use
2929         * top/maint.mk (sc_prohibit_ignore_value_without_use): New rule.
2930
2931 2010-02-09  Eric Blake  <ebb9@byu.net>
2932         and Bruno Haible  <bruno@clisp.org>
2933
2934         obstack-printf-posix: ensure declaration
2935         * m4/obstack-printf.m4 (gl_DECL_OBSTACK_PRINTF): New macro,
2936         extracted from gl_FUNC_OBSTACK_PRINTF.
2937         (gl_FUNC_OBSTACK_PRINTF): Invoke it.
2938         * m4/obstack-printf-posix.m4 (gl_FUNC_OBSTACK_PRINTF_POSIX):
2939         Likewise.
2940         * lib/stdio.in.h (obstack_printf, obstack_vprintf): Declare also
2941         if GNULIB_OBSTACK_PRINTF_POSIX is 1 and GNULIB_OBSTACK_PRINTF is
2942         0.
2943
2944 2010-02-08  Bruno Haible  <bruno@clisp.org>
2945
2946         gnulib-tool: Fix typo in 2010-02-07 commit.
2947         * gnulib-tool (func_get_dependencies): Fix typo in last commit.
2948         Reported by Eric Blake.
2949
2950 2010-02-07  Bruno Haible  <bruno@clisp.org>
2951
2952         gnulib-tool: Fix up caching patches.
2953         * gnulib-tool: New options --cache-modules, --no-cache-modules. Remove
2954         option --no-cache. Use associative arrays when supported by the shell.
2955         (sed_comments): New variable.
2956         (modcache): Renamed from do_cache.
2957         (sed_extract_field_header): Renamed from sed_extract_cache_prog. Don't
2958         abbreviate unnecessarily.
2959         (have_associative): New variable.
2960         (func_cache_var): Define correctly for bash 1.x. Define in an optimized
2961         way also for ksh and zsh.
2962         (func_init_sed_convert_to_cache_statements): New function, extracted
2963         from func_cache_lookup_module. Add support for associative arrays.
2964         Don't set the c_MODULE_cached variable here. Ignore all lines before
2965         the first field header. Remove only the final newline, not all trailing
2966         newlines. Support empty fields correctly. Limit the use of 'eval' to
2967         assignments.
2968         (func_get_description, func_get_status, func_get_notice,
2969         func_get_applicability, func_get_filelist, func_get_dependencies,
2970         func_get_autoconf_early_snippet, func_get_autoconf_snippet,
2971         func_get_automake_snippet, func_get_include_directive,
2972         func_get_link_directive, func_get_license, func_get_maintainer):
2973         Update documentation. List the unoptimized code first. Add support for
2974         associative arrays. Limit the use of 'eval' to assignments.
2975         (func_get_applicability): Undo stylistic pessimisations.
2976         (func_get_automake_snippet, func_get_include_directive): Reduce code
2977         duplication.
2978         (func_modules_transitive_closure, func_modules_add_dummy,
2979         func_modules_notice, func_modules_to_filelist, func_add_file,
2980         func_update_file, func_emit_lib_Makefile_am, func_emit_po_Makevars,
2981         func_emit_po_POTFILES_in, func_emit_tests_Makefile_am, func_import,
2982         func_create_testdir, func_create_megatestdir): Update documentation.
2983
2984 2010-01-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2985
2986         * gnulib-tool (func_cache_lookup_module): Store the module name
2987         belonging to the cache variable; error out if two different
2988         module names map to the same cache variable name.
2989
2990 2010-01-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
2991
2992         gnulib-tool: Make caching optional.
2993         * gnulib-tool: Accept option --no-cache, turning off $do_cache.
2994         Update matching short versions of --no-changelog.
2995         (func_usage): Update.
2996         (sed_extract_cache_prog): Renamed from ...
2997         (sed_extract_prog): ... this; revert to old extraction script.
2998         (func_get_description, func_get_status)
2999         (func_get_notice, func_get_applicability, func_get_filelist)
3000         (func_get_dependencies, func_get_autoconf_early_snippet)
3001         (func_get_autoconf_snippet, func_get_automake_snippet)
3002         (func_get_include_directive, func_get_link_directive)
3003         (func_get_license, func_get_maintainer): If $do_cache is false,
3004         use old, non-caching extraction scripts.
3005         Suggestion by Bruno Haible.
3006
3007 2010-01-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
3008
3009         gnulib-tool: cache module metainformation.
3010         * gnulib-tool (sed_extract_prog): Match newline before each
3011         header, and rewrite header to a shell variable suffix.
3012         (func_cache_var, func_cache_lookup_module): New functions,
3013         to turn a module name into a cache variable prefix, and to
3014         look up and cache module metainformation.
3015         (func_get_description, func_get_status)
3016         (func_get_notice, func_get_applicability, func_get_filelist)
3017         (func_get_dependencies, func_get_autoconf_early_snippet)
3018         (func_get_autoconf_snippet, func_get_automake_snippet)
3019         (func_get_include_directive, func_get_link_directive)
3020         (func_get_license, func_get_maintainer): Use
3021         func_cache_lookup_module.
3022
3023 2010-02-07  Bruno Haible  <bruno@clisp.org>
3024
3025         fnctl: Fix missing dependency.
3026         * modules/fcntl (Depends-on): Add getdtablesize.
3027         Reported by John W. Eaton <jwe@gnu.org>.
3028
3029 2010-02-05  Sergey Poznyakoff  <gray@gnu.org.ua>
3030
3031         Argp: fix recognition of short alias options.
3032
3033         * lib/argp-parse.c (convert_options): Fix improper use of
3034         `|' between character values.
3035         * tests/test-argp.c (group1_option): New alias option
3036         --read (-r).
3037         (group1_parser): Special handling for 'r'.
3038         (test15): New test case.
3039         (test_fun): Add test15.
3040         * tests/test-argp-2.sh: Update expected --help and --usage
3041         outputs.
3042
3043 2010-02-05  Sergey Poznyakoff  <gray@gnu.org.ua>
3044
3045         * tests/test-argp.c: Fix indentation.
3046
3047 2010-02-04  Eric Blake  <ebb9@byu.net>
3048
3049         gettimeofday: expose type of second argument
3050         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): Do better detection
3051         of glibc extension signature, and define GETTIMEOFDAY_TIMEZONE.
3052         * tests/test-gettimeofday.c: Use it to silence warning.
3053         * doc/posix-functions/gettimeofday.texi (gettimeofday): Document
3054         the issue.
3055
3056 2010-02-03  Jim Meyering  <meyering@redhat.com>
3057
3058         regcomp.c: avoid the sole warning from gcc's -Wtype-limits
3059         * lib/regcomp.c (TYPE_SIGNED): Define.
3060         (parse_dup_op): Use it to avoid the sole warning from -Wtype-limits.
3061
3062         regcomp.c: avoid a new -Wshadow warning
3063         * lib/regcomp.c (create_initial_state): Do not shadow local "err".
3064
3065 2010-02-01  Jim Meyering  <meyering@redhat.com>
3066
3067         removing useless parentheses in cpp #define directives
3068         For motivation, see commit c0221df4, "define STREQ(a,b)
3069         consistently, removing useless parentheses"
3070         * lib/memcmp.c (CMP_LT_OR_GT): Remove useless parentheses.
3071         * lib/mountlist.c (MNT_IGNORE): Likewise.
3072         * lib/trim.h (trim, trim_trailing, trim_leading): Likewise.
3073
3074 2010-02-01  Eric Blake  <ebb9@byu.net>
3075
3076         sys_time: use link-warning
3077         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Split defaults...
3078         (gl_HEADER_SYS_TIME_H_DEFAULTS): ...into new macro.
3079         (gl_SYS_TIME_MODULE_INDICATOR): New macro.
3080         * modules/sys_time (Depends-on): Add warn-on-use.
3081         (Makefile.am): Always build replacement.
3082         (configure.ac): Update substitutions.
3083         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY)
3084         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Include defaults, and no longer
3085         bother with SYS_TIME_H.
3086         * modules/gettimeofday (configure.ac): Declare indicator.
3087         * lib/sys_time.in.h (gettimeofday): Warn if gnulib module is not
3088         in use.
3089
3090         closein-tests: silence compiler warning
3091         * tests/test-closein.c (main): Ignore fread result.
3092         * modules/closein-tests (Depends-on): Add ignore-value.
3093
3094         tests: silence warning about system return
3095         * tests/test-areadlink-with-size.c (main): Ignore system result.
3096         * tests/test-areadlink.c (main): Likewise.
3097         * tests/test-areadlinkat-with-size.c (main): Likewise.
3098         * tests/test-areadlinkat.c (main): Likewise.
3099         * tests/test-canonicalize-lgpl.c (main): Likewise.
3100         * tests/test-canonicalize.c (main): Likewise.
3101         * tests/test-chown.c (main): Likewise.
3102         * tests/test-fchownat.c (main): Likewise.
3103         * tests/test-fdutimensat.c (main): Likewise.
3104         * tests/test-fstatat.c (main): Likewise.
3105         * tests/test-futimens.c (main): Likewise.
3106         * tests/test-lchown.c (main): Likewise.
3107         * tests/test-link.c (main): Likewise.
3108         * tests/test-linkat.c (main): Likewise.
3109         * tests/test-lstat.c (main): Likewise.
3110         * tests/test-mkdir.c (main): Likewise.
3111         * tests/test-mkdirat.c (main): Likewise.
3112         * tests/test-mkfifo.c (main): Likewise.
3113         * tests/test-mkfifoat.c (main): Likewise.
3114         * tests/test-mknod.c (main): Likewise.
3115         * tests/test-readlink.c (main): Likewise.
3116         * tests/test-remove.c (main): Likewise.
3117         * tests/test-rename.c (main): Likewise.
3118         * tests/test-renameat.c (main): Likewise.
3119         * tests/test-rmdir.c (main): Likewise.
3120         * tests/test-symlink.c (main): Likewise.
3121         * tests/test-symlinkat.c (main): Likewise.
3122         * tests/test-unlink.c (main): Likewise.
3123         * tests/test-unlinkat.c (main): Likewise.
3124         * tests/test-utimens.c (main): Likewise.
3125         * tests/test-utimensat.c (main): Likewise.
3126         * modules/areadlink-tests (Depends-on): Add ignore-value.
3127         * modules/areadlink-with-size-tests (Depends-on): Likewise.
3128         * modules/areadlinkat-tests (Depends-on): Likewise.
3129         * modules/areadlinkat-with-size-tests (Depends-on): Likewise.
3130         * modules/canonicalize-lgpl-tests (Depends-on): Likewise.
3131         * modules/canonicalize-tests (Depends-on): Likewise.
3132         * modules/chown-tests (Depends-on): Likewise.
3133         * modules/fdutimensat-tests (Depends-on): Likewise.
3134         * modules/futimens-tests (Depends-on): Likewise.
3135         * modules/lchown-tests (Depends-on): Likewise.
3136         * modules/link-tests (Depends-on): Likewise.
3137         * modules/linkat-tests (Depends-on): Likewise.
3138         * modules/lstat-tests (Depends-on): Likewise.
3139         * modules/mkdir-tests (Depends-on): Likewise.
3140         * modules/mkfifo-tests (Depends-on): Likewise.
3141         * modules/mkfifoat-tests (Depends-on): Likewise.
3142         * modules/mknod-tests (Depends-on): Likewise.
3143         * modules/openat-tests (Depends-on): Likewise.
3144         * modules/readlink-tests (Depends-on): Likewise.
3145         * modules/remove-tests (Depends-on): Likewise.
3146         * modules/rename-tests (Depends-on): Likewise.
3147         * modules/renameat-tests (Depends-on): Likewise.
3148         * modules/rmdir-tests (Depends-on): Likewise.
3149         * modules/symlink-tests (Depends-on): Likewise.
3150         * modules/symlinkat-tests (Depends-on): Likewise.
3151         * modules/unlink-tests (Depends-on): Likewise.
3152         * modules/utimens-tests (Depends-on): Likewise.
3153         * modules/utimensat-tests (Depends-on): Likewise.
3154
3155 2010-01-31  Bruno Haible  <bruno@clisp.org>
3156
3157         Perform the same test for many <math.h> functions.
3158         * m4/mathfunc.m4 (gl_COMMON_DOUBLE_MATHFUNC,
3159         gl_COMMON_DOUBLE_MATHFUNC_TEST): New macros.
3160         * m4/sqrt.m4 (gl_FUNC_SQRT): Invoke gl_COMMON_DOUBLE_MATHFUNC instead
3161         of gl_MATHFUNC.
3162         * modules/acos (configure.ac): Likewise.
3163         * modules/asin (configure.ac): Likewise.
3164         * modules/atan (configure.ac): Likewise.
3165         * modules/atan2 (configure.ac): Likewise.
3166         * modules/cbrt (configure.ac): Likewise.
3167         * modules/copysign (configure.ac): Likewise.
3168         * modules/cos (configure.ac): Likewise.
3169         * modules/cosh (configure.ac): Likewise.
3170         * modules/erf (configure.ac): Likewise.
3171         * modules/erfc (configure.ac): Likewise.
3172         * modules/exp (configure.ac): Likewise.
3173         * modules/fmod (configure.ac): Likewise.
3174         * modules/hypot (configure.ac): Likewise.
3175         * modules/j0 (configure.ac): Likewise.
3176         * modules/j1 (configure.ac): Likewise.
3177         * modules/jn (configure.ac): Likewise.
3178         * modules/lgamma (configure.ac): Likewise.
3179         * modules/log (configure.ac): Likewise.
3180         * modules/log10 (configure.ac): Likewise.
3181         * modules/log1p (configure.ac): Likewise.
3182         * modules/pow (configure.ac): Likewise.
3183         * modules/remainder (configure.ac): Likewise.
3184         * modules/sin (configure.ac): Likewise.
3185         * modules/sinh (configure.ac): Likewise.
3186         * modules/tan (configure.ac): Likewise.
3187         * modules/tanh (configure.ac): Likewise.
3188         * modules/y0 (configure.ac): Likewise.
3189         * modules/y1 (configure.ac): Likewise.
3190         * modules/yn (configure.ac): Likewise.
3191         Suggested by Paolo Bonzini.
3192
3193 2010-01-31  Bruno Haible  <bruno@clisp.org>
3194
3195         * m4/getline.m4 (gl_FUNC_GETLINE): Add comment about REPLACE_GETLINE.
3196
3197 2010-01-31  Bruno Haible  <bruno@clisp.org>
3198
3199         Work around getdelim() bug on FreeBSD 8.0.
3200         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Test whether getdelim supports an
3201         initially NULL line. Set REPLACE_GETDELIM if getdelim exists but does
3202         not work.
3203         * lib/stdio.in.h (getdelim): Define as an alias if REPLACE_GETDELIM
3204         is 1.
3205         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize REPLACE_GETDELIM.
3206         * modules/stdio (Makefile.am): Also substitute REPLACE_GETDELIM.
3207         * tests/test-getdelim.c (main): Also test result for a NULL buffer and
3208         a non-zero size.
3209         * doc/posix-functions/getdelim.texi: Mention the FreeBSD bug.
3210
3211 2010-01-31  Bruno Haible  <bruno@clisp.org>
3212
3213         Work around getline() bug on FreeBSD 8.0.
3214         * m4/getline.m4 (gl_FUNC_GETLINE): Also test result for a NULL buffer
3215         and a non-zero size.
3216         * tests/test-getline.c (main): Likewise.
3217         * doc/posix-functions/getline.texi: Mention the FreeBSD bug.
3218         Reported by Dennis <noordsij@cs.helsinki.fi> via Eric Blake.
3219
3220 2010-01-28  Eric Blake  <ebb9@byu.net>
3221
3222         regex: fix build failure
3223         * lib/regex_internal.h (__GNUC_PREREQ): Define for non-glibc
3224         platforms.
3225
3226 2010-01-28  Jim Meyering  <meyering@redhat.com>
3227
3228         regex: do not ignore memory allocation failure
3229         * lib/regex_internal.c (create_cd_newstate): Detect
3230         re_node_set_init_copy failure.   Extracted from glibc commit
3231         2da42bc06566bc89785e580fa1ac89b4c9f2a63c.
3232
3233         regex: sync more white-space changes from libc
3234         * lib/regex_internal.c: White-space only changes.
3235         * lib/regexec.c: Likewise.
3236
3237         regex: add many uses of __attribute_warn_unused_result__
3238         * lib/regex_internal.c: Use __attribute_warn_unused_result__.
3239         * lib/regexec.c: Likewise.
3240         Extracted from a messy glibc commit.
3241
3242         regcomp.c: spelling and merge-artifact from glibc
3243         * lib/regcomp.c: Merge remainder of glibc's
3244         2da42bc06566bc89785e580fa1ac89b4c9f2a63c.
3245
3246         regcomp.c: sync white-space changes from glibc
3247         * lib/regcomp.c: Merge to accommodate white space
3248         changes from glibc's 2da42bc06566bc89785e580fa1ac89b4c9f2a63c.
3249
3250         regcomp.c: do not ignore internal return values
3251         * lib/regcomp.c: Do not ignore internal return values.
3252         This is from glibc's 2da42bc06566bc89785e580fa1ac89b4c9f2a63c,
3253         but without its white-space changes and spelling fixes.
3254
3255         regex_internal.h: define __attribute_warn_unused_result__
3256         * lib/regex_internal.h (__attribute_warn_unused_result__): Define.
3257
3258         maint: add a syntax-check rule to check for vulnerable Makefile.in
3259         * top/maint.mk (sc_vulnerable_makefile_CVE-2009-4029): New rule.
3260
3261 2010-01-27  Jim Meyering  <meyering@redhat.com>
3262
3263         ncftpput-ftp: clean up spaces
3264         * build-aux/ncftpput-ftp: Make Copyright line consistent.
3265         Remove trailing blanks.
3266
3267 2010-01-27  Simon Josefsson  <simon@josefsson.org>
3268
3269         * build-aux/git-version-gen: Fix copyright statement.
3270         * build-aux/gnupload: Likewise.
3271         * tests/test-arcfour.c: Likewise.
3272         * tests/test-arctwo.c: Likewise.
3273         * tests/test-count-one-bits.c: Likewise.
3274         * tests/test-crc.c: Likewise.
3275         * tests/test-des.c: Likewise.
3276         * tests/test-gc-arcfour.c: Likewise.
3277         * tests/test-gc-arctwo.c: Likewise.
3278         * tests/test-gc-des.c: Likewise.
3279         * tests/test-gc-hmac-md5.c: Likewise.
3280         * tests/test-gc-hmac-sha1.c: Likewise.
3281         * tests/test-gc-md2.c: Likewise.
3282         * tests/test-gc-md4.c: Likewise.
3283         * tests/test-gc-md5.c: Likewise.
3284         * tests/test-gc-pbkdf2-sha1.c: Likewise.
3285         * tests/test-gc-rijndael.c: Likewise.
3286         * tests/test-gc-sha1.c: Likewise.
3287         * tests/test-gc.c: Likewise.
3288         * tests/test-gethostname.c: Likewise.
3289         * tests/test-gettimeofday.c: Likewise.
3290         * tests/test-hash.c: Likewise.
3291         * tests/test-hmac-md5.c: Likewise.
3292         * tests/test-hmac-sha1.c: Likewise.
3293         * tests/test-md2.c: Likewise.
3294         * tests/test-md4.c: Likewise.
3295         * tests/test-md5.c: Likewise.
3296         * tests/test-memchr.c: Likewise.
3297         * tests/test-memchr2.c: Likewise.
3298         * tests/test-memcmp.c: Likewise.
3299         * tests/test-memmem.c: Likewise.
3300         * tests/test-memrchr.c: Likewise.
3301         * tests/test-rawmemchr.c: Likewise.
3302         * tests/test-read-file.c: Likewise.
3303         * tests/test-rijndael.c: Likewise.
3304         * tests/test-sockets.c: Likewise.
3305         * tests/test-strchrnul.c: Likewise.
3306         * tests/test-strstr.c: Likewise.
3307         * tests/test-strtod.c: Likewise.
3308         * build-aux/ncftpput-ftp: Likewise.
3309
3310 2010-01-26  Eric Blake  <ebb9@byu.net>
3311
3312         ignore-value: update recommended header name
3313         * modules/ignore-value (Include): Only use <> for headers that
3314         exist in glibc.
3315
3316 2010-01-26  Jim Meyering  <meyering@redhat.com>
3317
3318         test-userspec.c: avoid compiler warnings
3319         * tests/test-userspec.c (main): Avoid shadowing ("uid"),
3320         and "initialization discards qualifiers..." warnings.
3321         Put the first "uid" in its own scope, and make char* members "const".
3322
3323 2010-01-25  Bruno Haible  <bruno@clisp.org>
3324
3325         gnulib-tool: Make warning diagnostics consistent.
3326         * gnulib-tool (func_warning): New function.
3327         Use it everywhere where gnulib-tool produces output to stderr and it is
3328         not a fatal error.
3329
3330 2010-01-25  Bruno Haible  <bruno@clisp.org>
3331
3332         Fix test dependencies.
3333         * modules/xstrtol-tests (Depends-on): Add inttypes.
3334         * modules/xstrtoll-tests (Depends-on): Likewise. Remove xstrtoll.
3335
3336 2010-01-25 Pádraig Brady <P@draigBrady.com>
3337
3338         syntax-check: detect incorrect boolean macro values in config.h
3339         * modules/maintainer-makefile (configure.ac): Parameterize the location
3340         of config.h which will be available to makefiles as $(CONFIG_INCLUDE).
3341         The logic is from Eric Blake and the location indicated by Jim Meyering.
3342         Note the more natural CONFIG_HEADER name is prohibited by automake
3343         for backwards compatibility reasons.
3344         * top/maint.mk (sc_Wundef_boolean): New rule.
3345
3346 2010-01-25  Jim Meyering  <meyering@redhat.com>
3347
3348         bootstrap: detect MacOS 10.6's shasum, too
3349         * build-aux/bootstrap: Also recognize MacOS 10.6's shasum.
3350         Suggested by Thomas Treichl <Thomas.Treichl@gmx.net>.
3351
3352 2010-01-23  Jim Meyering  <meyering@redhat.com>
3353
3354         xstrtoll: new module
3355         * modules/xstrtoll: New file.
3356         * MODULES.html.sh (Numeric conversion functions): Add xstrtoll.
3357         * lib/xstrtol.h [HAVE_LONG_LONG_INT]: Declare xstrtoll and xstrtoull.
3358         * lib/xstrtoll.c, lib/xstrtoull.c: New files.
3359         ./configure fails if you use this module and lack "long long".
3360         * modules/xstrtoll-tests: New module.
3361         * tests/test-xstrtoll.c, tests/test-xstrtoull.c: New files.
3362         * tests/test-xstrtoll.sh: Like test-xstrtol.c, but use the
3363         new init.sh-based test framework.
3364
3365 2010-01-24  Bruno Haible  <bruno@clisp.org>
3366
3367         Tests for module 'yn'.
3368         * modules/yn-tests: New file.
3369         * tests/test-yn.c: New file.
3370
3371         Tests for module 'y1'.
3372         * modules/y1-tests: New file.
3373         * tests/test-y1.c: New file.
3374
3375         Tests for module 'y0'.
3376         * modules/y0-tests: New file.
3377         * tests/test-y0.c: New file.
3378
3379         Tests for module 'tanh'.
3380         * modules/tanh-tests: New file.
3381         * tests/test-tanh.c: New file.
3382
3383         Tests for module 'tan'.
3384         * modules/tan-tests: New file.
3385         * tests/test-tan.c: New file.
3386
3387         Tests for module 'sqrt'.
3388         * modules/sqrt-tests: New file.
3389         * tests/test-sqrt.c: New file.
3390
3391         Tests for module 'sinh'.
3392         * modules/sinh-tests: New file.
3393         * tests/test-sinh.c: New file.
3394
3395         Tests for module 'sin'.
3396         * modules/sin-tests: New file.
3397         * tests/test-sin.c: New file.
3398
3399         Tests for module 'rint'.
3400         * modules/rint-tests: New file.
3401         * tests/test-rint.c: New file.
3402
3403         Tests for module 'remainder'.
3404         * modules/remainder-tests: New file.
3405         * tests/test-remainder.c: New file.
3406
3407         Tests for module 'pow'.
3408         * modules/pow-tests: New file.
3409         * tests/test-pow.c: New file.
3410
3411         Tests for module 'nextafter'.
3412         * modules/nextafter-tests: New file.
3413         * tests/test-nextafter.c: New file.
3414
3415         Tests for module 'modf'.
3416         * modules/modf-tests: New file.
3417         * tests/test-modf.c: New file.
3418
3419         Tests for module 'logb'.
3420         * modules/logb-tests: New file.
3421         * tests/test-logb.c: New file.
3422
3423         Tests for module 'log1p'.
3424         * modules/log1p-tests: New file.
3425         * tests/test-log1p.c: New file.
3426
3427         Tests for module 'log10'.
3428         * modules/log10-tests: New file.
3429         * tests/test-log10.c: New file.
3430
3431         Tests for module 'log'.
3432         * modules/log-tests: New file.
3433         * tests/test-log.c: New file.
3434
3435         Tests for module 'lgamma'.
3436         * modules/lgamma-tests: New file.
3437         * tests/test-lgamma.c: New file.
3438
3439         Tests for module 'ldexp'.
3440         * modules/ldexp-tests: New file.
3441         * tests/test-ldexp.c: New file.
3442
3443         Tests for module 'jn'.
3444         * modules/jn-tests: New file.
3445         * tests/test-jn.c: New file.
3446
3447         Tests for module 'j1'.
3448         * modules/j1-tests: New file.
3449         * tests/test-j1.c: New file.
3450
3451         Tests for module 'j0'.
3452         * modules/j0-tests: New file.
3453         * tests/test-j0.c: New file.
3454
3455         Tests for module 'hypot'.
3456         * modules/hypot-tests: New file.
3457         * tests/test-hypot.c: New file.
3458
3459         Tests for module 'fmod'.
3460         * modules/fmod-tests: New file.
3461         * tests/test-fmod.c: New file.
3462
3463         Tests for module 'fabs'.
3464         * modules/fabs-tests: New file.
3465         * tests/test-fabs.c: New file.
3466
3467         Tests for module 'exp'.
3468         * modules/exp-tests: New file.
3469         * tests/test-exp.c: New file.
3470
3471         Tests for module 'erfc'.
3472         * modules/erfc-tests: New file.
3473         * tests/test-erfc.c: New file.
3474
3475         Tests for module 'erf'.
3476         * modules/erf-tests: New file.
3477         * tests/test-erf.c: New file.
3478
3479         Tests for module 'cosh'.
3480         * modules/cosh-tests: New file.
3481         * tests/test-cosh.c: New file.
3482
3483         Tests for module 'cos'.
3484         * modules/cos-tests: New file.
3485         * tests/test-cos.c: New file.
3486
3487         Tests for module 'copysign'.
3488         * modules/copysign-tests: New file.
3489         * tests/test-copysign.c: New file.
3490
3491         Tests for module 'cbrt'.
3492         * modules/cbrt-tests: New file.
3493         * tests/test-cbrt.c: New file.
3494
3495         Tests for module 'atan2'.
3496         * modules/atan2-tests: New file.
3497         * tests/test-atan2.c: New file.
3498
3499         Tests for module 'atan'.
3500         * modules/atan-tests: New file.
3501         * tests/test-atan.c: New file.
3502
3503         Tests for module 'asin'.
3504         * modules/asin-tests: New file.
3505         * tests/test-asin.c: New file.
3506
3507         Tests for module 'acos'.
3508         * modules/acos-tests: New file.
3509         * tests/test-acos.c: New file.
3510
3511 2010-01-24  Bruno Haible  <bruno@clisp.org>
3512
3513         Fix tests for common <math.h> functions.
3514         * m4/mathfunc.m4 (gl_MATHFUNC): Take two additional parameters. Use a
3515         code snippet that references the function pointer, rather than merely
3516         calling the function. Substitute the FUNC_LIBM variable.
3517         * m4/sqrt.m4 (gl_FUNC_SQRT): Update gl_MATHFUNC invocation.
3518         * modules/acos (configure.ac): Likewise.
3519         * modules/asin (configure.ac): Likewise.
3520         * modules/atan (configure.ac): Likewise.
3521         * modules/atan2 (configure.ac): Likewise.
3522         * modules/cbrt (configure.ac): Likewise.
3523         * modules/copysign (configure.ac): Likewise.
3524         * modules/cos (configure.ac): Likewise.
3525         * modules/cosh (configure.ac): Likewise.
3526         * modules/erf (configure.ac): Likewise.
3527         * modules/erfc (configure.ac): Likewise.
3528         * modules/exp (configure.ac): Likewise.
3529         * modules/fabs (configure.ac): Likewise.
3530         * modules/fmod (configure.ac): Likewise.
3531         * modules/hypot (configure.ac): Likewise.
3532         * modules/j0 (configure.ac): Likewise.
3533         * modules/j1 (configure.ac): Likewise.
3534         * modules/jn (configure.ac): Likewise.
3535         * modules/ldexp (configure.ac): Likewise.
3536         * modules/lgamma (configure.ac): Likewise.
3537         * modules/log (configure.ac): Likewise.
3538         * modules/log10 (configure.ac): Likewise.
3539         * modules/log1p (configure.ac): Likewise.
3540         * modules/logb (configure.ac): Likewise.
3541         * modules/modf (configure.ac): Likewise.
3542         * modules/nextafter (configure.ac): Likewise.
3543         * modules/pow (configure.ac): Likewise.
3544         * modules/remainder (configure.ac): Likewise.
3545         * modules/rint (configure.ac): Likewise.
3546         * modules/sin (configure.ac): Likewise.
3547         * modules/sinh (configure.ac): Likewise.
3548         * modules/tan (configure.ac): Likewise.
3549         * modules/tanh (configure.ac): Likewise.
3550         * modules/y0 (configure.ac): Likewise.
3551         * modules/y1 (configure.ac): Likewise.
3552         * modules/yn (configure.ac): Likewise.
3553
3554 2010-01-24  Bruno Haible  <bruno@clisp.org>
3555
3556         Tests: Defeat inlining of math functions by GCC >= 4.3.0.
3557         * tests/test-acosl.c (x): New variable.
3558         (main): Store argument in x and fetch it from x.
3559         * tests/test-asinl.c (x): New variable.
3560         (main): Store argument in x and fetch it from x.
3561         * tests/test-atanl.c (x): New variable.
3562         (main): Store argument in x and fetch it from x.
3563         * tests/test-cosl.c (x): New variable.
3564         (main): Store argument in x and fetch it from x.
3565         * tests/test-expl.c (x): New variable.
3566         (main): Store argument in x and fetch it from x.
3567         * tests/test-logl.c (x): New variable.
3568         (main): Store argument in x and fetch it from x.
3569         * tests/test-sinl.c (x): New variable.
3570         (main): Store argument in x and fetch it from x.
3571         * tests/test-sqrtl.c (x): New variable.
3572         (main): Store argument in x and fetch it from x.
3573         * tests/test-tanl.c (x): New variable.
3574         (main): Store argument in x and fetch it from x.
3575
3576 2010-01-24  Bruno Haible  <bruno@clisp.org>
3577
3578         Provide EXEEXT and srcdir in TESTS_ENVIRONMENT by default.
3579         * gnulib-tool (func_emit_tests_Makefile_am): Add EXEEXT and srcdir
3580         assignments to the initial TESTS_ENVIRONMENT.
3581         * doc/gnulib.texi (Unit test modules): Document it.
3582         * modules/acl-tests (Makefile.am): Drop EXEEXT assignment from
3583         TESTS_ENVIRONMENT.
3584         * modules/btowc-tests (Makefile.am): Likewise.
3585         * modules/c-stack-tests (Makefile.am): Likewise.
3586         * modules/c-strcase-tests (Makefile.am): Likewise.
3587         * modules/copy-file-tests (Makefile.am): Likewise.
3588         * modules/mbmemcasecmp-tests (Makefile.am): Likewise.
3589         * modules/mbmemcasecoll-tests (Makefile.am): Likewise.
3590         * modules/mbrtowc-tests (Makefile.am): Likewise.
3591         * modules/mbscasecmp-tests (Makefile.am): Likewise.
3592         * modules/mbscasestr-tests (Makefile.am): Likewise.
3593         * modules/mbschr-tests (Makefile.am): Likewise.
3594         * modules/mbscspn-tests (Makefile.am): Likewise.
3595         * modules/mbsinit-tests (Makefile.am): Likewise.
3596         * modules/mbsncasecmp-tests (Makefile.am): Likewise.
3597         * modules/mbsnrtowcs-tests (Makefile.am): Likewise.
3598         * modules/mbspbrk-tests (Makefile.am): Likewise.
3599         * modules/mbspcasecmp-tests (Makefile.am): Likewise.
3600         * modules/mbsrchr-tests (Makefile.am): Likewise.
3601         * modules/mbsrtowcs-tests (Makefile.am): Likewise.
3602         * modules/mbsspn-tests (Makefile.am): Likewise.
3603         * modules/mbsstr-tests (Makefile.am): Likewise.
3604         * modules/nl_langinfo-tests (Makefile.am): Likewise.
3605         * modules/unicase/locale-language-tests (Makefile.am): Likewise.
3606         * modules/unistdio/u16-vasnprintf-tests (Makefile.am): Likewise.
3607         * modules/unistdio/u32-vasnprintf-tests (Makefile.am): Likewise.
3608         * modules/unistdio/u8-vasnprintf-tests (Makefile.am): Likewise.
3609         * modules/unistdio/ulc-vasnprintf-tests (Makefile.am): Likewise.
3610         * modules/uniwbrk/ulc-wordbreaks-tests (Makefile.am): Likewise.
3611         * modules/vasnprintf-posix-tests (Makefile.am): Likewise.
3612         * modules/wcrtomb-tests (Makefile.am): Likewise.
3613         * modules/wcsnrtombs-tests (Makefile.am): Likewise.
3614         * modules/wcsrtombs-tests (Makefile.am): Likewise.
3615         * modules/quotearg-tests (Makefile.am): Drop EXEEXT and srcdir
3616         assignments from TESTS_ENVIRONMENT.
3617         * modules/argp-tests (Makefile.am): Drop TESTS_ENVIRONMENT
3618         augmentation.
3619         * modules/argp-version-etc-tests (Makefile.am): Likewise.
3620         * modules/atexit-tests (Makefile.am): Likewise.
3621         * modules/binary-io-tests (Makefile.am): Likewise.
3622         * modules/closein-tests (Makefile.am): Likewise.
3623         * modules/dprintf-posix-tests (Makefile.am): Likewise.
3624         * modules/exclude-tests (Makefile.am): Likewise.
3625         * modules/fflush-tests (Makefile.am): Likewise.
3626         * modules/fpending-tests (Makefile.am): Likewise.
3627         * modules/fprintf-posix-tests (Makefile.am): Likewise.
3628         * modules/freadahead-tests (Makefile.am): Likewise.
3629         * modules/freadptr-tests (Makefile.am): Likewise.
3630         * modules/freadseek-tests (Makefile.am): Likewise.
3631         * modules/fseek-tests (Makefile.am): Likewise.
3632         * modules/fseeko-tests (Makefile.am): Likewise.
3633         * modules/ftell-tests (Makefile.am): Likewise.
3634         * modules/ftello-tests (Makefile.am): Likewise.
3635         * modules/idpriv-drop-tests (Makefile.am): Likewise.
3636         * modules/idpriv-droptemp-tests (Makefile.am): Likewise.
3637         * modules/lseek-tests (Makefile.am): Likewise.
3638         * modules/parse-duration-tests (Makefile.am): Likewise.
3639         * modules/perror-tests (Makefile.am): Likewise.
3640         * modules/pipe-filter-gi-tests (Makefile.am): Likewise.
3641         * modules/pipe-filter-ii-tests (Makefile.am): Likewise.
3642         * modules/pipe-tests (Makefile.am): Likewise.
3643         * modules/pread-tests (Makefile.am): Likewise.
3644         * modules/printf-posix-tests (Makefile.am): Likewise.
3645         * modules/select-tests (Makefile.am): Likewise.
3646         * modules/sigpipe-tests (Makefile.am): Likewise.
3647         * modules/tsearch-tests (Makefile.am): Likewise.
3648         * modules/unicase/ulc-casecmp-tests (Makefile.am): Likewise.
3649         * modules/unicase/ulc-casecoll-tests (Makefile.am): Likewise.
3650         * modules/uniname/uniname-tests (Makefile.am): Likewise.
3651         * modules/uniwidth/width-tests (Makefile.am): Likewise.
3652         * modules/vdprintf-posix-tests (Makefile.am): Likewise.
3653         * modules/version-etc-tests (Makefile.am): Likewise.
3654         * modules/vfprintf-posix-tests (Makefile.am): Likewise.
3655         * modules/vprintf-posix-tests (Makefile.am): Likewise.
3656         * modules/xalloc-die-tests (Makefile.am): Likewise.
3657         * modules/xprintf-posix-tests (Makefile.am): Likewise.
3658         * modules/xstrtoimax-tests (Makefile.am): Likewise.
3659         * modules/xstrtol-tests (Makefile.am): Likewise.
3660         * modules/xstrtoumax-tests (Makefile.am): Likewise.
3661         * modules/yesno-tests (Makefile.am): Likewise.
3662         Suggested by Jim Meyering.
3663
3664 2010-01-24  Bruno Haible  <bruno@clisp.org>
3665
3666         More documentation.
3667         * doc/gnulib.texi (Writing modules): New chapter.
3668         (Miscellaneous Notes): Move sections "Comments" and "Header files" to
3669         the new chapter.
3670
3671 2010-01-24  Jim Meyering  <meyering@redhat.com>
3672
3673         maint.mk: do not prepend "./" after filtering
3674         * top/maint.mk (_prepend_srcdir_prefix): New variable
3675         (VC_LIST_EXCEPT): Use it to avoid prepending (post-filter)
3676         "./" when $(srcdir) is ".".
3677
3678         define STREQ(a,b) consistently, removing useless parentheses
3679         #define STREQ(a, b) (strcmp ((a), (b)) == 0) is over-parenthesized,
3680         since the only risk is that "a" or "b" contains an unparenthesized
3681         comma, but if either did that, STREQ would have 3 or more arguments.
3682         Hence, #define STREQ(a, b) (strcmp (a, b) == 0) is better.
3683         * lib/fts.c (STREQ): Remove unnecessary parentheses.
3684         * lib/hash-triple.c (STREQ): Likewise.
3685         * tests/test-argv-iter.c (STREQ): Use a and b, not s1 and s2.
3686         * lib/getugroups.c (STREQ): Likewise.
3687
3688 2010-01-23  Jim Meyering  <meyering@redhat.com>
3689
3690         maint.mk: fix syntax-check in a non-srcdir build directory
3691         * top/maint.mk (_dot_escaped_srcdir): Remove erroneous backslash,
3692         introduced in my 2010-01-21 commit, a6da6c45.  Reported by Eric Blake.
3693
3694 2010-01-22  Jim Meyering  <meyering@redhat.com>
3695
3696         userspec: add unit tests
3697         * tests/test-userspec.c: New file.
3698         * modules/userspec-tests: Likewise.
3699
3700 2010-01-21  Jim Meyering  <meyering@redhat.com>
3701
3702         maint.mk: handle source file names containing "." robustly
3703         * top/maint.mk (_dot_escaped_srcdir): Define.
3704         (VC_LIST): Use it in LHS of sed substitution.
3705
3706 2010-01-21  Jiri Denemark  <jdenemar@redhat.com>
3707
3708         maint.mk: fix VC_LIST_EXCEPT for srcdir != builddir
3709         * top/maint.mk (VC_LIST_EXCEPT): Preprocess the output of
3710         $(VC_LIST) to remove a prefix of '$(srcdir)/', so that it works
3711         from a non-srcdir build.
3712
3713 2010-01-20  Eric Blake  <ebb9@byu.net>
3714
3715         warn-on-use: use instead of link-warning
3716         * modules/stdio (Depends-on, Makefile.am): Drop link-warning.
3717         * modules/unistd (Depends-on, Makefile.am): Likewise.
3718         * modules/arpa_inet (Depends-on): Replace link-warning with
3719         warn-on-use.
3720         (Makefile.am): Update rules accordingly.
3721         * modules/ctype (Depends-on, Makefile.am): Likewise.
3722         * modules/dirent (Depends-on, Makefile.am): Likewise.
3723         * modules/fcntl-h (Depends-on, Makefile.am): Likewise.
3724         * modules/inttypes (Depends-on, Makefile.am): Likewise.
3725         * modules/langinfo (Depends-on, Makefile.am): Likewise.
3726         * modules/locale (Depends-on, Makefile.am): Likewise.
3727         * modules/math (Depends-on, Makefile.am): Likewise.
3728         * modules/search (Depends-on, Makefile.am): Likewise.
3729         * modules/signal (Depends-on, Makefile.am): Likewise.
3730         * modules/spawn (Depends-on, Makefile.am): Likewise.
3731         * modules/stdlib (Depends-on, Makefile.am): Likewise.
3732         * modules/string (Depends-on, Makefile.am): Likewise.
3733         * modules/strings (Depends-on, Makefile.am): Likewise.
3734         * modules/sys_file (Depends-on, Makefile.am): Likewise.
3735         * modules/sys_ioctl (Depends-on, Makefile.am): Likewise.
3736         * modules/sys_select (Depends-on, Makefile.am): Likewise.
3737         * modules/sys_socket (Depends-on, Makefile.am): Likewise.
3738         * modules/sys_stat (Depends-on, Makefile.am): Likewise.
3739         * modules/sys_times (Depends-on, Makefile.am): Likewise.
3740         * modules/sys_utsname (Depends-on, Makefile.am): Likewise.
3741         * modules/wchar (Depends-on, Makefile.am): Likewise.
3742         * m4/arpa_inet_h.m4 (gl_HEADER_ARPA_INET): Check which functions
3743         should be poisoned.
3744         * m4/ctype.m4 (gl_CTYPE_H): Likewise.
3745         * m4/dirent_h.m4 (gl_DIRENT_H): Likewise.
3746         * m4/fcntl_h.m4 (gl_FCNTL_H): Likewise.
3747         * m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
3748         * m4/langinfo_h.m4 (gl_LANGINFO_H): Likewise.
3749         * m4/locale_h.m4 (gl_LOCALE_H): Likewise.
3750         * m4/math_h.m4 (gl_MATH_H): Likewise.
3751         * m4/search_h.m4 (gl_SEARCH_H): Likewise.
3752         * m4/signal_h.m4 (gl_SIGNAL_H): Likewise.
3753         * m4/spawn_h.m4 (gl_SPAWN_H): Likewise.
3754         * m4/stdio_h.m4 (gl_STDIO_H): Likewise.
3755         * m4/stdlib_h.m4 (gl_STDLIB_H): Likewise.
3756         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Likewise.
3757         * m4/strings_h.m4 (gl_HEADER_STRINGS_H_BODY): Likewise.
3758         * m4/sys_file_h.m4 (gl_HEADER_SYS_FILE_H_DEFAULTS): Likewise.
3759         * m4/sys_ioctl_h.m4 (gl_SYS_IOCTL_H): Likewise.
3760         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
3761         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise.
3762         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Likewise.
3763         * m4/sys_times_h.m4 (gl_SYS_TIMES_H): Likewise.
3764         * m4/sys_utsname_h.m4 (gl_SYS_UTSNAME_H): Likewise.
3765         * m4/unistd_h.m4 (gl_UNISTD_H): Likewise.
3766         * m4/wchar.m4 (gl_WCHAR_H): Likewise.
3767         * lib/arpa_inet.in.h: Use _GL_WARN_ON_USE instead of
3768         GL_LINK_WARNING.
3769         * lib/ctype.in.h: Likewise.
3770         * lib/dirent.in.h: Likewise.
3771         * lib/fcntl.in.h: Likewise.
3772         * lib/inttypes.in.h: Likewise.
3773         * lib/langinfo.in.h: Likewise.
3774         * lib/locale.in.h: Likewise.
3775         * lib/math.in.h: Likewise.
3776         * lib/search.in.h: Likewise.
3777         * lib/signal.in.h: Likewise.
3778         * lib/spawn.in.h: Likewise.
3779         * lib/stdio.in.h: Likewise.
3780         * lib/stdlib.in.h: Likewise.
3781         * lib/string.in.h: Likewise.
3782         * lib/strings.in.h: Likewise.
3783         * lib/sys_file.in.h: Likewise.
3784         * lib/sys_ioctl.in.h: Likewise.
3785         * lib/sys_select.in.h: Likewise.
3786         * lib/sys_socket.in.h: Likewise.
3787         * lib/sys_stat.in.h: Likewise.
3788         * lib/sys_times.in.h: Likewise.
3789         * lib/sys_utsname.in.h: Likewise.
3790         * lib/unistd.in.h: Likewise.
3791         * lib/wchar.in.h: Likewise.
3792
3793 2010-01-20  Bruno Haible  <bruno@clisp.org>
3794
3795         Avoid duplicate -lm.
3796         * m4/isnan.m4 (gl_ISNAN): Avoid duplicate -lm in $ISNAN_LIBM.
3797         * m4/round.m4 (gl_FUNC_ROUND): Avoid duplicate -lm in $ROUND_LIBM.
3798         * m4/roundf.m4 (gl_FUNC_ROUNDF): Avoid duplicate -lm in $ROUNDF_LIBM.
3799         * m4/roundl.m4 (gl_FUNC_ROUNDL): Avoid duplicate -lm in $ROUNDL_LIBM.
3800         * m4/acosl.m4 (gl_FUNC_ACOSL): Avoid duplicate -lm in $ACOSL_LIBM.
3801         * m4/cosl.m4 (gl_FUNC_COSL): Avoid duplicate -lm in $COSL_LIBM.
3802         * m4/logl.m4 (gl_FUNC_LOGL): Avoid duplicate -lm in $LOGL_LIBM.
3803         * m4/sinl.m4 (gl_FUNC_SINL): Avoid duplicate -lm in $SINL_LIBM.
3804         * m4/sqrtl.m4 (gl_FUNC_SQRTL): Avoid duplicate -lm in $SQRTL_LIBM.
3805         * m4/tanl.m4 (gl_FUNC_TANL): Avoid duplicate -lm in $TANL_LIBM.
3806         * m4/asinl.m4 (gl_FUNC_ASINL): Same change, for consistency.
3807         * m4/atanl.m4 (gl_FUNC_ATANL): Likewise.
3808         Reported by Paolo Bonzini.
3809
3810 2010-01-19  Bruno Haible  <bruno@clisp.org>
3811
3812         langinfo, nl_langinfo: Relicense under LGPLv2+.
3813         * modules/langinfo (License): Change to LGPLv2+.
3814         * modules/nl_langinfo (License): Likewise.
3815         Patch by David Lutterkort <lutter@redhat.com>.
3816
3817 2010-01-19  Bruno Haible  <bruno@clisp.org>
3818
3819         Avoid compilation error with cc on OSF/1 5.1.
3820         * lib/fcntl.in.h: Include <unistd.h> after the #include_next <fcntl.h>
3821         statement, not before.
3822         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
3823
3824 2010-01-18  Bruno Haible  <bruno@clisp.org>
3825
3826         Avoid a link error due to the __printf__ symbol.
3827         * lib/stdio.in.h (__attribute__): Define to empty also for gcc 2.5.x
3828         and 2.6.x.
3829         (__format__, __printf__): Remove definitions.
3830         * lib/argp-fmtstream.h: Likewise.
3831         * lib/argp.h: Likewise.
3832         * lib/error.h: Likewise.
3833         * lib/vasnprintf.h: Likewise.
3834         * lib/xprintf.h: Likewise.
3835         * lib/xvasprintf.h: Likewise.
3836         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
3837
3838 2010-01-18  Bruno Haible  <bruno@clisp.org>
3839
3840         Tests for module 'tanl'.
3841         * modules/tanl-tests: New file.
3842         * tests/test-tanl.c: New file.
3843
3844         Tests for module 'sqrtl'.
3845         * modules/sqrtl-tests: New file.
3846         * tests/test-sqrtl.c: New file.
3847
3848         Tests for module 'sinl'.
3849         * modules/sinl-tests: New file.
3850         * tests/test-sinl.c: New file.
3851
3852         Tests for module 'logl'.
3853         * modules/logl-tests: New file.
3854         * tests/test-logl.c: New file.
3855
3856         Tests for module 'expl'.
3857         * modules/expl-tests: New file.
3858         * tests/test-expl.c: New file.
3859
3860         Tests for module 'cosl'.
3861         * modules/cosl-tests: New file.
3862         * tests/test-cosl.c: New file.
3863
3864         Tests for module 'atanl'.
3865         * modules/atanl-tests: New file.
3866         * tests/test-atanl.c: New file.
3867
3868         Tests for module 'asinl'.
3869         * modules/asinl-tests: New file.
3870         * tests/test-asinl.c: New file.
3871
3872         Tests for module 'acosl'.
3873         * modules/acosl-tests: New file.
3874         * tests/test-acosl.c: New file.
3875
3876         New modules acosl, asinl, atanl, cosl, expl, logl, sinl, sqrtl, tanl.
3877         * lib/math.in.h (acosl, asinl, atanl, cosl, expl, logl, sinl, sqrtl,
3878         tanl): Use the standard gnulib idiom.
3879         * lib/cosl.c: Don't include trigl.c and sincosl.c.
3880         * lib/sinl.c: Likewise.
3881         * lib/tanl.c: Don't include trigl.c.
3882         (kernel_tanl): Make static.
3883         * lib/sincosl.c: Include trigl.h first.
3884         * lib/trigl.c: Likewise.
3885         * m4/acosl.m4: New file.
3886         * m4/asinl.m4: New file.
3887         * m4/atanl.m4: New file.
3888         * m4/cosl.m4: New file.
3889         * m4/expl.m4: New file.
3890         * m4/logl.m4: New file.
3891         * m4/sinl.m4: New file.
3892         * m4/sqrtl.m4: New file.
3893         * m4/tanl.m4: New file.
3894         * m4/mathl.m4: Remove file.
3895         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_* and HAVE_*
3896         variables for acosl, asinl, atanl, cosl, expl, logl, sinl, sqrtl, tanl.
3897         Don't initialize GNULIB_MATHL.
3898         * modules/acosl: New file.
3899         * modules/asinl: New file.
3900         * modules/atanl: New file.
3901         * modules/cosl: New file.
3902         * modules/expl: New file.
3903         * modules/logl: New file.
3904         * modules/sinl: New file.
3905         * modules/sqrtl: New file.
3906         * modules/tanl: New file.
3907         * modules/math (Makefile.am): Substitute GNULIB_* and HAVE_* variables
3908         for acosl, asinl, atanl, cosl, expl, logl, sinl, sqrtl, tanl. Don't
3909         substitute GNULIB_MATHL.
3910         * modules/mathl: Rewritten.
3911         * doc/posix-functions/acosl.texi: Mention the 'acosl' module.
3912         * doc/posix-functions/asinl.texi: Mention the 'asinl' module.
3913         * doc/posix-functions/atanl.texi: Mention the 'atanl' module.
3914         * doc/posix-functions/cosl.texi: Mention the 'cosl' module.
3915         * doc/posix-functions/expl.texi: Mention the 'expl' module.
3916         * doc/posix-functions/logl.texi: Mention the 'logl' module.
3917         * doc/posix-functions/sinl.texi: Mention the 'sinl' module.
3918         * doc/posix-functions/sqrtl.texi: Mention the 'sqrtl' module.
3919         * doc/posix-functions/tanl.texi: Mention the 'tanl' module.
3920
3921 2010-01-18  Bruno Haible  <bruno@clisp.org>
3922
3923         sqrt: Make gl_FUNC_SQRT requirable.
3924         * m4/sqrt.m4: New file.
3925         * modules/sqrt (Files): Add it.
3926         (configure.ac): Invoke gl_FUNC_SQRT.
3927
3928 2010-01-18  Bruno Haible  <bruno@clisp.org>
3929
3930         New modules for common <math.h> functions.
3931         * m4/mathfunc.m4: New file.
3932         * modules/acos: New file.
3933         * modules/asin: New file.
3934         * modules/atan: New file.
3935         * modules/atan2: New file.
3936         * modules/cbrt: New file.
3937         * modules/copysign: New file.
3938         * modules/cos: New file.
3939         * modules/cosh: New file.
3940         * modules/erf: New file.
3941         * modules/erfc: New file.
3942         * modules/exp: New file.
3943         * modules/fabs: New file.
3944         * modules/fmod: New file.
3945         * modules/hypot: New file.
3946         * modules/j0: New file.
3947         * modules/j1: New file.
3948         * modules/jn: New file.
3949         * modules/ldexp: New file.
3950         * modules/lgamma: New file.
3951         * modules/log: New file.
3952         * modules/log10: New file.
3953         * modules/log1p: New file.
3954         * modules/logb: New file.
3955         * modules/modf: New file.
3956         * modules/nextafter: New file.
3957         * modules/pow: New file.
3958         * modules/remainder: New file.
3959         * modules/rint: New file.
3960         * modules/sin: New file.
3961         * modules/sinh: New file.
3962         * modules/sqrt: New file.
3963         * modules/tan: New file.
3964         * modules/tanh: New file.
3965         * modules/y0: New file.
3966         * modules/y1: New file.
3967         * modules/yn: New file.
3968         * doc/posix-functions/acos.texi: Mention the 'acos' module.
3969         * doc/posix-functions/asin.texi: Mention the 'asin' module.
3970         * doc/posix-functions/atan.texi: Mention the 'atan' module.
3971         * doc/posix-functions/atan2.texi: Mention the 'atan2' module.
3972         * doc/posix-functions/cbrt.texi: Mention the 'cbrt' module.
3973         * doc/posix-functions/copysign.texi: Mention the 'copysign' module.
3974         * doc/posix-functions/cos.texi: Mention the 'cos' module.
3975         * doc/posix-functions/cosh.texi: Mention the 'cosh' module.
3976         * doc/posix-functions/erf.texi: Mention the 'erf' module.
3977         * doc/posix-functions/erfc.texi: Mention the 'erfc' module.
3978         * doc/posix-functions/exp.texi: Mention the 'exp' module.
3979         * doc/posix-functions/fabs.texi: Mention the 'fabs' module.
3980         * doc/posix-functions/fmod.texi: Mention the 'fmod' module.
3981         * doc/posix-functions/hypot.texi: Mention the 'hypot' module.
3982         * doc/posix-functions/j0.texi: Mention the 'j0' module.
3983         * doc/posix-functions/j1.texi: Mention the 'j1' module.
3984         * doc/posix-functions/jn.texi: Mention the 'jn' module.
3985         * doc/posix-functions/ldexp.texi: Mention the 'ldexp' module.
3986         * doc/posix-functions/lgamma.texi: Mention the 'lgamma' module.
3987         * doc/posix-functions/log.texi: Mention the 'log' module.
3988         * doc/posix-functions/log10.texi: Mention the 'log10' module.
3989         * doc/posix-functions/log1p.texi: Mention the 'log1p' module.
3990         * doc/posix-functions/logb.texi: Mention the 'logb' module.
3991         * doc/posix-functions/modf.texi: Mention the 'modf' module.
3992         * doc/posix-functions/nextafter.texi: Mention the 'nextafter' module.
3993         * doc/posix-functions/pow.texi: Mention the 'pow' module.
3994         * doc/posix-functions/remainder.texi: Mention the 'remainder' module.
3995         * doc/posix-functions/rint.texi: Mention the 'rint' module.
3996         * doc/posix-functions/sin.texi: Mention the 'sin' module.
3997         * doc/posix-functions/sinh.texi: Mention the 'sinh' module.
3998         * doc/posix-functions/sqrt.texi: Mention the 'sqrt' module.
3999         * doc/posix-functions/tan.texi: Mention the 'tan' module.
4000         * doc/posix-functions/tanh.texi: Mention the 'tanh' module.
4001         * doc/posix-functions/y0.texi: Mention the 'y0' module.
4002         * doc/posix-functions/y1.texi: Mention the 'y1' module.
4003         * doc/posix-functions/yn.texi: Mention the 'yn' module.
4004
4005 2010-01-18  Jim Meyering  <meyering@redhat.com>
4006
4007         ignore-value: relax license to LGPLv2+
4008         * modules/ignore-value (License): Relax to LGPLv2+.
4009
4010         getdate: don't leak when TZ contains two or more '"'s
4011         * lib/getdate.y (get_date): Don't leak a copy of TZ for each
4012         double quote in TZ after the first one.
4013
4014         readtokens: do not leak internal token_lengths buffer
4015         * lib/readtokens.c (readtokens): Free the local, lengths,
4016         when the supplied "token_lengths" parameter is NULL.
4017
4018 2010-01-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4019
4020         Fix a couple of missing LIBTHREAD link failures on AIX.
4021         * modules/git-merge-changelog (git_merge_changelog_LDADD): Add
4022         $(LIBTHREAD).
4023         * modules/strsignal-tests (test_strsignal_LDADD): Likewise.
4024
4025         Link test-poll against INET_PTON_LIB.
4026         * modules/poll-tests (test_poll_LDADD): Add $(INET_PTON_LIB),
4027         for inet_pton on Solaris 10.
4028
4029 2010-01-17  Bruno Haible  <bruno@clisp.org>
4030
4031         unistdio/*-sprintf: Fix typo in module description.
4032         * modules/unistdio/u8-sprintf (Depends-on): Fix typo.
4033         * modules/unistdio/u8-u8-sprintf (Depends-on): Likewise.
4034         * modules/unistdio/u16-sprintf (Depends-on): Likewise.
4035         * modules/unistdio/u16-u16-sprintf (Depends-on): Likewise.
4036         * modules/unistdio/u32-sprintf (Depends-on): Likewise.
4037         * modules/unistdio/u32-u32-sprintf (Depends-on): Likewise.
4038         * modules/unistdio/ulc-sprintf (Depends-on): Likewise.
4039         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
4040
4041 2010-01-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4042
4043         gnulib-tool: fix filelist for AIX, HP-UX ksh.
4044         * gnulib-tool (func_filter_filelist): Do not quote possibly-empty
4045         variables in shell case patterns, for AIX and HP-UX ksh.
4046
4047         Split large sed scripts, for HP-UX sed.
4048         * modules/stdio: Split sed scripts around 50 sed commands,
4049         to avoid HP-UX limit of 99 commands, in the near future.
4050         * modules/string: Likewise.
4051         * modules/unistd: Likewise.
4052
4053         gnulib-tool: avoid writing in the current directory.
4054         * gnulib-tool (func_emit_lib_Makefile_am)
4055         (func_emit_tests_Makefile_am): Put temporary files in $tmp,
4056         not in the current directory, so concurrent gnulib-tool
4057         instances do not interfere.
4058
4059 2010-01-16  Jim Meyering  <meyering@redhat.com>
4060
4061         doc: update users.txt
4062         * users.txt: Add grep.
4063         (diffutils, gzip): Update URLs.
4064
4065 2010-01-12  Bruno Haible  <bruno@clisp.org>
4066
4067         posix_spawn: Avoid test failure on Cygwin.
4068         * tests/test-posix_spawn3.c (DATA_FILENAME) [CYGWIN]: Use less risky
4069         characters.
4070         Reported by Simon Josefsson.
4071
4072 2010-01-12  Bruno Haible  <bruno@clisp.org>
4073
4074         * tests/test-cond.c (main): When skipping the test, show the reason.
4075
4076 2010-01-12  Simon Josefsson  <simon@josefsson.org>
4077
4078         * lib/striconv.c (str_cd_iconv): Avoid if before free.
4079
4080 2010-01-12  Simon Josefsson  <simon@josefsson.org>
4081
4082         * top/maint.mk (VC_LIST_EXCEPT): Filter list through
4083         VC_LIST_ALWAYS_EXCLUDE_REGEX.
4084
4085 2010-01-12  Eric Blake  <ebb9@byu.net>
4086
4087         build: guarantee AS_VAR_IF
4088         * m4/warnings.m4 (gl_WARN_ADD): Use autoconf name.
4089         (gl_AS_VAR_IF): Move...
4090         * m4/gnulib-common.m4 (AS_VAR_IF): ...here.
4091         Reported by Simon Josefsson.
4092
4093 2010-01-12  Simon Josefsson  <simon@josefsson.org>
4094
4095         * lib/stdio.in.h: Fix typo.
4096
4097 2010-01-12  Simon Josefsson  <simon@josefsson.org>
4098
4099         * m4/gc.m4: Check if linking to libgcrypt also needs linking to
4100         libgpg-error.
4101
4102 2010-01-12  Simon Josefsson  <simon@josefsson.org>
4103
4104         * tests/test-xalloc-die.sh: Use $EXEEXT.
4105
4106 2010-01-12  Simon Josefsson  <simon@josefsson.org>
4107             Bruno Haible  <bruno@clisp.org>
4108
4109         getlogin, getlogin_r: Avoid test failure.
4110         * tests/test-getlogin.c: Include <stdio.h>.
4111         (main): Skip the test when the function fails because stdin is not a
4112         tty.
4113         * tests/test-getlogin_r.c: Include <stdio.h>.
4114         (main): Skip the test when the function fails because stdin is not a
4115         tty.
4116
4117 2010-01-11  Eric Blake  <ebb9@byu.net>
4118
4119         tests: avoid more large file warnings
4120         * tests/test-fflush.c: Avoid warning about ftell use.
4121         * tests/test-fseek.c: Avoid warning about fseek use.
4122
4123 2010-01-10  Bruno Haible  <bruno@clisp.org>
4124
4125         nproc: Work better on Linux when /proc and /sys are not mounted.
4126         * lib/nproc.c (num_processors): Use num_processors_via_affinity_mask ()
4127         as lower bound when, on glibc/Linux systems,
4128         sysconf (_SC_NPROCESSORS_CONF) returns 1.
4129         Suggested by Pádraig Brady <P@draigbrady.com>.
4130         Reported by Dmitry V. Levin <ldv@altlinux.org>.
4131
4132         nproc: Refactor.
4133         * lib/nproc.c (num_processors_via_affinity_mask): New function,
4134         extracted from num_processors.
4135         (num_processors): Call it.
4136
4137 2010-01-11  Jim Meyering  <meyering@redhat.com>
4138
4139         utimecmp: avoid new warning from upcoming gcc-4.5.0
4140         * lib/utimecmp.c (BILLION): Define using #define rather than an
4141         anonymous enum, to placate upcoming gcc-4.5.0's -Wenum-compare.
4142
4143 2010-01-11  Eric Blake  <ebb9@byu.net>
4144
4145         math: add portability warnings for classification macros
4146         * modules/math (Depends-on): Add warn-on-use.
4147         (Makefile.am): Provide new substitutions.
4148         * m4/math_h.m4 (gl_MATH_H): Require inline.
4149         * lib/math.in.h (_GL_WARN_REAL_FLOATING_DECL)
4150         (_GL_WARN_REAL_FLOATING_IMPL): New helper macros.
4151         (isfinite, isinf, isnan, signbit) [GNULIB_POSIXCHECK]: Use them to
4152         implement warnings.
4153
4154         unistd: warn on use of environ without module
4155         * modules/unistd (Depends-on): Add warn-on-use.
4156         (Makefile.am): Provide new substitutions.
4157         * m4/unistd_h.m4 (gl_UNISTD_H): Check for inline and environ.
4158         * lib/unistd.in.h (environ): Wrap with a warning helper function.
4159
4160         stdio: warn on suspicious uses
4161         * modules/stdio (Depends-on): Add warn-on-use.
4162         (Makefile.am): Provide new substitutions.
4163         * m4/stdio_h.m4 (gl_STDIO_H): Check for inline, ftello, and
4164         fseeko.
4165         * lib/stdio.in.h (gets): Always warn on use.
4166         (fseek, ftell): Adjust when warnings are issued, and honor
4167         _GL_NO_LARGE_FILES as a way to silence the warning.
4168         * tests/test-fpurge.c [!GNULIB_FSEEK]: Use new means to squelch
4169         any warning about large file offsets.
4170         * tests/test-freadable.c [!GNULIB_FSEEK]: Likewise.
4171         * tests/test-freading.c [!GNULIB_FSEEK]: Likewise.
4172         * tests/test-fseeko.c [!GNULIB_FSEEK]: Likewise.
4173         * tests/test-ftell.c [!GNULIB_FSEEK]: Likewise.
4174         * tests/test-ftello.c [!GNULIB_FSEEK]: Likewise.
4175         * tests/test-fwritable.c [!GNULIB_FSEEK]: Likewise.
4176         * tests/test-fwriting.c [!GNULIB_FSEEK]: Likewise.
4177         * tests/test-getopt.c [!GNULIB_FTELL]: Likewise.
4178
4179         warn-on-use: new module
4180         * modules/warn-on-use: New file.
4181         * build-aux/warn-on-use.h: Likewise.
4182         * m4/warn-on-use.m4: Likewise.
4183         * MODULES.html.sh (Support for building): Mention it.
4184
4185 2010-01-10  Bruno Haible  <bruno@clisp.org>
4186
4187         Tests for module 'unistr/u32-strdup'.
4188         * modules/unistr/u32-strdup-tests: New file.
4189         * tests/unistr/test-u32-strdup.c: New file.
4190
4191         Tests for module 'unistr/u16-strdup'.
4192         * modules/unistr/u16-strdup-tests: New file.
4193         * tests/unistr/test-u16-strdup.c: New file.
4194
4195         Tests for module 'unistr/u8-strdup'.
4196         * modules/unistr/u8-strdup-tests: New file.
4197         * tests/unistr/test-u8-strdup.c: New file.
4198         * tests/unistr/test-strdup.h: New file.
4199
4200         Tests for module 'unistr/u32-strncmp'.
4201         * modules/unistr/u32-strncmp-tests: New file.
4202         * tests/unistr/test-u32-strncmp.c: New file.
4203
4204         Tests for module 'unistr/u16-strncmp'.
4205         * modules/unistr/u16-strncmp-tests: New file.
4206         * tests/unistr/test-u16-strncmp.c: New file.
4207
4208         Tests for module 'unistr/u8-strncmp'.
4209         * modules/unistr/u8-strncmp-tests: New file.
4210         * tests/unistr/test-u8-strncmp.c: New file.
4211         * tests/unistr/test-strncmp.h: New file.
4212
4213         Tests for module 'unistr/u32-strcoll'.
4214         * modules/unistr/u32-strcoll-tests: New file.
4215         * tests/unistr/test-u32-strcoll.c: New file.
4216
4217         Tests for module 'unistr/u16-strcoll'.
4218         * modules/unistr/u16-strcoll-tests: New file.
4219         * tests/unistr/test-u16-strcoll.c: New file.
4220
4221         Tests for module 'unistr/u8-strcoll'.
4222         * modules/unistr/u8-strcoll-tests: New file.
4223         * tests/unistr/test-u8-strcoll.c: New file.
4224
4225         Tests for module 'unistr/u32-strcmp'.
4226         * modules/unistr/u32-strcmp-tests: New file.
4227         * tests/unistr/test-u32-strcmp.c: New file.
4228         * tests/unistr/test-u32-strcmp.h: New file.
4229
4230         Tests for module 'unistr/u16-strcmp'.
4231         * modules/unistr/u16-strcmp-tests: New file.
4232         * tests/unistr/test-u16-strcmp.c: New file.
4233         * tests/unistr/test-u16-strcmp.h: New file.
4234
4235         Tests for module 'unistr/u8-strcmp'.
4236         * modules/unistr/u8-strcmp-tests: New file.
4237         * tests/unistr/test-u8-strcmp.c: New file.
4238         * tests/unistr/test-u8-strcmp.h: New file.
4239         * tests/unistr/test-strcmp.h: New file.
4240
4241         Tests for module 'unistr/u32-strncat'.
4242         * modules/unistr/u32-strncat-tests: New file.
4243         * tests/unistr/test-u32-strncat.c: New file.
4244
4245         Tests for module 'unistr/u16-strncat'.
4246         * modules/unistr/u16-strncat-tests: New file.
4247         * tests/unistr/test-u16-strncat.c: New file.
4248
4249         Tests for module 'unistr/u8-strncat'.
4250         * modules/unistr/u8-strncat-tests: New file.
4251         * tests/unistr/test-u8-strncat.c: New file.
4252         * tests/unistr/test-strncat.h: New file.
4253
4254         Tests for module 'unistr/u32-strcat'.
4255         * modules/unistr/u32-strcat-tests: New file.
4256         * tests/unistr/test-u32-strcat.c: New file.
4257
4258         Tests for module 'unistr/u16-strcat'.
4259         * modules/unistr/u16-strcat-tests: New file.
4260         * tests/unistr/test-u16-strcat.c: New file.
4261
4262         Tests for module 'unistr/u8-strcat'.
4263         * modules/unistr/u8-strcat-tests: New file.
4264         * tests/unistr/test-u8-strcat.c: New file.
4265         * tests/unistr/test-strcat.h: New file.
4266
4267         Tests for module 'unistr/u32-stpncpy'.
4268         * modules/unistr/u32-stpncpy-tests: New file.
4269         * tests/unistr/test-u32-stpncpy.c: New file.
4270
4271         Tests for module 'unistr/u16-stpncpy'.
4272         * modules/unistr/u16-stpncpy-tests: New file.
4273         * tests/unistr/test-u16-stpncpy.c: New file.
4274
4275         Tests for module 'unistr/u8-stpncpy'.
4276         * modules/unistr/u8-stpncpy-tests: New file.
4277         * tests/unistr/test-u8-stpncpy.c: New file.
4278         * tests/unistr/test-stpncpy.h: New file.
4279
4280         Tests for module 'unistr/u32-strncpy'.
4281         * modules/unistr/u32-strncpy-tests: New file.
4282         * tests/unistr/test-u32-strncpy.c: New file.
4283
4284         Tests for module 'unistr/u16-strncpy'.
4285         * modules/unistr/u16-strncpy-tests: New file.
4286         * tests/unistr/test-u16-strncpy.c: New file.
4287
4288         Tests for module 'unistr/u8-strncpy'.
4289         * modules/unistr/u8-strncpy-tests: New file.
4290         * tests/unistr/test-u8-strncpy.c: New file.
4291         * tests/unistr/test-strncpy.h: New file.
4292
4293         Tests for module 'unistr/u32-stpcpy'.
4294         * modules/unistr/u32-stpcpy-tests: New file.
4295         * tests/unistr/test-u32-stpcpy.c: New file.
4296
4297         Tests for module 'unistr/u16-stpcpy'.
4298         * modules/unistr/u16-stpcpy-tests: New file.
4299         * tests/unistr/test-u16-stpcpy.c: New file.
4300
4301         Tests for module 'unistr/u8-stpcpy'.
4302         * modules/unistr/u8-stpcpy-tests: New file.
4303         * tests/unistr/test-u8-stpcpy.c: New file.
4304         * tests/unistr/test-stpcpy.h: New file.
4305
4306         Tests for module 'unistr/u32-strcpy'.
4307         * modules/unistr/u32-strcpy-tests: New file.
4308         * tests/unistr/test-u32-strcpy.c: New file.
4309
4310         Tests for module 'unistr/u16-strcpy'.
4311         * modules/unistr/u16-strcpy-tests: New file.
4312         * tests/unistr/test-u16-strcpy.c: New file.
4313
4314         Tests for module 'unistr/u8-strcpy'.
4315         * modules/unistr/u8-strcpy-tests: New file.
4316         * tests/unistr/test-u8-strcpy.c: New file.
4317         * tests/unistr/test-strcpy.h: New file.
4318
4319         Tests for module 'unistr/u32-strnlen'.
4320         * modules/unistr/u32-strnlen-tests: New file.
4321         * tests/unistr/test-u32-strnlen.c: New file.
4322
4323         Tests for module 'unistr/u16-strnlen'.
4324         * modules/unistr/u16-strnlen-tests: New file.
4325         * tests/unistr/test-u16-strnlen.c: New file.
4326
4327         Tests for module 'unistr/u8-strnlen'.
4328         * modules/unistr/u8-strnlen-tests: New file.
4329         * tests/unistr/test-u8-strnlen.c: New file.
4330         * tests/unistr/test-strnlen.h: New file.
4331
4332         Tests for module 'unistr/u32-strlen'.
4333         * modules/unistr/u32-strlen-tests: New file.
4334         * tests/unistr/test-u32-strlen.c: New file.
4335
4336         Tests for module 'unistr/u16-strlen'.
4337         * modules/unistr/u16-strlen-tests: New file.
4338         * tests/unistr/test-u16-strlen.c: New file.
4339
4340         Tests for module 'unistr/u8-strlen'.
4341         * modules/unistr/u8-strlen-tests: New file.
4342         * tests/unistr/test-u8-strlen.c: New file.
4343
4344         Tests for module 'unistr/u32-prev'.
4345         * modules/unistr/u32-prev-tests: New file.
4346         * tests/unistr/test-u32-prev.c: New file.
4347
4348         Tests for module 'unistr/u16-prev'.
4349         * modules/unistr/u16-prev-tests: New file.
4350         * tests/unistr/test-u16-prev.c: New file.
4351
4352         Tests for module 'unistr/u8-prev'.
4353         * modules/unistr/u8-prev-tests: New file.
4354         * tests/unistr/test-u8-prev.c: New file.
4355
4356         Tests for module 'unistr/u32-next'.
4357         * modules/unistr/u32-next-tests: New file.
4358         * tests/unistr/test-u32-next.c: New file.
4359
4360         Tests for module 'unistr/u16-next'.
4361         * modules/unistr/u16-next-tests: New file.
4362         * tests/unistr/test-u16-next.c: New file.
4363
4364         Tests for module 'unistr/u8-next'.
4365         * modules/unistr/u8-next-tests: New file.
4366         * tests/unistr/test-u8-next.c: New file.
4367
4368         Tests for module 'unistr/u32-strmbtouc'.
4369         * modules/unistr/u32-strmbtouc-tests: New file.
4370         * tests/unistr/test-u32-strmbtouc.c: New file.
4371
4372         Tests for module 'unistr/u16-strmbtouc'.
4373         * modules/unistr/u16-strmbtouc-tests: New file.
4374         * tests/unistr/test-u16-strmbtouc.c: New file.
4375
4376         Tests for module 'unistr/u8-strmbtouc'.
4377         * modules/unistr/u8-strmbtouc-tests: New file.
4378         * tests/unistr/test-u8-strmbtouc.c: New file.
4379
4380         Tests for module 'unistr/u32-strmblen'.
4381         * modules/unistr/u32-strmblen-tests: New file.
4382         * tests/unistr/test-u32-strmblen.c: New file.
4383
4384         Tests for module 'unistr/u16-strmblen'.
4385         * modules/unistr/u16-strmblen-tests: New file.
4386         * tests/unistr/test-u16-strmblen.c: New file.
4387
4388         Tests for module 'unistr/u8-strmblen'.
4389         * modules/unistr/u8-strmblen-tests: New file.
4390         * tests/unistr/test-u8-strmblen.c: New file.
4391
4392         Tests for module 'unistr/u32-cpy-alloc'.
4393         * modules/unistr/u32-cpy-alloc-tests: New file.
4394         * tests/unistr/test-u32-cpy-alloc.c: New file.
4395
4396         Tests for module 'unistr/u16-cpy-alloc'.
4397         * modules/unistr/u16-cpy-alloc-tests: New file.
4398         * tests/unistr/test-u16-cpy-alloc.c: New file.
4399
4400         Tests for module 'unistr/u8-cpy-alloc'.
4401         * modules/unistr/u8-cpy-alloc-tests: New file.
4402         * tests/unistr/test-u8-cpy-alloc.c: New file.
4403         * tests/unistr/test-cpy-alloc.h: New file.
4404
4405         Tests for module 'unistr/u32-mbsnlen'.
4406         * modules/unistr/u32-mbsnlen-tests: New file.
4407         * tests/unistr/test-u32-mbsnlen.c: New file.
4408
4409         Tests for module 'unistr/u16-mbsnlen'.
4410         * modules/unistr/u16-mbsnlen-tests: New file.
4411         * tests/unistr/test-u16-mbsnlen.c: New file.
4412
4413         Tests for module 'unistr/u8-mbsnlen'.
4414         * modules/unistr/u8-mbsnlen-tests: New file.
4415         * tests/unistr/test-u8-mbsnlen.c: New file.
4416
4417         Tests for module 'unistr/u32-chr'.
4418         * modules/unistr/u32-chr-tests: New file.
4419         * tests/unistr/test-u32-chr.c: New file.
4420
4421         Tests for module 'unistr/u16-chr'.
4422         * modules/unistr/u16-chr-tests: New file.
4423         * tests/unistr/test-u16-chr.c: New file.
4424
4425         Tests for module 'unistr/u8-chr'.
4426         * modules/unistr/u8-chr-tests: New file.
4427         * tests/unistr/test-u8-chr.c: New file.
4428         * tests/unistr/test-chr.h: New file, based on tests/test-memchr.c.
4429
4430         Tests for module 'unistr/u32-cmp2'.
4431         * modules/unistr/u32-cmp2-tests: New file.
4432         * tests/unistr/test-u32-cmp2.c: New file.
4433
4434         Tests for module 'unistr/u16-cmp2'.
4435         * modules/unistr/u16-cmp2-tests: New file.
4436         * tests/unistr/test-u16-cmp2.c: New file.
4437
4438         Tests for module 'unistr/u8-cmp2'.
4439         * modules/unistr/u8-cmp2-tests: New file.
4440         * tests/unistr/test-u8-cmp2.c: New file.
4441         * tests/unistr/test-cmp2.h: New file, based on tests/unistr/test-cmp.h.
4442
4443         Tests for module 'unistr/u32-cmp'.
4444         * modules/unistr/u32-cmp-tests: New file.
4445         * tests/unistr/test-u32-cmp.c: New file.
4446
4447         Tests for module 'unistr/u16-cmp'.
4448         * modules/unistr/u16-cmp-tests: New file.
4449         * tests/unistr/test-u16-cmp.c: New file.
4450
4451         Tests for module 'unistr/u8-cmp'.
4452         * modules/unistr/u8-cmp-tests: New file.
4453         * tests/unistr/test-u8-cmp.c: New file.
4454         * tests/unistr/test-cmp.h: New file, based on tests/test-memcmp.c.
4455
4456         Tests for module 'unistr/u32-set'.
4457         * modules/unistr/u32-set-tests: New file.
4458         * tests/unistr/test-u32-set.c: New file.
4459
4460         Tests for module 'unistr/u16-set'.
4461         * modules/unistr/u16-set-tests: New file.
4462         * tests/unistr/test-u16-set.c: New file.
4463
4464         Tests for module 'unistr/u8-set'.
4465         * modules/unistr/u8-set-tests: New file.
4466         * tests/unistr/test-u8-set.c: New file.
4467         * tests/unistr/test-set.h: New file.
4468
4469         Tests for module 'unistr/u32-move'.
4470         * modules/unistr/u32-move-tests: New file.
4471         * tests/unistr/test-u32-move.c: New file.
4472
4473         Tests for module 'unistr/u16-move'.
4474         * modules/unistr/u16-move-tests: New file.
4475         * tests/unistr/test-u16-move.c: New file.
4476
4477         Tests for module 'unistr/u8-move'.
4478         * modules/unistr/u8-move-tests: New file.
4479         * tests/unistr/test-u8-move.c: New file.
4480         * tests/unistr/test-move.h: New file.
4481
4482         Tests for module 'unistr/u32-cpy'.
4483         * modules/unistr/u32-cpy-tests: New file.
4484         * tests/unistr/test-u32-cpy.c: New file.
4485
4486         Tests for module 'unistr/u16-cpy'.
4487         * modules/unistr/u16-cpy-tests: New file.
4488         * tests/unistr/test-u16-cpy.c: New file.
4489
4490         Tests for module 'unistr/u8-cpy'.
4491         * modules/unistr/u8-cpy-tests: New file.
4492         * tests/unistr/test-u8-cpy.c: New file.
4493         * tests/unistr/test-cpy.h: New file.
4494
4495 2010-01-09  Bruno Haible  <bruno@clisp.org>
4496
4497         Tests for module 'unistr/u32-uctomb'.
4498         * modules/unistr/u32-uctomb-tests: New file.
4499         * tests/unistr/test-u32-uctomb.c: New file.
4500
4501         Tests for module 'unistr/u16-uctomb'.
4502         * modules/unistr/u16-uctomb-tests: New file.
4503         * tests/unistr/test-u16-uctomb.c: New file.
4504
4505         Tests for module 'unistr/u8-uctomb'.
4506         * modules/unistr/u8-uctomb-tests: New file.
4507         * tests/unistr/test-u8-uctomb.c: New file.
4508
4509         Tests for module 'unistr/u32-mbtoucr'.
4510         * modules/unistr/u32-mbtoucr-tests: New file.
4511         * tests/unistr/test-u32-mbtoucr.c: New file.
4512
4513         Tests for module 'unistr/u16-mbtoucr'.
4514         * modules/unistr/u16-mbtoucr-tests: New file.
4515         * tests/unistr/test-u16-mbtoucr.c: New file.
4516
4517         Tests for module 'unistr/u8-mbtoucr'.
4518         * modules/unistr/u8-mbtoucr-tests: New file.
4519         * tests/unistr/test-u8-mbtoucr.c: New file.
4520
4521         Tests for module 'unistr/u32-mbtouc'.
4522         * modules/unistr/u32-mbtouc-tests: New file.
4523         * tests/unistr/test-u32-mbtouc.c: New file.
4524
4525         Tests for module 'unistr/u16-mbtouc'.
4526         * modules/unistr/u16-mbtouc-tests: New file.
4527         * tests/unistr/test-u16-mbtouc.c: New file.
4528
4529         Tests for module 'unistr/u8-mbtouc'.
4530         * modules/unistr/u8-mbtouc-tests: New file.
4531         * tests/unistr/test-u8-mbtouc.c: New file.
4532
4533         Tests for module 'unistr/u32-mbtouc-unsafe'.
4534         * modules/unistr/u32-mbtouc-unsafe-tests: New file.
4535         * tests/unistr/test-u32-mbtouc-unsafe.c: New file.
4536         * tests/unistr/test-u32-mbtouc.h: New file.
4537
4538         Tests for module 'unistr/u16-mbtouc-unsafe'.
4539         * modules/unistr/u16-mbtouc-unsafe-tests: New file.
4540         * tests/unistr/test-u16-mbtouc-unsafe.c: New file.
4541         * tests/unistr/test-u16-mbtouc.h: New file.
4542
4543         Tests for module 'unistr/u8-mbtouc-unsafe'.
4544         * modules/unistr/u8-mbtouc-unsafe-tests: New file.
4545         * tests/unistr/test-u8-mbtouc-unsafe.c: New file.
4546         * tests/unistr/test-u8-mbtouc.h: New file.
4547
4548         Tests for module 'unistr/u32-mblen'.
4549         * modules/unistr/u32-mblen-tests: New file.
4550         * tests/unistr/test-u32-mblen.c: New file.
4551
4552         Tests for module 'unistr/u16-mblen'.
4553         * modules/unistr/u16-mblen-tests: New file.
4554         * tests/unistr/test-u16-mblen.c: New file.
4555
4556         Tests for module 'unistr/u8-mblen'.
4557         * modules/unistr/u8-mblen-tests: New file.
4558         * tests/unistr/test-u8-mblen.c: New file.
4559
4560         Tests for module 'unistr/u32-to-u16'.
4561         * modules/unistr/u32-to-u16-tests: New file.
4562         * tests/unistr/test-u32-to-u16.c: New file.
4563
4564         Tests for module 'unistr/u32-to-u8'.
4565         * modules/unistr/u32-to-u8-tests: New file.
4566         * tests/unistr/test-u32-to-u8.c: New file.
4567
4568         Tests for module 'unistr/u16-to-u32'.
4569         * modules/unistr/u16-to-u32-tests: New file.
4570         * tests/unistr/test-u16-to-u32.c: New file.
4571
4572         Tests for module 'unistr/u16-to-u8'.
4573         * modules/unistr/u16-to-u8-tests: New file.
4574         * tests/unistr/test-u16-to-u8.c: New file.
4575
4576         Tests for module 'unistr/u8-to-u32'.
4577         * modules/unistr/u8-to-u32-tests: New file.
4578         * tests/unistr/test-u8-to-u32.c: New file.
4579
4580         Tests for module 'unistr/u8-to-u16'.
4581         * modules/unistr/u8-to-u16-tests: New file.
4582         * tests/unistr/test-u8-to-u16.c: New file.
4583
4584         Tests for module 'unistr/u32-check'.
4585         * modules/unistr/u32-check-tests: New file.
4586         * tests/unistr/test-u32-check.c: New file.
4587
4588         Tests for module 'unistr/u16-check'.
4589         * modules/unistr/u16-check-tests: New file.
4590         * tests/unistr/test-u16-check.c: New file.
4591
4592         Tests for module 'unistr/u8-check'.
4593         * modules/unistr/u8-check-tests: New file.
4594         * tests/unistr/test-u8-check.c: New file.
4595
4596         * tests/unictype/test-categ_byname.c: Include <stdbool.h>.
4597         (category_equals): New function.
4598         (main): Add more tests.
4599         * modules/unictype/category-byname-tests (Depends-on): Add stdbool.
4600
4601         * tests/unictype/test-bidi_byname.c (main): Add more tests.
4602
4603 2010-01-10  Bruno Haible  <bruno@clisp.org>
4604
4605         unistr/u*-strcoll: Try harder to distinguish different strings.
4606         * lib/unistr/u-strcoll.h (FUNC): When sl1 and sl2 are the same,
4607         compare s1 and s2 to see if they are different.
4608
4609 2010-01-10  Bruno Haible  <bruno@clisp.org>
4610
4611         unistr/u*-stpncpy: Fix the return value.
4612         * lib/unistr.h (u8_stpncpy, u16_stpncpy, u32_stpncpy): Make the
4613         description of the return value consistent with stpncpy in glibc.
4614         * lib/unistr/u-stpncpy.h (FUNC): Return the pointer past the last
4615         written non-NUL unit.
4616
4617 2010-01-10  Bruno Haible  <bruno@clisp.org>
4618
4619         unistr/u*-next: Add missing dependencies.
4620         * modules/unistr/u8-next (Depends-on): Add unistr/u8-strmbtouc.
4621         * modules/unistr/u16-next (Depends-on): Add unistr/u16-strmbtouc.
4622         * modules/unistr/u32-next (Depends-on): Add unistr/u32-strmbtouc.
4623
4624 2010-01-10  Bruno Haible  <bruno@clisp.org>
4625
4626         unistr/u8-mbsnlen: Fix return value for incomplete character.
4627         * lib/unistr/u8-mbsnlen.c (u8_mbsnlen): Use u8_mbtoucr instead of
4628         u8_mblen.
4629         * modules/unistr/u8-mbsnlen (Depends-on): Add unistr/u8-mbtoucr.
4630         Remove unistr/u8-mblen.
4631         * lib/unistr/u16-mbsnlen.c (u16_mbsnlen): Use u16_mbtoucr instead of
4632         u16_mblen.
4633         * modules/unistr/u16-mbsnlen (Depends-on): Add unistr/u16-mbtoucr.
4634         Remove unistr/u16-mblen.
4635
4636 2010-01-10  Bruno Haible  <bruno@clisp.org>
4637
4638         wchar: Fix compilation error when <wchar.h> is used from coreutils.
4639         * lib/wchar.in.h: Treat __need_wint_t like __need_mbstate_t.
4640         Reported by Brian Gough <bjg@gnu.org> and
4641         Chris Clayton <chris2553@googlemail.com> via
4642         Mike Frysinger <vapier@gentoo.org> and Jim Meyering <jim@meyering.net>.
4643
4644 2010-01-09  Bruno Haible  <bruno@clisp.org>
4645
4646         unistr/u16-to-u32: Reject invalid input.
4647         * lib/unistr/u16-to-u32.c (u16_to_u32): Call u16_mbtoucr instead of
4648         u16_mbtouc.
4649         * modules/unistr/u16-to-u32 (Depends-on): Add unistr/u16-mbtoucr.
4650         Remove unistr/u16-mbtouc.
4651
4652         unistr/u16-to-u8: Reject invalid input.
4653         * lib/unistr/u16-to-u8.c (u16_to_u8): Call u16_mbtoucr instead of
4654         u16_mbtouc.
4655         * modules/unistr/u16-to-u8 (Depends-on): Add unistr/u16-mbtoucr.
4656         Remove unistr/u16-mbtouc.
4657
4658         unistr/u8-to-u32: Reject invalid input.
4659         * lib/unistr/u8-to-u32.c (u8_to_u32): Call u8_mbtoucr instead of
4660         u8_mbtouc.
4661         * modules/unistr/u8-to-u32 (Depends-on): Add unistr/u8-mbtoucr.
4662         Remove unistr/u8-mbtouc.
4663
4664         unistr/u8-to-u16: Reject invalid input.
4665         * lib/unistr/u8-to-u16.c (u8_to_u16): Call u8_mbtoucr instead of
4666         u8_mbtouc.
4667         * modules/unistr/u8-to-u16 (Depends-on): Add unistr/u8-mbtoucr.
4668         Remove unistr/u8-mbtouc.
4669
4670 2010-01-09  Bruno Haible  <bruno@clisp.org>
4671
4672         Tests for module 'getlogin'.
4673         * modules/getlogin-tests: New file.
4674         * tests/test-getlogin.c: New file.
4675
4676         New module 'getlogin'.
4677         * lib/unistd.in.h (getlogin): New declaration.
4678         * lib/getlogin.c: New file.
4679         * m4/getlogin.m4: New file.
4680         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_GETLOGIN,
4681         HAVE_GETLOGIN.
4682         * modules/unistd (Makefile.am): Substitute GNULIB_GETLOGIN,
4683         HAVE_GETLOGIN.
4684         * modules/getlogin: New file.
4685         * doc/posix-functions/getlogin.texi: Mention the new module.
4686         Reported by John W. Eaton <jwe@gnu.org>.
4687
4688 2010-01-09  Bruno Haible  <bruno@clisp.org>
4689
4690         getlogin_r: Support for native Windows.
4691         * lib/getlogin_r.c: Include <windows.h>
4692         (getlogin_r): Implement for native Windows.
4693         * tests/test-getlogin_r.c (main): Also test with a huge buffer.
4694         Reported by Tatsuro MATSUOKA <tmacchant5@yahoo.co.jp>
4695         via John W. Eaton <jwe@gnu.org>.
4696
4697 2010-01-09  Bruno Haible  <bruno@clisp.org>
4698
4699         getlogin_r: Small fixes.
4700         * lib/getlogin_r.c (getlogin_r): Don't set errno if the function
4701         succeeds.
4702         * m4/getlogin_r.m4 (gl_GETLOGIN_R): Require gl_USE_SYSTEM_EXTENSIONS
4703         before testing whether getlogin_r is declared. No need to set
4704         HAVE_DECL_GETLOGIN_R to 1.
4705         (gl_PREREQ_GETLOGIN_R): Don't check for the getlogin_r declaration.
4706
4707 2010-01-09  Bruno Haible  <bruno@clisp.org>
4708
4709         * lib/unistd.in.h (getlogin_r): Add comment.
4710
4711 2010-01-09  Bruno Haible  <bruno@clisp.org>
4712
4713         Tests for module 'getlogin_r'.
4714         * modules/getlogin_r-tests: New file.
4715         * tests/test-getlogin_r.c: New file.
4716
4717 2010-01-09  Jim Meyering  <meyering@redhat.com>
4718
4719         maint.mk: extend proper_name_utf8-vs-LIBICONV-checking rule
4720         * top/maint.mk (sc_proper_name_utf8_requires_ICONV): Adapt to work
4721         also when $(LIBICONV) is part of LDADD, rather than ${prog}_LDADD.
4722
4723 2010-01-08  Simon Josefsson  <simon@josefsson.org>
4724
4725         * lib/dup2.c (rpl_dup2): Improve comment.
4726
4727 2010-01-08  Eric Blake  <ebb9@byu.net>
4728
4729         maint.mk: allow packages to add makefile @@ exceptions
4730         * top/maint.mk (_makefile_at_at_check_exceptions): New hook.
4731         (sc_makefile_check): Rename...
4732         (sc_makefile_at_at_check): ...to this, and use hook.
4733
4734         dup2: work around mingw bug
4735         * lib/dup2.c (rpl_dup2): Sanitize return value on mingw.
4736         Reported by Simon Josefsson.
4737
4738 2010-01-07  John W. Eaton  <jwe@octave.org>  (tiny change)
4739
4740         glob: Fix C++ compilation.
4741         * lib/glob.in.h [__cplusplus]: Define __BEGIN_DECLS and __END_DECLS for
4742         C++.
4743
4744 2010-01-07  Bruno Haible  <bruno@clisp.org>
4745
4746         Fix indentation of wctype.in.h, broken since 2007-01-06.
4747         * lib/wctype.in.h: Fix indentation of preprocessor directives.
4748
4749 2010-01-07  Bruno Haible  <bruno@clisp.org>
4750
4751         mbslen: Avoid collision with system function.
4752         * lib/string.in.h [MirBSD]: Include <wchar.h>.
4753         (mbslen): Undefine first. Alias mbslen to rpl_mbslen.
4754         * m4/mbslen.m4: New file.
4755         * modules/mbslen (Files): Add it.
4756         (configure.ac): Invoke gl_MBSLEN.
4757         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize HAVE_MBSLEN.
4758         * modules/string (Makefile.am): Substitute HAVE_MBSLEN.
4759         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>
4760         via Ian Beckwith <ianb@erislabs.net>.
4761
4762 2010-01-07  Bruno Haible  <bruno@clisp.org>
4763
4764         dirent: Document the last fix.
4765         * doc/posix-headers/dirent.texi: Document the bug of missing 'ino_t'.
4766
4767 2010-01-07  Bruno Haible  <bruno@clisp.org>
4768
4769         stdio: Ensure <stdio.h> defines off_t, ssize_t, va_list.
4770         * lib/stdio.in.h: Include <sys/types.h> unconditionally.
4771         * tests/test-stdio.c: Verify that fpos_t, off_t, size_t, ssize_t,
4772         va_list are defined.
4773         * doc/posix-headers/stdio.texi: Document the bug of missing types.
4774         Reported by Eric Blake.
4775
4776 2010-01-07  Bruno Haible  <bruno@clisp.org>
4777
4778         xlist, xoset: Fix missing dependency bug, introduced on 2009-12-13.
4779         * modules/xlist (Depends-on): Add 'list',
4780         * modules/xoset (Depends-on): Add 'oset'.
4781         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
4782
4783 2010-01-07  Bruno Haible  <bruno@clisp.org>
4784
4785         * doc/posix-functions/strcasecmp.texi: Clarify the platforms.
4786         * doc/posix-functions/strncasecmp.texi: Likewise.
4787
4788 2010-01-07  Bruno Haible  <bruno@clisp.org>
4789
4790         * m4/nl_langinfo.m4 (gl_FUNC_NL_LANGINFO): Simplify logic.
4791
4792 2010-01-07  John W. Eaton  <jwe@octave.org>
4793
4794         wctype: allow C++ use
4795         * lib/wctype.in.h: Add extern "C" block for C++.
4796
4797 2010-01-06  Eric Blake  <ebb9@byu.net>
4798
4799         maint.mk: detect incorrect GFDL usage
4800         * top/maint.mk (_GFDL_regexp, sc_GFDL_version): New rule.
4801
4802 2010-01-06  Jim Meyering  <meyering@redhat.com>
4803         and Eric Blake  <ebb9@byu.net>
4804
4805         maint.mk: ignore multi-line copyright in NEWS
4806         * top/maint.mk (NEWS_hash): Add immunity to multi-line copyright.
4807
4808 2010-01-06  Eric Blake  <ebb9@byu.net>
4809
4810         select: add missing dependency
4811         * modules/select-tests (Depends-on): Move sockets dependency...
4812         * modules/select (Depends-on): ...here.
4813         Reported by Ian Beckwith.
4814
4815         doc: regenerate INSTALL
4816         * doc/INSTALL: Reflect recent autoconf update.
4817         * doc/INSTALL.ISO: Likewise.
4818         * doc/INSTALL.UTF-8: Likewise.
4819
4820         pread: fix compilation on glibc
4821         * m4/pread.m4 (gl_FUNC_PREAD): Request all interfaces.
4822         Reported by Ralf Wildenhues.
4823
4824         dirent: fix test failure
4825         * lib/dirent.in.h (includes): Guarantee ino_t.
4826         Reported by Ralf Wildenhues.
4827
4828 2010-01-06  Petr Salinger  <Petr.Salinger@seznam.cz>  (tiny change)
4829
4830         linkat, renameat: avoid bad free
4831         * lib/at-func2.c (at_func2): Fix typo.
4832         Reported via Ian Beckwith, from http://bugs.debian.org/561117.
4833
4834 2010-01-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
4835
4836         cleanup after gl_FUNC_READLINK, for gl_FUNC_SYMLINK test
4837         * m4/readlink.m4 (gl_FUNC_READLINK): Remove conftest.lnk2,
4838         to avoid failure of symlink test later.
4839
4840 2010-01-06  Eric Blake  <ebb9@byu.net>
4841
4842         stdio, unistd: guarantee ssize_t
4843         * lib/unistd.in.h (includes): Ensure that types required by POSIX
4844         2008 are exposed when needed.
4845         * lib/stdio.in.h (includes): Likewise.
4846         Reported by Ralf Wildenhues.
4847
4848 2010-01-06  Paolo Bonzini  <bonzini@gnu.org>
4849
4850         nl_langinfo: do not call AC_CHECK_FUNC_ONCE inside if.
4851         * m4/nl_langinfo.m4 (gl_FUNC_NL_LANGINFO): Do not call
4852         AC_CHECK_FUNC_ONCE inside if, do not adjust ac_cv_func_nl_langinfo.
4853
4854 2010-01-06  Jim Meyering  <meyering@redhat.com>
4855
4856         readtokens: this module *does* require xalloc.h
4857         It uses only functions that were omitted by the old syntax-check rule.
4858         * lib/readtokens.c: Include "xalloc.h" once again.
4859         * modules/readtokens (Depends-on): Add xalloc.
4860         This reverts part of 0e0f8f12ec241c0f1c1f21f960bb5cf908a0fa3c.
4861
4862 2010-01-05  Eric Blake  <ebb9@byu.net>
4863
4864         maint: support 'make announcement' from a VPATH build
4865         * top/maint.mk (announcement): Look for correct NEWS file.
4866
4867 2010-01-05  Aurelien Jarno  <aurelien@aurel32.net>  (tiny change)
4868
4869         utimens (fdutimens): ignore a negative FD, per contract
4870         * lib/utimens.c (fdutimens) [HAVE_FUTIMENS]: Call futimens only
4871         when we have a valid file descriptor.  Otherwise, using a brand
4872         new glibc (with just-patched futimens that now fails with EBADF)
4873         would cause this function to fail with ENOSYS.
4874         Reported by Guillaume Ayoub in http://bugs.debian.org/563726.
4875         See also http://bugzilla.redhat.com/552320.
4876
4877 2010-01-05  Eric Blake  <ebb9@byu.net>
4878
4879         strcase: document what it provides
4880         * doc/posix-functions/strcasecmp.texi (strcasecmp): Mention the
4881         gnulib module.
4882         * doc/posix-functions/strncasecmp.texi (strncasecmp): Likewise.
4883         Reported by Dilyan Palauzov <Dilyan.Palauzov@aegee.org>.
4884
4885 2010-01-05  Jim Meyering  <meyering@redhat.com>
4886
4887         maint: remove useless inclusions of "xalloc.h"
4888         * lib/getloadavg.c: Remove useless inclusion of "xalloc.h".
4889         * lib/readtokens.c: Likewise.
4890         * lib/same.c: Likewise.
4891         * modules/getloadavg (Depends-on): Remove xalloc.
4892         * modules/readtokens: Likewise.
4893         * modules/same: Likewise.
4894
4895         maint.mk: include 4 more function names in alloca.h-checking regexp
4896         * top/maint.mk (sc_prohibit_xalloc_without_use): Use more complete
4897         regexp.  Before, we would give a false-positive (saying alloca.h
4898         is included unnecessarily) when the only uses involved omitted symbols.
4899
4900         xalloc.h: use consistent formatting
4901         * lib/xalloc.h: Move declarations to start in the first column.
4902
4903 2010-01-05  Eric Blake  <ebb9@byu.net>
4904
4905         mkdir: avoid xalloc
4906         * lib/mkdir.c (includes): Drop unused header.
4907         Reported by John W. Eaton.
4908
4909 2010-01-04  Jim Meyering  <meyering@redhat.com>
4910
4911         nl_langinfo: avoid configure-time syntax error
4912         * m4/nl_langinfo.m4 (gl_FUNC_NL_LANGINFO): When we've already tested
4913         for nl_langinfo.h, AC_CHECK_FUNCS_ONCE([nl_langinfo]) expands to
4914         the empty string.  Don't let that provoke a shell syntax error.
4915
4916         regcomp, regexec, fnmatch: avoid array bounds read error
4917         * lib/regcomp.c (build_equiv_class): From glibc:
4918         Use only the low 24 bits of a findidx return value as an index
4919         into the weights array.  Patch by Ulrich Drepper:
4920         http://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commit;h=b7d1c5fa30
4921         * lib/regexec.c (check_node_accept_bytes): Likewise.
4922         * lib/fnmatch_loop.c (FCT): Likewise.
4923
4924         regcomp: skip collseq lookup when there are no rules
4925         * lib/regcomp.c (lookup_collation_sequence_value): From glibc:
4926         http://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=a532a41df58
4927
4928         regcomp: recognize ill-formed { } expressions
4929         * lib/regcomp.c (parse_dup_op): From glibc:
4930         http://sourceware.org/git/gitweb.cgi?p=glibc.git;a=commitdiff;h=a87cd2894cb
4931
4932         regcomp: fix typo in comment
4933         * lib/regcomp.c (duplicate_node_closure): Sync from glibc.
4934         s/satisfy/satisfies/.
4935
4936         regcomp: sync from glibc: remove dead store
4937         * lib/regcomp.c (duplicate_node_closure): Remove useless
4938         search_duplicated_node call and dead store.
4939
4940         regcomp: sync from glibc; always use nl_langinfo
4941         * lib/regcomp.c (init_dfa) [!LIBC]: Always use nl_langinfo (CODESET),
4942         now that gnulib provides it.  Recognize UTF8 as well as UTF-8.
4943         * modules/regex (Depends-on): Add nl_langinfo.
4944
4945 2010-01-04  Eric Blake  <ebb9@byu.net>
4946
4947         fdopendir: fix configure test
4948         * m4/fdopendir.m4 (gl_FUNC_FDOPENDIR): Check for existing file.
4949
4950 2010-01-01  Bruno Haible  <bruno@clisp.org>
4951
4952         wchar: Remove unused configure check.
4953         * m4/wchar.m4 (gl_WCHAR_H): Don't test whether <wchar.h> is standalone.
4954
4955 2010-01-01  Eric Blake  <ebb9@byu.net>
4956
4957         headers: make check of system header explicit
4958         * m4/netdb_h.m4 (gl_HEADER_NETDB): Don't exploit knowledge of
4959         gl_CHECK_NEXT_HEADER internals, but call AC_CHECK_HEADERS_ONCE
4960         ourselves.
4961         * m4/search_h.m4 (gl_SEARCH_H): Likewise.
4962         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
4963         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Likewise.
4964         * m4/inttypes.m4 (gl_INTTYPES_H): Likewise, for gt_INTTYPES_PRI
4965         internals.
4966         * m4/wchar.m4 (gl_WCHAR_H): Skip followup test if header is
4967         missing.
4968         Suggested by Bruno Haible.
4969
4970 2010-01-01  Jim Meyering  <meyering@redhat.com>
4971
4972         ChangeLog: tweak to eliminate unnecessary copyright line
4973         * ChangeLog: Remove a copyright line that was mistakenly updated
4974         by today's update-copyright run.  Reported by Eric Blake.
4975
4976         test-update-copyright: don't let envvar setting cause test failure
4977         * tests/test-update-copyright.sh: Set UPDATE_COPYRIGHT_MAX_LINE_LENGTH.
4978
4979 2010-01-01  Bruno Haible  <bruno@clisp.org>
4980
4981         localename: Avoid gcc warning.
4982         * lib/localename.c (gl_locale_name_thread_unsafe): Don't define this
4983         function if it is not used.
4984
4985 2010-01-01  Jim Meyering  <meyering@redhat.com>
4986
4987         update nearly all FSF copyright year lists to include 2010
4988         Use the same procedure as for 2009, outlined in
4989         http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/20081
4990
4991         version-etc: set COPYRIGHT_YEAR to 2010
4992         * lib/version-etc.c (COPYRIGHT_YEAR): Manually update the enum.
4993
4994 2009-12-31  Eric Blake  <ebb9@byu.net>
4995
4996         doc: correct availability of cygwin 1.5.x getopt
4997         * doc/posix-functions/optarg.texi (optarg): Cygwin supplies getopt
4998         variables.
4999         * doc/posix-functions/opterr.texi (opterr): Likewise.
5000         * doc/posix-functions/optind.texi (optind): Likewise.
5001         * doc/posix-functions/optopt.texi (optopt): Likewise.
5002         * doc/posix-functions/tzname.texi (tzname): Likewise.
5003
5004         openat: update maintainer
5005         * modules/openat (Maintainer): Add myself.
5006
5007         utimens: avoid shadowing warning
5008         * lib/utimens.c (fdutimens, lutimens): Consolidate separate stat
5009         buffers into one, to avoid shadowing, as well as avoiding a
5010         redundant stat.
5011         Reported by Jim Meyering.
5012
5013         test-dup2: avoid compiler warning
5014         * tests/test-dup2.c (is_inheritable): Only define if used.
5015
5016 2010-01-01  Bruno Haible  <bruno@clisp.org>
5017
5018         vasnprintf: Avoid passing an 'rpl_mbstate_t *' to the system's wcrtomb.
5019         * lib/vasnprintf.c (VASNPRINTF): If GNULIB_defined_mbstate_t is
5020         defined, use wctomb instead of wcrtomb.
5021
5022 2010-01-01  Bruno Haible  <bruno@clisp.org>
5023
5024         iconv: Reject native Solaris iconv.
5025         * m4/iconv.m4 (AM_ICONV_LINK): Recognize native Solaris iconv() bug.
5026         * doc/posix-functions/iconv.texi: Document native Solaris iconv() bug.
5027
5028 2009-12-31  Bruno Haible  <bruno@clisp.org>
5029
5030         * tests/test-signal.c (main): Remove test of 'SIG'.
5031
5032 2009-12-31  Bruno Haible  <bruno@clisp.org>
5033
5034         spawn: Fix incomplete fix.
5035         * lib/spawn.in.h (posix_spawnattr_getflags, posix_spawnattr_setflags,
5036         posix_spawnattr_getpgroup, posix_spawnattr_setpgroup): Correct the link
5037         warnings for GNULIB_POSIXCHECK again.
5038         Reported by Eric Blake.
5039
5040 2009-12-31  Bruno Haible  <bruno@clisp.org>
5041
5042         Avoid namespace pollution on glibc systems.
5043         * lib/spawn.in.h: Don't include <sched.h>, <signal.h> on glibc systems.
5044         * lib/sys_times.in.h: Don't include <time.h> on glibc systems.
5045         * lib/wchar.in.h: Don't include <stddef.h>, <stdio.h>, <time.h> on
5046         glibc systems.
5047
5048 2009-12-31  Bruno Haible  <bruno@clisp.org>
5049
5050         * m4/wchar.m4 (gl_WCHAR_H): Remove gl_STDDEF_H invocation.
5051         (gl_REPLACE_WCHAR_H): Turn into a no-op.
5052         * m4/arpa_inet_h.m4 (gl_REPLACE_ARPA_INET_H): Likewise.
5053         * m4/dirent_h.m4 (gl_REPLACE_DIRENT_H): Likewise.
5054         * m4/locale_h.m4 (gl_REPLACE_LOCALE_H): Likewise.
5055         * m4/spawn_h.m4 (gl_REPLACE_SPAWN_H): Likewise.
5056         * m4/sys_ioctl_h.m4 (gl_REPLACE_SYS_IOCTL_H): Likewise.
5057
5058 2009-12-31  Bruno Haible  <bruno@clisp.org>
5059
5060         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Invoke
5061         gl_CHECK_NEXT_HEADERS before testing ac_cv_header_sys_select_h, not
5062         afterwards.
5063
5064 2009-12-31  Bruno Haible  <bruno@clisp.org>
5065
5066         * m4/sys_utsname_h.m4 (gl_SYS_UTSNAME_H_DEFAULTS): Don't set
5067         SYS_UTSNAME_H.
5068
5069 2009-12-31  Bruno Haible  <bruno@clisp.org>
5070
5071         spawn: Fix misapplied patch.
5072         * lib/spawn.in.h (posix_spawnattr_getflags, posix_spawnattr_setflags,
5073         posix_spawnattr_getpgroup, posix_spawnattr_setpgroup): Correct the link
5074         warnings for GNULIB_POSIXCHECK.
5075
5076 2009-12-31  Bruno Haible  <bruno@clisp.org>
5077
5078         times: Update after sys_times changed.
5079         * m4/times.m4: New file, extracted from modules/times. Set HAVE_TIMES.
5080         * modules/times (Files): Add it.
5081         (configure.ac): Invoke gl_FUNC_TIMES.
5082
5083 2009-12-31  Bruno Haible  <bruno@clisp.org>
5084
5085         Use AC_C_INLINE where necessary.
5086         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Require AC_C_INLINE.
5087         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Likewise.
5088         * m4/fts.m4 (gl_FUNC_FTS_CORE): Likewise.
5089         * m4/mbchar.m4 (gl_MBCHAR): Likewise.
5090         * m4/mbfile.m4 (gl_MBFILE): Likewise.
5091         * m4/mbiter.m4 (gl_MBITER): Likewise.
5092         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
5093         * m4/stat.m4 (gl_FUNC_STAT): Likewise.
5094         * m4/wait-process.m4 (gl_WAIT_PROCESS): Likewise.
5095         * modules/u64 (configure.ac): Likewise.
5096
5097 2009-12-31  Bruno Haible  <bruno@clisp.org>
5098
5099         Use AC_C_INLINE instead of module 'inline' where possible.
5100         * modules/inline (Description): Clarify purpose.
5101         * m4/count-one-bits.m4 (gl_COUNT_ONE_BITS): Require AC_C_INLINE.
5102         * modules/count-one-bits (Depends-on): Remove inline.
5103         * m4/openat.m4 (gl_PREREQ_OPENAT): Require AC_C_INLINE.
5104         * modules/openat (Depends-on): Remove inline.
5105         * modules/fdutimensat (Depends-on, configure.ac): Require AC_C_INLINE
5106         instead of depending on module 'inline'.
5107         * modules/filevercmp (Depends-on, configure.ac): Likewise.
5108         * modules/unicase/cased (Depends-on, configure.ac): Likewise.
5109         * modules/unicase/ignorable (Depends-on, configure.ac): Likewise.
5110         * modules/unictype/category-of (Depends-on, configure.ac): Likewise.
5111         * modules/unictype/category-test (Depends-on, configure.ac): Likewise.
5112         * modules/unictype/ctype-alnum (Depends-on, configure.ac): Likewise.
5113         * modules/unictype/ctype-alpha (Depends-on, configure.ac): Likewise.
5114         * modules/unictype/ctype-blank (Depends-on, configure.ac): Likewise.
5115         * modules/unictype/ctype-cntrl (Depends-on, configure.ac): Likewise.
5116         * modules/unictype/ctype-digit (Depends-on, configure.ac): Likewise.
5117         * modules/unictype/ctype-graph (Depends-on, configure.ac): Likewise.
5118         * modules/unictype/ctype-lower (Depends-on, configure.ac): Likewise.
5119         * modules/unictype/ctype-print (Depends-on, configure.ac): Likewise.
5120         * modules/unictype/ctype-punct (Depends-on, configure.ac): Likewise.
5121         * modules/unictype/ctype-space (Depends-on, configure.ac): Likewise.
5122         * modules/unictype/ctype-upper (Depends-on, configure.ac): Likewise.
5123         * modules/unictype/ctype-xdigit (Depends-on, configure.ac): Likewise.
5124         * modules/unictype/property-alphabetic (Depends-on, configure.ac):
5125         Likewise.
5126         * modules/unictype/property-ascii-hex-digit (Depends-on,
5127         configure.ac): Likewise.
5128         * modules/unictype/property-bidi-arabic-digit (Depends-on,
5129         configure.ac): Likewise.
5130         * modules/unictype/property-bidi-arabic-right-to-left (Depends-on,
5131         configure.ac): Likewise.
5132         * modules/unictype/property-bidi-block-separator (Depends-on,
5133         configure.ac): Likewise.
5134         * modules/unictype/property-bidi-boundary-neutral (Depends-on,
5135         configure.ac): Likewise.
5136         * modules/unictype/property-bidi-common-separator (Depends-on,
5137         configure.ac): Likewise.
5138         * modules/unictype/property-bidi-control (Depends-on, configure.ac):
5139         Likewise.
5140         * modules/unictype/property-bidi-embedding-or-override (Depends-on,
5141         configure.ac): Likewise.
5142         * modules/unictype/property-bidi-eur-num-separator (Depends-on,
5143         configure.ac): Likewise.
5144         * modules/unictype/property-bidi-eur-num-terminator (Depends-on,
5145         configure.ac): Likewise.
5146         * modules/unictype/property-bidi-european-digit (Depends-on,
5147         configure.ac): Likewise.
5148         * modules/unictype/property-bidi-hebrew-right-to-left (Depends-on,
5149         configure.ac): Likewise.
5150         * modules/unictype/property-bidi-left-to-right (Depends-on,
5151         configure.ac): Likewise.
5152         * modules/unictype/property-bidi-non-spacing-mark (Depends-on,
5153         configure.ac): Likewise.
5154         * modules/unictype/property-bidi-other-neutral (Depends-on,
5155         configure.ac): Likewise.
5156         * modules/unictype/property-bidi-pdf (Depends-on, configure.ac):
5157         Likewise.
5158         * modules/unictype/property-bidi-segment-separator (Depends-on,
5159         configure.ac): Likewise.
5160         * modules/unictype/property-bidi-whitespace (Depends-on,
5161         configure.ac): Likewise.
5162         * modules/unictype/property-combining (Depends-on, configure.ac):
5163         Likewise.
5164         * modules/unictype/property-composite (Depends-on, configure.ac):
5165         Likewise.
5166         * modules/unictype/property-currency-symbol (Depends-on,
5167         configure.ac): Likewise.
5168         * modules/unictype/property-dash (Depends-on, configure.ac): Likewise.
5169         * modules/unictype/property-decimal-digit (Depends-on, configure.ac):
5170         Likewise.
5171         * modules/unictype/property-default-ignorable-code-point (Depends-on,
5172         configure.ac): Likewise.
5173         * modules/unictype/property-deprecated (Depends-on, configure.ac):
5174         Likewise.
5175         * modules/unictype/property-diacritic (Depends-on, configure.ac):
5176         Likewise.
5177         * modules/unictype/property-extender (Depends-on, configure.ac):
5178         Likewise.
5179         * modules/unictype/property-format-control (Depends-on, configure.ac):
5180         Likewise.
5181         * modules/unictype/property-grapheme-base (Depends-on, configure.ac):
5182         Likewise.
5183         * modules/unictype/property-grapheme-extend (Depends-on, configure.ac):
5184         Likewise.
5185         * modules/unictype/property-grapheme-link (Depends-on, configure.ac):
5186         Likewise.
5187         * modules/unictype/property-hex-digit (Depends-on, configure.ac):
5188         Likewise.
5189         * modules/unictype/property-hyphen (Depends-on, configure.ac):
5190         Likewise.
5191         * modules/unictype/property-id-continue (Depends-on, configure.ac):
5192         Likewise.
5193         * modules/unictype/property-id-start (Depends-on, configure.ac):
5194         Likewise.
5195         * modules/unictype/property-ideographic (Depends-on, configure.ac):
5196         Likewise.
5197         * modules/unictype/property-ids-binary-operator (Depends-on,
5198         configure.ac): Likewise.
5199         * modules/unictype/property-ids-trinary-operator (Depends-on,
5200         configure.ac): Likewise.
5201         * modules/unictype/property-ignorable-control (Depends-on,
5202         configure.ac): Likewise.
5203         * modules/unictype/property-iso-control (Depends-on, configure.ac):
5204         Likewise.
5205         * modules/unictype/property-join-control (Depends-on, configure.ac):
5206         Likewise.
5207         * modules/unictype/property-left-of-pair (Depends-on, configure.ac):
5208         Likewise.
5209         * modules/unictype/property-line-separator (Depends-on, configure.ac):
5210         Likewise.
5211         * modules/unictype/property-logical-order-exception (Depends-on,
5212         configure.ac): Likewise.
5213         * modules/unictype/property-lowercase (Depends-on, configure.ac):
5214         Likewise.
5215         * modules/unictype/property-math (Depends-on, configure.ac): Likewise.
5216         * modules/unictype/property-non-break (Depends-on, configure.ac):
5217         Likewise.
5218         * modules/unictype/property-not-a-character (Depends-on, configure.ac):
5219         Likewise.
5220         * modules/unictype/property-numeric (Depends-on, configure.ac):
5221         Likewise.
5222         * modules/unictype/property-other-alphabetic (Depends-on,
5223         configure.ac): Likewise.
5224         * modules/unictype/property-other-default-ignorable-code-point
5225         (Depends-on, configure.ac): Likewise.
5226         * modules/unictype/property-other-grapheme-extend (Depends-on,
5227         configure.ac): Likewise.
5228         * modules/unictype/property-other-id-continue (Depends-on,
5229         configure.ac): Likewise.
5230         * modules/unictype/property-other-id-start (Depends-on, configure.ac):
5231         Likewise.
5232         * modules/unictype/property-other-lowercase (Depends-on, configure.ac):
5233         Likewise.
5234         * modules/unictype/property-other-math (Depends-on, configure.ac):
5235         Likewise.
5236         * modules/unictype/property-other-uppercase (Depends-on, configure.ac):
5237         Likewise.
5238         * modules/unictype/property-paired-punctuation (Depends-on,
5239         configure.ac): Likewise.
5240         * modules/unictype/property-paragraph-separator (Depends-on,
5241         configure.ac): Likewise.
5242         * modules/unictype/property-pattern-syntax (Depends-on, configure.ac):
5243         Likewise.
5244         * modules/unictype/property-pattern-white-space (Depends-on,
5245         configure.ac): Likewise.
5246         * modules/unictype/property-private-use (Depends-on, configure.ac):
5247         Likewise.
5248         * modules/unictype/property-punctuation (Depends-on, configure.ac):
5249         Likewise.
5250         * modules/unictype/property-quotation-mark (Depends-on, configure.ac):
5251         Likewise.
5252         * modules/unictype/property-radical (Depends-on, configure.ac):
5253         Likewise.
5254         * modules/unictype/property-sentence-terminal (Depends-on,
5255         configure.ac): Likewise.
5256         * modules/unictype/property-soft-dotted (Depends-on, configure.ac):
5257         Likewise.
5258         * modules/unictype/property-space (Depends-on, configure.ac): Likewise.
5259         * modules/unictype/property-terminal-punctuation (Depends-on,
5260         configure.ac): Likewise.
5261         * modules/unictype/property-titlecase (Depends-on, configure.ac):
5262         Likewise.
5263         * modules/unictype/property-unassigned-code-value (Depends-on,
5264         configure.ac): Likewise.
5265         * modules/unictype/property-unified-ideograph (Depends-on,
5266         configure.ac): Likewise.
5267         * modules/unictype/property-uppercase (Depends-on, configure.ac):
5268         Likewise.
5269         * modules/unictype/property-variation-selector (Depends-on,
5270         configure.ac): Likewise.
5271         * modules/unictype/property-white-space (Depends-on, configure.ac):
5272         Likewise.
5273         * modules/unictype/property-xid-continue (Depends-on, configure.ac):
5274         Likewise.
5275         * modules/unictype/property-xid-start (Depends-on, configure.ac):
5276         Likewise.
5277         * modules/unictype/property-zero-width (Depends-on, configure.ac):
5278         Likewise.
5279         * modules/unictype/syntax-c-ident (Depends-on, configure.ac): Likewise.
5280         * modules/unictype/syntax-java-ident (Depends-on, configure.ac):
5281         Likewise.
5282
5283 2009-12-31  Bruno Haible  <bruno@clisp.org>
5284
5285         Remove unnecessary AC_C_INLINE invocation.
5286         * m4/popen.m4 (gl_PREREQ_POPEN): Don't invoke AC_C_INLINE. Not needed
5287         since 2009-08-21.
5288
5289 2009-12-31  Jim Meyering  <meyering@redhat.com>
5290
5291         maint.mk: don't require explicit gpg_key_ID in cfg.mk
5292         * top/maint.mk (gpg_key_ID): Derive key ID from signed release tag.
5293         With this change, we can all remove the gpg_key_ID = ... definition
5294         from our respective cfg.mk files.
5295
5296         maint.mk: create announcement template in ~/, not in /tmp
5297         * top/maint.mk (emit_upload_commands): Adjust.
5298         (release-prep): Emit into ~/announce-..., not /tmp/announce-...
5299         Remove temporary file, .ci-msg.
5300
5301 2009-12-31  Eric Blake  <ebb9@byu.net>
5302
5303         link-warning: always build headers with link warnings
5304         * modules/arpa_inet (Makefile.am): Always build replacement
5305         header.
5306         * modules/ctype (Makefile.am): Likewise.
5307         * modules/dirent (Makefile.am): Likewise.
5308         * modules/inttypes (Makefile.am): Likewise.
5309         * modules/langinfo (Makefile.am): Likewise.
5310         * modules/locale (Makefile.am): Likewise.
5311         * modules/spawn (Makefile.am): Likewise.
5312         * modules/sys_file (Makefile.am): Likewise.
5313         * modules/sys_ioctl (Makefile.am): Likewise.
5314         * modules/sys_select (Makefile.am): Likewise.
5315         * modules/sys_socket (Makefile.am): Likewise.
5316         * modules/sys_times (Makefile.am): Likewise.
5317         * modules/sys_utsname (Makefile.am): Likewise.
5318         * modules/sys_wait (Makefile.am): Likewise.
5319         * modules/wchar (Makefile.am): Likewise.
5320         * m4/arpa_inet_h.m4 (gl_HEADER_ARPA_INET)
5321         (gl_ARPA_INET_H_DEFAULTS): Drop unneeded variable.
5322         * m4/ctype.m4 (gl_CTYPE_H_DEFAULTS): Likewise.
5323         * m4/isblank.m4 (gl_FUNC_ISBLANK): Likewise.
5324         * m4/dirent_h.m4 (gl_REPLACE_DIRENT_H, gl_DIRENT_H_DEFAULTS):
5325         Likewise.
5326         * m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
5327         * m4/langinfo_h.m4 (gl_LANGINFO_H): Likewise.
5328         * m4/locale_h.m4 (gl_REPLACE_LOCALE_H, gl_LOCALE_H_DEFAULTS):
5329         Likewise.
5330         * m4/spawn_h.m4 (gl_REPLACE_SPAWN_H, gl_SPAWN_H_DEFAULTS):
5331         Likewise.
5332         * m4/sys_file_h.m4 (gl_HEADER_SYS_FILE_H): Likewise.
5333         * m4/sys_ioctl_h.m4 (gl_SYS_IOCTL_H, gl_REPLACE_SYS_IOCTL_H)
5334         (gl_SYS_IOCTL_H_DEFAULTS): Likewise.
5335         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
5336         * m4/sys_times_h.m4 (gl_SYS_TIMES_H): Likewise.
5337         * m4/sys_utsname_h.m4 (gl_SYS_UTSNAME_H)
5338         (gl_SYS_UTSNAME_H_DEFAULTS): Likewise.
5339         * m4/wchar.m4 (gl_WCHAR_H, gl_REPLACE_WCHAR_H)
5340         (gl_WCHAR_H_DEFAULTS): Likewise.
5341
5342 2009-12-31  Eric Blake  <ebb9@byu.net>
5343
5344         signal, spawn: use link warnings
5345         * lib/signal.in.h (sigset_t): Make unconditional.
5346         (sigismember, sigemptyset, sigaddset, sigdelset, sigfillset)
5347         (sigpending, sigprocmask, sigaction): Add link warnings.
5348         * lib/spawn.in.h (posix_spawn, posix_spawnp, posix_spawnattr_init)
5349         (posix_spawnattr_destroy, posix_spawnattr_getsigdefault)
5350         (posix_spawnattr_setsigdefault, posix_spawnattr_getsigmask)
5351         (posix_spawnattr_setsigmask, posix_spawnattr_getflags)
5352         (posix_spawnattr_setflags, posix_spawnattr_getpgroup)
5353         (posix_spawnattr_setpgroup, posix_spawnattr_getschedpolicy)
5354         (posix_spawnattr_setschedpolicy, posix_spawnattr_getschedparam)
5355         (posix_spawnattr_setschedparam, posix_spawn_file_actions_init)
5356         (posix_spawn_file_actions_destroy)
5357         (posix_spawn_file_actions_addopen)
5358         (posix_spawn_file_actions_addclose)
5359         (posix_spawn_file_actions_adddup2): Likewise.
5360         * m4/signal_h.m4 (gl_SIGNAL_H): Guarantee uid_t.
5361         * tests/test-signal.c (main): Enhance test.
5362
5363         spawn: improve wrapper support
5364         * m4/spawn_h.m4 (gl_SPAWN_H): Check for type existence.
5365         (gl_SPAWN_H_DEFAULTS): New defaults.
5366         * modules/spawn (Makefile.am): Substitute them.
5367         * lib/spawn.in.h: (posix_spawnattr_t, posix_spawn_file_actions_t):
5368         Only declare if missing or broken.
5369
5370         sys_times, sys_utsname: use include_next
5371         * m4/sys_times_h.m4 (gl_SYS_TIMES_H): Support wrapping an existing
5372         header.
5373         (gl_SYS_TIMES_H_DEFAULTS): Add another variable.
5374         * m4/sys_utsname_h.m4 (gl_SYS_UTSNAME_H)
5375         (gl_SYS_UTSNAME_H_DEFAULTS): Likewise.
5376         * modules/sys_times (Depends-on): Add include_next.
5377         (Makefile.am): Substitute additional values.
5378         * modules/sys_utsname (Depends-on, Makefile.am): Likewise.
5379         * lib/sys_times.in.h (includes): Include native header, if
5380         available.
5381         * lib/sys_utsname.in.h (includes): Likewise.
5382         * tests/test-sys_times.c (main): Enhance test.
5383
5384         fdutimensat: revert prior patch
5385         * modules/fdutimensat (Depends-on): Re-add inline; it is needed by
5386         utimens.h.
5387         Reported by Bruno Haible.
5388
5389 2009-12-30  Eric Blake  <ebb9@byu.net>
5390
5391         sys_wait: drop link-warning dependency
5392         * modules/sys_wait (Depends-on, Makefile.am): Drop unneeded
5393         link-warning efforts.
5394         * lib/sys_wait.in.h: Likewise.
5395
5396         fdutimensat: remove bogus dependency
5397         * modules/fdutimensat (Depends-on): Drop inline.
5398
5399         unistd: fix typo
5400         * lib/unistd.in.h (linkat) [GNULIB_POSIXCHECK]: Fix typo.
5401
5402 2009-12-30  Bruno Haible  <bruno@clisp.org>
5403
5404         Fix compilation error with Solaris cc.
5405         * lib/unicase/u8-is-invariant.c: Include <stdbool.h>.
5406         * lib/unicase/u16-is-invariant.c: Likewise.
5407         * lib/unicase/u32-is-invariant.c: Likewise.
5408         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
5409
5410 2009-12-30  Bruno Haible  <bruno@clisp.org>
5411
5412         Fix test crash.
5413         * tests/test-localename.c (test_locale_name_thread): Skip unavailable
5414         locales.
5415         Reported by Simon Josefsson <simon@josefsson.org>.
5416
5417 2009-12-30  Bruno Haible  <bruno@clisp.org>
5418
5419         Fix compilation error on most platforms.
5420         * tests/test-localename.c (categories): Define only if HAVE_NEWLOCALE.
5421         Reported by Simon Josefsson <simon@josefsson.org>
5422         and Nelson H. F. Beebe <beebe@math.utah.edu>.
5423
5424 2009-12-30  Eric Blake  <ebb9@byu.net>
5425
5426         futimens, utimensat: work around ntfs-3g bug
5427         * lib/utimensat.c (rpl_utimensat): Drop attempts to cache whether
5428         a ctime bug is present, and expand workaround to cover ntfs-3g.
5429         * lib/utimens.c (fdutimens, lutimens): Likewise.
5430         (utimensat_ctime_really, detect_ctime_bug): Drop cache mechanism.
5431         (validate_timespec): Adjust return value.
5432         * m4/futimens.m4 (gl_FUNC_FUTIMENS): Update comment.
5433         * m4/utimensat.m4 (gl_FUNC_UTIMENSAT): Likewise.
5434         Reported by ctrn3e8 <ctrn3e8@gmail.com>.
5435
5436 2009-12-29  Eric Blake  <ebb9@byu.net>
5437
5438         link-warning: make usage consistent
5439         * modules/ctype (Depends-on): Add link-warning.
5440         (Makefile.am): Update rules accordingly.
5441         * modules/langinfo (Depends-on, Makefile.am): Likewise.
5442         * modules/locale (Depends-on, Makefile.am): Likewise.
5443         * modules/sys_file (Makefile.am): Likewise.
5444         * modules/getopt-posix (Makefile.am): Delete unused link warning
5445         efforts.
5446         * lib/ctype.in.h (GL_LINK_WARNING): Ensure definition before use.
5447         * lib/langinfo.in.h (GL_LINK_WARNING): Likewise.
5448         * lib/locale.in.h (GL_LINK_WARNING): Likewise.
5449         * lib/sys_file.in.h (GL_LINK_WARNING): Likewise.
5450
5451         stdio: remove unused variables
5452         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Remove unused variables.
5453         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Likewise.
5454         * m4/ftello.m4 (gl_FUNC_FTELLO): Likewise.
5455
5456         tests: test more substitute headers
5457         * modules/ctype-tests: New file.
5458         * modules/dirent-tests: Likewise.
5459         * modules/spawn-tests: Likewise.
5460         * modules/sys_file-tests: Likewise.
5461         * modules/sys_ioctl-tests: Likewise.
5462         * modules/sys_wait-tests: Likewise.
5463         * tests/test-ctype.c: Likewise.
5464         * tests/test-dirent.c: Likewise.
5465         * tests/test-spawn.c: Likewise.
5466         * tests/test-sys_file.c: Likewise.
5467         * tests/test-sys_ioctl.c: Likewise.
5468         * tests/test-sys_wait.c: Likewise.
5469         * m4/spawn_h.m4 (gl_SPAWN_H): Replace header if it is missing.
5470         * lib/sys_file.in.h (LOCK_SH, LOCK_EX, LOCK_UN, LOCK_NB): Provide
5471         whether or not flock is in use.
5472
5473         tests: remove License section from module
5474         * modules/arpa_inet-tests: Remove unneeded section.
5475         * modules/byteswap-tests: Likewise.
5476         * modules/ceilf-tests: Likewise.
5477         * modules/ceill-tests: Likewise.
5478         * modules/crypto/des-tests: Likewise.
5479         * modules/crypto/gc-arcfour-tests: Likewise.
5480         * modules/crypto/gc-arctwo-tests: Likewise.
5481         * modules/crypto/gc-des-tests: Likewise.
5482         * modules/crypto/gc-hmac-md5-tests: Likewise.
5483         * modules/crypto/gc-hmac-sha1-tests: Likewise.
5484         * modules/crypto/gc-md2-tests: Likewise.
5485         * modules/crypto/gc-md4-tests: Likewise.
5486         * modules/crypto/gc-md5-tests: Likewise.
5487         * modules/crypto/gc-pbkdf2-sha1-tests: Likewise.
5488         * modules/crypto/gc-rijndael-tests: Likewise.
5489         * modules/crypto/gc-sha1-tests: Likewise.
5490         * modules/crypto/gc-tests: Likewise.
5491         * modules/crypto/md2-tests: Likewise.
5492         * modules/crypto/md4-tests: Likewise.
5493         * modules/fcntl-h-tests: Likewise.
5494         * modules/floorf-tests: Likewise.
5495         * modules/floorl-tests: Likewise.
5496         * modules/frexp-nolibm-tests: Likewise.
5497         * modules/frexp-tests: Likewise.
5498         * modules/frexpl-nolibm-tests: Likewise.
5499         * modules/frexpl-tests: Likewise.
5500         * modules/getaddrinfo-tests: Likewise.
5501         * modules/inttypes-tests: Likewise.
5502         * modules/isfinite-tests: Likewise.
5503         * modules/isinf-tests: Likewise.
5504         * modules/ldexpl-tests: Likewise.
5505         * modules/locale-tests: Likewise.
5506         * modules/math-tests: Likewise.
5507         * modules/netdb-tests: Likewise.
5508         * modules/netinet_in-tests: Likewise.
5509         * modules/printf-frexp-tests: Likewise.
5510         * modules/printf-frexpl-tests: Likewise.
5511         * modules/priv-set-tests: Likewise.
5512         * modules/random_r-tests: Likewise.
5513         * modules/round-tests: Likewise.
5514         * modules/roundf-tests: Likewise.
5515         * modules/roundl-tests: Likewise.
5516         * modules/search-tests: Likewise.
5517         * modules/select-tests: Likewise.
5518         * modules/signal-tests: Likewise.
5519         * modules/stdbool-tests: Likewise.
5520         * modules/stddef-tests: Likewise.
5521         * modules/stdint-tests: Likewise.
5522         * modules/stdio-tests: Likewise.
5523         * modules/stdlib-tests: Likewise.
5524         * modules/string-tests: Likewise.
5525         * modules/strings-tests: Likewise.
5526         * modules/sys_select-tests: Likewise.
5527         * modules/sys_socket-tests: Likewise.
5528         * modules/sys_stat-tests: Likewise.
5529         * modules/sys_time-tests: Likewise.
5530         * modules/sys_utsname-tests: Likewise.
5531         * modules/sysexits-tests: Likewise.
5532         * modules/time-tests: Likewise.
5533         * modules/trunc-tests: Likewise.
5534         * modules/truncf-tests: Likewise.
5535         * modules/truncl-tests: Likewise.
5536         * modules/tsearch-tests: Likewise.
5537         * modules/unistd-tests: Likewise.
5538         * modules/wchar-tests: Likewise.
5539         * modules/wctype-tests: Likewise.
5540
5541         tests: fix license on several tests
5542         * tests/test-des.c: Update to GPLv3+.
5543         * tests/test-flock.c: Likewise.
5544         * tests/test-fsync.c: Likewise.
5545         * tests/test-futimens.h: Likewise.
5546         * tests/test-gc-arcfour.c: Likewise.
5547         * tests/test-gc-arctwo.c: Likewise.
5548         * tests/test-gc-des.c: Likewise.
5549         * tests/test-gc-hmac-md5.c: Likewise.
5550         * tests/test-gc-hmac-sha1.c: Likewise.
5551         * tests/test-gc-md2.c: Likewise.
5552         * tests/test-gc-md4.c: Likewise.
5553         * tests/test-gc-md5.c: Likewise.
5554         * tests/test-gc-pbkdf2-sha1.c: Likewise.
5555         * tests/test-gc-rijndael.c: Likewise.
5556         * tests/test-gc-sha1.c: Likewise.
5557         * tests/test-gc.c: Likewise.
5558         * tests/test-getcwd.c: Likewise.
5559         * tests/test-link.c: Likewise.
5560         * tests/test-link.h: Likewise.
5561         * tests/test-lutimens.h: Likewise.
5562         * tests/test-md2.c: Likewise.
5563         * tests/test-md4.c: Likewise.
5564         * tests/test-mkdir.h: Likewise.
5565         * tests/test-rename.c: Likewise.
5566         * tests/test-rename.h: Likewise.
5567         * tests/test-safe-alloc.c: Likewise.
5568         * tests/test-utimens-common.h: Likewise.
5569         * tests/test-utimens.h: Likewise.
5570
5571         maint: sync license texts
5572         * config/srclist.txt: Add gpl-1.3.texi, lgpl-1.3.texi.
5573         * doc/gpl-3.0.texi: Revert copyright year update.
5574         * doc/lgpl-3.0.texi: Likewise.
5575
5576 2009-12-29  Jim Meyering  <meyering@redhat.com>
5577
5578         update nearly all FSF copyright year lists to include 2009
5579         The files named by the following are exempted:
5580             grep -v '^#' config/srclist.txt|grep -v '^$' | while read src dst; do
5581               test -f "$dst" && { echo "$dst"; continue; }
5582               test -d "$dst" || continue
5583               echo "$dst"/$(basename "$src")
5584             done > exempt
5585             git ls-files tests/unictype >> exempt
5586         In the remaining files, convert to all-interval notation if
5587         - there is already at least one year interval like 2000-2003
5588         - the file is maintained by me
5589         - the file is in lib/uni*/, where that style already prevails
5590         Otherwise, use update-copyright's default.
5591
5592 2009-12-29  Simon Josefsson  <simon@josefsson.org>
5593         and Eric Blake  <ebb9@byu.net>
5594
5595         tests: don't require debug system() to pass
5596         * tests/test-lstat.h (test_lstat_func): Move debug cleanup...
5597         * tests/test-rmdir.h (test_rmdir_func): Likewise.
5598         * tests/test-unlink.h (test_unlink_func): Likewise.
5599         * tests/test-fstatat.c (main): ...into callers.
5600         * tests/test-lstat.c (main): Likewise.
5601         * tests/test-rmdir.c (main): Likewise.
5602         * tests/test-unlink.c (main): Likewise.
5603         * tests/test-unlinkat.c (main): Likewise.
5604         * tests/test-areadlink-with-size.c (main): Don't require a
5605         debug-only system call to pass, aiding cross-testing to mingw.
5606         * tests/test-areadlink.c (main): Likewise.
5607         * tests/test-areadlinkat-with-size.c (main): Likewise.
5608         * tests/test-areadlinkat.c (main): Likewise.
5609         * tests/test-canonicalize-lgpl.c (main): Likewise.
5610         * tests/test-canonicalize.c (main): Likewise.
5611         * tests/test-chown.c (main): Likewise.
5612         * tests/test-fchownat.c (main): Likewise.
5613         * tests/test-lchown.c (main): Likewise.
5614         * tests/test-fdutimensat.c (main): Likewise.
5615         * tests/test-futimens.c (main): Likewise.
5616         * tests/test-link.c (main): Likewise.
5617         * tests/test-linkat.c (main): Likewise.
5618         * tests/test-mkdir.c (main): Likewise.
5619         * tests/test-mkdirat.c (main): Likewise.
5620         * tests/test-mkfifo.c (main): Likewise.
5621         * tests/test-mkfifoat.c (main): Likewise.
5622         * tests/test-mknod.c (main): Likewise.
5623         * tests/test-readlink.c (main): Likewise.
5624         * tests/test-remove.c (main): Likewise.
5625         * tests/test-rename.c (main): Likewise.
5626         * tests/test-renameat.c (main): Likewise.
5627         * tests/test-symlink.c (main): Likewise.
5628         * tests/test-symlinkat.c (main): Likewise.
5629         * tests/test-utimens.c (main): Likewise.
5630         * tests/test-utimensat.c (main): Likewise.
5631
5632 2009-12-29  Simon Josefsson  <simon@josefsson.org>
5633
5634         * modules/selinux-h (selinux/selinux.h, selinux/context.h): Depend
5635         on $(UNUSED_PARAMETER_H) to avoid build failure.
5636
5637 2009-12-28  Jim Meyering  <meyering@redhat.com>
5638
5639         update-copyright: you may specify a max. line length other than 72
5640         * build-aux/update-copyright: Honor $UPDATE_COPYRIGHT_MAX_LINE_LENGTH.
5641
5642         maint: use consistent FSF copyright line syntax
5643         * lib/posixtm.c: Add missing comma in FSF copyright line.
5644         * lib/posixtm.h: Likewise.
5645         * lib/getugroups.c: Add missing ", Inc.".
5646
5647         pmccabe2html: emit consistent FSF copyright; remove trailing blanks
5648         * build-aux/pmccabe2html: Insert comma before "Inc." in emitted
5649         FSF copyright line.  Remove trailing blanks.
5650
5651 2009-12-28  Eric Blake  <ebb9@byu.net>
5652
5653         test-dup2: reduce dependencies
5654         * modules/cloexec (Configure.ac): Set witness.
5655         * modules/dup2-tests (Depends-on): Drop cloexec.
5656         * tests/test-dup2.c (main): Skip portion of test if cloexec module
5657         not present.
5658         Suggested by Bruno Haible.
5659
5660 2009-12-26  Bruno Haible  <bruno@clisp.org>
5661
5662         Remove an unneeded dependency.
5663         * modules/fseterr (Depends-on): Remove dup2.
5664
5665 2009-12-26  Eric Blake  <ebb9@byu.net>
5666
5667         tests: use macros.h in more places
5668         * tests/macros.h (ASSERT): Depend on ASSERT_STREAM.
5669         (ASSERT_STREAM): Provide default of stderr.
5670         * tests/test-dirent-safer.c: Include macros.h, using alternate
5671         stream for assertions.
5672         * tests/test-dup-safer.c: Likewise.
5673         * tests/test-freopen-safer.c: Likewise.
5674         * tests/test-getopt.c: Likewise.
5675         * tests/test-openat-safer.c: Likewise.
5676         * tests/test-pipe.c: Likewise.
5677         * tests/test-popen-safer.c: Likewise.
5678         * modules/dirent-safer-tests (Files): Include macros.h.
5679         * modules/unistd-safer-tests (Files): Likewise.
5680         * modules/freopen-safer-tests (Files): Likewise.
5681         * modules/getopt-posix-tests (Files): Likewise.
5682         * modules/openat-safer-tests (Files): Likewise.
5683         * modules/pipe-tests (Files): Likewise.
5684
5685 2009-12-26  Bruno Haible  <bruno@clisp.org>
5686
5687         javacomp: Portability fix.
5688         * m4/javacomp.m4 (gt_JAVACOMP): Fix creation of conftestver.class so
5689         that it also works on Solaris.
5690
5691 2009-12-26  Bruno Haible  <bruno@clisp.org>
5692
5693         localename: Fix storage allocation of gl_locale_name_thread's result.
5694         * lib/localename.c (SIZE_BITS, string_hash, struct hash_node,
5695         HASH_TABLE_SIZE, struniq_hash_table, struniq_lock, struniq): Define on
5696         all platforms that have 'uselocale'.
5697         (gl_locale_name_thread_unsafe): New function, extracted from
5698         gl_locale_name_thread.
5699         (gl_locale_name_thread): Call struniq on all platforms that have
5700         'uselocale'.
5701         * tests/test-localename.c (test_locale_name_thread): Check that the
5702         resulting strings are permanently allocated.
5703         * modules/localename-tests (Depends-on): Add strdup.
5704
5705 2009-12-26  Bruno Haible  <bruno@clisp.org>
5706
5707         * tests/test-localename.c (categories): Fill in the strings.
5708
5709 2009-12-26  Jim Meyering  <meyering@redhat.com>
5710
5711         isdir: complete the removal of m4/isdir.m4
5712         * modules/isdir (configure.ac): Remove reference to gl_ISDIR.
5713
5714         isdir: clean up, since at least grep still uses it
5715         * lib/isdir.c: Include "isdir.h".
5716         (S_ISDIR): Remove now-unneeded definition.
5717         * modules/isdir (Files): Add lib/isdir.h.
5718         * lib/isdir.h: New file, with declaration.
5719         * m4/isdir.m4: Remove file -- unneeded.
5720
5721 2009-12-25  Bruno Haible  <bruno@clisp.org>
5722
5723         selinux-h: Make generated .h files standalone.
5724         * lib/se-context.in.h: Arrange to include _GL_UNUSED_PARAMETER
5725         definition. Use _GL_UNUSED_PARAMETER instead of _GL_UNUSED.
5726         * lib/se-selinux.in.h: Likewise.
5727         * modules/selinux-h (Depends-on): Add unused-parameter.
5728         (Makefile.am): Insert definition of _GL_UNUSED_PARAMETER into
5729         selinux/selinux.h and selinux/context.h.
5730         Suggested by Eric Blake.
5731
5732 2009-12-25  Bruno Haible  <bruno@clisp.org>
5733
5734         Move gl_FCNTL_O_FLAGS to a separate .m4 file.
5735         * m4/fcntl-o.m4: New file, extracted from m4/fcntl_h.m4.
5736         * m4/fcntl_h.m4 (gl_FCNTL_O_FLAGS): Remove macro.
5737         * modules/fcntl-h (Files): Add m4/fcntl-o.m4.
5738         * modules/localcharset (Files): Likewise. Remove m4/fcntl_h.m4.
5739
5740 2009-12-24  Bruno Haible  <bruno@clisp.org>
5741
5742         openat: Fix warning.
5743         * lib/openat-proc.c: Include <unistd.h>.
5744
5745 2009-12-24  Bruno Haible  <bruno@clisp.org>
5746
5747         New module 'unused-parameter'.
5748         * build-aux/unused-parameter.h: New file, extracted from earlier
5749         gnulib-common.m4.
5750         * modules/unused-parameter: New file.
5751         * lib/unistr.h: Include unused-parameter.h.
5752         (u32_mbtouc_unsafe, u32_mbtouc): Use _GL_UNUSED_PARAMETER instead of
5753         _GL_UNUSED.
5754         * modules/unistr/base (Depends-on): Add unused-parameter.
5755
5756 2009-12-24  Bruno Haible  <bruno@clisp.org>
5757
5758         Add missing dependencies to 'extensions' module.
5759         * m4/extensions.m4: Add comment.
5760         * modules/accept4 (Depends-on): Add extensions.
5761         * modules/dup3 (Depends-on): Likewise.
5762         * modules/fcntl (Depends-on): Likewise.
5763         * modules/futimens (Depends-on): Likewise.
5764         * modules/mknod (Depends-on): Likewise.
5765         * modules/pipe2 (Depends-on): Likewise.
5766         * modules/stat-time (Depends-on): Likewise.
5767         * modules/strcasestr-simple (Depends-on): Likewise.
5768         * modules/strsignal (Depends-on): Likewise.
5769         * modules/utimensat (Depends-on): Likewise.
5770         * modules/localcharset (Depends-on): Likewise. Needed because of
5771         gl_FCNTL_O_FLAGS.
5772         * modules/wcrtomb (Depends-on): Likewise. Needed because of
5773         AC_TYPE_MBSTATE_T.
5774         * modules/wcsnrtombs (Depends-on): Likewise.
5775         * modules/wcsrtombs (Depends-on): Likewise.
5776
5777 2009-12-24  Bruno Haible  <bruno@clisp.org>
5778
5779         binary-io: Avoid gcc warning due to SET_BINARY.
5780         * lib/binary-io.h (SET_BINARY): Cast the result to void.
5781         Reported by Jim Meyering <jim@meyering.net>. Suggestion by Eric Blake.
5782
5783 2009-12-24  Bruno Haible  <bruno@clisp.org>
5784
5785         Avoid future namespace pollution on glibc systems.
5786         * lib/arpa_inet.in.h: Don't include <sys/socket.h> on glibc systems.
5787         * lib/sys_ioctl.in.h: Don't include <unistd.h> on glibc systems.
5788         * lib/sys_select.in.h: Don't include <sys/time.h> and <string.h> on
5789         glibc systems.
5790
5791 2009-12-24  Bruno Haible  <bruno@clisp.org>
5792
5793         Refactor common macros used in tests.
5794         * tests/macros.h: New file.
5795         * tests/test-areadlink.c: Include macros.h. Don't include <stdio.h>
5796         and/or <stdlib.h>, if appropriate.
5797         (ASSERT, SIZEOF): Remove macros.
5798         * tests/test-areadlink-with-size.c: Likewise.
5799         * tests/test-areadlinkat.c: Likewise.
5800         * tests/test-areadlinkat-with-size.c: Likewise.
5801         * tests/test-argmatch.c: Likewise.
5802         * tests/test-argv-iter.c: Likewise.
5803         * tests/test-array-mergesort.c: Likewise.
5804         * tests/test-array_list.c: Likewise.
5805         * tests/test-array_oset.c: Likewise.
5806         * tests/test-avltree_list.c: Likewise.
5807         * tests/test-avltree_oset.c: Likewise.
5808         * tests/test-avltreehash_list.c: Likewise.
5809         * tests/test-base64.c: Likewise.
5810         * tests/test-binary-io.c: Likewise.
5811         * tests/test-bitrotate.c: Likewise.
5812         * tests/test-btowc.c: Likewise.
5813         * tests/test-byteswap.c: Likewise.
5814         * tests/test-c-ctype.c: Likewise.
5815         * tests/test-c-stack.c: Likewise.
5816         * tests/test-c-strcasecmp.c: Likewise.
5817         * tests/test-c-strcasestr.c: Likewise.
5818         * tests/test-c-strncasecmp.c: Likewise.
5819         * tests/test-c-strstr.c: Likewise.
5820         * tests/test-canonicalize-lgpl.c: Likewise.
5821         * tests/test-canonicalize.c: Likewise.
5822         * tests/test-carray_list.c: Likewise.
5823         * tests/test-ceilf1.c: Likewise.
5824         * tests/test-ceilf2.c: Likewise.
5825         * tests/test-ceill.c: Likewise.
5826         * tests/test-chown.c: Likewise.
5827         * tests/test-cloexec.c: Likewise.
5828         * tests/test-copy-acl.c: Likewise.
5829         * tests/test-copy-file.c: Likewise.
5830         * tests/test-count-one-bits.c: Likewise.
5831         * tests/test-dprintf-posix.c: Likewise.
5832         * tests/test-dup2.c: Likewise.
5833         * tests/test-dup3.c: Likewise.
5834         * tests/test-duplocale.c: Likewise.
5835         * tests/test-fbufmode.c: Likewise.
5836         * tests/test-fchdir.c: Likewise.
5837         * tests/test-fchownat.c: Likewise.
5838         * tests/test-fcntl-safer.c: Likewise.
5839         * tests/test-fcntl.c: Likewise.
5840         * tests/test-fdopendir.c: Likewise.
5841         * tests/test-fdutimensat.c: Likewise.
5842         * tests/test-fflush2.c: Likewise.
5843         * tests/test-file-has-acl.c: Likewise.
5844         * tests/test-filevercmp.c: Likewise.
5845         * tests/test-flock.c: Likewise.
5846         * tests/test-floorf1.c: Likewise.
5847         * tests/test-floorf2.c: Likewise.
5848         * tests/test-floorl.c: Likewise.
5849         * tests/test-fnmatch.c: Likewise.
5850         * tests/test-fopen.h: Likewise.
5851         * tests/test-fpending.c: Likewise.
5852         * tests/test-fprintf-posix.c: Likewise.
5853         * tests/test-fpurge.c: Likewise.
5854         * tests/test-freadable.c: Likewise.
5855         * tests/test-freadahead.c: Likewise.
5856         * tests/test-freading.c: Likewise.
5857         * tests/test-freadptr.c: Likewise.
5858         * tests/test-freadptr2.c: Likewise.
5859         * tests/test-freadseek.c: Likewise.
5860         * tests/test-freopen.c: Likewise.
5861         * tests/test-frexp.c: Likewise.
5862         * tests/test-frexpl.c: Likewise.
5863         * tests/test-fseek.c: Likewise.
5864         * tests/test-fseeko.c: Likewise.
5865         * tests/test-fstatat.c: Likewise.
5866         * tests/test-fstrcmp.c: Likewise.
5867         * tests/test-fsync.c: Likewise.
5868         * tests/test-ftell.c: Likewise.
5869         * tests/test-ftello.c: Likewise.
5870         * tests/test-func.c: Likewise.
5871         * tests/test-futimens.c: Likewise.
5872         * tests/test-fwritable.c: Likewise.
5873         * tests/test-fwriting.c: Likewise.
5874         * tests/test-getcwd.c: Likewise.
5875         * tests/test-getdate.c: Likewise.
5876         * tests/test-getdelim.c: Likewise.
5877         * tests/test-getdtablesize.c: Likewise.
5878         * tests/test-getgroups.c: Likewise.
5879         * tests/test-getline.c: Likewise.
5880         * tests/test-getndelim2.c: Likewise.
5881         * tests/test-glob.c: Likewise.
5882         * tests/test-hash.c: Likewise.
5883         * tests/test-i-ring.c: Likewise.
5884         * tests/test-iconv-utf.c: Likewise.
5885         * tests/test-iconv.c: Likewise.
5886         * tests/test-idpriv-drop.c: Likewise.
5887         * tests/test-idpriv-droptemp.c: Likewise.
5888         * tests/test-inet_ntop.c: Likewise.
5889         * tests/test-inet_pton.c: Likewise.
5890         * tests/test-isblank.c: Likewise.
5891         * tests/test-isfinite.c: Likewise.
5892         * tests/test-isinf.c: Likewise.
5893         * tests/test-isnan.c: Likewise.
5894         * tests/test-isnand.h: Likewise.
5895         * tests/test-isnanf.h: Likewise.
5896         * tests/test-isnanl.h: Likewise.
5897         * tests/test-lchown.c: Likewise.
5898         * tests/test-ldexpl.c: Likewise.
5899         * tests/test-link.c: Likewise.
5900         * tests/test-linkat.c: Likewise.
5901         * tests/test-linked_list.c: Likewise.
5902         * tests/test-linkedhash_list.c: Likewise.
5903         * tests/test-localename.c: Likewise.
5904         * tests/test-lseek.c: Likewise.
5905         * tests/test-lstat.c: Likewise.
5906         * tests/test-mbmemcasecmp.c: Likewise.
5907         * tests/test-mbmemcasecoll.c: Likewise.
5908         * tests/test-mbrtowc.c: Likewise.
5909         * tests/test-mbscasecmp.c: Likewise.
5910         * tests/test-mbscasestr1.c: Likewise.
5911         * tests/test-mbscasestr2.c: Likewise.
5912         * tests/test-mbscasestr3.c: Likewise.
5913         * tests/test-mbscasestr4.c: Likewise.
5914         * tests/test-mbschr.c: Likewise.
5915         * tests/test-mbscspn.c: Likewise.
5916         * tests/test-mbsinit.c: Likewise.
5917         * tests/test-mbsncasecmp.c: Likewise.
5918         * tests/test-mbsnrtowcs.c: Likewise.
5919         * tests/test-mbspbrk.c: Likewise.
5920         * tests/test-mbspcasecmp.c: Likewise.
5921         * tests/test-mbsrchr.c: Likewise.
5922         * tests/test-mbsrtowcs.c: Likewise.
5923         * tests/test-mbsspn.c: Likewise.
5924         * tests/test-mbsstr1.c: Likewise.
5925         * tests/test-mbsstr2.c: Likewise.
5926         * tests/test-mbsstr3.c: Likewise.
5927         * tests/test-memchr.c: Likewise.
5928         * tests/test-memchr2.c: Likewise.
5929         * tests/test-memcmp.c: Likewise.
5930         * tests/test-memmem.c: Likewise.
5931         * tests/test-memrchr.c: Likewise.
5932         * tests/test-mkdir.c: Likewise.
5933         * tests/test-mkdirat.c: Likewise.
5934         * tests/test-mkfifo.c: Likewise.
5935         * tests/test-mkfifoat.c: Likewise.
5936         * tests/test-mknod.c: Likewise.
5937         * tests/test-nanosleep.c: Likewise.
5938         * tests/test-nl_langinfo.c: Likewise.
5939         * tests/test-obstack-printf.c: Likewise.
5940         * tests/test-open.c: Likewise.
5941         * tests/test-openat.c: Likewise.
5942         * tests/test-pipe-filter-gi1.c: Likewise.
5943         * tests/test-pipe-filter-gi2-main.c: Likewise.
5944         * tests/test-pipe-filter-ii1.c: Likewise.
5945         * tests/test-pipe-filter-ii2-main.c: Likewise.
5946         * tests/test-pipe2.c: Likewise.
5947         * tests/test-popen.h: Likewise.
5948         * tests/test-posixtm.c: Likewise.
5949         * tests/test-pread.c: Likewise.
5950         * tests/test-printf-frexp.c: Likewise.
5951         * tests/test-printf-frexpl.c: Likewise.
5952         * tests/test-printf-posix.c: Likewise.
5953         * tests/test-priv-set.c: Likewise.
5954         * tests/test-quotearg.c: Likewise.
5955         * tests/test-random_r.c: Likewise.
5956         * tests/test-rawmemchr.c: Likewise.
5957         * tests/test-rbtree_list.c: Likewise.
5958         * tests/test-rbtree_oset.c: Likewise.
5959         * tests/test-rbtreehash_list.c: Likewise.
5960         * tests/test-readlink.c: Likewise.
5961         * tests/test-remove.c: Likewise.
5962         * tests/test-rename.c: Likewise.
5963         * tests/test-renameat.c: Likewise.
5964         * tests/test-rmdir.c: Likewise.
5965         * tests/test-round1.c: Likewise.
5966         * tests/test-roundf1.c: Likewise.
5967         * tests/test-roundl.c: Likewise.
5968         * tests/test-safe-alloc.c: Likewise.
5969         * tests/test-sameacls.c: Likewise.
5970         * tests/test-set-mode-acl.c: Likewise.
5971         * tests/test-setenv.c: Likewise.
5972         * tests/test-sigaction.c: Likewise.
5973         * tests/test-signbit.c: Likewise.
5974         * tests/test-sleep.c: Likewise.
5975         * tests/test-snprintf-posix.c: Likewise.
5976         * tests/test-snprintf.c: Likewise.
5977         * tests/test-sprintf-posix.c: Likewise.
5978         * tests/test-stat-time.c: Likewise.
5979         * tests/test-stat.c: Likewise.
5980         * tests/test-strcasestr.c: Likewise.
5981         * tests/test-strchrnul.c: Likewise.
5982         * tests/test-strerror.c: Likewise.
5983         * tests/test-striconv.c: Likewise.
5984         * tests/test-striconveh.c: Likewise.
5985         * tests/test-striconveha.c: Likewise.
5986         * tests/test-strsignal.c: Likewise.
5987         * tests/test-strstr.c: Likewise.
5988         * tests/test-strtod.c: Likewise.
5989         * tests/test-strverscmp.c: Likewise.
5990         * tests/test-symlink.c: Likewise.
5991         * tests/test-symlinkat.c: Likewise.
5992         * tests/test-trunc1.c: Likewise.
5993         * tests/test-trunc2.c: Likewise.
5994         * tests/test-truncf1.c: Likewise.
5995         * tests/test-truncf2.c: Likewise.
5996         * tests/test-truncl.c: Likewise.
5997         * tests/test-uname.c: Likewise.
5998         * tests/test-unlink.c: Likewise.
5999         * tests/test-unlinkat.c: Likewise.
6000         * tests/test-unsetenv.c: Likewise.
6001         * tests/test-usleep.c: Likewise.
6002         * tests/test-utimens.c: Likewise.
6003         * tests/test-utimensat.c: Likewise.
6004         * tests/test-vasnprintf-posix.c: Likewise.
6005         * tests/test-vasnprintf-posix2.c: Likewise.
6006         * tests/test-vasnprintf.c: Likewise.
6007         * tests/test-vasprintf-posix.c: Likewise.
6008         * tests/test-vasprintf.c: Likewise.
6009         * tests/test-vdprintf-posix.c: Likewise.
6010         * tests/test-vfprintf-posix.c: Likewise.
6011         * tests/test-vprintf-posix.c: Likewise.
6012         * tests/test-vsnprintf-posix.c: Likewise.
6013         * tests/test-vsnprintf.c: Likewise.
6014         * tests/test-vsprintf-posix.c: Likewise.
6015         * tests/test-wcrtomb.c: Likewise.
6016         * tests/test-wcsnrtombs.c: Likewise.
6017         * tests/test-wcsrtombs.c: Likewise.
6018         * tests/test-wctype.c: Likewise.
6019         * tests/test-wcwidth.c: Likewise.
6020         * tests/test-xfprintf-posix.c: Likewise.
6021         * tests/test-xmemdup0.c: Likewise.
6022         * tests/test-xprintf-posix.c: Likewise.
6023         * tests/test-xvasprintf.c: Likewise.
6024         * tests/unicase/test-locale-language.c: Likewise.
6025         * tests/unicase/test-mapping-part1.h: Likewise.
6026         * tests/unicase/test-predicate-part1.h: Likewise.
6027         * tests/unicase/test-u8-casecmp.c: Likewise.
6028         * tests/unicase/test-u8-casecoll.c: Likewise.
6029         * tests/unicase/test-u8-casefold.c: Likewise.
6030         * tests/unicase/test-u8-is-cased.c: Likewise.
6031         * tests/unicase/test-u8-is-casefolded.c: Likewise.
6032         * tests/unicase/test-u8-is-lowercase.c: Likewise.
6033         * tests/unicase/test-u8-is-titlecase.c: Likewise.
6034         * tests/unicase/test-u8-is-uppercase.c: Likewise.
6035         * tests/unicase/test-u8-tolower.c: Likewise.
6036         * tests/unicase/test-u8-totitle.c: Likewise.
6037         * tests/unicase/test-u8-toupper.c: Likewise.
6038         * tests/unicase/test-u16-casecmp.c: Likewise.
6039         * tests/unicase/test-u16-casecoll.c: Likewise.
6040         * tests/unicase/test-u16-casefold.c: Likewise.
6041         * tests/unicase/test-u16-is-cased.c: Likewise.
6042         * tests/unicase/test-u16-is-casefolded.c: Likewise.
6043         * tests/unicase/test-u16-is-lowercase.c: Likewise.
6044         * tests/unicase/test-u16-is-titlecase.c: Likewise.
6045         * tests/unicase/test-u16-is-uppercase.c: Likewise.
6046         * tests/unicase/test-u16-tolower.c: Likewise.
6047         * tests/unicase/test-u16-totitle.c: Likewise.
6048         * tests/unicase/test-u16-toupper.c: Likewise.
6049         * tests/unicase/test-u32-casecmp.c: Likewise.
6050         * tests/unicase/test-u32-casecoll.c: Likewise.
6051         * tests/unicase/test-u32-casefold.c: Likewise.
6052         * tests/unicase/test-u32-is-cased.c: Likewise.
6053         * tests/unicase/test-u32-is-casefolded.c: Likewise.
6054         * tests/unicase/test-u32-is-lowercase.c: Likewise.
6055         * tests/unicase/test-u32-is-titlecase.c: Likewise.
6056         * tests/unicase/test-u32-is-uppercase.c: Likewise.
6057         * tests/unicase/test-u32-tolower.c: Likewise.
6058         * tests/unicase/test-u32-totitle.c: Likewise.
6059         * tests/unicase/test-u32-toupper.c: Likewise.
6060         * tests/unicase/test-ulc-casecmp.c: Likewise.
6061         * tests/unicase/test-ulc-casecoll.c: Likewise.
6062         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
6063         * tests/uniconv/test-u8-conv-to-enc.c: Likewise.
6064         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
6065         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
6066         * tests/uniconv/test-u16-conv-from-enc.c: Likewise.
6067         * tests/uniconv/test-u16-conv-to-enc.c: Likewise.
6068         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
6069         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
6070         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
6071         * tests/uniconv/test-u32-conv-to-enc.c: Likewise.
6072         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
6073         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
6074         * tests/unictype/test-bidi_byname.c: Likewise.
6075         * tests/unictype/test-bidi_name.c: Likewise.
6076         * tests/unictype/test-bidi_of.c: Likewise.
6077         * tests/unictype/test-bidi_test.c: Likewise.
6078         * tests/unictype/test-block_list.c: Likewise.
6079         * tests/unictype/test-block_of.c: Likewise.
6080         * tests/unictype/test-block_test.c: Likewise.
6081         * tests/unictype/test-categ_and.c: Likewise.
6082         * tests/unictype/test-categ_and_not.c: Likewise.
6083         * tests/unictype/test-categ_byname.c: Likewise.
6084         * tests/unictype/test-categ_name.c: Likewise.
6085         * tests/unictype/test-categ_none.c: Likewise.
6086         * tests/unictype/test-categ_of.c: Likewise.
6087         * tests/unictype/test-categ_or.c: Likewise.
6088         * tests/unictype/test-categ_test_withtable.c: Likewise.
6089         * tests/unictype/test-combining.c: Likewise.
6090         * tests/unictype/test-decdigit.c: Likewise.
6091         * tests/unictype/test-digit.c: Likewise.
6092         * tests/unictype/test-mirror.c: Likewise.
6093         * tests/unictype/test-numeric.c: Likewise.
6094         * tests/unictype/test-pr_byname.c: Likewise.
6095         * tests/unictype/test-pr_test.c: Likewise.
6096         * tests/unictype/test-predicate-part1.h: Likewise.
6097         * tests/unictype/test-scripts.c: Likewise.
6098         * tests/unictype/test-sy_c_ident.c: Likewise.
6099         * tests/unictype/test-sy_java_ident.c: Likewise.
6100         * tests/unilbrk/test-u8-possible-linebreaks.c: Likewise.
6101         * tests/unilbrk/test-u8-width-linebreaks.c: Likewise.
6102         * tests/unilbrk/test-u16-possible-linebreaks.c: Likewise.
6103         * tests/unilbrk/test-u16-width-linebreaks.c: Likewise.
6104         * tests/unilbrk/test-u32-possible-linebreaks.c: Likewise.
6105         * tests/unilbrk/test-u32-width-linebreaks.c: Likewise.
6106         * tests/unilbrk/test-ulc-possible-linebreaks.c: Likewise.
6107         * tests/unilbrk/test-ulc-width-linebreaks.c: Likewise.
6108         * tests/uninorm/test-canonical-decomposition.c: Likewise.
6109         * tests/uninorm/test-compat-decomposition.c: Likewise.
6110         * tests/uninorm/test-composition.c: Likewise.
6111         * tests/uninorm/test-decomposing-form.c: Likewise.
6112         * tests/uninorm/test-decomposition.c: Likewise.
6113         * tests/uninorm/test-u8-nfc.c: Likewise.
6114         * tests/uninorm/test-u8-nfd.c: Likewise.
6115         * tests/uninorm/test-u8-nfkc.c: Likewise.
6116         * tests/uninorm/test-u8-nfkd.c: Likewise.
6117         * tests/uninorm/test-u8-normcmp.c: Likewise.
6118         * tests/uninorm/test-u8-normcoll.c: Likewise.
6119         * tests/uninorm/test-u16-nfc.c: Likewise.
6120         * tests/uninorm/test-u16-nfd.c: Likewise.
6121         * tests/uninorm/test-u16-nfkc.c: Likewise.
6122         * tests/uninorm/test-u16-nfkd.c: Likewise.
6123         * tests/uninorm/test-u16-normcmp.c: Likewise.
6124         * tests/uninorm/test-u16-normcoll.c: Likewise.
6125         * tests/uninorm/test-u32-nfc.c: Likewise.
6126         * tests/uninorm/test-u32-nfd.c: Likewise.
6127         * tests/uninorm/test-u32-nfkc.c: Likewise.
6128         * tests/uninorm/test-u32-nfkd.c: Likewise.
6129         * tests/uninorm/test-u32-normalize-big.c: Likewise.
6130         * tests/uninorm/test-u32-normcmp.c: Likewise.
6131         * tests/uninorm/test-u32-normcoll.c: Likewise.
6132         * tests/uninorm/test-uninorm-filter-nfc.c: Likewise.
6133         * tests/unistdio/test-u8-asnprintf1.c: Likewise.
6134         * tests/unistdio/test-u8-vasnprintf1.c: Likewise.
6135         * tests/unistdio/test-u8-vasnprintf2.c: Likewise.
6136         * tests/unistdio/test-u8-vasnprintf3.c: Likewise.
6137         * tests/unistdio/test-u8-vasprintf1.c: Likewise.
6138         * tests/unistdio/test-u8-vsnprintf1.c: Likewise.
6139         * tests/unistdio/test-u8-vsprintf1.c: Likewise.
6140         * tests/unistdio/test-u16-asnprintf1.c: Likewise.
6141         * tests/unistdio/test-u16-vasnprintf1.c: Likewise.
6142         * tests/unistdio/test-u16-vasnprintf2.c: Likewise.
6143         * tests/unistdio/test-u16-vasnprintf3.c: Likewise.
6144         * tests/unistdio/test-u16-vasprintf1.c: Likewise.
6145         * tests/unistdio/test-u16-vsnprintf1.c: Likewise.
6146         * tests/unistdio/test-u16-vsprintf1.c: Likewise.
6147         * tests/unistdio/test-u32-asnprintf1.c: Likewise.
6148         * tests/unistdio/test-u32-vasnprintf1.c: Likewise.
6149         * tests/unistdio/test-u32-vasnprintf2.c: Likewise.
6150         * tests/unistdio/test-u32-vasnprintf3.c: Likewise.
6151         * tests/unistdio/test-u32-vasprintf1.c: Likewise.
6152         * tests/unistdio/test-u32-vsnprintf1.c: Likewise.
6153         * tests/unistdio/test-u32-vsprintf1.c: Likewise.
6154         * tests/unistdio/test-ulc-asnprintf1.c: Likewise.
6155         * tests/unistdio/test-ulc-vasnprintf1.c: Likewise.
6156         * tests/unistdio/test-ulc-vasnprintf2.c: Likewise.
6157         * tests/unistdio/test-ulc-vasnprintf3.c: Likewise.
6158         * tests/unistdio/test-ulc-vasprintf1.c: Likewise.
6159         * tests/unistdio/test-ulc-vsnprintf1.c: Likewise.
6160         * tests/unistdio/test-ulc-vsprintf1.c: Likewise.
6161         * tests/uniwbrk/test-u8-wordbreaks.c: Likewise.
6162         * tests/uniwbrk/test-u16-wordbreaks.c: Likewise.
6163         * tests/uniwbrk/test-u32-wordbreaks.c: Likewise.
6164         * tests/uniwbrk/test-ulc-wordbreaks.c: Likewise.
6165         * tests/uniwidth/test-u8-strwidth.c: Likewise.
6166         * tests/uniwidth/test-u8-width.c: Likewise.
6167         * tests/uniwidth/test-u16-strwidth.c: Likewise.
6168         * tests/uniwidth/test-u16-width.c: Likewise.
6169         * tests/uniwidth/test-u32-strwidth.c: Likewise.
6170         * tests/uniwidth/test-u32-width.c: Likewise.
6171         * tests/uniwidth/test-uc_width.c: Likewise.
6172         * tests/uniwidth/test-uc_width2.c: Likewise.
6173         * modules/acl-tests (Files): Add tests/macros.h.
6174         * modules/areadlink-tests (Files): Likewise.
6175         * modules/areadlink-with-size-tests (Files): Likewise.
6176         * modules/areadlinkat-tests (Files): Likewise.
6177         * modules/areadlinkat-with-size-tests (Files): Likewise.
6178         * modules/argmatch-tests (Files): Likewise.
6179         * modules/argv-iter-tests (Files): Likewise.
6180         * modules/array-list-tests (Files): Likewise.
6181         * modules/array-mergesort-tests (Files): Likewise.
6182         * modules/array-oset-tests (Files): Likewise.
6183         * modules/avltree-list-tests (Files): Likewise.
6184         * modules/avltree-oset-tests (Files): Likewise.
6185         * modules/avltreehash-list-tests (Files): Likewise.
6186         * modules/base64-tests (Files): Likewise.
6187         * modules/binary-io-tests (Files): Likewise.
6188         * modules/bitrotate-tests (Files): Likewise.
6189         * modules/btowc-tests (Files): Likewise.
6190         * modules/byteswap-tests (Files): Likewise.
6191         * modules/c-ctype-tests (Files): Likewise.
6192         * modules/c-stack-tests (Files): Likewise.
6193         * modules/c-strcase-tests (Files): Likewise.
6194         * modules/c-strcasestr-tests (Files): Likewise.
6195         * modules/c-strstr-tests (Files): Likewise.
6196         * modules/canonicalize-lgpl-tests (Files): Likewise.
6197         * modules/canonicalize-tests (Files): Likewise.
6198         * modules/carray-list-tests (Files): Likewise.
6199         * modules/ceilf-tests (Files): Likewise.
6200         * modules/ceill-tests (Files): Likewise.
6201         * modules/chown-tests (Files): Likewise.
6202         * modules/cloexec-tests (Files): Likewise.
6203         * modules/copy-file-tests (Files): Likewise.
6204         * modules/count-one-bits-tests (Files): Likewise.
6205         * modules/dprintf-posix-tests (Files): Likewise.
6206         * modules/dup2-tests (Files): Likewise.
6207         * modules/dup3-tests (Files): Likewise.
6208         * modules/duplocale-tests (Files): Likewise.
6209         * modules/fbufmode-tests (Files): Likewise.
6210         * modules/fchdir-tests (Files): Likewise.
6211         * modules/fcntl-safer-tests (Files): Likewise.
6212         * modules/fcntl-tests (Files): Likewise.
6213         * modules/fdopendir-tests (Files): Likewise.
6214         * modules/fdutimensat-tests (Files): Likewise.
6215         * modules/fflush-tests (Files): Likewise.
6216         * modules/filevercmp-tests (Files): Likewise.
6217         * modules/flock-tests (Files): Likewise.
6218         * modules/floorf-tests (Files): Likewise.
6219         * modules/floorl-tests (Files): Likewise.
6220         * modules/fnmatch-tests (Files): Likewise.
6221         * modules/fopen-safer-tests (Files): Likewise.
6222         * modules/fopen-tests (Files): Likewise.
6223         * modules/fpending-tests (Files): Likewise.
6224         * modules/fprintf-posix-tests (Files): Likewise.
6225         * modules/fpurge-tests (Files): Likewise.
6226         * modules/freadable-tests (Files): Likewise.
6227         * modules/freadahead-tests (Files): Likewise.
6228         * modules/freading-tests (Files): Likewise.
6229         * modules/freadptr-tests (Files): Likewise.
6230         * modules/freadseek-tests (Files): Likewise.
6231         * modules/freopen-tests (Files): Likewise.
6232         * modules/frexp-nolibm-tests (Files): Likewise.
6233         * modules/frexp-tests (Files): Likewise.
6234         * modules/frexpl-nolibm-tests (Files): Likewise.
6235         * modules/frexpl-tests (Files): Likewise.
6236         * modules/fseek-tests (Files): Likewise.
6237         * modules/fseeko-tests (Files): Likewise.
6238         * modules/fstrcmp-tests (Files): Likewise.
6239         * modules/fsync-tests (Files): Likewise.
6240         * modules/ftell-tests (Files): Likewise.
6241         * modules/ftello-tests (Files): Likewise.
6242         * modules/func-tests (Files): Likewise.
6243         * modules/futimens-tests (Files): Likewise.
6244         * modules/fwritable-tests (Files): Likewise.
6245         * modules/fwriting-tests (Files): Likewise.
6246         * modules/getcwd-tests (Files): Likewise.
6247         * modules/getdate-tests (Files): Likewise.
6248         * modules/getdelim-tests (Files): Likewise.
6249         * modules/getdtablesize-tests (Files): Likewise.
6250         * modules/getgroups-tests (Files): Likewise.
6251         * modules/getline-tests (Files): Likewise.
6252         * modules/getndelim2-tests (Files): Likewise.
6253         * modules/glob-tests (Files): Likewise.
6254         * modules/hash-tests (Files): Likewise.
6255         * modules/i-ring-tests (Files): Likewise.
6256         * modules/iconv-tests (Files): Likewise.
6257         * modules/iconv_open-utf-tests (Files): Likewise.
6258         * modules/idpriv-drop-tests (Files): Likewise.
6259         * modules/idpriv-droptemp-tests (Files): Likewise.
6260         * modules/inet_ntop-tests (Files): Likewise.
6261         * modules/inet_pton-tests (Files): Likewise.
6262         * modules/isblank-tests (Files): Likewise.
6263         * modules/isfinite-tests (Files): Likewise.
6264         * modules/isinf-tests (Files): Likewise.
6265         * modules/isnan-tests (Files): Likewise.
6266         * modules/isnand-nolibm-tests (Files): Likewise.
6267         * modules/isnand-tests (Files): Likewise.
6268         * modules/isnanf-nolibm-tests (Files): Likewise.
6269         * modules/isnanf-tests (Files): Likewise.
6270         * modules/isnanl-nolibm-tests (Files): Likewise.
6271         * modules/isnanl-tests (Files): Likewise.
6272         * modules/lchown-tests (Files): Likewise.
6273         * modules/ldexpl-tests (Files): Likewise.
6274         * modules/link-tests (Files): Likewise.
6275         * modules/linkat-tests (Files): Likewise.
6276         * modules/linked-list-tests (Files): Likewise.
6277         * modules/linkedhash-list-tests (Files): Likewise.
6278         * modules/localename-tests (Files): Likewise.
6279         * modules/lseek-tests (Files): Likewise.
6280         * modules/lstat-tests (Files): Likewise.
6281         * modules/mbmemcasecmp-tests (Files): Likewise.
6282         * modules/mbmemcasecoll-tests (Files): Likewise.
6283         * modules/mbrtowc-tests (Files): Likewise.
6284         * modules/mbscasecmp-tests (Files): Likewise.
6285         * modules/mbscasestr-tests (Files): Likewise.
6286         * modules/mbschr-tests (Files): Likewise.
6287         * modules/mbscspn-tests (Files): Likewise.
6288         * modules/mbsinit-tests (Files): Likewise.
6289         * modules/mbsncasecmp-tests (Files): Likewise.
6290         * modules/mbsnrtowcs-tests (Files): Likewise.
6291         * modules/mbspbrk-tests (Files): Likewise.
6292         * modules/mbspcasecmp-tests (Files): Likewise.
6293         * modules/mbsrchr-tests (Files): Likewise.
6294         * modules/mbsrtowcs-tests (Files): Likewise.
6295         * modules/mbsspn-tests (Files): Likewise.
6296         * modules/mbsstr-tests (Files): Likewise.
6297         * modules/memchr-tests (Files): Likewise.
6298         * modules/memchr2-tests (Files): Likewise.
6299         * modules/memcmp-tests (Files): Likewise.
6300         * modules/memmem-tests (Files): Likewise.
6301         * modules/memrchr-tests (Files): Likewise.
6302         * modules/mkdir-tests (Files): Likewise.
6303         * modules/mkfifo-tests (Files): Likewise.
6304         * modules/mkfifoat-tests (Files): Likewise.
6305         * modules/mknod-tests (Files): Likewise.
6306         * modules/nanosleep-tests (Files): Likewise.
6307         * modules/nl_langinfo-tests (Files): Likewise.
6308         * modules/obstack-printf-tests (Files): Likewise.
6309         * modules/open-tests (Files): Likewise.
6310         * modules/openat-tests (Files): Likewise.
6311         * modules/pipe-filter-gi-tests (Files): Likewise.
6312         * modules/pipe-filter-ii-tests (Files): Likewise.
6313         * modules/pipe2-tests (Files): Likewise.
6314         * modules/popen-safer-tests (Files): Likewise.
6315         * modules/popen-tests (Files): Likewise.
6316         * modules/posixtm-tests (Files): Likewise.
6317         * modules/pread-tests (Files): Likewise.
6318         * modules/printf-frexp-tests (Files): Likewise.
6319         * modules/printf-frexpl-tests (Files): Likewise.
6320         * modules/printf-posix-tests (Files): Likewise.
6321         * modules/priv-set-tests (Files): Likewise.
6322         * modules/quotearg-tests (Files): Likewise.
6323         * modules/random_r-tests (Files): Likewise.
6324         * modules/rawmemchr-tests (Files): Likewise.
6325         * modules/rbtree-list-tests (Files): Likewise.
6326         * modules/rbtree-oset-tests (Files): Likewise.
6327         * modules/rbtreehash-list-tests (Files): Likewise.
6328         * modules/readlink-tests (Files): Likewise.
6329         * modules/remove-tests (Files): Likewise.
6330         * modules/rename-tests (Files): Likewise.
6331         * modules/renameat-tests (Files): Likewise.
6332         * modules/rmdir-tests (Files): Likewise.
6333         * modules/round-tests (Files): Likewise.
6334         * modules/roundf-tests (Files): Likewise.
6335         * modules/roundl-tests (Files): Likewise.
6336         * modules/safe-alloc-tests (Files): Likewise.
6337         * modules/setenv-tests (Files): Likewise.
6338         * modules/sigaction-tests (Files): Likewise.
6339         * modules/signbit-tests (Files): Likewise.
6340         * modules/sleep-tests (Files): Likewise.
6341         * modules/snprintf-posix-tests (Files): Likewise.
6342         * modules/snprintf-tests (Files): Likewise.
6343         * modules/sprintf-posix-tests (Files): Likewise.
6344         * modules/stat-tests (Files): Likewise.
6345         * modules/stat-time-tests (Files): Likewise.
6346         * modules/strcasestr-tests (Files): Likewise.
6347         * modules/strchrnul-tests (Files): Likewise.
6348         * modules/strerror-tests (Files): Likewise.
6349         * modules/striconv-tests (Files): Likewise.
6350         * modules/striconveh-tests (Files): Likewise.
6351         * modules/striconveha-tests (Files): Likewise.
6352         * modules/strsignal-tests (Files): Likewise.
6353         * modules/strstr-tests (Files): Likewise.
6354         * modules/strtod-tests (Files): Likewise.
6355         * modules/strverscmp-tests (Files): Likewise.
6356         * modules/symlink-tests (Files): Likewise.
6357         * modules/symlinkat-tests (Files): Likewise.
6358         * modules/trunc-tests (Files): Likewise.
6359         * modules/truncf-tests (Files): Likewise.
6360         * modules/truncl-tests (Files): Likewise.
6361         * modules/uname-tests (Files): Likewise.
6362         * modules/unicase/cased-tests (Files): Likewise.
6363         * modules/unicase/ignorable-tests (Files): Likewise.
6364         * modules/unicase/locale-language-tests (Files): Likewise.
6365         * modules/unicase/tolower-tests (Files): Likewise.
6366         * modules/unicase/totitle-tests (Files): Likewise.
6367         * modules/unicase/toupper-tests (Files): Likewise.
6368         * modules/unicase/u8-casecmp-tests (Files): Likewise.
6369         * modules/unicase/u8-casecoll-tests (Files): Likewise.
6370         * modules/unicase/u8-casefold-tests (Files): Likewise.
6371         * modules/unicase/u8-is-cased-tests (Files): Likewise.
6372         * modules/unicase/u8-is-casefolded-tests (Files): Likewise.
6373         * modules/unicase/u8-is-lowercase-tests (Files): Likewise.
6374         * modules/unicase/u8-is-titlecase-tests (Files): Likewise.
6375         * modules/unicase/u8-is-uppercase-tests (Files): Likewise.
6376         * modules/unicase/u8-tolower-tests (Files): Likewise.
6377         * modules/unicase/u8-totitle-tests (Files): Likewise.
6378         * modules/unicase/u8-toupper-tests (Files): Likewise.
6379         * modules/unicase/u16-casecmp-tests (Files): Likewise.
6380         * modules/unicase/u16-casecoll-tests (Files): Likewise.
6381         * modules/unicase/u16-casefold-tests (Files): Likewise.
6382         * modules/unicase/u16-is-cased-tests (Files): Likewise.
6383         * modules/unicase/u16-is-casefolded-tests (Files): Likewise.
6384         * modules/unicase/u16-is-lowercase-tests (Files): Likewise.
6385         * modules/unicase/u16-is-titlecase-tests (Files): Likewise.
6386         * modules/unicase/u16-is-uppercase-tests (Files): Likewise.
6387         * modules/unicase/u16-tolower-tests (Files): Likewise.
6388         * modules/unicase/u16-totitle-tests (Files): Likewise.
6389         * modules/unicase/u16-toupper-tests (Files): Likewise.
6390         * modules/unicase/u32-casecmp-tests (Files): Likewise.
6391         * modules/unicase/u32-casecoll-tests (Files): Likewise.
6392         * modules/unicase/u32-casefold-tests (Files): Likewise.
6393         * modules/unicase/u32-is-cased-tests (Files): Likewise.
6394         * modules/unicase/u32-is-casefolded-tests (Files): Likewise.
6395         * modules/unicase/u32-is-lowercase-tests (Files): Likewise.
6396         * modules/unicase/u32-is-titlecase-tests (Files): Likewise.
6397         * modules/unicase/u32-is-uppercase-tests (Files): Likewise.
6398         * modules/unicase/u32-tolower-tests (Files): Likewise.
6399         * modules/unicase/u32-totitle-tests (Files): Likewise.
6400         * modules/unicase/u32-toupper-tests (Files): Likewise.
6401         * modules/unicase/ulc-casecmp-tests (Files): Likewise.
6402         * modules/unicase/ulc-casecoll-tests (Files): Likewise.
6403         * modules/uniconv/u8-conv-from-enc-tests (Files): Likewise.
6404         * modules/uniconv/u8-conv-to-enc-tests (Files): Likewise.
6405         * modules/uniconv/u8-strconv-from-enc-tests (Files): Likewise.
6406         * modules/uniconv/u8-strconv-to-enc-tests (Files): Likewise.
6407         * modules/uniconv/u16-conv-from-enc-tests (Files): Likewise.
6408         * modules/uniconv/u16-conv-to-enc-tests (Files): Likewise.
6409         * modules/uniconv/u16-strconv-from-enc-tests (Files): Likewise.
6410         * modules/uniconv/u16-strconv-to-enc-tests (Files): Likewise.
6411         * modules/uniconv/u32-conv-from-enc-tests (Files): Likewise.
6412         * modules/uniconv/u32-conv-to-enc-tests (Files): Likewise.
6413         * modules/uniconv/u32-strconv-from-enc-tests (Files): Likewise.
6414         * modules/uniconv/u32-strconv-to-enc-tests (Files): Likewise.
6415         * modules/unictype/bidicategory-byname-tests (Files): Likewise.
6416         * modules/unictype/bidicategory-name-tests (Files): Likewise.
6417         * modules/unictype/bidicategory-of-tests (Files): Likewise.
6418         * modules/unictype/bidicategory-test-tests (Files): Likewise.
6419         * modules/unictype/block-list-tests (Files): Likewise.
6420         * modules/unictype/block-of-tests (Files): Likewise.
6421         * modules/unictype/block-test-tests (Files): Likewise.
6422         * modules/unictype/category-C-tests (Files): Likewise.
6423         * modules/unictype/category-Cc-tests (Files): Likewise.
6424         * modules/unictype/category-Cf-tests (Files): Likewise.
6425         * modules/unictype/category-Cn-tests (Files): Likewise.
6426         * modules/unictype/category-Co-tests (Files): Likewise.
6427         * modules/unictype/category-Cs-tests (Files): Likewise.
6428         * modules/unictype/category-L-tests (Files): Likewise.
6429         * modules/unictype/category-Ll-tests (Files): Likewise.
6430         * modules/unictype/category-Lm-tests (Files): Likewise.
6431         * modules/unictype/category-Lo-tests (Files): Likewise.
6432         * modules/unictype/category-Lt-tests (Files): Likewise.
6433         * modules/unictype/category-Lu-tests (Files): Likewise.
6434         * modules/unictype/category-M-tests (Files): Likewise.
6435         * modules/unictype/category-Mc-tests (Files): Likewise.
6436         * modules/unictype/category-Me-tests (Files): Likewise.
6437         * modules/unictype/category-Mn-tests (Files): Likewise.
6438         * modules/unictype/category-N-tests (Files): Likewise.
6439         * modules/unictype/category-Nd-tests (Files): Likewise.
6440         * modules/unictype/category-Nl-tests (Files): Likewise.
6441         * modules/unictype/category-No-tests (Files): Likewise.
6442         * modules/unictype/category-P-tests (Files): Likewise.
6443         * modules/unictype/category-Pc-tests (Files): Likewise.
6444         * modules/unictype/category-Pd-tests (Files): Likewise.
6445         * modules/unictype/category-Pe-tests (Files): Likewise.
6446         * modules/unictype/category-Pf-tests (Files): Likewise.
6447         * modules/unictype/category-Pi-tests (Files): Likewise.
6448         * modules/unictype/category-Po-tests (Files): Likewise.
6449         * modules/unictype/category-Ps-tests (Files): Likewise.
6450         * modules/unictype/category-S-tests (Files): Likewise.
6451         * modules/unictype/category-Sc-tests (Files): Likewise.
6452         * modules/unictype/category-Sk-tests (Files): Likewise.
6453         * modules/unictype/category-Sm-tests (Files): Likewise.
6454         * modules/unictype/category-So-tests (Files): Likewise.
6455         * modules/unictype/category-Z-tests (Files): Likewise.
6456         * modules/unictype/category-Zl-tests (Files): Likewise.
6457         * modules/unictype/category-Zp-tests (Files): Likewise.
6458         * modules/unictype/category-Zs-tests (Files): Likewise.
6459         * modules/unictype/category-and-not-tests (Files): Likewise.
6460         * modules/unictype/category-and-tests (Files): Likewise.
6461         * modules/unictype/category-byname-tests (Files): Likewise.
6462         * modules/unictype/category-name-tests (Files): Likewise.
6463         * modules/unictype/category-none-tests (Files): Likewise.
6464         * modules/unictype/category-of-tests (Files): Likewise.
6465         * modules/unictype/category-or-tests (Files): Likewise.
6466         * modules/unictype/category-test-withtable-tests (Files): Likewise.
6467         * modules/unictype/combining-class-tests (Files): Likewise.
6468         * modules/unictype/ctype-alnum-tests (Files): Likewise.
6469         * modules/unictype/ctype-alpha-tests (Files): Likewise.
6470         * modules/unictype/ctype-blank-tests (Files): Likewise.
6471         * modules/unictype/ctype-cntrl-tests (Files): Likewise.
6472         * modules/unictype/ctype-digit-tests (Files): Likewise.
6473         * modules/unictype/ctype-graph-tests (Files): Likewise.
6474         * modules/unictype/ctype-lower-tests (Files): Likewise.
6475         * modules/unictype/ctype-print-tests (Files): Likewise.
6476         * modules/unictype/ctype-punct-tests (Files): Likewise.
6477         * modules/unictype/ctype-space-tests (Files): Likewise.
6478         * modules/unictype/ctype-upper-tests (Files): Likewise.
6479         * modules/unictype/ctype-xdigit-tests (Files): Likewise.
6480         * modules/unictype/decimal-digit-tests (Files): Likewise.
6481         * modules/unictype/digit-tests (Files): Likewise.
6482         * modules/unictype/mirror-tests (Files): Likewise.
6483         * modules/unictype/numeric-tests (Files): Likewise.
6484         * modules/unictype/property-alphabetic-tests (Files): Likewise.
6485         * modules/unictype/property-ascii-hex-digit-tests (Files): Likewise.
6486         * modules/unictype/property-bidi-arabic-digit-tests (Files): Likewise.
6487         * modules/unictype/property-bidi-arabic-right-to-left-tests (Files):
6488         Likewise.
6489         * modules/unictype/property-bidi-block-separator-tests (Files):
6490         Likewise.
6491         * modules/unictype/property-bidi-boundary-neutral-tests (Files):
6492         Likewise.
6493         * modules/unictype/property-bidi-common-separator-tests (Files):
6494         Likewise.
6495         * modules/unictype/property-bidi-control-tests (Files): Likewise.
6496         * modules/unictype/property-bidi-embedding-or-override-tests (Files):
6497         Likewise.
6498         * modules/unictype/property-bidi-eur-num-separator-tests (Files):
6499         Likewise.
6500         * modules/unictype/property-bidi-eur-num-terminator-tests (Files):
6501         Likewise.
6502         * modules/unictype/property-bidi-european-digit-tests (Files): Likewise.
6503         * modules/unictype/property-bidi-hebrew-right-to-left-tests (Files):
6504         Likewise.
6505         * modules/unictype/property-bidi-left-to-right-tests (Files): Likewise.
6506         * modules/unictype/property-bidi-non-spacing-mark-tests (Files):
6507         Likewise.
6508         * modules/unictype/property-bidi-other-neutral-tests (Files): Likewise.
6509         * modules/unictype/property-bidi-pdf-tests (Files): Likewise.
6510         * modules/unictype/property-bidi-segment-separator-tests (Files):
6511         Likewise.
6512         * modules/unictype/property-bidi-whitespace-tests (Files): Likewise.
6513         * modules/unictype/property-byname-tests (Files): Likewise.
6514         * modules/unictype/property-combining-tests (Files): Likewise.
6515         * modules/unictype/property-composite-tests (Files): Likewise.
6516         * modules/unictype/property-currency-symbol-tests (Files): Likewise.
6517         * modules/unictype/property-dash-tests (Files): Likewise.
6518         * modules/unictype/property-decimal-digit-tests (Files): Likewise.
6519         * modules/unictype/property-default-ignorable-code-point-tests (Files):
6520         Likewise.
6521         * modules/unictype/property-deprecated-tests (Files): Likewise.
6522         * modules/unictype/property-diacritic-tests (Files): Likewise.
6523         * modules/unictype/property-extender-tests (Files): Likewise.
6524         * modules/unictype/property-format-control-tests (Files): Likewise.
6525         * modules/unictype/property-grapheme-base-tests (Files): Likewise.
6526         * modules/unictype/property-grapheme-extend-tests (Files): Likewise.
6527         * modules/unictype/property-grapheme-link-tests (Files): Likewise.
6528         * modules/unictype/property-hex-digit-tests (Files): Likewise.
6529         * modules/unictype/property-hyphen-tests (Files): Likewise.
6530         * modules/unictype/property-id-continue-tests (Files): Likewise.
6531         * modules/unictype/property-id-start-tests (Files): Likewise.
6532         * modules/unictype/property-ideographic-tests (Files): Likewise.
6533         * modules/unictype/property-ids-binary-operator-tests (Files): Likewise.
6534         * modules/unictype/property-ids-trinary-operator-tests (Files):
6535         Likewise.
6536         * modules/unictype/property-ignorable-control-tests (Files): Likewise.
6537         * modules/unictype/property-iso-control-tests (Files): Likewise.
6538         * modules/unictype/property-join-control-tests (Files): Likewise.
6539         * modules/unictype/property-left-of-pair-tests (Files): Likewise.
6540         * modules/unictype/property-line-separator-tests (Files): Likewise.
6541         * modules/unictype/property-logical-order-exception-tests (Files):
6542         Likewise.
6543         * modules/unictype/property-lowercase-tests (Files): Likewise.
6544         * modules/unictype/property-math-tests (Files): Likewise.
6545         * modules/unictype/property-non-break-tests (Files): Likewise.
6546         * modules/unictype/property-not-a-character-tests (Files): Likewise.
6547         * modules/unictype/property-numeric-tests (Files): Likewise.
6548         * modules/unictype/property-other-alphabetic-tests (Files): Likewise.
6549         * modules/unictype/property-other-default-ignorable-code-point-tests
6550         (Files): Likewise.
6551         * modules/unictype/property-other-grapheme-extend-tests (Files):
6552         Likewise.
6553         * modules/unictype/property-other-id-continue-tests (Files): Likewise.
6554         * modules/unictype/property-other-id-start-tests (Files): Likewise.
6555         * modules/unictype/property-other-lowercase-tests (Files): Likewise.
6556         * modules/unictype/property-other-math-tests (Files): Likewise.
6557         * modules/unictype/property-other-uppercase-tests (Files): Likewise.
6558         * modules/unictype/property-paired-punctuation-tests (Files): Likewise.
6559         * modules/unictype/property-paragraph-separator-tests (Files): Likewise.
6560         * modules/unictype/property-pattern-syntax-tests (Files): Likewise.
6561         * modules/unictype/property-pattern-white-space-tests (Files): Likewise.
6562         * modules/unictype/property-private-use-tests (Files): Likewise.
6563         * modules/unictype/property-punctuation-tests (Files): Likewise.
6564         * modules/unictype/property-quotation-mark-tests (Files): Likewise.
6565         * modules/unictype/property-radical-tests (Files): Likewise.
6566         * modules/unictype/property-sentence-terminal-tests (Files): Likewise.
6567         * modules/unictype/property-soft-dotted-tests (Files): Likewise.
6568         * modules/unictype/property-space-tests (Files): Likewise.
6569         * modules/unictype/property-terminal-punctuation-tests (Files):
6570         Likewise.
6571         * modules/unictype/property-test-tests (Files): Likewise.
6572         * modules/unictype/property-titlecase-tests (Files): Likewise.
6573         * modules/unictype/property-unassigned-code-value-tests (Files):
6574         Likewise.
6575         * modules/unictype/property-unified-ideograph-tests (Files): Likewise.
6576         * modules/unictype/property-uppercase-tests (Files): Likewise.
6577         * modules/unictype/property-variation-selector-tests (Files): Likewise.
6578         * modules/unictype/property-white-space-tests (Files): Likewise.
6579         * modules/unictype/property-xid-continue-tests (Files): Likewise.
6580         * modules/unictype/property-xid-start-tests (Files): Likewise.
6581         * modules/unictype/property-zero-width-tests (Files): Likewise.
6582         * modules/unictype/scripts-tests (Files): Likewise.
6583         * modules/unictype/syntax-c-ident-tests (Files): Likewise.
6584         * modules/unictype/syntax-c-whitespace-tests (Files): Likewise.
6585         * modules/unictype/syntax-java-ident-tests (Files): Likewise.
6586         * modules/unictype/syntax-java-whitespace-tests (Files): Likewise.
6587         * modules/unilbrk/u8-possible-linebreaks-tests (Files): Likewise.
6588         * modules/unilbrk/u8-width-linebreaks-tests (Files): Likewise.
6589         * modules/unilbrk/u16-possible-linebreaks-tests (Files): Likewise.
6590         * modules/unilbrk/u16-width-linebreaks-tests (Files): Likewise.
6591         * modules/unilbrk/u32-possible-linebreaks-tests (Files): Likewise.
6592         * modules/unilbrk/u32-width-linebreaks-tests (Files): Likewise.
6593         * modules/unilbrk/ulc-possible-linebreaks-tests (Files): Likewise.
6594         * modules/unilbrk/ulc-width-linebreaks-tests (Files): Likewise.
6595         * modules/uninorm/canonical-decomposition-tests (Files): Likewise.
6596         * modules/uninorm/compat-decomposition-tests (Files): Likewise.
6597         * modules/uninorm/composition-tests (Files): Likewise.
6598         * modules/uninorm/decomposing-form-tests (Files): Likewise.
6599         * modules/uninorm/decomposition-tests (Files): Likewise.
6600         * modules/uninorm/filter-tests (Files): Likewise.
6601         * modules/uninorm/nfc-tests (Files): Likewise.
6602         * modules/uninorm/nfd-tests (Files): Likewise.
6603         * modules/uninorm/nfkc-tests (Files): Likewise.
6604         * modules/uninorm/nfkd-tests (Files): Likewise.
6605         * modules/uninorm/u8-normcmp-tests (Files): Likewise.
6606         * modules/uninorm/u8-normcoll-tests (Files): Likewise.
6607         * modules/uninorm/u16-normcmp-tests (Files): Likewise.
6608         * modules/uninorm/u16-normcoll-tests (Files): Likewise.
6609         * modules/uninorm/u32-normcmp-tests (Files): Likewise.
6610         * modules/uninorm/u32-normcoll-tests (Files): Likewise.
6611         * modules/unistdio/u8-asnprintf-tests (Files): Likewise.
6612         * modules/unistdio/u8-vasnprintf-tests (Files): Likewise.
6613         * modules/unistdio/u8-vasprintf-tests (Files): Likewise.
6614         * modules/unistdio/u8-vsnprintf-tests (Files): Likewise.
6615         * modules/unistdio/u8-vsprintf-tests (Files): Likewise.
6616         * modules/unistdio/u16-asnprintf-tests (Files): Likewise.
6617         * modules/unistdio/u16-vasnprintf-tests (Files): Likewise.
6618         * modules/unistdio/u16-vasprintf-tests (Files): Likewise.
6619         * modules/unistdio/u16-vsnprintf-tests (Files): Likewise.
6620         * modules/unistdio/u16-vsprintf-tests (Files): Likewise.
6621         * modules/unistdio/u32-asnprintf-tests (Files): Likewise.
6622         * modules/unistdio/u32-vasnprintf-tests (Files): Likewise.
6623         * modules/unistdio/u32-vasprintf-tests (Files): Likewise.
6624         * modules/unistdio/u32-vsnprintf-tests (Files): Likewise.
6625         * modules/unistdio/u32-vsprintf-tests (Files): Likewise.
6626         * modules/unistdio/ulc-asnprintf-tests (Files): Likewise.
6627         * modules/unistdio/ulc-vasnprintf-tests (Files): Likewise.
6628         * modules/unistdio/ulc-vasprintf-tests (Files): Likewise.
6629         * modules/unistdio/ulc-vsnprintf-tests (Files): Likewise.
6630         * modules/unistdio/ulc-vsprintf-tests (Files): Likewise.
6631         * modules/uniwbrk/u8-wordbreaks-tests (Files): Likewise.
6632         * modules/uniwbrk/u16-wordbreaks-tests (Files): Likewise.
6633         * modules/uniwbrk/u32-wordbreaks-tests (Files): Likewise.
6634         * modules/uniwbrk/ulc-wordbreaks-tests (Files): Likewise.
6635         * modules/uniwidth/u8-strwidth-tests (Files): Likewise.
6636         * modules/uniwidth/u8-width-tests (Files): Likewise.
6637         * modules/uniwidth/u16-strwidth-tests (Files): Likewise.
6638         * modules/uniwidth/u16-width-tests (Files): Likewise.
6639         * modules/uniwidth/u32-strwidth-tests (Files): Likewise.
6640         * modules/uniwidth/u32-width-tests (Files): Likewise.
6641         * modules/uniwidth/width-tests (Files): Likewise.
6642         * modules/unlink-tests (Files): Likewise.
6643         * modules/unsetenv-tests (Files): Likewise.
6644         * modules/usleep-tests (Files): Likewise.
6645         * modules/utimens-tests (Files): Likewise.
6646         * modules/utimensat-tests (Files): Likewise.
6647         * modules/vasnprintf-posix-tests (Files): Likewise.
6648         * modules/vasnprintf-tests (Files): Likewise.
6649         * modules/vasprintf-posix-tests (Files): Likewise.
6650         * modules/vasprintf-tests (Files): Likewise.
6651         * modules/vdprintf-posix-tests (Files): Likewise.
6652         * modules/vfprintf-posix-tests (Files): Likewise.
6653         * modules/vprintf-posix-tests (Files): Likewise.
6654         * modules/vsnprintf-posix-tests (Files): Likewise.
6655         * modules/vsnprintf-tests (Files): Likewise.
6656         * modules/vsprintf-posix-tests (Files): Likewise.
6657         * modules/wcrtomb-tests (Files): Likewise.
6658         * modules/wcsnrtombs-tests (Files): Likewise.
6659         * modules/wcsrtombs-tests (Files): Likewise.
6660         * modules/wctype-tests (Files): Likewise.
6661         * modules/wcwidth-tests (Files): Likewise.
6662         * modules/xmemdup0-tests (Files): Likewise.
6663         * modules/xprintf-posix-tests (Files): Likewise.
6664         * modules/xvasprintf-tests (Files): Likewise.
6665
6666 2009-12-24  Eric Blake  <ebb9@byu.net>
6667
6668         test-nanosleep: fix typo
6669         * tests/test-nanosleep.c (SIGNATURE_CHECK): Fix typo in previous
6670         patch.
6671         Reported by Bruno Haible.
6672
6673 2009-12-24  Bruno Haible  <bruno@clisp.org>
6674
6675         Reduce namespace pollution on glibc systems.
6676         * lib/inttypes.in.h: Don't include <stdint.h> on glibc systems.
6677         * lib/stdlib.in.h: Don't include <stdint.h>, <unistd.h> on glibc
6678         systems.
6679         * lib/unistd.in.h: Don't include <stdio.h>, <fcntl.h>, <stdlib.h>,
6680         <getopt.h> on glibc systems.
6681         * lib/fcntl.in.h: Don't include <sys/stat.h>, <unistd.h> on glibc
6682         systems.
6683         * lib/fcntl.c: Include <unistd.h> here instead.
6684
6685 2009-12-24  Bruno Haible  <bruno@clisp.org>
6686
6687         * lib/stdlib.in.h (includes): Fix typo in today's commit.
6688
6689 2009-12-24  Eric Blake  <ebb9@byu.net>
6690
6691         tests: add signature checks
6692         * tests/signature.h (SIGNATURE_CHECK): New file.
6693         * modules/atexit-tests (Files): Use it.
6694         * modules/btowc-tests (Files): Likewise.
6695         * modules/canonicalize-lgpl-tests (Files): Likewise.
6696         * modules/ceilf-tests (Files): Likewise.
6697         * modules/ceill-tests (Files): Likewise.
6698         * modules/chown-tests (Files): Likewise.
6699         * modules/dprintf-posix-tests (Files): Likewise.
6700         * modules/dup2-tests (Files): Likewise.
6701         * modules/dup3-tests (Files): Likewise.
6702         * modules/duplocale-tests (Files): Likewise.
6703         * modules/fchdir-tests (Files): Likewise.
6704         * modules/fcntl-tests (Files): Likewise.
6705         * modules/fdopendir-tests (Files): Likewise.
6706         * modules/fflush-tests (Files): Likewise.
6707         * modules/flock-tests (Files): Likewise.
6708         * modules/floorf-tests (Files): Likewise.
6709         * modules/floorl-tests (Files): Likewise.
6710         * modules/fnmatch-tests (Files): Likewise.
6711         * modules/fopen-tests (Files): Likewise.
6712         * modules/fprintf-posix-tests (Files): Likewise.
6713         * modules/freopen-tests (Files): Likewise.
6714         * modules/frexp-nolibm-tests (Files): Likewise.
6715         * modules/frexp-tests (Files): Likewise.
6716         * modules/frexpl-nolibm-tests (Files): Likewise.
6717         * modules/frexpl-tests (Files): Likewise.
6718         * modules/fseek-tests (Files): Likewise.
6719         * modules/fseeko-tests (Files): Likewise.
6720         * modules/fsync-tests (Files): Likewise.
6721         * modules/ftell-tests (Files): Likewise.
6722         * modules/ftello-tests (Files): Likewise.
6723         * modules/futimens-tests (Files): Likewise.
6724         * modules/getaddrinfo-tests (Files): Likewise.
6725         * modules/getcwd-tests (Files): Likewise.
6726         * modules/getdelim-tests (Files): Likewise.
6727         * modules/getdtablesize-tests (Files): Likewise.
6728         * modules/getgroups-tests (Files): Likewise.
6729         * modules/gethostname-tests (Files): Likewise.
6730         * modules/getline-tests (Files): Likewise.
6731         * modules/getopt-posix-tests (Files): Likewise.
6732         * modules/gettimeofday-tests (Files): Likewise.
6733         * modules/glob-tests (Files): Likewise.
6734         * modules/iconv-tests (Files): Likewise.
6735         * modules/inet_ntop-tests (Files): Likewise.
6736         * modules/inet_pton-tests (Files): Likewise.
6737         * modules/isblank-tests (Files): Likewise.
6738         * modules/lchown-tests (Files): Likewise.
6739         * modules/ldexpl-tests (Files): Likewise.
6740         * modules/link-tests (Files): Likewise.
6741         * modules/linkat-tests (Files): Likewise.
6742         * modules/lseek-tests (Files): Likewise.
6743         * modules/lstat-tests (Files): Likewise.
6744         * modules/mbrtowc-tests (Files): Likewise.
6745         * modules/mbsinit-tests (Files): Likewise.
6746         * modules/mbsnrtowcs-tests (Files): Likewise.
6747         * modules/mbsrtowcs-tests (Files): Likewise.
6748         * modules/memchr-tests (Files): Likewise.
6749         * modules/memcmp-tests (Files): Likewise.
6750         * modules/memmem-tests (Files): Likewise.
6751         * modules/memrchr-tests (Files): Likewise.
6752         * modules/mkdir-tests (Files): Likewise.
6753         * modules/mkfifo-tests (Files): Likewise.
6754         * modules/mkfifoat-tests (Files): Likewise.
6755         * modules/mknod-tests (Files): Likewise.
6756         * modules/nanosleep-tests (Files): Likewise.
6757         * modules/nl_langinfo-tests (Files): Likewise.
6758         * modules/obstack-printf-tests (Files): Likewise.
6759         * modules/open-tests (Files): Likewise.
6760         * modules/openat-tests (Files): Likewise.
6761         * modules/perror-tests (Files): Likewise.
6762         * modules/pipe2-tests (Files): Likewise.
6763         * modules/poll-tests (Files): Likewise.
6764         * modules/popen-tests (Files): Likewise.
6765         * modules/posix_spawn-tests (Files): Likewise.
6766         * modules/posix_spawnp-tests (Files): Likewise.
6767         * modules/pread-tests (Files): Likewise.
6768         * modules/printf-posix-tests (Files): Likewise.
6769         * modules/pty-tests (Files): Likewise.
6770         * modules/random_r-tests (Files): Likewise.
6771         * modules/rawmemchr-tests (Files): Likewise.
6772         * modules/readlink-tests (Files): Likewise.
6773         * modules/remove-tests (Files): Likewise.
6774         * modules/rename-tests (Files): Likewise.
6775         * modules/renameat-tests (Files): Likewise.
6776         * modules/rmdir-tests (Files): Likewise.
6777         * modules/round-tests (Files): Likewise.
6778         * modules/roundf-tests (Files): Likewise.
6779         * modules/roundl-tests (Files): Likewise.
6780         * modules/select-tests (Files): Likewise.
6781         * modules/setenv-tests (Files): Likewise.
6782         * modules/sigaction-tests (Files): Likewise.
6783         * modules/sleep-tests (Files): Likewise.
6784         * modules/snprintf-posix-tests (Files): Likewise.
6785         * modules/snprintf-tests (Files): Likewise.
6786         * modules/sprintf-posix-tests (Files): Likewise.
6787         * modules/stat-tests (Files): Likewise.
6788         * modules/strcasestr-tests (Files): Likewise.
6789         * modules/strchrnul-tests (Files): Likewise.
6790         * modules/strerror-tests (Files): Likewise.
6791         * modules/strsignal-tests (Files): Likewise.
6792         * modules/strstr-tests (Files): Likewise.
6793         * modules/strtod-tests (Files): Likewise.
6794         * modules/strverscmp-tests (Files): Likewise.
6795         * modules/symlink-tests (Files): Likewise.
6796         * modules/symlinkat-tests (Files): Likewise.
6797         * modules/times-tests (Files): Likewise.
6798         * modules/trunc-tests (Files): Likewise.
6799         * modules/truncf-tests (Files): Likewise.
6800         * modules/truncl-tests (Files): Likewise.
6801         * modules/tsearch-tests (Files): Likewise.
6802         * modules/uname-tests (Files): Likewise.
6803         * modules/unlink-tests (Files): Likewise.
6804         * modules/unsetenv-tests (Files): Likewise.
6805         * modules/usleep-tests (Files): Likewise.
6806         * modules/utimensat-tests (Files): Likewise.
6807         * modules/vasprintf-tests (Files): Likewise.
6808         * modules/vdprintf-posix-tests (Files): Likewise.
6809         * modules/vfprintf-posix-tests (Files): Likewise.
6810         * modules/vprintf-posix-tests (Files): Likewise.
6811         * modules/vsnprintf-posix-tests (Files): Likewise.
6812         * modules/vsnprintf-tests (Files): Likewise.
6813         * modules/vsprintf-posix-tests (Files): Likewise.
6814         * modules/wcrtomb-tests (Files): Likewise.
6815         * modules/wcsnrtombs-tests (Files): Likewise.
6816         * modules/wcsrtombs-tests (Files): Likewise.
6817         * modules/wcwidth-tests (Files): Likewise.
6818         * tests/test-isfinite.c (isfinite): Ensure macro declaration.
6819         * tests/test-isinf.c (isinf): Likewise.
6820         * tests/test-isnan.c (isnan): Likewise.
6821         * tests/test-signbit.c (signbit): Likewise.
6822         * tests/test-select.c (FD_CLR, FD_ISSET, FD_SET, FD_ZERO): Ensure
6823         declaration, either as macro or with correct signature.
6824         (select): Ensure function under test is declared with correct
6825         signature in correct header.
6826         * tests/test-atexit.c (atexit): Likewise.
6827         * tests/test-btowc.c (btowc): Likewise.
6828         * tests/test-canonicalize-lgpl.c (realpath)
6829         (canonicalize_file_name): Likewise.
6830         * tests/test-ceilf1.c (ceilf): Likewise.
6831         * tests/test-ceill.c (ceill): Likewise.
6832         * tests/test-chown.c (chown): Likewise.
6833         * tests/test-dprintf-posix.c (dprintf): Likewise.
6834         * tests/test-dup2.c (dup2): Likewise.
6835         * tests/test-dup3.c (dup3): Likewise.
6836         * tests/test-duplocale.c (duplocale): Likewise.
6837         * tests/test-fchdir.c (fchdir): Likewise.
6838         * tests/test-fchownat.c (fchownat): Likewise.
6839         * tests/test-fcntl.c (fcntl): Likewise.
6840         * tests/test-fdopendir.c (fdopendir): Likewise.
6841         * tests/test-fflush.c (fflush): Likewise.
6842         * tests/test-flock.c (flock): Likewise.
6843         * tests/test-floorf1.c (floorf): Likewise.
6844         * tests/test-floorl.c (floorl): Likewise.
6845         * tests/test-fnmatch.c (fnmatch): Likewise.
6846         * tests/test-fopen.c (fopen): Likewise.
6847         * tests/test-fprintf-posix.c (fprintf): Likewise.
6848         * tests/test-freopen.c (freopen): Likewise.
6849         * tests/test-frexp.c (frexp): Likewise.
6850         * tests/test-frexpl.c (frexpl): Likewise.
6851         * tests/test-fseek.c (fseek): Likewise.
6852         * tests/test-fseeko.c (fseeko): Likewise.
6853         * tests/test-fstatat.c (fstatat): Likewise.
6854         * tests/test-fsync.c (fsync): Likewise.
6855         * tests/test-ftell.c (ftell): Likewise.
6856         * tests/test-ftello.c (ftello): Likewise.
6857         * tests/test-futimens.c (futimens): Likewise.
6858         * tests/test-getaddrinfo.c (getaddrinfo, freeaddrinfo)
6859         (gai_strerror): Likewise.
6860         * tests/test-getcwd.c (getcwd): Likewise.
6861         * tests/test-getdelim.c (getdelim): Likewise.
6862         * tests/test-getdtablesize.c (getdtablesize): Likewise.
6863         * tests/test-getgroups.c (getgroups): Likewise.
6864         * tests/test-gethostname.c (gethostname): Likewise.
6865         * tests/test-getline.c (getline): Likewise.
6866         * tests/test-getopt.c (getopt, getopt_long, getopt_long_only):
6867         Likewise.
6868         * tests/test-gettimeofday.c (gettimeofday): Likewise.
6869         * tests/test-glob.c (glob, globfree): Likewise.
6870         * tests/test-iconv.c (iconv, iconv_open, iconv_close): Likewise.
6871         * tests/test-inet_ntop.c (inet_ntop): Likewise.
6872         * tests/test-inet_pton.c (inet_pton): Likewise.
6873         * tests/test-isblank.c (isblank): Likewise.
6874         * tests/test-lchown.c (lchown): Likewise.
6875         * tests/test-ldexpl.c (ldexpl): Likewise.
6876         * tests/test-link.c (link): Likewise.
6877         * tests/test-linkat.c (linkat): Likewise.
6878         * tests/test-lseek.c (lseek): Likewise.
6879         * tests/test-lstat.c (lstat): Likewise.
6880         * tests/test-mbrtowc.c (mbrtowc): Likewise.
6881         * tests/test-mbsinit.c (mbsinit): Likewise.
6882         * tests/test-mbsnrtowcs.c (mbsnrtowcs): Likewise.
6883         * tests/test-mbsrtowcs.c (mbsrtowcs): Likewise.
6884         * tests/test-memchr.c (memchr): Likewise.
6885         * tests/test-memcmp.c (memcmp): Likewise.
6886         * tests/test-memmem.c (memmem): Likewise.
6887         * tests/test-memrchr.c (memrchr): Likewise.
6888         * tests/test-mkdir.c (mkdir): Likewise.
6889         * tests/test-mkdirat.c (mkdirat): Likewise.
6890         * tests/test-mkfifo.c (mkfifo): Likewise.
6891         * tests/test-mkfifoat.c (mkfifoat, mknodat): Likewise.
6892         * tests/test-mknod.c (mknod): Likewise.
6893         * tests/test-nanosleep.c (nanosleep): Likewise.
6894         * tests/test-nl_langinfo.c (nl_langinfo): Likewise.
6895         * tests/test-obstack-printf.c (obstack_printf, obstack_vprintf):
6896         Likewise.
6897         * tests/test-open.c (open): Likewise.
6898         * tests/test-openat.c (openat): Likewise.
6899         * tests/test-perror.c (perror): Likewise.
6900         * tests/test-pipe2.c (pipe2): Likewise.
6901         * tests/test-poll.c (poll): Likewise.
6902         * tests/test-popen.c (popen, pclose): Likewise.
6903         * tests/test-posix_spawn1.c (posix_spawnp, posix_spawnattr_init)
6904         (posix_spawnattr_destroy, posix_spawnattr_setsigmask)
6905         (posix_spawnattr_setflags, posix_spawn_file_actions_init)
6906         (posix_spawn_file_actions_destroy)
6907         (posix_spawn_file_actions_addclose)
6908         (posix_spawn_file_actions_addopen)
6909         (posix_spawn_file_actions_adddup2): Likewise.
6910         * tests/test-posix_spawn3.c (posix_spawn): Likewise.
6911         * tests/test-pread.c (pread): Likewise.
6912         * tests/test-printf-posix.c (printf): Likewise.
6913         * tests/test-pty.c (openpty, forkpty): Likewise.
6914         * tests/test-random_r.c (srandom_r, initstate_r, setstate_r)
6915         (random_r): Likewise.
6916         * tests/test-rawmemchr.c (rawmemchr): Likewise.
6917         * tests/test-readlink.c (readlink): Likewise.
6918         * tests/test-remove.c (remove): Likewise.
6919         * tests/test-rename.c (rename): Likewise.
6920         * tests/test-renameat.c (renameat): Likewise.
6921         * tests/test-rmdir.c (rmdir): Likewise.
6922         * tests/test-round1.c (round): Likewise.
6923         * tests/test-roundf1.c (roundf): Likewise.
6924         * tests/test-roundl.c (roundl): Likewise.
6925         * tests/test-setenv.c (setenv): Likewise.
6926         * tests/test-sigaction.c (sigaction): Likewise.
6927         * tests/test-sleep.c (sleep): Likewise.
6928         * tests/test-snprintf.c (snprintf): Likewise.
6929         * tests/test-sprintf-posix.c (sprintf): Likewise.
6930         * tests/test-stat.c (stat): Likewise.
6931         * tests/test-stpncpy.c (stpncpy): Likewise.
6932         * tests/test-strcasestr.c (strcasestr): Likewise.
6933         * tests/test-strchrnul.c (strchrnul): Likewise.
6934         * tests/test-strerror.c (strerror): Likewise.
6935         * tests/test-strsignal.c (strsignal): Likewise.
6936         * tests/test-strstr.c (strstr): Likewise.
6937         * tests/test-strtod.c (strtod): Likewise.
6938         * tests/test-strverscmp.c (strverscmp): Likewise.
6939         * tests/test-symlink.c (symlink): Likewise.
6940         * tests/test-symlinkat.c (symlinkat, readlinkat): Likewise.
6941         * tests/test-times.c (times): Likewise.
6942         * tests/test-trunc1.c (trunc): Likewise.
6943         * tests/test-truncf1.c (truncf): Likewise.
6944         * tests/test-truncl.c (truncl): Likewise.
6945         * tests/test-tsearch.c (tdelete, tfind, tsearch, twalk):
6946         Likewise.
6947         * tests/test-uname.c (uname): Likewise.
6948         * tests/test-unlink.c (unlink): Likewise.
6949         * tests/test-unlinkat.c (unlinkat): Likewise.
6950         * tests/test-unsetenv.c (unsetenv): Likewise.
6951         * tests/test-usleep.c (usleep): Likewise.
6952         * tests/test-utimensat.c (utimensat): Likewise.
6953         * tests/test-vasprintf.c (asprintf, vasprintf): Likewise.
6954         * tests/test-vdprintf-posix.c (vdprintf): Likewise.
6955         * tests/test-vfprintf-posix.c (vfprintf): Likewise.
6956         * tests/test-vprintf-posix.c (vprintf): Likewise.
6957         * tests/test-vsnprintf.c (vsnprintf): Likewise.
6958         * tests/test-vsprintf-posix.c (vsprintf): Likewise.
6959         * tests/test-wcrtomb.c (wcrtomb): Likewise.
6960         * tests/test-wcsnrtombs.c (wcsnrtombs): Likewise.
6961         * tests/test-wcsrtombs.c (wcsrtombs): Likewise.
6962         * tests/test-wcwidth.c (wcwidth): Likewise.
6963
6964         build: pull in conditional headers during GNULIB_POSIXCHECK
6965         * lib/stdio.in.h (includes): Using GNULIB_POSIXCHECK also requires
6966         definitions from any conditionally-included headers.
6967         * lib/stdlib.in.h (includes): Likewise.
6968         * lib/unistd.in.h (includes): Likewise.
6969
6970 2009-12-24  Bruno Haible  <bruno@clisp.org>
6971
6972         * tests/test-argv-iter.c: Include header file being tested immediately
6973         after config.h.
6974         * tests/test-base64.c: Likewise.
6975         * tests/test-flock.c: Likewise.
6976         * tests/test-fsync.c: Likewise.
6977         * tests/test-getdate.c: Likewise.
6978         * tests/test-getndelim2.c: Likewise.
6979         * tests/test-isfinite.c: Likewise.
6980         * tests/test-isinf.c: Likewise.
6981         * tests/test-strerror.c: Likewise.
6982         * tests/test-strsignal.c: Likewise.
6983
6984 2009-12-23  Eric Blake  <ebb9@byu.net>
6985
6986         unistd: work around cygwin bug
6987         * lib/unistd.in.h (includes): Pick up headers needed for cygwin.
6988         * doc/posix-functions/unlinkat.texi (unlinkat): Document the bug.
6989         * doc/posix-functions/symlinkat.texi (symlinkat): Likewise.
6990
6991 2009-12-23  Bruno Haible  <bruno@clisp.org>
6992
6993         localename: More tests.
6994         * tests/test-localename.c (SIZEOF): New macro.
6995         (categories): New variable.
6996         (test_locale_name, test_locale_name_posix, test_locale_name_environ,
6997         test_locale_name_default): Add test w.r.t. thread locale.
6998         (test_locale_name_thread): New function.
6999         (main): Invoke it.
7000
7001         localename: Make aware of thread locale.
7002         * lib/localename.h (gl_locale_name_thread): New declaration.
7003         (gl_locale_name, gl_locale_name_posix, gl_locale_name_default): Clarify
7004         behaviour with respect to thread locale.
7005         * lib/localename.c: Include <limits.h>, <stddef.h>, <xlocale.h>,
7006         <langinfo.h>, glthread/lock.h.
7007         (SIZE_BITS): New macro.
7008         (string_hash): New function.
7009         (struct hash_node): New type.
7010         (HASH_TABLE_SIZE): New macro.
7011         (struniq_hash_table, struniq_lock): New variables.
7012         (struniq): New function.
7013         (gl_locale_name_thread): New function.
7014         (gl_locale_name): Invoke it.
7015         * m4/localename.m4 (gl_LOCALENAME): Test for uselocale function.
7016         * modules/localename (Depends-on): Add lock.
7017         Reported by Mike Gran <spk121@yahoo.com>.
7018
7019 2009-12-23  Eric Blake  <ebb9@byu.net>
7020
7021         va-args: new module
7022         * modules/va-args: New file.
7023         * m4/va-args.m4 (gl_VA_ARGS): Likewise.
7024         * MODULES.html.sh (Core language properties): Mention it.
7025
7026         gnulib-common: prefer _GL_UNUSED over _UNUSED_PARAMETER_
7027         * m4/gnulib-common.m4 (gl_COMMON): Create a more-appropriately
7028         named alias for __attribute__((__unused__)).
7029         * lib/chown.c: Update client.
7030         * lib/fchmodat.c: Likewise.
7031         * lib/fts.c: Likewise.
7032         * lib/getdate.y: Likewise.
7033         * lib/getgroups.c: Likewise.
7034         * lib/getopt.c: Likewise.
7035         * lib/getugroups.c: Likewise.
7036         * lib/mkdir.c: Likewise.
7037         * lib/mkfifo.c: Likewise.
7038         * lib/mkfifoat.c: Likewise.
7039         * lib/mknod.c: Likewise.
7040         * lib/mknodat.c: Likewise.
7041         * lib/readlink.c: Likewise.
7042         * lib/se-context.in.h: Likewise.
7043         * lib/se-selinux.in.h: Likewise.
7044         * lib/sockets.c: Likewise.
7045         * lib/symlink.c: Likewise.
7046         * lib/symlinkat.c: Likewise.
7047         * lib/unicodeio.c: Likewise.
7048         * lib/unistr.h: Likewise.
7049         * tests/test-areadlink.c: Likewise.
7050         * tests/test-areadlinkat.c: Likewise.
7051         * tests/test-filenamecat.c: Likewise.
7052         * tests/test-fseeko.c: Likewise.
7053         * tests/test-ftello.c: Likewise.
7054         * tests/test-getdate.c: Likewise.
7055         * tests/test-getgroups.c: Likewise.
7056         * tests/test-gethostname.c: Likewise.
7057         * tests/test-quotearg.c: Likewise.
7058         * tests/test-version-etc.c: Likewise.
7059         * tests/test-xalloc-die.c: Likewise.
7060         * tests/test-xfprintf-posix.c: Likewise.
7061         * tests/test-xprintf-posix.c: Likewise.
7062         * tests/test-xvasprintf.c: Likewise.
7063
7064         tests: avoid compiler warnings
7065         * tests/test-fcntl.c (main): Delete unused parameters.
7066         * tests/test-freopen-safer.c (main): Likewise.
7067         * tests/test-xalloc-die.c (main): Mark unused parameters.
7068         * tests/test-fseeko.c (main): Likewise.
7069         * tests/test-ftello.c (main): Likewise.
7070         * tests/test-nanosleep.c (main): Avoid declaration warning.
7071         * tests/test-sleep.c (main): Likewise.
7072         * tests/test-unsetenv.c (main): Silence warning about string
7073         literal.
7074         * m4/setenv.m4 (gl_FUNC_UNSETENV): Likewise.
7075
7076 2009-12-23  Bruno Haible  <bruno@clisp.org>
7077
7078         * tests/test-localename.c (test_locale_name): New function, extracted
7079         from main. Also test mixed situations.
7080         (test_locale_name_posix, test_locale_name_environ,
7081         test_locale_name_default): New functions.
7082         (main): Invoke them all.
7083         * modules/localename-tests (configure.ac): Test for newlocale.
7084
7085 2009-12-23  Bruno Haible  <bruno@clisp.org>
7086
7087         unistd: Ensure getcwd gets declared before being overridden.
7088         * lib/unistd.in.h: Conditionally include <io.h>.
7089
7090 2009-12-22  Bruno Haible  <bruno@clisp.org>
7091
7092         wchar: Diagnose broken combination of glibc and gcc versions and flags.
7093         * m4/wchar.m4 (gl_WCHAR_H_INLINE_OK): New macro.
7094         (gl_WCHAR_H): Invoke it.
7095         * m4/btowc.m4 (gl_FUNC_BTOWC): Require it.
7096         * doc/posix-headers/wchar.texi: Mention the interoperability problem.
7097         Reported by Karl Berry <karl@freefriends.org>.
7098
7099 2009-12-22  Eric Blake  <ebb9@byu.net>
7100
7101         math, unistd: avoid redundant includes
7102         * lib/math.in.h (isnan): No need to re-include <math.h>.
7103         * lib/unistd.in.h (getcwd): Likewise, for <stdlib.h>.
7104
7105         getsubopt: work around cygwin bug
7106         * lib/stdlib.in.h (includes): Move unistd inclusion sooner, to
7107         avoid conflicting with system getsubopt.
7108         * doc/posix-functions/getsubopt.texi (getsubopt): Document the
7109         bug.
7110
7111         getopt: synchronize from glibc
7112         * lib/getopt.c (_getopt_initialize, _getopt_internal_r): Swap
7113         parameter order.  Adjust all callers.
7114         (_getopt_internal_r, main): Adjust quoting in error messages.
7115         Drop considerations for outdated POSIX 1003.2 error message.
7116         * lib/getopt1.c (_getopt_long_r, _getopt_long_only_r): Adjust
7117         callers.
7118         * lib/getopt_int.h (_getopt_internal_r): Adjust prototype.
7119
7120         test-getopt: test stderr behavior
7121         * modules/getopt-posix-tests (Depends-on): Add dup2.
7122         * tests/test-getopt.c (ASSERT): Avoid stderr.
7123         (main): Move stderr to a temporary file.
7124         * tests/test-getopt.h (getopt_loop): No longer manipulate opterr.
7125         Instead, add parameter to inform caller if output occurred.
7126         (test_getopt): Adjust all existing tests to expect silence, and
7127         add new tests of leading ":".
7128         * doc/glibc-functions/getopt_long.texi (getopt_long): Document
7129         glibc shortcomings with leading "-:" or "+:" in optstring.
7130         * doc/glibc-functions/getopt_long_only.texi (getopt_long_only):
7131         Likewise.
7132         * doc/posix-functions/getopt.texi (getopt): Likewise.
7133
7134         test-getopt: enhance test
7135         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Require that getopt_long
7136         supports optind=0.
7137         * tests/test-getopt.c (OPTIND_MIN): Move...
7138         * tests/test-getopt.h (OPTIND_MIN): ...here.
7139         * tests/test-getopt_long.h (test_getopt_long): Add more coverage.
7140         Require that optind=0 works, since modern BSD supports it in
7141         addition to optreset, and since coreutils expects it.
7142         (test_getopt_long_only): New test.
7143         * doc/glibc-functions/getopt_long.texi (getopt_long): Document
7144         glibc shortcomings with 'W;', and enforcement of optind=0.
7145         * doc/glibc-functions/getopt_long_only.texi (getopt_long_only):
7146         Likewise.
7147
7148 2009-12-21  Bruno Haible  <bruno@clisp.org>
7149
7150         localename: Improvements for MacOS X and Cygwin.
7151         * lib/localename.h (gl_locale_name_environ): New declaration.
7152         * lib/localename.c (gl_locale_name_environ): New function, extracted from
7153         gl_locale_name_posix. Ignore dummy LANG values on MacOS X and Cygwin.
7154         (gl_locale_name_posix): Invoke it.
7155         (gl_locale_name_default): Add comments. Use Windows native API also on
7156         Cygwin.
7157
7158 2009-12-21  Bruno Haible  <bruno@clisp.org>
7159
7160         Update list of Win32 locale ids.
7161         * lib/localename.c (LANG_ROMANSH): Renamed from LANG_RHAETO_ROMANCE.
7162         (LANG_SAMI): Renamed from LANG_SAAMI.
7163         (LANG_BASHKIR, LANG_LUXEMBOURGISH, LANG_GREENLANDIC,
7164         LANG_MAPUDUNGUN, LANG_MOHAWK, LANG_BRETON, LANG_OCCITAN, LANG_CORSICAN,
7165         LANG_ALSATIAN, LANG_YAKUT, LANG_KICHE, LANG_KINYARWANDA, LANG_WOLOF,
7166         LANG_DARI, LANG_SCOTTISH_GAELIC): New macros.
7167         (SUBLANG_AFRIKAANS_SOUTH_AFRICA, SUBLANG_ALBANIAN_ALBANIA,
7168         SUBLANG_ALSATIAN_FRANCE, SUBLANG_AMHARIC_ETHIOPIA,
7169         SUBLANG_ARMENIAN_ARMENIA, SUBLANG_ASSAMESE_INDIA,
7170         SUBLANG_BASHKIR_RUSSIA, SUBLANG_BASQUE_BASQUE,
7171         SUBLANG_BELARUSIAN_BELARUS, SUBLANG_BRETON_FRANCE,
7172         SUBLANG_BULGARIAN_BULGARIA, SUBLANG_CAMBODIAN_CAMBODIA,
7173         SUBLANG_CATALAN_SPAIN, SUBLANG_CORSICAN_FRANCE,
7174         SUBLANG_CZECH_CZECH_REPUBLIC, SUBLANG_DANISH_DENMARK,
7175         SUBLANG_DARI_AFGHANISTAN, SUBLANG_DIVEHI_MALDIVES,
7176         SUBLANG_DUTCH_SURINAM, SUBLANG_ESTONIAN_ESTONIA,
7177         SUBLANG_FAEROESE_FAROE_ISLANDS, SUBLANG_FARSI_IRAN,
7178         SUBLANG_FINNISH_FINLAND, SUBLANG_FRISIAN_NETHERLANDS,
7179         SUBLANG_GALICIAN_SPAIN, SUBLANG_GEORGIAN_GEORGIA,
7180         SUBLANG_GREEK_GREECE, SUBLANG_GREENLANDIC_GREENLAND,
7181         SUBLANG_GUJARATI_INDIA, SUBLANG_HAUSA_NIGERIA_LATIN,
7182         SUBLANG_HEBREW_ISRAEL, SUBLANG_HINDI_INDIA, SUBLANG_HUNGARIAN_HUNGARY,
7183         SUBLANG_ICELANDIC_ICELAND, SUBLANG_IGBO_NIGERIA,
7184         SUBLANG_INDONESIAN_INDONESIA, SUBLANG_INUKTITUT_CANADA,
7185         SUBLANG_INUKTITUT_CANADA_LATIN, SUBLANG_IRISH_IRELAND,
7186         SUBLANG_JAPANESE_JAPAN, SUBLANG_KANNADA_INDIA,
7187         SUBLANG_KAZAK_KAZAKHSTAN, SUBLANG_KICHE_GUATEMALA,
7188         SUBLANG_KINYARWANDA_RWANDA, SUBLANG_KONKANI_INDIA,
7189         SUBLANG_KYRGYZ_KYRGYZSTAN, SUBLANG_LAO_LAOS, SUBLANG_LATVIAN_LATVIA,
7190         SUBLANG_LITHUANIAN_LITHUANIA, SUBLANG_LOWER_SORBIAN_GERMANY,
7191         SUBLANG_LUXEMBOURGISH_LUXEMBOURG, SUBLANG_MACEDONIAN_MACEDONIA,
7192         SUBLANG_MALAYALAM_INDIA, SUBLANG_MALTESE_MALTA,
7193         SUBLANG_MAORI_NEW_ZEALAND, SUBLANG_MAPUDUNGUN_CHILE,
7194         SUBLANG_MARATHI_INDIA, SUBLANG_MOHAWK_CANADA, SUBLANG_NEPALI_NEPAL,
7195         SUBLANG_OCCITAN_FRANCE, SUBLANG_ORIYA_INDIA,
7196         SUBLANG_PASHTO_AFGHANISTAN, SUBLANG_POLISH_POLAND,
7197         SUBLANG_ROMANSH_SWITZERLAND, SUBLANG_SAMI_NORTHERN_NORWAY,
7198         SUBLANG_SAMI_NORTHERN_SWEDEN, SUBLANG_SAMI_NORTHERN_FINLAND,
7199         SUBLANG_SAMI_LULE_NORWAY, SUBLANG_SAMI_LULE_SWEDEN,
7200         SUBLANG_SAMI_SOUTHERN_NORWAY, SUBLANG_SAMI_SOUTHERN_SWEDEN,
7201         SUBLANG_SAMI_SKOLT_FINLAND, SUBLANG_SAMI_INARI_FINLAND,
7202         SUBLANG_SANSKRIT_INDIA, SUBLANG_SINHALESE_SRI_LANKA,
7203         SUBLANG_SLOVAK_SLOVAKIA, SUBLANG_SLOVENIAN_SLOVENIA,
7204         SUBLANG_SOTHO_SOUTH_AFRICA, SUBLANG_SWAHILI_KENYA,
7205         SUBLANG_SWEDISH_SWEDEN, SUBLANG_SYRIAC_SYRIA,
7206         SUBLANG_TAGALOG_PHILIPPINES, SUBLANG_TAJIK_TAJIKISTAN,
7207         SUBLANG_TAMIL_INDIA, SUBLANG_TATAR_RUSSIA, SUBLANG_TELUGU_INDIA,
7208         SUBLANG_THAI_THAILAND, SUBLANG_TSWANA_SOUTH_AFRICA,
7209         SUBLANG_TURKISH_TURKEY, SUBLANG_TURKMEN_TURKMENISTAN,
7210         SUBLANG_UKRAINIAN_UKRAINE, SUBLANG_UPPER_SORBIAN_GERMANY,
7211         SUBLANG_VIETNAMESE_VIETNAM, SUBLANG_WELSH_UNITED_KINGDOM,
7212         SUBLANG_WOLOF_SENEGAL, SUBLANG_XHOSA_SOUTH_AFRICA,
7213         SUBLANG_YAKUT_RUSSIA, SUBLANG_YI_PRC, SUBLANG_YORUBA_NIGERIA,
7214         SUBLANG_ZULU_SOUTH_AFRICA): New macros.
7215         (gl_locale_name_from_win32_LANGID): Handle also the territory neutral
7216         locale ids. Add support for Alsatian, Bashkir, Breton, Corsican, Dari,
7217         Greenlandic, K'iche', Kinyarwanda, Luxembourgish, Mapudungun, Mohawk,
7218         Occitan, Scottish Gaelic, Wolof, Yakut. Change language code for Yi.
7219         Add more languages and countries for Sami, Sorbian. Add more countries
7220         for Serbian, Dutch. Add more scripts for Inuktitut. Be more precise
7221         for Pashto. Change country for Syriac, Tswana.
7222
7223 2009-12-21  Eric Blake  <ebb9@byu.net>
7224
7225         test-utimens: avoid spurious failure
7226         * tests/test-chown.h (nap): Factor...
7227         * tests/nap.h: ...into new file.
7228         * tests/test-lchown.h (nap): Avoid duplication.
7229         * tests/test-utimens-common.h (nap): Use shared implementation,
7230         necessary on file systems with 1-second resolution.
7231         * modules/chown-tests (Files): Include new file.
7232         * modules/fdutimensat-tests (Files): Likewise.
7233         * modules/futimens-tests (Files): Likewise.
7234         * modules/lchown-tests (Files): Likewise.
7235         * modules/openat-tests (Files): Likewise.
7236         * modules/utimens-tests (Files): Likewise.
7237         * modules/utimensat-tests (Files): Likewise.
7238
7239 2009-12-19  Eric Blake  <ebb9@byu.net>
7240
7241         futimens, utimensat: work around Linux bug
7242         * m4/futimens.m4 (gl_FUNC_FUTIMENS): Detect ctime bug.
7243         * m4/utimensat.m4 (gl_FUNC_UTIMENSAT): Likewise.
7244         * lib/utimensat.c (rpl_utimensat): Work around it.
7245         * lib/futimens.c (rpl_futimens): Adjust comment.
7246
7247         utimens: work around Linux ctime bug
7248         * lib/utimens.c (detect_ctime_bug): New helper function.
7249         (update_timespec): Differentiate between workaround needed for
7250         this bug vs. what is needed for systems that lack utimensat.
7251         (fdutimens, lutimens): Work around bug.
7252
7253         utimens: check for ctime update
7254         * tests/test-utimens-common.h (check_ctime): Define.
7255         * tests/test-utimens.h (test_utimens): Expose the Linux bug.
7256         * tests/test-futimens.h (test_futimens): Likewise.
7257         * tests/test-lutimens.h (test_lutimens): Likewise.
7258         * doc/posix-functions/futimens.texi (futimens): Document the bug.
7259         * doc/posix-functions/utimensat.texi (utimensat): Likewise.
7260
7261 2009-12-19  Bruno Haible  <bruno@clisp.org>
7262
7263         dprintf-posix: Check against memory leak fixed on 2009-12-15.
7264         * tests/test-dprintf-posix2.sh: New file.
7265         * tests/test-dprintf-posix2.c: New file.
7266         * modules/dprintf-posix-tests (Files): Add them.
7267         (configure.ac): Check for getrlimit and setrlimit.
7268         (Makefile.am): Augment TESTS and CHECK_PROGRAMS.
7269
7270 2009-12-19  Bruno Haible  <bruno@clisp.org>
7271
7272         fprintf-posix: Check against memory leak fixed on 2009-12-15.
7273         * tests/test-fprintf-posix3.sh: New file.
7274         * tests/test-fprintf-posix3.c: New file.
7275         * modules/fprintf-posix-tests (Files): Add them.
7276         (Makefile.am): Augment TESTS and CHECK_PROGRAMS.
7277
7278 2009-12-19  Eric Blake  <ebb9@byu.net>
7279
7280         dirfd: fix prototype
7281         * lib/dirent.in.h (dirfd): Argument is not const, per POSIX.
7282         * lib/dirfd.c (dirfd): Likewise.
7283
7284         canonicalize: reduce memory usage
7285         * lib/canonicalize.c (canonicalize_filename_mode): Trim the
7286         allocation to size.
7287         Reported by Solar Designer <solar@openwall.com>.
7288
7289 2009-12-19  Bruno Haible  <bruno@clisp.org>
7290
7291         New module attribute 'Applicability'.
7292         * modules/TEMPLATE-EXTENDED: New field 'Applicability'.
7293         * gnulib-tool: New option --extract-applicability.
7294         (func_usage): Document it.
7295         (sed_extract_prog): Recognize it.
7296         (func_get_applicability): New function.
7297         (func_import): Generalize handling of 'link-warning' module.
7298         * modules/link-warning (Applicability): New section.
7299         * modules/arg-nonnull (Applicability): New section.
7300         Repoted by Simon Josefsson <simon@josefsson.org>.
7301
7302 2009-12-19  Bruno Haible  <bruno@clisp.org>
7303
7304         fflush: tweak
7305         * lib/fflush.c (update_fpos_cache): Don't use fpos_t on Cygwin.
7306         * lib/fseeko.c (rpl_fseeko): Likewise.
7307
7308 2009-12-16  José E. Marchesi  <jemarch@gnu.org>  (tiny change)
7309
7310         * lib/gl_list.h: Fix typo in comment.
7311
7312 2009-12-16  Eric Blake  <ebb9@byu.net>
7313
7314         fcntl: use to simplify other modules
7315         * modules/cloexec (Depends-on): Add fcntl.
7316         * modules/fchdir (Depends-on): Likewise.
7317         * modules/fd-safer-flag (Depends-on): Likewise.
7318         * modules/unistd-safer (Depends-on): Likewise.
7319         * modules/dup3 (configure.ac): Set module indicator.
7320         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Replace fcntl if fchdir is
7321         missing.
7322         * lib/fchdir.c (_gl_register_dup): Fix comment.
7323         * lib/cloexec.c (dup_cloexec): Simplify, by relying on fcntl.
7324         * lib/dup-safer.c (dup_safer): Likewise.
7325         * lib/dup-safer-flag.c (dup_safer_flag): Likewise.
7326         * lib/dup3.c (dup3): Likewise.
7327         * tests/test-fchdir.c (main): Enhance test.
7328         Fixes a dup_cloexec bug reported by Ondřej Vašík.
7329
7330         fcntl: port portions of fcntl to mingw
7331         * m4/fcntl.m4 (gl_FUNC_FCNTL): Also build fcntl.c on mingw.
7332         * lib/fcntl.c (fcntl) <F_DUPFD, F_DUPFD_CLOEXEC, F_GETFD>: Provide
7333         replacement for mingw.
7334         * modules/fcntl (Description): Update.
7335         (Depends-on): Add dup2.
7336         * m4/fcntl_h.m4 (gl_FCNTL_H_DEFAULTS): Add witness.
7337         * modules/fcntl-h (Makefile.am): Substitute it.
7338         * lib/fcntl.in.h (fcntl): Update declaration.
7339         (F_DUPFD, F_GETFD): New macros, when needed.
7340         * doc/posix-headers/fcntl.texi (fcntl.h): Update documentation.
7341         * doc/posix-functions/fcntl.texi (fcntl): Likewise.
7342         * tests/test-fcntl.c (check_flags, main): Enhance test for items
7343         we now guarantee.
7344
7345         fcntl: work around cygwin bug in F_DUPFD
7346         * m4/fcntl.m4 (gl_REPLACE_FCNTL): New macro.
7347         (gl_FUNC_FCNTL): Use it.  Test for F_DUPFD bug.
7348         * lib/fcntl.c (rpl_fcntl) <F_DUPFD>: Work around it.
7349         <F_DUPFD_CLOEXEC>: Reduce calls to _gl_register_dup.
7350         * doc/posix-functions/fcntl.texi (fcntl): Document it.
7351
7352         fcntl: support F_DUPFD_CLOEXEC on systems with fcntl
7353         * modules/fcntl (Files): List new files.
7354         (configure.ac): Run a test.
7355         * m4/fcntl.m4 (gl_FUNC_FCNTL): New file.
7356         * lib/fcntl.c (rpl_fcntl): Likewise.
7357         * m4/fcntl_h.m4 (gl_FCNTL_H_DEFAULTS): Add witness defaults.
7358         (gl_FCNTL_H): Always replace fcntl.h.
7359         * modules/fcntl-h (Makefile.am): Substitute witnesses.
7360         * lib/fcntl.in.h (fcntl): Declare replacement.
7361         (F_DUPFD_CLOEXEC, GNULIB_defined_F_DUPFD_CLOEXEC): New macro when
7362         needed, plus a witness.
7363         * doc/posix-functions/fcntl.texi (fcntl): Document this.
7364         * doc/posix-headers/fcntl.texi (fcntl.h): Likewise.
7365         * tests/test-fcntl.c: New file.
7366         * modules/fcntl-tests: Likewise.
7367
7368         binary-io: avoid potential compilation warning
7369         * lib/binary-io.h [__DJGPP__]: Avoid null preprocessor
7370         directives.
7371
7372         fflush: avoid compilation error on NetBSD
7373         * lib/fflush.c (update_fpos_cache): Use a union to safely convert
7374         between off_t and fpos_t, since the latter is sometimes a struct.
7375         * lib/fseeko.c (rpl_fseeko): Likewise.
7376         Reported by Alexander Nasonov <alnsn@yandex.ru>.
7377
7378 2009-12-15  Eric Blake  <ebb9@byu.net>
7379
7380         fcntl-h, stdio, sys_ioctl: fix declarations
7381         * lib/stdio.in.h (dprintf): Use of link warning on a variadic
7382         function must not take arguments.
7383         * lib/sys_ioctl.in.h (ioctl): Likewise.
7384         * lib/fcntl.in.h (openat): Likewise.  Declare extern.
7385         (open): Add a link warning.
7386
7387 2009-12-15  Jim Meyering  <meyering@redhat.com>
7388
7389         areadlink, areadlink-with-size: relax license to LGPLv2+
7390         * modules/areadlink (License): Relax to LGPLv2+.
7391         * modules/areadlink-with-size (License): Likewise.
7392
7393 2009-12-15  Joel E. Denny  <jdenny@clemson.edu>
7394             Bruno Haible  <bruno@clisp.org>
7395
7396         *printf: Fix memory leak.
7397         * lib/fprintf.c (fprintf): Free memory allocated by vasnprintf.
7398         * lib/vfprintf.c (vfprintf): Likewise.
7399         * lib/dprintf.c (dprintf): Likewise.
7400         * lib/vdprintf.c (vdprintf): Likewise.
7401
7402 2009-12-14  Eric Blake  <ebb9@byu.net>
7403
7404         accept4: adjust module dependencies
7405         * modules/accept4 (Depends-on): Use fcntl-h, not fcntl.
7406
7407         utimens: one more try at avoiding compiler warning
7408         * lib/utimens.c (lutimens): Lower scope of result.
7409
7410 2009-12-13  Bruno Haible  <bruno@clisp.org>
7411
7412         Move the malloc checking from module 'list' to new module 'xlist'.
7413         * modules/xlist: New file.
7414         * lib/gl_xlist.h: New file.
7415         * lib/gl_xlist.c: New file.
7416         * lib/gl_list.h (gl_list_create_empty, gl_list_create,
7417         gl_list_node_set_value, gl_list_set_at, gl_list_add_first,
7418         gl_list_add_last, gl_list_add_before, gl_list_add_after,
7419         gl_list_nx_add_at, gl_sortedlist_add): Disable declarations.
7420         (gl_list_nx_create_empty, gl_list_nx_create, gl_list_node_nx_set_value,
7421         gl_list_nx_set_at, gl_list_nx_add_first, gl_list_nx_add_last,
7422         gl_list_nx_add_before, gl_list_nx_add_after, gl_list_nx_add_at,
7423         gl_sortedlist_nx_add): New declarations.
7424         (struct gl_list_implementation): Rename and change methods accordingly.
7425         (gl_list_nx_create_empty): Renamed from gl_list_create_empty.
7426         (gl_list_nx_create): Renamed from gl_list_create.
7427         (gl_list_node_nx_set_value): Renamed from gl_list_node_set_value.
7428         (gl_list_nx_set_at): Renamed from gl_list_set_at.
7429         (gl_list_nx_add_first): Renamed from gl_list_add_first.
7430         (gl_list_nx_add_last): Renamed from gl_list_add_last.
7431         (gl_list_nx_add_before): Renamed from gl_list_add_before.
7432         (gl_list_nx_add_after): Renamed from gl_list_add_after.
7433         (gl_list_nx_add_at): Renamed from gl_list_add_at.
7434         (gl_sortedlist_nx_add): Renamed from gl_sortedlist_add.
7435         * lib/gl_list.c (gl_list_nx_create_empty): Renamed from
7436         gl_list_create_empty.
7437         (gl_list_nx_create): Renamed from gl_list_create.
7438         (gl_list_node_nx_set_value): Renamed from gl_list_node_set_value.
7439         (gl_list_nx_set_at): Renamed from gl_list_set_at.
7440         (gl_list_nx_add_first): Renamed from gl_list_add_first.
7441         (gl_list_nx_add_last): Renamed from gl_list_add_last.
7442         (gl_list_nx_add_before): Renamed from gl_list_add_before.
7443         (gl_list_nx_add_after): Renamed from gl_list_add_after.
7444         (gl_list_nx_add_at): Renamed from gl_list_add_at.
7445         (gl_sortedlist_nx_add): Renamed from gl_sortedlist_add.
7446         * lib/gl_array_list.c: Don't include xalloc.h.
7447         (gl_array_nx_create_empty): Renamed from gl_array_create_empty. Return
7448         NULL upon out-of-memory.
7449         (gl_array_nx_create): Renamed from gl_array_create. Return NULL upon
7450         out-of-memory.
7451         (gl_array_node_nx_set_value): Renamed from gl_array_node_set_value.
7452         Change return type to 'int'.
7453         (gl_array_nx_set_at): Renamed from gl_array_set_at.
7454         (grow): Change return type to 'int'. Return -1 upon out-of-memory.
7455         (gl_array_nx_add_first): Renamed from gl_array_add_first. Return NULL
7456         upon out-of-memory.
7457         (gl_array_nx_add_last): Renamed from gl_array_add_last. Return NULL
7458         upon out-of-memory.
7459         (gl_array_nx_add_before): Renamed from gl_array_add_before. Return NULL
7460         upon out-of-memory.
7461         (gl_array_nx_add_after): Renamed from gl_array_add_after. Return NULL
7462         upon out-of-memory.
7463         (gl_array_nx_add_at): Renamed from gl_array_add_at. Return NULL upon
7464         out-of-memory.
7465         (gl_array_sortedlist_nx_add): Renamed from gl_array_sortedlist_add.
7466         Update.
7467         (gl_array_list_implementation): Update.
7468         * lib/gl_carray_list.c: Don't include xalloc.h.
7469         (gl_carray_nx_create_empty): Renamed from gl_carray_create_empty.
7470         Return NULL upon out-of-memory.
7471         (gl_carray_nx_create): Renamed from gl_carray_create. Return NULL upon
7472         out-of-memory.
7473         (gl_carray_node_nx_set_value): Renamed from gl_carray_node_set_value.
7474         Change return type to 'int'.
7475         (gl_carray_nx_set_at): Renamed from gl_carray_set_at.
7476         (grow): Change return type to 'int'. Return -1 upon out-of-memory.
7477         (gl_carray_nx_add_first): Renamed from gl_carray_add_first. Return NULL
7478         upon out-of-memory.
7479         (gl_carray_nx_add_last): Renamed from gl_carray_add_last. Return NULL
7480         upon out-of-memory.
7481         (gl_carray_nx_add_at): Renamed from gl_carray_add_at. Return NULL upon
7482         out-of-memory.
7483         (gl_carray_nx_add_before): Renamed from gl_carray_add_before. Update.
7484         (gl_carray_nx_add_after): Renamed from gl_carray_add_after. Update.
7485         (gl_carray_sortedlist_nx_add): Renamed from gl_carray_sortedlist_add.
7486         Update.
7487         (gl_carray_list_implementation): Update.
7488         * lib/gl_anyhash_list2.h (hash_resize): Do nothing upon out-of-memory.
7489         * lib/gl_anylinked_list2.h (gl_linked_nx_create_empty): Renamed from
7490         gl_linked_create_empty. Return NULL upon out-of-memory.
7491         (gl_linked_nx_create): Renamed from gl_linked_create. Return NULL upon
7492         out-of-memory.
7493         (gl_linked_node_nx_set_value): Renamed from gl_linked_node_set_value.
7494         Change return type to 'int'. Return -1 upon out-of-memory.
7495         (gl_linked_nx_set_at): Renamed from gl_linked_set_at. Return NULL upon
7496         out-of-memory.
7497         (gl_linked_nx_add_first): Renamed from gl_linked_add_first. Return NULL
7498         upon out-of-memory.
7499         (gl_linked_nx_add_last): Renamed from gl_linked_add_last. Return NULL
7500         upon out-of-memory.
7501         (gl_linked_nx_add_before): Renamed from gl_linked_add_before. Return
7502         NULL upon out-of-memory.
7503         (gl_linked_nx_add_after): Renamed from gl_linked_add_after. Return NULL
7504         upon out-of-memory.
7505         (gl_linked_nx_add_at): Renamed from gl_linked_add_at. Return NULL upon
7506         out-of-memory.
7507         (gl_linked_sortedlist_nx_add): Renamed from gl_linked_sortedlist_add.
7508         Update.
7509         * lib/gl_linked_list.c: Don't include xalloc.h.
7510         (gl_linked_list_implementation): Update.
7511         * lib/gl_linkedhash_list.c: Don't include xalloc.h.
7512         (add_to_bucket): Change return type to 'int'.
7513         (gl_linkedhash_list_implementation): Update.
7514         * lib/gl_anytree_list1.h (free_subtree): New function.
7515         * lib/gl_anytree_list2.h (gl_tree_nx_create_empty): Renamed from
7516         gl_tree_create_empty. Return NULL upon out-of-memory.
7517         (gl_tree_node_nx_set_value): Renamed from gl_tree_node_set_value.
7518         Change return type to 'int'. Return -1 upon out-of-memory.
7519         (gl_tree_nx_set_at): Renamed from gl_tree_set_at. Return NULL upon
7520         out-of-memory.
7521         (gl_tree_nx_add_at): Renamed from gl_tree_add_at. Update.
7522         (gl_tree_remove_node): New function, moved here from
7523         lib/gl_anyavltree_list2.h and lib/gl_anyrbtree_list2.h.
7524         (gl_tree_sortedlist_nx_add): Renamed from gl_tree_sortedlist_add.
7525         Update.
7526         * lib/gl_anyavltree_list2.h (create_subtree_with_contents): Use
7527         malloc, not xmalloc. Return NULL upon out-of-memory.
7528         (gl_tree_nx_create): Renamed from gl_tree_create. Return NULL upon
7529         out-of-memory.
7530         (gl_tree_remove_node_from_tree): New function, extracted from
7531         gl_tree_remove_node.
7532         (gl_tree_nx_add_first): Renamed from gl_tree_add_first. Return NULL
7533         upon out-of-memory.
7534         (gl_tree_nx_add_last): Renamed from gl_tree_add_last. Return NULL upon
7535         out-of-memory.
7536         (gl_tree_nx_add_before): Renamed from gl_tree_add_before. Return NULL
7537         upon out-of-memory.
7538         (gl_tree_nx_add_after): Renamed from gl_tree_add_after. Return NULL
7539         upon out-of-memory.
7540         (gl_tree_remove_node): Remove function. Moved to gl_anytree_list2.h.
7541         * lib/gl_anyrbtree_list2.h (create_subtree_with_contents): Use malloc,
7542         not xmalloc. Return NULL upon out-of-memory.
7543         (gl_tree_nx_create): Renamed from gl_tree_create. Return NULL upon
7544         out-of-memory.
7545         (gl_tree_remove_node_from_tree): New function, extracted from
7546         gl_tree_remove_node.
7547         (gl_tree_nx_add_first): Renamed from gl_tree_add_first. Return NULL
7548         upon out-of-memory.
7549         (gl_tree_nx_add_last): Renamed from gl_tree_add_last. Return NULL upon
7550         out-of-memory.
7551         (gl_tree_nx_add_before): Renamed from gl_tree_add_before. Return NULL
7552         upon out-of-memory.
7553         (gl_tree_nx_add_after): Renamed from gl_tree_add_after. Return NULL
7554         upon out-of-memory.
7555         (gl_tree_remove_node): Remove function. Moved to gl_anytree_list2.h.
7556         * lib/gl_avltree_list.c: Don't include xalloc.h. Include
7557         gl_anytree_list1.h before gl_anyavltree_list2.h.
7558         (gl_avltree_list_implementation): Update.
7559         * lib/gl_rbtree_list.c: Don't include xalloc.h. Include
7560         gl_anytree_list1.h before gl_anyavltree_list2.h.
7561         (gl_rbtree_list_implementation): Update.
7562         * lib/gl_anytreehash_list1.h (add_to_bucket, add_nodes_to_buckets):
7563         Change return type to 'int'. Return -1 upon out-of-memory. Use
7564         __builtin_expect.
7565         * lib/gl_avltreehash_list.c: Don't include xalloc.h.
7566         (gl_avltreehash_list_implementation): Update.
7567         * lib/gl_rbtreehash_list.c: Don't include xalloc.h.
7568         (gl_rbtreehash_list_implementation): Update.
7569         * modules/array-list (Depends-on): Remove xalloc.
7570         * modules/carray-list (Depends-on): Likewise.
7571         * modules/linked-list (Depends-on): Likewise.
7572         * modules/linkedhash-list (Depends-on): Likewise.
7573         * modules/avltree-list (Depends-on): Likewise.
7574         * modules/rbtree-list (Depends-on): Likewise.
7575         * modules/avltreehash-list (Depends-on): Likewise.
7576         * modules/rbtreehash-list (Depends-on): Likewise.
7577
7578         * modules/xsublist: New file.
7579         * lib/gl_xsublist.h: New file.
7580         * lib/gl_xsublist.c: New file.
7581         * lib/gl_sublist.h (gl_sublist_create): Disable declaration.
7582         (gl_sublist_nx_create): New declaration.
7583         * lib/gl_sublist.c: Don't include xalloc.h.
7584         (gl_sublist_nx_create_empty): Renamed from gl_sublist_create_empty.
7585         (gl_sublist_nx_create_fill): Renamed from gl_sublist_create_fill.
7586         (gl_sublist_node_nx_set_value): Renamed from gl_sublist_node_set_value.
7587         Change return type to 'int'. Return -1 upon out-of-memory.
7588         (gl_sublist_nx_set_at): Renamed from gl_sublist_set_at. Return NULL
7589         upon out-of-memory.
7590         (gl_sublist_nx_add_first): Renamed from gl_sublist_add_first. Return
7591         NULL upon out-of-memory.
7592         (gl_sublist_nx_add_last): Renamed from gl_sublist_add_last. Return NULL
7593         upon out-of-memory.
7594         (gl_sublist_nx_add_before): Renamed from gl_sublist_add_before. Return
7595         NULL upon out-of-memory.
7596         (gl_sublist_nx_add_after): Renamed from gl_sublist_add_after. Return
7597         NULL upon out-of-memory.
7598         (gl_sublist_nx_add_at): Renamed from gl_sublist_add_at. Return NULL
7599         upon out-of-memory.
7600         (gl_sublist_sortedlist_nx_add): Renamed from gl_sublist_sortedlist_add.
7601         (gl_sublist_list_implementation): Update.
7602         (gl_sublist_nx_create): Renamed from gl_sublist_create. Return NULL
7603         upon out-of-memory.
7604         * modules/sublist (Depends-on): Remove xalloc.
7605
7606         * tests/test-array_list.c: Use gl_list_nx_* functions where possible.
7607         * tests/test-carray_list.c: Likewise.
7608         * tests/test-linked_list.c: Likewise.
7609         * tests/test-linkedhash_list.c: Likewise.
7610         * tests/test-avltree_list.c: Likewise.
7611         * tests/test-rbtree_list.c: Likewise.
7612         * tests/test-avltreehash_list.c: Likewise.
7613         * tests/test-rbtreehash_list.c: Likewise.
7614         * modules/array-list-tests (Makefile.am): Don't link with @LIBINTL@.
7615         * modules/carray-list-tests (Makefile.am): Likewise.
7616         * modules/linked-list-tests (Makefile.am): Likewise.
7617         * modules/linkedhash-list-tests (Makefile.am): Likewise.
7618         * modules/avltree-list-tests (Makefile.am): Likewise.
7619         * modules/rbtree-list-tests (Makefile.am): Likewise.
7620         * modules/avltreehash-list-tests (Makefile.am): Likewise.
7621         * modules/rbtreehash-list-tests (Makefile.am): Likewise.
7622
7623         * NEWS: Mention the changes.
7624
7625         * lib/clean-temp.c: Include gl_xlist.h.
7626         * modules/clean-temp (Depends-on): Add xlist.
7627
7628         * lib/git-merge-changelog.c: Include gl_xlist.h instead of gl_list.h.
7629         * modules/git-merge-changelog (Depends-on): Add xlist. Remove list.
7630
7631         * tests/test-array_oset.c: Include gl_xlist.h.
7632         * modules/array-oset-tests (Depends-on): Add xlist.
7633
7634         Reported by José E. Marchesi <jemarch@gnu.org>.
7635
7636 2009-12-13  Bruno Haible  <bruno@clisp.org>
7637
7638         Move the malloc checking from module 'oset' to new module 'xoset'.
7639         * modules/xoset: New file.
7640         * lib/gl_xoset.h: New file.
7641         * lib/gl_xoset.c: New file.
7642         * lib/gl_oset.h (gl_oset_create_empty, gl_oset_add): Disable
7643         declarations.
7644         (gl_oset_nx_create_empty, gl_oset_nx_add): New declarations.
7645         (struct gl_oset_implementation): Rename and change methods accordingly.
7646         (gl_oset_nx_create_empty): Renamed from gl_oset_create_empty.
7647         (gl_oset_nx_add): Renamed from gl_oset_add. Change return type to
7648         'int'. Mark as __warn_unused_result__.
7649         * lib/gl_oset.c (gl_oset_nx_create_empty): Renamed from
7650         gl_oset_create_empty.
7651         (gl_oset_nx_add): Renamed from gl_oset_add. Change return type to
7652         'int'.
7653         * lib/gl_array_oset.c: Don't include xalloc.h.
7654         (gl_array_nx_create_empty): Renamed from gl_array_create_empty. Use
7655         malloc, not xmalloc.
7656         (grow): Change return type to 'int'. Don't call xalloc_die.
7657         (gl_array_nx_add_at): Renamed from gl_array_add_at. Change return type
7658         to 'int'.
7659         (gl_array_nx_add): Renamed from gl_array_add. Change return type to
7660         'int'.
7661         (gl_array_oset_implementation): Update.
7662         * lib/gl_anytree_oset.h (gl_tree_nx_create_empty): Renamed from
7663         gl_tree_create_empty.
7664         (gl_tree_nx_add): Renamed from gl_tree_add. Change return type to
7665         'int'.
7666         * lib/gl_avltree_oset.c: Don't include xalloc.h.
7667         (gl_tree_nx_add_first): Renamed from gl_tree_add_first. Use malloc, not
7668         xmalloc.
7669         (gl_tree_nx_add_before): Renamed from gl_tree_add_before. Use malloc,
7670         not xmalloc.
7671         (gl_tree_nx_add_after): Renamed from gl_tree_add_after. Use malloc, not
7672         xmalloc.
7673         (gl_avltree_oset_implementation): Update.
7674         * lib/gl_rbtree_oset.c: Don't include xalloc.h.
7675         (gl_tree_nx_add_first): Renamed from gl_tree_add_first. Use malloc, not
7676         xmalloc.
7677         (gl_tree_nx_add_before): Renamed from gl_tree_add_before. Use malloc,
7678         not xmalloc.
7679         (gl_tree_nx_add_after): Renamed from gl_tree_add_after. Use malloc, not
7680         xmalloc.
7681         (gl_rbtree_oset_implementation): Update.
7682         * modules/array-oset (Depends-on): Remove xalloc.
7683         * modules/avltree-oset (Depends-on): Likewise.
7684         * modules/rbtree-oset (Depends-on): Likewise.
7685         * tests/test-array_oset.c: Use gl_oset_nx_* functions where possible.
7686         * tests/test-avltree_oset.c: Likewise.
7687         * tests/test-rbtree_oset.c: Likewise.
7688         * lib/gl_anytreehash_list1.h (add_to_bucket): Likewise.
7689         * modules/avltree-oset-tests (Makefile.am): Don't link with @LIBINTL@.
7690         * modules/rbtree-oset-tests (Makefile.am): Likewise.
7691         * NEWS: Mention the change.
7692
7693 2009-12-05  Alfred M. Szmidt  <ams@gnu.org>
7694
7695         maint.mk: allow a project to override release-prep commands
7696         * top/maint.mk (alpha, beta, stable): Move release-preparatory
7697         commands into a new rule.
7698         (release-prep): New rule.
7699         (release-prep-hook): New overridable variable.
7700
7701 2009-12-13  Bruno Haible  <bruno@clisp.org>
7702
7703         * lib/localcharset.c (locale_charset): Fix comment about use of GetACP.
7704
7705 2009-12-13  Jim Meyering  <meyering@redhat.com>
7706
7707         maint.mk (null_AM_MAKEFLAGS, built_programs): remove unused definitions
7708         * top/maint.mk (null_AM_MAKEFLAGS, built_programs): Remove definitions.
7709
7710 2009-12-12  Bruno Haible  <bruno@clisp.org>
7711
7712         duplocale: Tweak.
7713         * lib/duplocale.c (rpl_duplocale): Mark categories array as 'const'.
7714
7715 2009-12-12  Karl Berry  <karl@gnu.org>
7716
7717         * config/srclist.txt (strtoll.c): tab changes, no more sync.
7718
7719 2009-12-12  Bruno Haible  <bruno@clisp.org>
7720
7721         * m4/po.m4: Undo incorrect untabification.
7722
7723 2009-12-12  Bruno Haible  <bruno@clisp.org>
7724
7725         c-strtod, c-strtold: Use multithread-safe implementation on MacOS X.
7726         * modules/c-strtod (Depends-on): Add locale.
7727         * modules/c-strtold (Depends-on): Likewise.
7728
7729 2009-12-12  Bruno Haible  <bruno@clisp.org>
7730
7731         * lib/localcharset.c (locale_charset): Add comment about use of GetACP.
7732
7733 2009-12-11  Eric Blake  <ebb9@byu.net>
7734
7735         setenv: relax requirement in light of POSIX ruling
7736         * m4/setenv.m4 (gl_FUNC_SETENV_SEPARATE): Test handling of "" but
7737         not NULL.
7738         * tests/test-setenv.c (main): Relax test.
7739         * tests/test-unsetenv.c (main): Likewise.
7740         * doc/posix-functions/setenv.texi (setenv): Document this.
7741         * doc/posix-functions/unsetenv.texi (unsetenv): Likewise.
7742
7743 2009-12-11  Bruno Haible  <bruno@clisp.org>
7744
7745         New module 'fd-safer-flag'.
7746         * lib/dup-safer-flag.c: New file, extracted from lib/dup-safer.c.
7747         * lib/dup-safer.c (dup_safer_flag): Remove function.
7748         * lib/fd-safer-flag.c: New file, extracted from lib/fd-safer.c.
7749         * lib/fd-safer.c (fd_safer_flag): Remove function.
7750         * lib/unistd-safer.h (dup_safer_flag, fd_safer_flag): Update condition.
7751         * modules/cloexec (configure.ac): Drop indicator macro.
7752         * modules/fd-safer-flag: New file.
7753         * modules/pipe2-safer (Depends-on): Add fd-safer-flag. Remove cloexec.
7754         * modules/stdlib-safer (Depends-on): Add fd-safer-flag.
7755         * modules/unistd-safer-tests (Depends-on): Add fd-safer-flag.
7756
7757 2009-12-11  Bruno Haible  <bruno@clisp.org>
7758
7759         Tests for module 'nl_langinfo'.
7760         * modules/nl_langinfo-tests: New file.
7761         * tests/test-nl_langinfo.sh: New file.
7762         * tests/test-nl_langinfo.c: New file.
7763
7764         New module 'nl_langinfo'.
7765         * lib/nl_langinfo.c: New file.
7766         * m4/nl_langinfo.m4: New file.
7767         * modules/nl_langinfo: New file.
7768         * doc/posix-functions/nl_langinfo.texi: Mention the new module.
7769
7770 2009-12-11  Bruno Haible  <bruno@clisp.org>
7771
7772         Tests for module 'langinfo'.
7773         * modules/langinfo-tests: New file.
7774         * tests/test-langinfo.c: New file.
7775
7776         New module 'langinfo'.
7777         * lib/langinfo.in.h: New file.
7778         * m4/langinfo_h.m4: New file.
7779         * modules/langinfo: New file.
7780         * doc/posix-headers/langinfo.texi: Mention the new module.
7781
7782 2009-12-11  Bruno Haible  <bruno@clisp.org>
7783
7784         * lib/config.charset: Untabify.
7785
7786 2009-12-11  Bruno Haible  <bruno@clisp.org>
7787
7788         * modules/unistd-safer (configure.ac): Drop indicator macro.
7789
7790 2009-12-11  Bruno Haible  <bruno@clisp.org>
7791
7792         Move pipe2-safer code to its own file.
7793         * lib/pipe2-safer.c: New file, extracted from lib/pipe-safer.c.
7794         * lib/pipe-safer.c (pipe2_safer): Remove function.
7795         * modules/pipe2-safer (Files): Add lib/pipe2-safer.c.
7796         (Makefile.am): Add it to lib_SOURCES.
7797
7798 2009-12-10  Bruno Haible  <bruno@clisp.org>
7799
7800         * lib/recvfrom.c (rpl_recvfrom): Allow the from argument to be NULL.
7801
7802 2009-12-10  Bruno Haible  <bruno@clisp.org>
7803
7804         Declare which arguments expect non-NULL values, for GCC and clang.
7805         * build-aux/arg-nonnull.h: New file.
7806         * modules/arg-nonnull: New file.
7807         * lib/arpa_inet.in.h (_GL_ARG_NONNULL): New placeholder.
7808         (inet_ntop, inet_pton): Use it.
7809         * lib/dirent.in.h (_GL_ARG_NONNULL): New placeholder.
7810         (closedir, dirfd, opendir, scandir, alphasort): Use it.
7811         * lib/fcntl.in.h (_GL_ARG_NONNULL): New placeholder.
7812         (open, openat): Use it.
7813         * lib/fnmatch.in.h (_GL_ARG_NONNULL): New placeholder.
7814         (fnmatch): Use it.
7815         * lib/getopt.in.h (_GL_ARG_NONNULL): New placeholder.
7816         (getopt, getopt_long, getopt_long_only): Use it.
7817         * lib/glob.in.h (_GL_ARG_NONNULL): New placeholder.
7818         * lib/glob-libc.h (glob, globfree, glob64, globfree64, glob_pattern_p):
7819         Use it.
7820         * lib/iconv.in.h (_GL_ARG_NONNULL): New placeholder.
7821         (iconv_open): Use it.
7822         * lib/inttypes.in.h (_GL_ARG_NONNULL): New placeholder.
7823         (strtoimax, strtoumax): Use it.
7824         * lib/locale.in.h (_GL_ARG_NONNULL): New placeholder.
7825         (duplocale): Use it.
7826         * lib/math.in.h (_GL_ARG_NONNULL): New placeholder.
7827         (frexp, frexpl): Use it.
7828         * lib/netdb.in.h (_GL_ARG_NONNULL): New placeholder.
7829         (getaddrinfo, freeaddrinfo, getnameinfo): Use it.
7830         * lib/search.in.h (_GL_ARG_NONNULL): New placeholder.
7831         (tsearch, tfind, tdelete, twalk): Use it.
7832         * lib/signal.in.h (_GL_ARG_NONNULL): New placeholder.
7833         (sigismember, sigemptyset, sigaddset, sigdelset, sigfillset,
7834         sigpending): Use it.
7835         * lib/spawn.in.h (_GL_ARG_NONNULL): New placeholder.
7836         (posix_spawn, posix_spawnp, posix_spawnattr_init,
7837         posix_spawnattr_destroy, posix_spawnattr_getsigdefault,
7838         posix_spawnattr_setsigdefault, posix_spawnattr_getsigmask,
7839         posix_spawnattr_setsigmask, posix_spawnattr_getflags,
7840         posix_spawnattr_setflags, posix_spawnattr_getpgroup,
7841         posix_spawnattr_setpgroup, posix_spawnattr_getschedpolicy,
7842         posix_spawnattr_setschedpolicy, posix_spawnattr_getschedparam,
7843         posix_spawnattr_setschedparam, posix_spawn_file_actions_init,
7844         posix_spawn_file_actions_destroy, posix_spawn_file_actions_addopen,
7845         posix_spawn_file_actions_addclose, posix_spawn_file_actions_adddup2):
7846         Use it.
7847         * lib/stdio.in.h (_GL_ARG_NONNULL): New placeholder.
7848         (dprintf, fclose, fopen, fprintf, fpurge, fputc, fputs, freopen,
7849         rpl_fseek, fseeko, rpl_ftell, ftello, fwrite, getdelim, getline,
7850         obstack_printf, obstack_vprintf, popen, printf, putc, puts, remove,
7851         rename, renameat, snprintf, sprintf, asprintf, vasprintf, vdprintf,
7852         vfprintf, vprintf, vsnprintf, vsprintf): Use it.
7853         * lib/stdlib.in.h (_GL_ARG_NONNULL): New placeholder.
7854         (atoll, canonicalize_file_name, getloadavg, getsubopt, mkdtemp,
7855         mkostemp, mkostemps, mkstemp, mkstemps, putenv, srandom_r, initstate_r,
7856         setstate_r, random_r, realpath, rpmatch, setenv, strtod, strtoll,
7857         strtoull, unsetenv): Use it.
7858         * lib/string.in.h (_GL_ARG_NONNULL): New placeholder.
7859         (memchr, memmem, mempcpy, memrchr, rawmemchr, stpcpy, stpncpy,
7860         strchrnul, strdup, strndup, strnlen, strpbrk, strsep, strstr,
7861         strcasestr, strtok_r, mbslen, mbsnlen, mbschr, mbsrchr, mbsstr,
7862         mbscasecmp, mbsncasecmp, mbspcasecmp, mbscasestr, mbscspn, mbspbrk,
7863         mbsspn, mbssep, mbstok_r, strverscmp): Use it.
7864         * lib/strings.in.h (_GL_ARG_NONNULL): New placeholder.
7865         (strcasecmp, strncasecmp): Use it.
7866         * lib/sys_socket.in.h (_GL_ARG_NONNULL): New placeholder.
7867         (rpl_connect, rpl_bind, rpl_getpeername, rpl_getsockname,
7868         rpl_getsockopt, rpl_recv, rpl_send, rpl_recvfrom, rpl_sendto,
7869         rpl_setsockopt): Use it.
7870         * lib/sys_stat.in.h (_GL_ARG_NONNULL): New placeholder.
7871         (fchmodat, fstat, fstatat, lchmod, rpl_lstat, mkdir, mkdirat, mkfifo,
7872         mkfifoat, mknod, mknodat, stat, utimensat): Use it.
7873         * lib/sys_time.in.h (_GL_ARG_NONNULL): New placeholder.
7874         (gettimeofday): Use it.
7875         * lib/sys_times.in.h (_GL_ARG_NONNULL): New placeholder.
7876         (times): Use it.
7877         * lib/sys_utsname.in.h (_GL_ARG_NONNULL): New placeholder.
7878         (uname): Use it.
7879         * lib/time.in.h (_GL_ARG_NONNULL): New placeholder.
7880         (nanosleep, mktime, localtime_r, gmtime_r, strptime, timegm): Use it.
7881         * lib/unistd.in.h (_GL_ARG_NONNULL): New placeholder.
7882         (chown, euidaccess, faccessat, _gl_register_fd, fchownat,
7883         getdomainname, gethostname, getlogin_r, lchown, link, linkat, pipe2,
7884         pread, readlink, readlinkat, rmdir, symlink, symlinkat, unlink,
7885         unlinkat, write): Use it.
7886         * lib/wchar.in.h (_GL_ARG_NONNULL): New placeholder.
7887         (mbsrtowcs, mbsnrtowcs, wcsrtombs, wcsnrtombs): Use it.
7888         * lib/argv-iter.h: Include arg-nonnull.h.
7889         (_ATTRIBUTE_NONNULL_): Remove macro.
7890         (argv_iter_init_argv, argv_iter_init_stream, argv_iter,
7891         argv_iter_n_args, argv_iter_free): Use _GL_ARG_NONNULL.
7892         * lib/canonicalize-lgpl.c (_GL_ARG_NONNULL): Define, to defeat gcc
7893         optimization.
7894         * lib/getaddrinfo.c (_GL_ARG_NONNULL): Likewise.
7895         * lib/getdelim.c (_GL_ARG_NONNULL): Likewise.
7896         * lib/glob.c (_GL_ARG_NONNULL): Likewise.
7897         * lib/random_r.c (_GL_ARG_NONNULL): Likewise.
7898         * lib/setenv.c (_GL_ARG_NONNULL): Likewise.
7899         * lib/strtod.c (_GL_ARG_NONNULL): Likewise.
7900         * lib/tsearch.c (_GL_ARG_NONNULL): Likewise.
7901         * lib/unsetenv.c (_GL_ARG_NONNULL): Likewise.
7902         * modules/arpa_inet (Depends-on): Add arg-nonnull.
7903         (Makefile.am): Insert arg-nonnull.h into arpa/inet.h.
7904         * modules/dirent (Depends-on): Add arg-nonnull.
7905         (Makefile.am): Insert arg-nonnull.h into dirent.h.
7906         * modules/fcntl-h (Depends-on): Add arg-nonnull.
7907         (Makefile.am): Insert arg-nonnull.h into fcntl.h.
7908         * modules/fnmatch (Depends-on): Add arg-nonnull.
7909         (Makefile.am): Insert arg-nonnull.h into fnmatch.h.
7910         * modules/getopt-posix (Depends-on): Add arg-nonnull.
7911         (Makefile.am): Insert arg-nonnull.h into getopt.h.
7912         * modules/glob (Depends-on): Add arg-nonnull.
7913         (Makefile.am): Insert arg-nonnull.h into glob.h.
7914         * modules/iconv_open (Depends-on): Add arg-nonnull.
7915         (Makefile.am): Insert arg-nonnull.h into iconv.h.
7916         * modules/inttypes (Depends-on): Add arg-nonnull.
7917         (Makefile.am): Insert arg-nonnull.h into inttypes.h.
7918         * modules/locale (Depends-on): Add arg-nonnull.
7919         (Makefile.am): Insert arg-nonnull.h into locale.h.
7920         * modules/math (Depends-on): Add arg-nonnull.
7921         (Makefile.am): Insert arg-nonnull.h into math.h.
7922         * modules/netdb (Depends-on): Add arg-nonnull.
7923         (Makefile.am): Insert arg-nonnull.h into netdb.h.
7924         * modules/search (Depends-on): Add arg-nonnull.
7925         (Makefile.am): Insert arg-nonnull.h into search.h.
7926         * modules/signal (Depends-on): Add arg-nonnull.
7927         (Makefile.am): Insert arg-nonnull.h into signal.h.
7928         * modules/spawn (Depends-on): Add arg-nonnull.
7929         (Makefile.am): Insert arg-nonnull.h into spawn.h.
7930         * modules/stdio (Depends-on): Add arg-nonnull.
7931         (Makefile.am): Insert arg-nonnull.h into stdio.h.
7932         * modules/stdlib (Depends-on): Add arg-nonnull.
7933         (Makefile.am): Insert arg-nonnull.h into stdlib.h.
7934         * modules/string (Depends-on): Add arg-nonnull.
7935         (Makefile.am): Insert arg-nonnull.h into string.h.
7936         * modules/strings (Depends-on): Add arg-nonnull.
7937         (Makefile.am): Insert arg-nonnull.h into strings.h.
7938         * modules/sys_socket (Depends-on): Add arg-nonnull.
7939         (Makefile.am): Insert arg-nonnull.h into sys/socket.h.
7940         * modules/sys_stat (Depends-on): Add arg-nonnull.
7941         (Makefile.am): Insert arg-nonnull.h into sys/stat.h.
7942         * modules/sys_time (Depends-on): Add arg-nonnull.
7943         (Makefile.am): Insert arg-nonnull.h into sys/time.h.
7944         * modules/sys_times (Depends-on): Add arg-nonnull.
7945         (Makefile.am): Insert arg-nonnull.h into sys/times.h.
7946         * modules/sys_utsname (Depends-on): Add arg-nonnull.
7947         (Makefile.am): Insert arg-nonnull.h into sys/utsname.h.
7948         * modules/time (Depends-on): Add arg-nonnull.
7949         (Makefile.am): Insert arg-nonnull.h into time.h.
7950         * modules/unistd (Depends-on): Add arg-nonnull.
7951         (Makefile.am): Insert arg-nonnull.h into unistd.h.
7952         * modules/wchar (Depends-on): Add arg-nonnull.
7953         (Makefile.am): Insert arg-nonnull.h into wchar.h.
7954         * modules/argv-iter (Depends-on): Add arg-nonnull.
7955         * tests/test-canonicalize.c (null_ptr): New function.
7956         (main): Use it.
7957         * tests/test-canonicalize-lgpl.c (null_ptr): New function.
7958         (main): Use it.
7959         * tests/test-memmem.c (null_ptr): New function.
7960         (main): Use it.
7961         Reported by Jim Meyering.
7962
7963 2009-12-10  Bruno Haible  <bruno@clisp.org>
7964
7965         Use spaces for indentation, not tabs.
7966         * lib/**/*.[hcy] except lib/reg*.[hc]: Untabify.
7967         * m4/*.m4: Untabify.
7968         * build-aux/*.h: Untabify.
7969         * tests/**/*.[hc]: Untabify.
7970         * README: New section "Indent with spaces, not TABs", based on
7971         coreutils/HACKING and comments by Pádraig Brady and Paolo Bonzini.
7972         * NEWS: Mention the change.
7973
7974 2009-12-10  Bruno Haible  <bruno@clisp.org>
7975
7976         pty test: Fix link error.
7977         * modules/pty-tests (Makefile.am): Add the default LDADD value to
7978         test_pty_LDADD.
7979
7980 2009-12-07  Simon Josefsson  <simon@josefsson.org>
7981
7982         * modules/pty: New file.
7983         * modules/pty-tests: New file.
7984         * m4/pty.m4: New file.
7985         * tests/test-pty.c: New file.
7986         * doc/glibc-headers/pty.texi: Modified.
7987         * doc/glibc-functions/forkpty.texi: Modified.
7988         * doc/glibc-functions/openpty.texi: Modified.
7989
7990 2009-12-10  Bruno Haible  <bruno@clisp.org>
7991
7992         Avoid syntax error in C++ mode.
7993         * lib/stdio.in.h (rename): Don't use parameter name 'new'.
7994
7995 2009-12-10  Bruno Haible  <bruno@clisp.org>
7996
7997         Use sed with option -e.
7998         * gnulib-tool (func_version, func_emit_copyright_notice,
7999         func_emit_initmacro_end, func_import, func_create_testdir): Pass
8000         option -e to sed.
8001         * modules/link-warning (Makefile.am): Likewise.
8002
8003 2009-12-10  Jim Meyering  <meyering@redhat.com>
8004
8005         mgetgroups: do not write bytes beyond end of malloc'd buffer
8006         * lib/mgetgroups.c: Fix an off-by-one error.  When we have no
8007         username, we call getgroups with a one-element-shorter buffer,
8008         but still told it the length was original, max_n_groups.
8009
8010 2009-12-09  Eric Blake  <ebb9@byu.net>
8011
8012         cloexec: relax license
8013         * modules/cloexec (Maintainer): Add myself.
8014         (License): Use LGPL, not GPL.
8015
8016         link-warning: optimize generation
8017         * modules/link-warning (Makefile.am): Reduce process usage.
8018
8019 2009-12-09  Bruno Haible  <bruno@clisp.org>
8020
8021         * doc/posix-functions/unsetenv.texi: Mention Solaris 10 bug for which a
8022         workaround was added on 2009-11-17.
8023
8024 2009-12-09  Jim Meyering  <meyering@redhat.com>
8025             Bruno Haible  <bruno@clisp.org>
8026
8027         link-warning: Allow extra lines at the top of build-aux/link-warning.h.
8028         * modules/link-warning (Makefile.am): Make the comment-removing sed
8029         command more robust in the face of bootstrap-prepended comment lines.
8030
8031 2009-12-09  Bruno Haible  <bruno@clisp.org>
8032
8033         * lib/mgetgroups.c (mgetgroups): Don't remove duplicates if there is at
8034         most one group.
8035
8036 2009-12-09  Simon Josefsson <simon@josefsson.org>
8037             Bruno Haible  <bruno@clisp.org>
8038
8039         * build-aux/link-warning.h: Add copyright notice.
8040         * modules/link-warning (Makefile.am): Generate link-warning.h from
8041         build-aux/link-warning.h. Update LINK_WARNING_H accordingly.
8042         * NEWS: Mention change in link-warning module.
8043         * modules/arpa_inet (Makefile.am): Add dependency to arpa/inet.h.
8044         * modules/dirent (Makefile.am): Add dependency to dirent.h.
8045         * modules/fcntl-h (Makefile.am): Add dependency to fcntl.h.
8046         * modules/getopt-posix (Makefile.am): Add dependency to getopt.h.
8047         * modules/inttypes (Makefile.am): Add dependency to inttypes.h.
8048         * modules/math (Makefile.am): Add dependency to math.h.
8049         * modules/search (Makefile.am): Add dependency to search.h.
8050         * modules/signal (Makefile.am): Add dependency to signal.h.
8051         * modules/spawn (Makefile.am): Add dependency to spawn.h.
8052         * modules/stdio (Makefile.am): Add dependency to stdio.h.
8053         * modules/stdlib (Makefile.am): Add dependency to stdlib.h.
8054         * modules/string (Makefile.am): Add dependency to string.h.
8055         * modules/strings (Makefile.am): Add dependency to strings.h.
8056         * modules/sys_ioctl (Makefile.am): Add dependency to sys/ioctl.h.
8057         * modules/sys_select (Makefile.am): Add dependency to sys/select.h.
8058         * modules/sys_socket (Makefile.am): Add dependency to sys/socket.h.
8059         * modules/sys_stat (Makefile.am): Add dependency to sys/stat.h.
8060         * modules/sys_times (Makefile.am): Add dependency to sys/times.h.
8061         * modules/sys_utsname (Makefile.am): Add dependency to sys/utsname.h.
8062         * modules/sys_wait (Makefile.am): Add dependency to sys/wait.h.
8063         * modules/unistd (Makefile.am): Add dependency to unistd.h.
8064         * modules/wchar (Makefile.am): Add dependency to wchar.h.
8065
8066 2009-12-09  Bruno Haible  <bruno@clisp.org>
8067
8068         fchdir: Optimize away rpl_fstat when possible.
8069         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Set REPLACE_FSTAT only together with
8070         REPLACE_OPEN_DIRECTORY.
8071         * lib/fchdir.c (rpl_fstat): Define only when REPLACE_OPEN_DIRECTORY.
8072
8073 2009-12-09  Bruno Haible  <bruno@clisp.org>
8074
8075         * lib/fchdir.c: Update comment.
8076
8077 2009-12-09  Bruno Haible  <bruno@clisp.org>
8078
8079         * lib/cloexec.c (set_cloexec_flag): Clarify intent of dup2 call.
8080
8081 2009-12-08  Eric Blake  <ebb9@byu.net>
8082
8083         fchdir: avoid memory leak on re-registration.
8084         * lib/fchdir.c (ensure_dirs_slot): Avoid memory leak.
8085
8086 2009-12-08  Jim Meyering  <meyering@redhat.com>
8087
8088         init.sh: avoid Solaris 10 /bin/sh portability problem
8089         Solaris 10's /bin/sh does not pass '.' arguments 2.. to the
8090         sourced script:
8091           $ printf 'echo "$@"\n' > f; /bin/sh -c '. ./f bar'
8092           $ printf 'echo "$@"\n' > f; /bin/bash -c '. ./f bar'
8093           bar
8094         tests/init.sh relied on that, accepting a --set-path=DIR argument,
8095         and two tests used that idiom.
8096         * tests/init.sh: Update suggested usage comments.
8097         (path_prepend_): New function, to be used in place
8098         of the --src-path=DIR option.
8099         (setup_): Move PATH-prepending code into path_prepend_.
8100         * tests/test-pread.sh: Adapt to new usage.
8101         * tests/test-xalloc-die.sh: Likewise.
8102
8103 2009-12-08  Simon Josefsson  <simon@josefsson.org>
8104
8105         * doc/gnulib.texi (Glibc pty.h): Add.
8106         * doc/glibc-functions/forkpty.texi: Add.
8107         * doc/glibc-functions/openpty.texi: Add.
8108         Suggested by Bruno Haible.
8109
8110 2009-12-08  Eric Blake  <ebb9@byu.net>
8111
8112         fchdir: fix logic bugs
8113         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Fix logic bug.
8114         * tests/test-fchdir.c (main): Enhance test.
8115         * lib/fchdir.c (rpl_fstat): Always provide if fchdir replacement
8116         is in use.
8117
8118         dup2: fix logic bugs
8119         * lib/dup2.c (dup2): Fix logic bugs.  Use HAVE_DUP2 rather than
8120         REPLACE_DUP2 to decide when rpl_dup2 is needed.
8121         * m4/dup2.m4 (gl_REPLACE_DUP2): Only define REPLACE_DUP2 when dup2
8122         exists.
8123         (gl_FUNC_DUP2): Drop unneeded AC_DEFINE.
8124
8125 2009-12-07  Eric Blake  <ebb9@byu.net>
8126
8127         unlink: fix m4 detection
8128         * m4/unlink.m4 (gl_FUNC_UNLINK): Include correct header.
8129
8130         unistd-safer: add unit test
8131         * modules/unistd-safer-tests: New file.
8132         * tests/test-dup-safer.c: Likewise.
8133         * tests/test-cloexec.c (setmode): Avoid compiler warning.
8134         * tests/test-dup2.c (setmode): Likewise.
8135         * lib/cloexec.c (dup_cloexec): Fix mingw compile error.
8136
8137         cloexec: preserve text vs. binary across dup_cloexec
8138         * lib/cloexec.c (dup_cloexec) [W32]: Query and use translation
8139         mode.
8140         * modules/dup2-tests (Depends-on): Add binary-io.
8141         * modules/cloexec-tests (Depends-on): Likewise.
8142         * tests/test-dup2.c (setmode, is_mode): New helpers.
8143         (main): Add tests that translation mode is preserved.
8144         * tests/test-cloexec.c (setmode, is_mode, main): Likewise.
8145         Reported by Bruno Haible.
8146
8147         mgetgroups: reduce duplicate listings
8148         * lib/mgetgroups.c (mgetgroups): Reduce duplicates from the
8149         resulting array.
8150         * tests/test-chown.h (test_chown): Simplify client.
8151         * tests/test-lchown.h (test_lchown): Likewise.
8152
8153 2009-12-06  Bruno Haible  <bruno@clisp.org>
8154
8155         * lib/cloexec.c (dup_cloexec): Fix handling of _gl_register_dup return
8156         value.
8157
8158 2009-12-06  Bruno Haible  <bruno@clisp.org>
8159
8160         * lib/progname.c: Include stdio.h, stdlib.h.
8161         (set_program_name): Reject a NULL argument.
8162
8163 2009-12-05  Eric Blake  <ebb9@byu.net>
8164
8165         pipe2-safer: new module
8166         * modules/pipe2-safer: New file.
8167         * lib/unistd-safer.h (pipe2_safer): New prototype.
8168         * lib/unistd--.h (pipe2): New wrapper.
8169         * lib/pipe-safer.c (pipe2_safer): New function.
8170         * modules/pipe (Depends-on): Add pipe2-safer.
8171         * lib/pipe.c (create_pipe) [WIN32]: Let pipe2_safer do the work.
8172
8173         stdlib-safer: preserve cloexec flag for mkostemp[s]
8174         * lib/mkstemp-safer.c (mkostemp_safer, mkostemps_safer): Use new
8175         fd_safer_flag.
8176
8177         unistd-safer: allow preservation of cloexec status via flag
8178         * lib/unistd-safer.h (dup_safer_flag, fd_safer_flag): New
8179         prototypes.
8180         * lib/dup-safer.c (dup_safer_flag): New function.
8181         * lib/fd-safer.c (fd_safer_flag): Likewise.
8182         * modules/cloexec (configure.ac): Set witness.
8183
8184         test-dup2: enhance test
8185         * modules/dup2-tests (Depends-on): Add cloexec.
8186         * tests/test-dup2.c (main): Enhance test.
8187
8188         cloexec: add dup_cloexec
8189         * lib/cloexec.h (dup_cloexec): New prototype.  Add copyright
8190         header and comments.
8191         * lib/cloexec.c (set_cloexec_flag): Add comments.
8192         (dup_cloexec): New function, with mingw implementation borrowed
8193         from...
8194         * lib/w32spawn.h (dup_noinherit): ...here.
8195         * modules/execute (Depends-on): Add cloexec.
8196         * modules/pipe (Depends-on): Likewise.
8197         * modules/cloexec (Depends-on): Add dup2.
8198         * modules/cloexec-tests (Files): New file.
8199         * tests/test-cloexec.c: Likewise.
8200
8201         test-xalloc-die: fix test for mingw
8202         * modules/xalloc-die-tests (Files): Add tests/init.sh.
8203         * tests/test-xalloc-die.sh: Rewrite to use init.sh.  Strip
8204         directory and .exe suffix off argv[0] output.
8205
8206         test-fseeko: fix test for mingw
8207         * tests/test-fseeko.c (fseek): Redefine GL_LINK_WARNING, rather
8208         than undefining fseek, so test will pass on mingw.
8209
8210 2009-12-05  Bruno Haible  <bruno@clisp.org>
8211
8212         * lib/progname.h (set_program_name): Clarify specification.
8213         * lib/progname.c (set_program_name): Likewise.
8214         Reported by Jim Meyering.
8215
8216 2009-12-05  Jim Meyering  <meyering@redhat.com>
8217
8218         maint.mk: backslash-escape parens in default regexp
8219         * top/maint.mk (news-check-regexp): Now that we're using grep -E,
8220         backslash-escape the literal parentheses.
8221
8222         maint.mk: news-date-check: use grep -E
8223         * top/maint.mk (today): Define a Make variable, not a...
8224         (news-date-check): ...shell variable.
8225         (news-date-regexp): Use the Make variable.
8226         Use grep's -E option.  Change the failing diagnostic to mention
8227         the variable, $(news-date-regexp).
8228
8229 2009-12-04  Alfred M. Szmidt  <ams@gnu.org>
8230
8231         maintainer-makefile: allow customization of NEWS entry format
8232         * top/maint.mk (news-date-regexp): New overridable variable.
8233         (news-date-check): Use it.
8234
8235 2009-12-04  Eric Blake  <ebb9@byu.net>
8236
8237         mgetgroups: add xgetgroups, and avoid ENOSYS failures
8238         * lib/mgetgroups.h (xgetgroups): New prototype.
8239         * lib/mgetgroups.c (xgetgroups): New wrapper.
8240         (mgetgroups): Handle ENOSYS.
8241         * modules/mgetgroups (Depends-on): Add realloc.
8242         Reported by Scott Harrison <scott.gnu.2009@scottrix.co.uk>.
8243
8244         mgetgroups: avoid argument promotion issues with -1
8245         * lib/mgetgroups.c (mgetgroups): A cast is required when checking
8246         for invalid gid_t.
8247         * tests/test-chown.h (getegid, test_chown): Likewise.
8248         * tests/test-lchown.h (getegid, test_lchown): Likewise.
8249
8250 2009-12-03  Paolo Bonzini  <bonzini@gnu.org>
8251
8252         exclude: Fix header file problems.
8253         * lib/exclude.h: Add multiple inclusion guards and include stdbool.h.
8254
8255 2009-12-01  Jim Meyering  <meyering@redhat.com>
8256
8257         fts: fts_open: do not let an empty string cause immediate failure
8258         This is required in support of GNU rm, for which the command
8259         "rm A '' B" must process and remove both A and B, in spite of
8260         the empty string argument.
8261         * lib/fts.c (fts_open): Do not let the presence of an empty string
8262         cause fts_open to fail immediately.  Most fts-using tools must be
8263         able to process all arguments, in order, and can be expected to
8264         diagnose such arguments themselves.
8265
8266 2009-11-30  Eric Blake  <ebb9@byu.net>
8267
8268         utimens: fix compilation error
8269         * lib/utimens.c (lutimens) [!HAVE_UTIMENSAT && HAVE_LUTIMES]:
8270         Declare variable at right scope.
8271
8272 2009-11-29  Jim Meyering  <meyering@redhat.com>
8273
8274         bootstrap: handle perl-5.11's changed --version output
8275         * build-aux/bootstrap (get_version): Handle perl separately,
8276         since perl-5.11's --version output is different.
8277
8278 2009-11-28  Jim Meyering  <meyering@redhat.com>
8279
8280         userspec: depend on the inttostr module, too
8281         * modules/userspec (Depends-on): Add inttostr.
8282
8283         userspec: disallow an ID that maps to (uid_t)-1 or (gid_t)-1
8284         * lib/userspec.c (parse_with_separator): Do not accept a user ID
8285         number of MAXUID when it evaluates to (uid_t) -1.
8286         Likewise for group ID.  Reported by Matt McCutchen in
8287         <http://savannah.gnu.org/bugs/?28113>
8288
8289         userspec: reformat to use spaces, not TABs
8290         * lib/userspec.c: Expand TABs to spaces.
8291         Add Emacs' "indent-tabs-mode: nil" hint.
8292
8293 2009-11-27  Eric Blake  <ebb9@byu.net>
8294
8295         getopt-gnu: flush out another BSD bug
8296         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Test for the bug.
8297         * tests/test-getopt.c (main): Check POSIXLY_CORRECT first, to
8298         flush out BSD bug.
8299         * tests/test-getopt.h (test_getopt): End lists with NULL.
8300         * tests/test-getopt_long.h (test_getopt_long): Likewise.
8301         (test_getopt_long_posix): Enhance test.
8302         * modules/getopt-posix-tests (Depends-on): Add stdbool.
8303         * doc/glibc-functions/getopt_long.texi (getopt_long): Mention
8304         getopt-gnu.
8305         * doc/glibc-functions/getopt_long_only.texi (getopt_long_only):
8306         Likewise.
8307
8308 2009-11-27  Simon Josefsson  <simon@josefsson.org>
8309
8310         * modules/idpriv-droptemp-tests (Notice): Fix text.
8311
8312 2009-11-27  Jim Meyering  <meyering@redhat.com>
8313
8314         test-xalloc-die: avoid spurious failure due to libtool argv difference
8315         In a libtool-enabled project, this test would fail due to a difference
8316         in the emitted program name, e.g.,
8317         -test-xalloc-die: memory exhausted
8318         +/tmp/.../tests/.libs/lt-test-xalloc-die: memory exhausted
8319         Use program to avoid that.
8320         * modules/xalloc-die-tests (Depends-on): Add progname.
8321         * tests/test-xalloc-die.c: Include progname.h".
8322         (program_name): Remove decl.
8323         (main): Call set_program_name.
8324         * tests/test-xalloc-die.sh (compare): Remove unnecessary ${EXE}.
8325
8326 2009-11-26  Richard Jones  <rjones@redhat.com>
8327
8328         w32sock: leave win32 error in place.
8329         * lib/w32sock.h (set_winsock_errno): Do not call WSASetLastError.
8330
8331 2009-11-26  Eric Blake  <ebb9@byu.net>
8332
8333         init.sh: suggest to use skip_ and fail_ functions in comments
8334         * tests/init.sh: Add a sentence.
8335
8336 2009-11-25  Bruno Haible  <bruno@clisp.org>
8337
8338         init.sh: add documentation in comments
8339         * tests/init.sh: Add some developer and user documentation.
8340
8341 2009-11-26  Jim Meyering  <meyering@redhat.com>
8342
8343         init.sh: accommodate even those who specify bogus srcdir manually
8344         * tests/init.sh: Normally, srcdir is guaranteed by automake and
8345         configure-time tests to be sanitized, so that there is no need to
8346         use "$srcdir" in Makefile rules and shell scripts.  Using $srcdir
8347         (with no double quotes) suffices.  However, since tests may be
8348         invoked manually, and since you may explicitly set srcdir to the
8349         name of a directory containing spaces, do quote its uses here.
8350         * tests/test-pread.sh: Likewise.
8351         Suggested by Bruno Haible.
8352
8353         test-pread.sh: avoid diagnostics for those who ignore SIGPIPE
8354         * tests/test-pread.sh: Write no data into the pipe, because
8355         test-pread actually reads none.  This avoids a diagnostic,
8356         "bash: echo: write error: Broken pipe", that arises in the unusual
8357         event something is ignoring SIGPIPE, and might be interpreted
8358         as some sort of failure.  Reported by Bruno Haible.
8359
8360 2009-11-25  Jim Meyering  <meyering@redhat.com>
8361
8362         test-pread: cover failure with ESPIPE and EINVAL
8363         * tests/test-pread.c (main): Test for failure, too.
8364         * tests/test-pread.sh: Invoke with stdin on a pipe.
8365         Suggested by Eric Blake.
8366
8367         pread: improvement and fix
8368         * modules/pread (Depends-on): Depend on lseek, for portability to
8369         e.g., mingw.  Suggested by Eric Blake.
8370         * lib/pread.c (__libc_read): Define.  Reported by Richard W.M. Jones.
8371
8372         unistd.in.h: correct declaration of pread
8373         * lib/unistd.in.h: Correct type of "buf" parameter: void*, not char*
8374         Reported by Richard W.M. Jones.
8375
8376         test-pread.sh: distribute the test script
8377         * modules/pread-tests (Files): Include test-pread.sh.
8378
8379         test-pread.sh: clean up
8380         * tests/test-pread.sh: Don't refer to $builddir. Just use equivalent ".".
8381         * modules/pread-tests (TESTS_ENVIRONMENT): Don't export builddir.
8382         That is unnecessary, since it's always ".".
8383         Suggestion from Eric Blake.
8384
8385         test-pread.sh: make executable
8386         * tests/test-pread.sh: Set executable bit.
8387         Reported by Eric Blake.
8388
8389         correct typo in test-pread.sh
8390         * tests/test-pread.sh: Add #! line.
8391
8392         test pread
8393         * tests/test-pread.c: New file.
8394         * tests/test-pread.sh: Likewise.
8395         * modules/pread-tests: Likewise.
8396
8397         pread: new module
8398         * modules/pread: New file.
8399         * lib/unistd.in.h (pread): Define/declare.
8400         * lib/pread.c (pread): New file.
8401         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Define defaults.
8402         * modules/unistd (Makefile.am): Substitute witnesses.
8403         * doc/posix-functions/pread.texi (pread): Update.
8404         * MODULES.html.sh: Add pread.
8405
8406 2009-11-25  Jim Meyering  <meyering@redhat.com>
8407
8408         tests/init.sh: new file to be used via most *.sh tests
8409         * tests/init.sh: New file.
8410
8411 2009-11-25  Eric Blake  <ebb9@byu.net>
8412
8413         utimens: work around older Linux failure with symlinks
8414         * lib/utimens.c (lutimensat_works_really): New variable.
8415         (fdutimens, lutimens): Use it to manage kernels that support
8416         nanosecond times on files, but not on symlinks.
8417         Reported by Ondřej Vašík.
8418
8419         utimes: fix configure grammar
8420         * m4/utimes.m4 (gl_FUNC_UTIMES): Delete spurious word.
8421
8422 2009-11-25  Paolo Bonzini  <bonzini@gnu.org>
8423
8424         regex: Fix fastmap for multibyte character ranges.
8425         * lib/regcomp.c (re_compute_fastmap_iter): Add all multibyte lead
8426         characters when a multibyte character range is included.
8427
8428 2009-11-22  Andy Wingo  <wingo@pobox.com>
8429
8430         version-etc: work also with AM_INIT_AUTOMAKE's no-define option
8431         * lib/version-etc.c [!defined PACKAGE]: Define to PACKAGE_TARNAME.
8432
8433 2009-11-24  Bruno Haible  <bruno@clisp.org>
8434
8435         doc: Most *_l functions exist in MacOS X 10.5.
8436         * doc/posix-functions/duplocale.texi: Update platforms list.
8437         * doc/posix-functions/freelocale.texi: Likewise.
8438         * doc/posix-functions/newlocale.texi: Likewise.
8439         * doc/posix-functions/uselocale.texi: Likewise.
8440         * doc/posix-functions/isalnum_l.texi: Likewise.
8441         * doc/posix-functions/isalpha_l.texi: Likewise.
8442         * doc/posix-functions/isblank_l.texi: Likewise.
8443         * doc/posix-functions/iscntrl_l.texi: Likewise.
8444         * doc/posix-functions/isdigit_l.texi: Likewise.
8445         * doc/posix-functions/isgraph_l.texi: Likewise.
8446         * doc/posix-functions/islower_l.texi: Likewise.
8447         * doc/posix-functions/isprint_l.texi: Likewise.
8448         * doc/posix-functions/ispunct_l.texi: Likewise.
8449         * doc/posix-functions/isspace_l.texi: Likewise.
8450         * doc/posix-functions/isupper_l.texi: Likewise.
8451         * doc/posix-functions/iswalnum_l.texi: Likewise.
8452         * doc/posix-functions/iswalpha_l.texi: Likewise.
8453         * doc/posix-functions/iswblank_l.texi: Likewise.
8454         * doc/posix-functions/iswcntrl_l.texi: Likewise.
8455         * doc/posix-functions/iswctype_l.texi: Likewise.
8456         * doc/posix-functions/iswdigit_l.texi: Likewise.
8457         * doc/posix-functions/iswgraph_l.texi: Likewise.
8458         * doc/posix-functions/iswlower_l.texi: Likewise.
8459         * doc/posix-functions/iswprint_l.texi: Likewise.
8460         * doc/posix-functions/iswpunct_l.texi: Likewise.
8461         * doc/posix-functions/iswspace_l.texi: Likewise.
8462         * doc/posix-functions/iswupper_l.texi: Likewise.
8463         * doc/posix-functions/iswxdigit_l.texi: Likewise.
8464         * doc/posix-functions/isxdigit_l.texi: Likewise.
8465         * doc/posix-functions/nl_langinfo_l.texi: Likewise.
8466         * doc/posix-functions/strcasecmp_l.texi: Likewise.
8467         * doc/posix-functions/strcoll_l.texi: Likewise.
8468         * doc/posix-functions/strfmon_l.texi: Likewise.
8469         * doc/posix-functions/strftime_l.texi: Likewise.
8470         * doc/posix-functions/strncasecmp_l.texi: Likewise.
8471         * doc/posix-functions/strxfrm_l.texi: Likewise.
8472         * doc/posix-functions/tolower_l.texi: Likewise.
8473         * doc/posix-functions/toupper_l.texi: Likewise.
8474         * doc/posix-functions/towctrans_l.texi: Likewise.
8475         * doc/posix-functions/towlower_l.texi: Likewise.
8476         * doc/posix-functions/towupper_l.texi: Likewise.
8477         * doc/posix-functions/wcscoll_l.texi: Likewise.
8478         * doc/posix-functions/wcsxfrm_l.texi: Likewise.
8479         * doc/posix-functions/wctrans_l.texi: Likewise.
8480         * doc/posix-functions/wctype_l.texi: Likewise.
8481         * doc/glibc-functions/strptime_l.texi: Likewise.
8482         * doc/glibc-functions/strtod_l.texi: Likewise.
8483         * doc/glibc-functions/strtof_l.texi: Likewise.
8484         * doc/glibc-functions/strtol_l.texi: Likewise.
8485         * doc/glibc-functions/strtold_l.texi: Likewise.
8486         * doc/glibc-functions/strtoll_l.texi: Likewise.
8487         * doc/glibc-functions/strtoul_l.texi: Likewise.
8488         * doc/glibc-functions/strtoull_l.texi: Likewise.
8489         * doc/glibc-functions/wcsftime_l.texi: Likewise.
8490         * doc/glibc-functions/wcstod_l.texi: Likewise.
8491         * doc/glibc-functions/wcstof_l.texi: Likewise.
8492         * doc/glibc-functions/wcstol_l.texi: Likewise.
8493         * doc/glibc-functions/wcstold_l.texi: Likewise.
8494         * doc/glibc-functions/wcstoll_l.texi: Likewise.
8495         * doc/glibc-functions/wcstoul_l.texi: Likewise.
8496         * doc/glibc-functions/wcstoull_l.texi: Likewise.
8497
8498 2009-11-24  Bruno Haible  <bruno@clisp.org>
8499
8500         duplocale: Fix logic bug.
8501         * lib/duplocale.c: Don't include <langinfo.h>.
8502         (_NL_LOCALE_NAME): Remove macro.
8503         (rpl_duplocale): Use setlocale instead of nl_langinfo.
8504         * tests/test-duplocale.c (main): Also test duplocale after uselocale.
8505
8506 2009-11-23  Jim Meyering  <meyering@redhat.com>
8507
8508         test-update-copyright: don't hard-code /usr/bin/perl
8509         * tests/test-update-copyright.sh (YEAR): Use date +%Y, rather than
8510         perl to print the current year.  Gilles Espinasse reported that
8511         the replaced use of perl was hard-coded as /usr/bin/perl.
8512
8513 2009-11-23  Bruno Haible  <bruno@clisp.org>
8514
8515         duplocale: Add support for glibc 2.3.x.
8516         * lib/duplocale.c (rpl_duplocale): Add fallback code for glibc 2.3.x.
8517
8518 2009-11-22  Bruno Haible  <bruno@clisp.org>
8519
8520         vasnprintf: Tiny optimization.
8521         * lib/vasnprintf.c (decimal_point_char): Choose the fast path also on
8522         MacOS X.
8523
8524 2009-11-22  Bruno Haible  <bruno@clisp.org>
8525
8526         Tests for module 'duplocale'.
8527         * modules/duplocale-tests: New file.
8528         * tests/test-duplocale.c: New file.
8529
8530         New module 'duplocale'.
8531         * m4/duplocale.m4: New file.
8532         * lib/locale.in.h (duplocale): New declaration.
8533         * lib/duplocale.c: New file.
8534         * m4/locale_h.m4 (gl_REPLACE_LOCALE_H, gl_LOCALE_MODULE_INDICATOR,
8535         gl_LOCALE_H_DEFAULTS): New macros.
8536         (gl_LOCALE_H): Require gl_LOCALE_H_DEFAULTS. Invoke
8537         gl_CHECK_NEXT_HEADERS unconditionally. Invoke gl_REPLACE_LOCALE_H.
8538         * modules/locale (Makefile.am): Substitute also GNULIB_DUPLOCALE,
8539         REPLACE_DUPLOCALE.
8540         * modules/duplocale: New file.
8541         * doc/posix-functions/duplocale.texi: Mention the glibc bug.
8542
8543 2009-11-22  Bruno Haible  <bruno@clisp.org>
8544
8545         * modules/locale-tests (configure.ac): Test for newlocale function.
8546         * tests/test-locale.c: When the system has extended locale functions,
8547         verify that <locale.h> defines locale_t and LC_GLOBAL_LOCALE.
8548
8549         locale: Make locale_t available when possible.
8550         * lib/locale.in.h: Include <xlocale.h> when it exists.
8551         * m4/locale_h.m4 (gl_LOCALE_H): Check for <xlocale.h> and arrange to
8552         replace <locale.h> if it does not define locale_t but <xlocale.h> does.
8553         * modules/locale (Depends-on): Add extensions.
8554         (Makefile.am): Also substitute HAVE_XLOCALE_H.
8555         * doc/posix-headers/locale.texi: Document the problem with locale_t.
8556
8557 2009-11-22  Bruno Haible  <bruno@clisp.org>
8558
8559         Add comments.
8560         * m4/dirent_h.m4 (gl_DIRENT_H): Add comment about gl_CHECK_NEXT_HEADERS
8561         invocation.
8562         * m4/iconv_h.m4 (gl_ICONV_H): Likewise.
8563         * m4/spawn_h.m4 (gl_SPAWN_H): Likewise.
8564         * m4/wchar.m4 (gl_WCHAR_H): Likewise.
8565
8566 2009-11-22  Bruno Haible  <bruno@clisp.org>
8567
8568         error: account for the possibility of freopen (stdout).
8569         * lib/error.c: Include <unistd.h>.
8570         (flush_stdout): New function, extracted from error and error_at_line.
8571         Determine stdout's fd dynamically.
8572         (error, error_at_line): Invoke flush_stdout.
8573         * m4/error.m4 (gl_PREREQ_ERROR): Require AC_C_INLINE.
8574         * modules/error (Depends-on): Add unistd.
8575
8576 2009-11-22  Bruno Haible  <bruno@clisp.org>
8577
8578         diffseq: Add comment.
8579         * lib/diffseq.h (IF_LINT): Add comment about pitfall.
8580
8581 2009-11-22  Jim Meyering  <meyering@redhat.com>
8582
8583         c-stack: avoid defining an unused static function
8584         * lib/c-stack.c (find_stack_direction): Do not define this function
8585         when it will not be used.
8586
8587         diffseq: avoid spurious gcc warnings
8588         * lib/diffseq.h (IF_LINT2): Define.
8589         (compareseq): Use it to initialize two members of "part".
8590         This avoids two used-uninitialized warnings.
8591
8592 2009-11-21  Jim Meyering  <meyering@redhat.com>
8593
8594         c-stack: avoid "ignoring return value of `write'" warning
8595         * lib/c-stack.c: Include "ignore-value.h".
8596         (die): Explicitly ignore each write return value.
8597         * modules/c-stack (Depends-on): Add ignore-value.
8598
8599 2009-11-21  Bruno Haible  <bruno@clisp.org>
8600
8601         diffseq: reduce scope of variable 'best'.
8602         * lib/diffseq.h (diag) [USE_HEURISTIC]: Reduce scope of 'best'
8603         variable, earlier used for two different purposes.
8604
8605 2009-11-21  Jim Meyering  <meyering@redhat.com>
8606
8607         diffseq: remove useless assignment to "best"
8608         * lib/diffseq.h (diag) [USE_HEURISTIC]: Remove useless "best = 0"
8609         assignment.  At that point "best" is already guaranteed to be zero.
8610
8611 2009-11-20  Eric Blake  <ebb9@byu.net>
8612
8613         build: mention ftp redirector in release announcements
8614         * top/maint.mk (gnu_rel_host, url_dir_list): Provide defaults for
8615         values that used to come from cfg.mk; mention FTP redirect URL.
8616         * build-aux/announce-gen: Mention the mirror list.
8617         Suggested by Karl Berry.
8618
8619         nanosleep: improve port to mingw
8620         * lib/nanosleep.c (rpl_nanosleep): Reject invalid arguments.
8621         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Incorporate LIBSOCKET into
8622         LIB_NANOSLEEP, but only when needed.
8623         * modules/select (Link): Document LIBSOCKET.
8624         * m4/select.m4 (gl_FUNC_SELECT): Ensure LIBSOCKET is defined early
8625         enough.
8626
8627         nanosleep: work around cygwin bug
8628         * lib/nanosleep.c (rpl_nanosleep) [HAVE_BUG_BIG_NANOSLEEP]:
8629         Fix logic bug when nanosleep fails.  Work around cygwin 1.5.x
8630         bug.
8631         (getnow): Delete, not needed.
8632         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): No longer require
8633         LIB_CLOCK_GETTIME.
8634         * modules/nanosleep (Depends-on): Add intprops and verify.  Drop
8635         clock-time, gettime.
8636         * doc/posix-functions/nanosleep.texi (nanosleep): Document the
8637         bug.
8638         * modules/nanosleep-tests: New test.
8639         * tests/test-nanosleep.c: New file.
8640
8641         sleep: work around cygwin bug
8642         * lib/sleep.c (rpl_sleep): Work around the bug.
8643         * m4/sleep.m4 (gl_FUNC_SLEEP): Detect the bug.
8644         (gl_PREREQ_SLEEP): Delete unused macro.
8645         * modules/sleep (Depends-on): Add verify.
8646         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add default.
8647         * modules/unistd (Makefile.am): Substitute witness.
8648         * lib/unistd.in.h (sleep): Update prototype.
8649         * doc/posix-functions/sleep.texi (sleep): Document the bug.
8650         * tests/test-sleep.c (main) [HAVE_DECL_ALARM]: Test it.
8651         * modules/sleep-tests (Depends-on): Check for alarm.
8652
8653 2009-11-20  Jim Meyering  <meyering@redhat.com>
8654
8655         maint.mk: improve sc_prohibit_magic_number_exit
8656         * top/maint.mk (sc_prohibit_magic_number_exit): Tighten regexp
8657         so it does not match uses like System.exit(1).
8658         Add comments showing how to correct all offenders.
8659
8660 2009-11-19  Eric Blake  <ebb9@byu.net>
8661
8662         xalloc-die-tests: add missing library
8663         * modules/xalloc-die-tests (Makefile.am): Add LDADD line.
8664
8665         test-xvasprintf: silence compiler warnings
8666         * tests/test-xvasprintf.c (test_xvasprintf, test_xasprintf): Mask
8667         empty string from gcc.
8668
8669 2009-11-19  Jim Meyering  <meyering@redhat.com>
8670
8671         xfreopen: new module, from coreutils
8672         * modules/xfreopen: New module.
8673         * lib/xfreopen.c: New file.
8674         * lib/xfreopen.h: New file.
8675         * MODULES.html.sh (File stream based Input/Output"): Add it.
8676
8677 2009-11-19  Eric Blake  <ebb9@byu.net>
8678
8679         manywarnings: depend on warnings
8680         * modules/manywarnings (Depends-on): Add warnings.
8681
8682         build: avoid compiler warnings
8683         * lib/select.c (rpl_select): Delete unused variable.
8684         * lib/setsockopt.c (rpl_setsockopt): Avoid incompatible pointer.
8685
8686 2009-11-18  Eric Blake  <ebb9@byu.net>
8687
8688         tests: avoid false negative with --with-packager
8689         * tests/test-version-etc.sh: Discard packager information.
8690         * tests/test-argp-version-etc-1.sh: Likewise.
8691         Reported by Mike Frysinger.
8692
8693         utimens: fix regression on Solaris
8694         * m4/utimens.m4 (gl_UTIMENS): Check for BSD bug.
8695         * lib/utimens.c (fdutimens): Revert 2009-11-08 change; Solaris 10
8696         can only change fd timestamps via futimesat.  Instead, use an
8697         additional witness macro to avoid BSD bug.
8698         Reported by Jim Meyering.
8699
8700 2009-11-17  Eric Blake  <ebb9@byu.net>
8701
8702         usleep: use it to simplify tests
8703         * modules/stat-time-tests (Depends-on): Add usleep.
8704         (configure.ac): Drop usleep check.
8705         * modules/chown-tests (Depends-on, configure.ac): Likewise.
8706         * modules/lchown-tests (Depends-on, configure.ac): Likewise.
8707         * modules/fdutimensat-tests (Depends-on, configure.ac): Likewise.
8708         * modules/futimens-tests (Depends-on, configure.ac): Likewise.
8709         * modules/openat-tests (Depends-on, configure.ac): Likewise.
8710         * modules/utimens-tests (Depends-on, configure.ac): Likewise.
8711         * modules/utimensat-tests (Depends-on, configure.ac): Likewise.
8712         * modules/pipe-filter-gi-tests (Depends-on, configure.ac):
8713         Likewise.
8714         * tests/test-chown.h (nap): Rely on nicer usleep semantics.
8715         * tests/test-lchown.h (nap): Likewise.
8716         * tests/test-pipe-filter-gi2-main.c (small_nap): Likewise.
8717         * tests/test-stat-time.c (nap): Likewise.
8718         * tests/test-utimens-common.h (nap): Update comments.
8719
8720         usleep: new module
8721         * modules/usleep: New file.
8722         * m4/usleep.m4 (gl_FUNC_USLEEP): Likewise.
8723         * lib/usleep.c (usleep): Likewise.
8724         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add defaults.
8725         * modules/unistd (Makefile.am): Substitute witnesses.
8726         * lib/unistd.in.h (usleep): Add declaration.
8727         * doc/pastposix-functions/usleep.texi (usleep): Document this.
8728         * MODULES.html.sh (Date and time): Likewise.
8729         * modules/usleep-tests (Depends-on): New test.
8730         * tests/test-usleep.c: New file.
8731
8732         chown: work around OpenBSD bug
8733         * lib/chown.c (rpl_chown): Work around the bug.
8734         * lib/lchown.c (rpl_lchown): Attempt to do likewise.
8735         * m4/chown.m4 (gl_FUNC_CHOWN): Test for ctime bug.
8736         * m4/lchown.m4 (gl_FUNC_LCHOWN): Check for lchmod.
8737         * modules/chown (Depends-on): Add stdbool.
8738         * modules/lchown (Depends-on): Likewise.
8739         * doc/posix-functions/chown.texi (chown): Document the bug.
8740         * doc/posix-functions/lchown.texi (lchown): Likewise.
8741         * tests/test-lchown.h (test_chown): Relax test.
8742
8743         mkstemp: avoid conflict with C++ keyword template
8744         * lib/mkdtemp.c (mkdtemp): Change spelling of template.
8745         * lib/mkostemp.c (mkostemp): Likewise.
8746         * lib/mkostemps.c (mkostemps): Likewise.
8747         * lib/mkstemp.c (mkstemp): Likewise.
8748         * lib/mkstemps.c (mkstemps): Likewise.
8749
8750         xalloc-die-tests: optimize
8751         * tests/test-xalloc-die.sh: Reduce number of processes.
8752
8753 2009-11-17  Simon Josefsson  <simon@josefsson.org>
8754
8755         * gnulib-tool: Support LGPLv3+ licenses in module files.  Tiny
8756         patch from ludo@gnu.org (Ludovic Courtès).
8757
8758 2009-11-17  Jim Meyering  <meyering@redhat.com>
8759
8760         version-etc: use proper license string
8761         * modules/version-etc (License): Use LGPL, not LGPLv3+.
8762         * modules/version-etc-fsf: Likewise.
8763
8764 2009-11-17  Simon Josefsson  <simon@josefsson.org>
8765
8766         * tests/test-xalloc-die.sh: Add license.  Check that nothing is
8767         printed to stdout.  Deal with EOL differences.
8768
8769 2009-11-17  Eric Blake  <ebb9@byu.net>
8770
8771         unsetenv: work around Solaris bug
8772         * m4/setenv.m4 (gl_FUNC_UNSETENV): Check for bug.
8773         * lib/unsetenv.c (rpl_unsetenv): Work around it.
8774         Reported by Jim Meyering.
8775
8776         vasnprintf: avoid compiler warnings
8777         * lib/vasnprintf.c (VASNPRINTF): Avoid shadowing our own local
8778         variables.
8779         * lib/printf-args.c (PRINTF_FETCHARGS): Avoid type mismatch.
8780
8781 2009-11-17  Simon Josefsson  <simon@josefsson.org>
8782
8783         * modules/xalloc-die-tests (Makefile.am): Drop XFAIL_TESTS
8784         settings since xalloc-die is no longer the self test,
8785         xalloc-die.sh is.
8786
8787 2009-11-17  Jim Meyering  <meyering@redhat.com>
8788
8789         test-xalloc-die.sh: make the code agree with the commit log
8790         * tests/test-xalloc-die.sh: Put "." at the front of $PATH, not
8791         at the end, just in case you happen to have a test-xalloc-die
8792         program in some other PATH directory.
8793
8794         test-xalloc-die.sh: fix a portability bug
8795         * tests/test-xalloc-die.sh: Do not invoke via ./test-xalloc-die.
8796         Instead, set PATH to start with "." and invoke via "test-xalloc-die".
8797         Otherwise, argv[0] (as often seen in diagnostics) would be too
8798         system-dependent, sometimes with, and sometimes without the leading "./".
8799
8800         version-etc-fsf: relax license to LGPLv3+
8801         * modules/version-etc-fsf (License): Relax license.
8802
8803 2009-11-16  Eric Blake  <ebb9@byu.net>
8804
8805         xalloc-die-tests: avoid printing null pointer
8806         * modules/xalloc-die-tests (Files, Makefile.am): Wrap execution in
8807         shell script.
8808         * tests/test-xalloc-die.c (program_name): Declare.
8809         * tests/test-xalloc-die.sh (tmpfiles): New file.
8810
8811         setenv, unsetenv: work around various bugs
8812         * lib/setenv.c (setenv) [!HAVE_SETENV]: Resync from glibc.
8813         (setenv) [HAVE_SETENV]: Work around bugs.
8814         * lib/unsetenv.c (unsetenv) [HAVE_UNSETENV]: Work around bugs.
8815         * m4/setenv.m4 (gl_FUNC_SETENV_SEPARATE, gl_FUNC_UNSETENV): Check
8816         for bugs.
8817         (gl_FUNC_SETENV): Write in terms of gl_FUNC_SETENV_SEPARATE.
8818         * m4/environ.m4 (gl_ENVIRON): Avoid expand-before-require.
8819         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Update defaults.
8820         * modules/stdlib (Makefile.am): Update substitutions.
8821         * lib/stdlib.in.h (setenv, unsetenv): Update prototypes.
8822         * doc/posix-functions/setenv.texi (setenv): Document the bugs.
8823         * doc/posix-functions/unsetenv.texi (unsetenv): Likewise.
8824         * modules/setenv-tests: New test.
8825         * modules/unsetenv-tests: Likewise.
8826         * tests/test-setenv.c: New file.
8827         * tests/test-unsetenv.c: Likewise.
8828
8829 2009-11-16  Jim Meyering  <meyering@redhat.com>
8830
8831         version-etc: relax license to LGPLv3+
8832         * modules/version-etc (License): Relax license.
8833
8834         better AC_REQUIRE expanded-before-required-warning avoidance
8835         * m4/chown.m4 (gl_FUNC_CHOWN, gl_FUNC_CHOWN_FOLLOWS_SYMLINK): Define
8836         with AC_DEFUN_ONCE, rather than AC_DEFUN, to avoid AC_REQUIRE warnings.
8837         Suggested by Eric Blake.  This change also reverts commit 1b712ba8,
8838         which is no longer needed.
8839
8840 2009-11-16  Eric Blake  <ebb9@byu.net>
8841
8842         test-freading: clean up temporary file
8843         * tests/test-freading.c (main): Remove file on success, and use
8844         ASSERT more liberally.
8845         Reported by Jim Meyering.
8846
8847 2009-11-16  Jim Meyering  <meyering@redhat.com>
8848
8849         avoid new AC_REQUIRE expanded-before-required warnings
8850         * modules/chown (configure.ac): Require gl_FUNC_CHOWN, rather than
8851         merely using it.
8852         * modules/euidaccess (configure.ac): Likewise for gl_FUNC_EUIDACCESS.
8853         * modules/faccessat (configure.ac): Likewise for gl_FUNC_FACCESSAT.
8854
8855 2009-11-15  Simon Josefsson  <simon@josefsson.org>
8856
8857         * tests/test-xalloc-die.c: New file.
8858         * modules/xalloc-die-tests: New file.
8859         * gnulib-tool (func_emit_tests_Makefile_am): Also initialize
8860         XFAIL_TESTS so it can be appended by modules.
8861
8862 2009-11-15  Simon Josefsson  <simon@josefsson.org>
8863
8864         * lib/gc-pbkdf2-sha1.c: Remove comments from RFC 2898.  Reported
8865         by Vladimir 'phcoder' Serbinenko <phcoder@gmail.com>.
8866
8867 2009-11-14  Eric Blake  <ebb9@byu.net>
8868
8869         fnmatch: avoid compiler warning
8870         * lib/fnmatch_loop.c (NEW_PATTERN): Coerce addition to unsigned,
8871         to silence compiler warning about mismatch signedness in ?:.
8872         Reported by Robert Millan.
8873
8874         intprops: add double-inclusion guard
8875         * lib/intprops.h: Allow idempotent includes.
8876         Suggested by Bruce Korb.
8877
8878         openat: detect Solaris fchownat bug
8879         * lib/fchownat.c (rpl_fchownat): Work around Solaris bug.  Avoid
8880         penalizing glibc chownat when only lchownat is broken.
8881         * m4/openat.m4 (gl_FUNC_FCHOWNAT): Replace fchownat if there are
8882         trailing slash bugs.
8883         * doc/posix-functions/fchownat.texi (fchownat): Document the bug.
8884         * modules/openat-tests (Files): Include more files.
8885         (Depends-on): Add mgetgroups, sleep, stat-time.
8886         (configure.ac): Add additional checks.
8887         (Makefile.am): Build new test.
8888         * tests/test-fchownat.c: New file.
8889
8890         lchown: detect Solaris and FreeBSD bug
8891         * lib/lchown.c (rpl_lchown): Work around bug.
8892         * m4/lchown.m4 (gl_FUNC_LCHOWN): Check for trailing slash bugs.
8893         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add witness.
8894         * modules/unistd (Makefile.am): Populate it.
8895         * lib/unistd.in.h (lchown): Update declaration.
8896         * doc/posix-functions/lchown.texi (lchown): Document the bug.
8897         * modules/lchown-tests: New file.
8898         * tests/test-lchown.h (test_lchown): Likewise.
8899         * tests/test-lchown.c (main): Likewise.
8900
8901         chown: detect Solaris and FreeBSD bug
8902         * lib/chown.c (rpl_chown): Work around bug.
8903         * m4/chown.m4 (gl_FUNC_CHOWN): Check for trailing slash bugs.
8904         (gl_PREREQ_CHOWN): Delete.
8905         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add witness.
8906         * modules/unistd (Makefile.am): Populate it.
8907         * lib/unistd.in.h (chown): Update declaration.
8908         * lib/lchown.c (chown): Update client.
8909         * modules/lchown (Depends-on): Add lstat.
8910         * doc/posix-functions/chown.texi (chown): Document the bug.
8911         * doc/posix-functions/getgroups.texi (getgroups): Document
8912         getgroups pitfall.
8913         * modules/chown-tests: New file.
8914         * tests/test-chown.h (test_chown): Likewise.
8915         * tests/test-chown.c (main): Likewise.
8916
8917 2009-11-14  Robert Millan  <rmh.grub@aybabtu.com>  (tiny change)
8918
8919         gnulib-tool: correctly detect absence of m4 directories
8920         * gnulib-tool: Avoid extra newline on data passed to wc -l.
8921
8922 2009-11-14  Jim Meyering  <meyering@redhat.com>
8923
8924         maint.mk: Prohibit inclusion of "xalloc.h" without use.
8925         * top/maint.mk (sc_prohibit_close_stream_without_use): New rule.
8926
8927 2009-11-14  John W. Eaton  <jwe@gnu.org>
8928
8929         strftime.h: wrap funtion declaration in extern "C" block
8930         * lib/strftime.h (nstrftime) [__cplusplus]: Wrap declaration.
8931
8932 2009-11-13  Eric Blake  <ebb9@byu.net>
8933
8934         getgroups: avoid compiler warning
8935         * lib/getgroups.c (rpl_getgroups): Delete shadowed variable.
8936
8937         getgroups: work around FreeBSD bug
8938         * lib/getgroups.c (rpl_getgroups): Work around the bug.
8939         * m4/getgroups.m4 (gl_FUNC_GETGROUPS): Detect the bug.
8940         * doc/posix-functions/getgroups.texi (getgroups): Document it.
8941         * tests/test-getgroups.c (main): Fix buffer overrun.
8942
8943         getgroups: avoid compilation failure
8944         * lib/getgroups.c (includes): Include <stdint.h> for SIZE_MAX.
8945         * modules/getgroups (Depends-on): Add stdint.
8946
8947 2009-11-13  Jim Meyering  <meyering@redhat.com>
8948
8949         test-getgroups: avoid compilation failure
8950         * tests/test-getgroups.c: Include <stdint.h> for use of SIZE_MAX.
8951
8952 2009-11-13  Eric Blake  <ebb9@byu.net>
8953
8954         mgetgroups: new module, taken from coreutils
8955         * modules/mgetgroups: New file.
8956         * lib/mgetgroups.h: Likewise.
8957         * lib/mgetgroups.c (mgetgroups): Likewise.
8958         * m4/mgetgroups.m4 (gl_MGETGROUPS): Likewise.
8959         * MODULES.html.sh (Users and groups): Mention it.
8960
8961         getgroups: don't expose GETGROUPS_T to user
8962         * lib/getgroups.c (rpl_getgroups): Change signature.  Copy array
8963         an element at a time if GETGROUPS_T is wrong size.
8964         * lib/getugroups.h (getugroups): Change signature.
8965         * lib/unistd.in.h (getgroups): Likewise.
8966         * m4/getgroups.m4 (gl_FUNC_GETGROUPS): Use replacement if
8967         signature needs fixing.
8968         * m4/getugroups.m4 (gl_GETUGROUPS): No longer need
8969         AC_TYPE_GETGROUPS.
8970         * modules/group-member (Depends-on): Add getgroups.
8971         * lib/group-member.c (group_info, get_group_info): Use gid_t.
8972         (group_member): Rely on getgroups replacement.
8973         * lib/getugroups.c (getugroups): Use gid_t.
8974         * tests/test-getgroups.c (main): Likewise.
8975         * NEWS: Mention the signature change.
8976         * doc/posix-functions/getgroups.texi (getgroups): Mention the
8977         problem with signature.
8978         * doc/glibc-functions/setgroups.texi (setgroups): Mention that
8979         GETGROUPS_T is still useful for setgroups.
8980
8981         getgroups, getugroups: provide stubs for mingw
8982         * lib/getgroups.c (getgroups): Provide ENOSYS stub for mingw.
8983         * lib/getugroups.c (getugroups): Likewise.
8984         * m4/getgroups.m4 (gl_FUNC_GETGROUPS): Check for missing
8985         function.  Modernize replacement scheme.
8986         (gl_PREREQ_GETGROUPS): Delete.
8987         * m4/getugroups.m4 (gl_GETUGROUPS): Check for <grp.h>.
8988         * modules/getgroups (configure.ac): Declare witness.
8989         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add default.
8990         * modules/unistd (Depends-on): Substitute witness.
8991         * lib/unistd.in.h (getgroups): Declare replacement.
8992
8993         getgroups: avoid calling exit
8994         * modules/getgroups (Depends-on): Add malloc-posix and unistd,
8995         drop xalloc.
8996         * modules/getgroups-tests (Depends-on, Makefile.am): Drop unneeded
8997         dependencies.
8998         * lib/getgroups.c (rpl_getgroups): Fail with ENOMEM rather than
8999         exiting, in the rare case of malloc failure.
9000
9001         getgroups: fix logic error
9002         * lib/getgroups.c (rpl_getgroups): Don't fail if current process
9003         has more than 20 groups.
9004         * modules/getgroups-tests: New test.
9005         * tests/test-getgroups.c: New file.
9006
9007 2009-11-13  Simon Josefsson  <simon@josefsson.org>
9008
9009         * tests/test-base64.c: Improve.
9010
9011 2009-11-13  Simon Josefsson  <simon@josefsson.org>
9012
9013         * tests/test-xvasprintf.c: Fix memory leak, suggested by Eric
9014         Blake <ebb9@byu.net>.
9015
9016 2009-11-13  Simon Josefsson  <simon@josefsson.org>
9017
9018         * tests/test-xvasprintf.c: Add %s%s related checks.
9019
9020 2009-11-12  Eric Blake  <ebb9@byu.net>
9021
9022         version-etc: match standards.texi style
9023         * lib/version-etc.c (emit_bug_reporting_address): Drop periods,
9024         and use <> only for URLs.
9025
9026 2009-11-10  Kamil Dudka  <kdudka@redhat.com>
9027
9028         fts: do not fail on a submount during traversal
9029         * lib/fts.c (fts_build): Read the stat info again after opening
9030         a directory if the FTS_TIGHT_CYCLE_CHECK flag is set.
9031         Original report at http://bugzilla.redhat.com/501848.
9032
9033 2009-11-12  Jim Meyering  <meyering@redhat.com>
9034
9035         bootstrap: sync from coreutils
9036         * build-aux/bootstrap (bootstrap_epilogue): New function.
9037         Use git_modules_config in one more place.  This make bootstrap's
9038         --gnulib-srcdir option more useful for testing.
9039
9040         bootstrap: generalize autoheader check
9041         * build-aux/bootstrap: Look for AC_CONFIG_HEADER as well as
9042         AC_CONFIG_HEADERS.
9043
9044 2009-11-11  Eric Blake  <ebb9@byu.net>
9045
9046         mkfifoat: use new modules for Solaris and BSD bugs
9047         * m4/mkfifoat.m4 (gl_FUNC_MKFIFOAT): Simplify.
9048         * lib/mkfifoat.c (mknodat): Split...
9049         * lib/mknodat.c (mknodat): ...into new file.
9050         * modules/mkfifoat (Files): Ship new file.
9051         (Depends-on): Add mkfifo, mknod.
9052         * modules/mkfifoat-tests (Files): Reuse mkfifo tests.
9053         (Depends-on): Add symlink.
9054         * tests/test-mkfifoat.c (main): Enhance test.  Drop portions now
9055         redundant with test_mkfifo.h.
9056         (do_mkfifoat, do_mknodat): New helpers.
9057
9058         mknod: new module
9059         * modules/mknod: New file.
9060         * m4/mknod.m4 (gl_FUNC_MKNOD): Likewise.
9061         * lib/mknod.c (mknod): Likewise.
9062         * m4/sys_stat_h.m4 (gl_SYS_STAT_H_DEFAULTS): Set witness
9063         defaults.
9064         * modules/sys_stat (Makefile.am): Substitute them.
9065         * lib/sys_stat.in.h (mknod): Declare replacement.
9066         * MODULES.html.sh (Support for systems lacking POSIX:2008):
9067         Document it.
9068         * doc/posix-functions/mknod.texi (mknod): Likewise.
9069         * modules/mknod-tests: New test.
9070         * tests/test-mknod.c: Likewise.
9071
9072         mkfifo: new module
9073         * modules/mkfifo: New file.
9074         * m4/mkfifo.m4 (gl_FUNC_MKFIFO): Likewise.
9075         * lib/mkfifo.c (mkfifo): Likewise.
9076         * m4/sys_stat_h.m4 (gl_SYS_STAT_H_DEFAULTS): Set witness
9077         defaults.
9078         * modules/sys_stat (Makefile.am): Substitute them.
9079         * lib/sys_stat.in.h (mkfifo): Declare replacement.
9080         * MODULES.html.sh (Support for systems lacking POSIX:2008):
9081         Document it.
9082         * doc/posix-functions/mkfifo.texi (mkfifo): Likewise.
9083         * modules/mkfifo-tests: New test.
9084         * tests/test-mkfifo.h (test_mkfifo): New file, borrowed in part
9085         from test-mkfifoat.c.
9086         * tests/test-mkfifo.c: New file.
9087
9088         readlink: detect FreeBSD bug
9089         * m4/readlink.m4 (gl_FUNC_READLINK): Also detect FreeBSD bug with
9090         slash on symlink.
9091         * doc/posix-functions/readlink.texi (readlink): Document the bug.
9092         * tests/test-readlink.h (test_readlink): Enhance test.
9093
9094         symlink: detect FreeBSD bug
9095         * m4/symlink.m4 (gl_FUNC_SYMLINK): Also detect FreeBSD bug with
9096         slash on symlink.
9097         * doc/posix-functions/symlink.texi (symlink): Document the bug.
9098         * tests/test-symlink.h (test_symlink): Enhance test.
9099
9100 2009-11-10  Eric Blake  <ebb9@byu.net>
9101
9102         link: detect FreeBSD bug
9103         * m4/link.m4 (gl_FUNC_LINK): Also detect FreeBSD bug with slash on
9104         symlink.
9105         * doc/posix-functions/link.texi (link): Document the bug.
9106         * tests/test-link.h (test_link): Enhance test.
9107         * tests/test-linkat.c (main): Update caller.
9108
9109         unlink, remove: detect FreeBSD bug
9110         * m4/unlink.m4 (gl_FUNC_UNLINK): Also detect FreeBSD bug with
9111         slash on symlink.
9112         * doc/posix-functions/unlink.texi (unlink): Document the bug.
9113         * doc/posix-functions/remove.texi (remove): Likewise.
9114         * tests/test-unlink.h (test_unlink): Enhance test.
9115         * tests/test-remove.c (main): Likewise.
9116
9117 2009-11-09  Eric Blake  <ebb9@byu.net>
9118
9119         rename: detect FreeBSD bug
9120         * m4/rename.m4 (gl_FUNC_RENAME): Also detect FreeBSD bug with
9121         slash on symlink.
9122         * modules/renameat-tests (Depends-on): Add filenamecat.
9123         * tests/test-rename.h (test_rename): Allow one more errno.
9124         * tests/test-renameat.c (main): Likewise.
9125         * doc/posix-functions/rename.texi (rename): Document the bug.
9126
9127         open: detect FreeBSD bug
9128         * m4/open.m4 (gl_FUNC_OPEN): Also detect FreeBSD bug with slash on
9129         symlink.
9130         * doc/posix-functions/open.texi (open): Document the bug.
9131         * doc/posix-functions/utimes.texi (utimes): Likewise.
9132         * tests/test-open.h (test_open): Add parameters, and test symlink
9133         handling.
9134         * tests/test-open.c (main): Adjust caller.
9135         * tests/test-fcntl-safer.c (main): Likewise.
9136         * modules/open-tests (Depends-on): Add stdbool, symlink.
9137         * modules/fcntl-safer-tests (Depends-on): Likewise.
9138         * tests/test-openat.c (main): Add test-open tests.
9139
9140         stat: detect FreeBSD bug
9141         * m4/stat.m4 (gl_FUNC_STAT): Also detect FreeBSD bug with slash on
9142         symlink.
9143         * doc/posix-functions/stat.texi (stat): Document the bug.
9144         * tests/test-stat.h (test_stat_func): Add argument.
9145         * tests/test-stat.c (main): Adjust caller.
9146         * tests/test-fstatat.c (main): Likewise.
9147         * modules/stat-tests (Depends-on): Add stdbool, symlink.
9148         Reported by Jim Meyering.
9149
9150 2009-11-09  James Youngman  <jay@gnu.org>
9151
9152         strftime.c: include ignore-value.h only when FPRINTFTIME is defined
9153         * lib/strftime.c: Correct placement of #include "ignore-value.h".
9154
9155 2009-11-08  Jim Meyering  <meyering@redhat.com>
9156
9157         utimens: remove invalid futimesat call
9158         * lib/utimens.c (fdutimens): Remove invalid futimesat call.
9159         It used the file descriptor of the target file as the DIR_FD
9160         parameter and NULL as the file name.  That caused failure with
9161         errno == EFAULT on FreeBSD-8.0-rc2
9162
9163 2009-11-07  Eric Blake  <ebb9@byu.net>
9164
9165         fflush, freadseek: use fseeko, not fseek
9166         * lib/fflush.c (clear_ungetc_buffer_preserving_position)
9167         (clear_ungetc_buffer): Avoid potential problems on large files.
9168         * lib/freadseek.c (freadseek): Likewise.
9169         * modules/freadseek (Depends-on): Add fseeko.
9170         * modules/fseek (configure.ac): Set a witness.
9171         * tests/test-fflush.c (main): Use fseeko.
9172         * tests/test-fpurge.c (fseek): Disable link warning.
9173         * tests/test-freadable.c (fseek): Likewise.
9174         * tests/test-freading.c (fseek): Likewise.
9175         * tests/test-fseeko.c (fseek): Likewise.
9176         * tests/test-ftell.c (fseek): Likewise.
9177         * tests/test-ftello.c (fseek): Likewise.
9178         * tests/test-fwritable.c (fseek): Likewise.
9179         * tests/test-fwriting.c (fseek): Likewise.
9180
9181 2009-11-06  Simon Josefsson  <simon@josefsson.org>
9182
9183         * modules/memchr (Depends-on): Drop getpagesize dependency.
9184
9185 2009-11-06  Simon Josefsson  <simon@josefsson.org>
9186
9187         * build-aux/pmccabe2html: Disable execute bit.  Suggested by
9188         Reported by Ludovic Courtès.
9189         * build-aux/pmccabe2html: Improve example usage.
9190         * build-aux/pmccabe2html: Drop #! header.  Doc fix.
9191
9192 2009-11-06  Jim Meyering  <meyering@redhat.com>
9193
9194         do-release-commit-and-tag: New module.
9195         Automate the release-commit and tag process.
9196         * build-aux/do-release-commit-and-tag: New script, from coreutils.
9197         * modules/do-release-commit-and-tag: New file.
9198         * MODULES.html.sh (Support for maintaining and releasing): Add it.
9199
9200 2009-11-06  Simon Josefsson  <simon@josefsson.org>
9201
9202         * modules/select-tests (test_select_LDADD): Add $(INET_PTON_LIB)
9203         because test-select.c uses inet_pton.
9204
9205 2009-11-06  Simon Josefsson  <simon@josefsson.org>
9206
9207         * m4/getaddrinfo.m4: Add content of INET_NTOP_LIB to
9208         GETADDRINFO_LIB.  Bump serial number.
9209         * modules/getaddrinfo (Link): Only mention GETADDRINFO_LIB again.
9210         Suggested by Eric Blake <ebb9@byu.net>.
9211
9212 2009-11-05  Eric Blake  <ebb9@byu.net>
9213
9214         strtod: detect darwin bug
9215         * m4/strtod.m4 (gl_FUNC_STRTOD): Filter out darwin bug on "nan(".
9216         Reported by Leo Davis.
9217
9218         freopen-safer: new module
9219         * modules/freopen-safer: New module.
9220         * m4/stdio-safer.m4 (gl_FREOPEN_SAFER): New macro.
9221         * lib/freopen-safer.c (freopen_safer): New file.
9222         * lib/stdio-safer.h (freopen_safer): New declaration.
9223         * lib/stdio--.h (freopen): New override.
9224         * MODULES.html.sh (File stream based Input/Output): Mention it.
9225         * doc/posix-functions/freopen.texi (freopen): Mention pitfalls and
9226         freopen-safer module.
9227         * doc/posix-functions/stderr.texi (stderr): Likewise.
9228         * doc/posix-functions/stdin.texi (stdin): Likewise.
9229         * doc/posix-functions/stdout.texi (stdout): Likewise.
9230         * modules/freopen-safer-tests: New test.
9231         * tests/test-reopen-safer.c: New file.
9232
9233 2009-11-05  Jim Meyering  <meyering@redhat.com>
9234
9235         maint.mk: Prohibit inclusion of "close-stream.h" without use.
9236         * top/maint.mk (sc_prohibit_close_stream_without_use): New rule.
9237
9238 2009-11-05  Simon Josefsson  <simon@josefsson.org>
9239
9240         * modules/pmccabe2html (configure.ac): Check for pmccabe tool.
9241
9242 2009-11-05  Simon Josefsson  <simon@josefsson.org>
9243
9244         * modules/getaddrinfo (Link): Add $(INET_NTOP_LIB).
9245
9246 2009-11-05  Simon Josefsson  <simon@josefsson.org>
9247
9248         Fix link error.
9249         * m4/inet_ntop.m4 (gl_INET_NTOP): Fix test of AC_SEARCH_LIBS result.
9250         * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
9251
9252 2009-11-05  Simon Josefsson  <simon@josefsson.org>
9253
9254         * tests/test-func.c: Also test value of __func__.
9255
9256 2009-11-05  Simon Josefsson  <simon@josefsson.org>
9257
9258         * tests/test-sys_socket.c: Use smaller constant value, sa_family_t
9259         may be an 8-bit type.  Reported by Bruno Haible <bruno@clisp.org>.
9260
9261 2009-11-05  Bruno Haible  <bruno@clisp.org>
9262
9263         Fix link error.
9264         * m4/inet_ntop.m4 (gl_INET_NTOP): Fix test of AC_SEARCH_LIBS result.
9265         * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
9266         Reported by Brad Hards <bradh@frogmouth.net> via Simon Josefsson.
9267
9268 2009-11-05  Bruno Haible  <bruno@clisp.org>
9269
9270         Tests for module 'inet_pton'.
9271         * modules/inet_pton-tests: New file.
9272         * tests/test-inet_pton.c: New file.
9273
9274 2009-11-05  Bruno Haible  <bruno@clisp.org>
9275
9276         Tests for module 'inet_ntop'.
9277         * modules/inet_ntop-tests: New file.
9278         * tests/test-inet_ntop.c: New file.
9279
9280 2009-11-04  Eric Blake  <ebb9@byu.net>
9281
9282         stdlib-safer: wrap all mkstemp variants
9283         * modules/mkostemp (configure.ac): Set witness.
9284         * modules/mkostemps (configure.ac): Likewise.
9285         * modules/mkstemps (configure.ac): Likewise.
9286         * lib/stdlib-safer.h (mkostemp_safer, mkostemps_safer)
9287         (mkstemps_safer): Wrap more functions.
9288         * lib/stdlib--.h (mkostemp, mkostemps, mkstemps): Default the
9289         wrapping.
9290         * lib/mkstemp-safer.c (mkostemp_safer, mkostemps_safer)
9291         (mkstemps_safer): Implement the wrappers.
9292
9293         mkstemps, mkostemps: new modules
9294         * modules/mkostemps: New module.
9295         * modules/mkstemps: Likewise.
9296         * lib/mkostemps.c (mkostemps): New file.
9297         * lib/mkstemps.c (mkstemps): Likewise.
9298         * m4/mkostemps.m4 (gl_FUNC_MKOSTEMPS): Likewise.
9299         * m4/mkstemps.m4 (gl_FUNC_MKSTEMPS): Likewise.
9300         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Add witnesses.
9301         * modules/stdlib (Makefile.am): Substitute them.
9302         * lib/stdlib.in.h (mkostemps, mkstemps): Declare them.
9303         * doc/glibc-functions/mkstemps.texi (mkstemps): New file.
9304         * doc/glibc-functions/mkostemps.texi (mkostemps): Likewise.
9305         * doc/gnulib.texi (Glibc stdlib.h): Include them.
9306         * MODULES.html.sh (File system functions): Mention them.
9307
9308         tempname: resync from glibc
9309         * lib/tempname.c (__gen_tempname): Add suffixlen argument.  Use
9310         same values for __GT_FILE as glibc.  Abort even when assertions
9311         are disabled.
9312         * lib/tempname.h (GT_FILE): Use glibc __GT_FILE, if available, and
9313         match its value otherwise.  Allow idempotent inclusion.
9314         * lib/mkdtemp.c (mkdtemp): Adjust caller.
9315         * lib/mkostemp.c (mkostemp): Likewise.
9316         * lib/mkstemp.c (mkstemp): Likewise.
9317         * lib/tmpfile.c (tmpfile): Likewise.
9318         * NEWS: Document this.
9319
9320         utimens: fix use of futimens on older Linux
9321         * lib/utimens.c (fdutimens): Use updated, rather than original,
9322         timespec to avoid bug in older Linux kernel.
9323         Reported by Simon Josefsson.
9324
9325 2009-11-04  Bruno Haible  <bruno@clisp.org>
9326
9327         Make num_processors more flexible and consistent.
9328         * lib/nproc.h (enum nproc_query): New type.
9329         (num_processors): Add a 'query' argument.
9330         * lib/nproc.c: Include <stdlib.h>, <sched.h>, c-ctype.h.
9331         (num_processors): Add a 'query' argument. Test the value of the
9332         OMP_NUM_THREADS environment variable if requested. On Linux, NetBSD,
9333         mingw, count the number of CPUs available for the current process.
9334         * m4/nproc.m4 (gl_PREREQ_NPROC): Require AC_USE_SYSTEM_EXTENSIONS.
9335         Check for sched_getaffinity and sched_getaffinity_np.
9336         * modules/nproc (Depends-on): Add c-ctype, extensions.
9337         * NEWS: Mention the change.
9338
9339 2009-11-03  Bruno Haible  <bruno@clisp.org>
9340
9341         * NEWS: Document the new library dependencies of inet_ntop, inet_pton.
9342
9343 2009-11-03  Jim Meyering  <meyering@redhat.com>
9344
9345         test-getaddrinfo: avoid compilation failure on FreeBSD 7.2
9346         * tests/test-getaddrinfo.c (simple): Test for EAI_NODATA only
9347         if it is defined.
9348
9349 2009-11-02  Eric Blake  <ebb9@byu.net>
9350
9351         mktime, timegm: share common declaration
9352         * lib/mktime-internal.h: New file.
9353         * lib/mktime.c: Use it rather than open-coding a declaration.
9354         * lib/timegm.c: Likewise.
9355         * modules/mktime (Files): Ship it.
9356         * modules/timegm (Files): Likewise.
9357         Suggested by Bruno Haible.
9358
9359         test-update-copyright: update test to match script changes
9360         * tests/test-update-copyright.sh: Avoid hard-coding perl
9361         location.  Don't update *.bak created by earlier runs.
9362
9363 2009-11-02  Paul Eggert  <eggert@cs.ucla.edu>
9364             Simon Josefsson  <simon@josefsson.org>
9365             Bruno Haible  <bruno@clisp.org>
9366
9367         Fix link error on Solaris 8.
9368         * m4/inet_pton.m4 (gl_INET_PTON): Search for the function inet_pton
9369         also in libnsl. Define also INET_PTON_LIB.
9370         * modules/inet_pton (Link): New section.
9371
9372 2009-11-02  Simon Josefsson  <simon@josefsson.org>
9373             Bruno Haible  <bruno@clisp.org>
9374
9375         * m4/inet_ntop.m4 (gl_INET_NTOP): Define also INET_NTOP_LIB.
9376         * modules/inet_ntop (Link): New section.
9377         Reported by Boyan Kasarov <bkasarov@gmail.com>.
9378
9379 2009-11-02  Eric Blake  <ebb9@byu.net>
9380
9381         maint: avoid compiler warnings in m4 macros
9382         * m4/ungetc.m4 (gl_FUNC_UNGETC_WORKS): Avoid unused variable.
9383         * m4/rmdir.m4 (gl_FUNC_RMDIR): Include correct header.
9384
9385 2009-11-02  Simon Josefsson  <simon@josefsson.org>
9386
9387         * m4/pmccabe2html.m4: Remove file.
9388         * modules/pmccabe2html: Drop pmccabe2html.m4.  Don't call m4
9389         function.  Change maintainer.
9390         * build-aux/pmccabe2html: Use /bin/sh with magic instead of
9391         hard-coding path to awk.  Tiny patch from ludo@gnu.org (Ludovic
9392         Courtès).
9393
9394 2009-10-31  Eric Blake  <ebb9@byu.net>
9395
9396         fseeko: fix m4 regression
9397         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Use modern macro.  Fixes
9398         regression from 2009-10-27.
9399         Reported by Ralf Wildenhues.
9400
9401 2009-10-31  Jim Meyering  <meyering@redhat.com>
9402
9403         inttostr: aesthetics and improved (compile-time) safety
9404         Define inttype_is_signed rather than inttype_is_unsigned,
9405         since the sole use is via "#if inttype_is_signed".
9406         * lib/imaxtostr.c (inttype_is_signed): Define this, rather than
9407         inttype_is_unsigned.
9408         * lib/offtostr.c (inttype_is_signed): Likewise.
9409         * lib/uinttostr.c (inttype_is_signed): Likewise.
9410         * lib/umaxtostr.c (inttype_is_signed): Likewise.
9411         * lib/inttostr.c (inttostr): Use verify to cross-check the
9412         inttype_is_signed value and the signedness of the actual type.
9413         * modules/inttostr (Depends-on): Add verify.
9414
9415 2009-10-30  Eric Blake  <ebb9@byu.net>
9416
9417         build: avoid compiler warnings
9418         * lib/fchmodat.c (lchmod): Mark unused variables.
9419         * lib/getopt.c (_getopt_initialize): Likewise.
9420         * lib/mktime.c (__mktime_internal): Provide prototype.
9421         * lib/inttostr.c (inttostr): Avoid compiler warning even with
9422         older gcc that do not understand #pragma GCC diagnostic.
9423         * lib/uinttostr.c (inttype_is_unsigned): Define.
9424         * lib/umaxtostr.c (inttype_is_unsigned): Likewise.
9425
9426 2009-10-30  Michael Haubenwallner  <michael.haubenwallner@salomon.at>
9427
9428         stat: fix compilation on AIX
9429         * lib/sys_stat.in.h (stat): Work with fact that large files on AIX
9430         only see struct stat64.
9431
9432 2009-10-30  Eric Blake  <ebb9@byu.net>
9433
9434         exclude: make more robust
9435         * lib/exclude.c (excluded_file_name): Abort on unexpected value,
9436         rather than masking a coding bug.
9437         Suggested by Bruno Haible.
9438
9439 2009-10-30  Jim Meyering  <meyering@redhat.com>
9440
9441         perl scripts: remove #!/usr/bin/perl in favor of more portable...
9442         Rather than putting #!/usr/bin/perl on the first line,
9443         start with a variant of what's recommended by "man perlrun" that
9444         invokes the first "perl" program from your shell's search path.
9445         * build-aux/gitlog-to-changelog: Replace #!... as above.
9446         Add a "Local Variables" perl mode setting.
9447         Prompted by a patch from Ludovic Courtès.
9448         Improved by Eric Blake.
9449         * build-aux/useless-if-before-free: Likewise.
9450         * build-aux/announce-gen: Likewise.
9451         * build-aux/update-copyright: Likewise.
9452
9453 2009-10-29  Eric Blake  <ebb9@byu.net>
9454
9455         filenamecat-lgpl: adjust clients
9456         * modules/linkat (Depends-on): Use filenamecat-lgpl, not
9457         filenamecat.
9458         * modules/renameat (Depends-on): Likewise.
9459
9460         filenamecat: split into filenamecat-lgpl
9461         * modules/filenamecat-lgpl: New module.
9462         * modules/filenamecat (Files): Move library-safe files into
9463         filenamecat-lgpl.
9464         (Depends-on): Add filenamecat-lgpl.
9465         (configure.ac): Declare witness.
9466         * lib/filenamecat.h (file_name_concat): Only declare when using
9467         GPL module.
9468         * lib/filenamecat.c (longest_relative_suffix, mfile_name_concat):
9469         Move...
9470         * lib/filenamecat-lgpl.c: ...into new file.
9471         * m4/filenamecat.m4 (gl_FILE_NAME_CONCAT_LGPL): New macro.
9472         (gl_FILE_NAME_CONCAT): Use it.
9473         * MODULES.html.sh (File system functions): Mention new module.
9474
9475         argp: avoid memory leak
9476         * modules/argp (Depends-on): Use dirname-lgpl, not dirname.
9477         * lib/argp-namefrob.h (__argp_base_name): Use last_component, not
9478         base_name, since the latter malloc()s and can call exit().
9479         Leak introduced 2006-07-03.
9480
9481         dirname-lgpl: adjust clients that don't need full dirname
9482         * modules/backupfile (Depends-on): Use dirname-lgpl, not dirname.
9483         * modules/filenamecat (Depends-on): Likewise.
9484         * modules/linkat (Depends-on): Likewise.
9485         * modules/mkancesdirs (Depends-on): Likewise.
9486         * modules/mkdir (Depends-on): Likewise.
9487         * modules/openat (Depends-on): Likewise.
9488         * modules/savewd (Depends-on): Likewise.
9489         * modules/rename (Depends-on): Likewise.
9490         (License): Relax license.
9491         * modules/mkdir-tests (Depends-on): Drop progname.
9492         (Makefile.am): Delete unneeded LDADD.
9493         * modules/rename-tests (Depends-on, Makefile.am): Likewise.
9494
9495         dirname: split into dirname-lgpl
9496         * modules/dirname-lgpl: New module.
9497         * modules/dirname (Files): Move library-safe files into
9498         dirname-lgpl.
9499         (Depends-on): Add dirname-lgpl.
9500         (configure.ac): Declare witness.
9501         * modules/double-slash-root (License): Relax license.
9502         * lib/dirname.h (base_name, dir_name): Only declare when using GPL
9503         module.
9504         * lib/dirname.c (dir_len, mdir_name): Move...
9505         * lib/dirname-lgpl.c: ...into new file.
9506         * lib/basename.c (last_component, base_len): Move...
9507         * lib/basename-lgpl.c: ...into new file.
9508         * m4/dirname.m4 (gl_DIRNAME_LGPL): New macro.
9509         (gl_DIRNAME): Use it.
9510         * MODULES.html.sh (Enhancements for POSIX:2008 functions):
9511         Mention new module.
9512         * modules/dirname-tests (Depends-on): Add progname.
9513         * tests/test-dirname.c (program_name): Delete.
9514
9515         mkdir: make safe for libraries
9516         * modules/mkdir (Depends-on): Drop xalloc.
9517         * lib/mkdir.c (rpl_mkdir): Fail with ENOMEM rather than calling
9518         exit.
9519
9520         tests: avoid some compiler warnings
9521         * tests/test-getaddrinfo.c (simple): Mark static, and allow string
9522         literals.
9523         * tests/test-memchr.c (main): Avoid type mismatch.
9524         * tests/test-arpa_inet.c (main): Avoid unused parameters.
9525         * tests/test-base64.c (main): Likewise.
9526         * tests/test-getdelim.c (main): Likewise.
9527         * tests/test-gethostname.c (main): Likewise.
9528         * tests/test-getline.c (main): Likewise.
9529         * tests/test-netinet_in.c (main): Likewise.
9530         * tests/test-select.c (open_server_socket, main): Likewise.
9531         * tests/test-select-stdin.c (main): Likewise.
9532         * tests/test-sockets.c (main): Likewise.
9533         * tests/test-strsignal.c (main): Likewise.
9534         * tests/test-sys_select.c (main): Likewise.
9535         * tests/test-sys_socket.c (main): Likewise.
9536         * tests/test-u64.c (main): Likewise.
9537         * tests/test-xfprintf-posix.c (main): Likewise.
9538         * tests/test-xvasprintf.c (test_xvasprintf, main): Likewise.
9539
9540         sockets: avoid compiler warning
9541         * lib/sockets.c (gl_sockets_startup): Mark unused parameter.
9542
9543         maint: detect usage(1) and other suspicious exits
9544         * top/maint.mk (sc_prohibit_magic_number_exit): New rule.
9545
9546 2009-10-29  Jim Meyering  <meyering@redhat.com>
9547
9548         timespec: long-to-int truncation could make timespec_cmp malfunction
9549         * lib/timespec.h (timespec_cmp): Do not interpret a difference of
9550         a multiple of 2^32 nanoseconds as no difference.
9551
9552 2009-10-28  Jim Meyering  <meyering@redhat.com>
9553
9554         fprintftime: wrap macro code argument in "do {...} while(0)"
9555         * lib/strftime.c (cpy) [FPRINTFTIME]: The second argument to the
9556         cpy macro must be a statement that can be followed by a semicolon.
9557         Now that the else clause contains a comment and is hence longer
9558         than one line, I require curly braces.  That in turn requires
9559         that we wrap this code block in the standard do...while(0).
9560
9561         fprintftime: remove stray semicolon from previous change
9562         * lib/strftime.c (cpy) [FPRINTFTIME]: Remove trailing semicolon.
9563
9564         fprintftime: avoid a warning about ignored fwrite return value
9565         * lib/strftime.c [FPRINTFTIME]: Include "ignore-value.h".
9566         (cpy) [FPRINTFTIME]: Ignore fwrite failure, even though technically,
9567         that is unsafe.
9568         * modules/fprintftime (Depends-on): Add ignore-value.
9569
9570         exclude: avoid an unwarranted warning
9571         * lib/exclude.c (excluded_file_name): Initialize "rc" before switch.
9572
9573 2009-10-27  Eric Blake  <ebb9@byu.net>
9574
9575         fseek: avoid compilation failure when fflush is replaced
9576         * m4/fseek.m4 (gl_REPLACE_FSEEK): New macro.
9577         * m4/fseeko.m4 (gl_REPLACE_FSEEKO): Also replace fseek, if fseek
9578         module is in use.
9579         * lib/stdio.in.h (GNULIB_FSEEKO): Only poison fseek if fseek
9580         module is not in use; since REPLACE_FSEEK worked otherwise.
9581         (GNULIB_FTELLO): Likewise for ftell.
9582         Reported by Ian Beckwith and others.
9583
9584 2009-10-27  Bruno Haible  <bruno@clisp.org>
9585
9586         * lib/isnan.c (rpl_isnan[fdl]): Repeat the specification declaration.
9587         Reported by Jim Meyering.
9588
9589 2009-10-27  Jim Meyering  <jim@meyering.net>
9590             Bruno Haible  <bruno@clisp.org>
9591
9592         Avoid warning despite dropping the return value of fwrite.
9593         * lib/unicodeio.c: Include ignore-value.h.
9594         (fwrite_success_callback): Explicitly ignore fwrite's return value.
9595         * modules/unicodeio (Depends-on): Add ignore-value.
9596
9597 2009-10-26  Eric Blake  <ebb9@byu.net>
9598
9599         areadlinkat: fix fallback path
9600         * lib/at-func.c (AT_FUNC_NAME): Avoid signed comparison between
9601         pointer and zero.
9602
9603 2009-10-22  Pádraig Brady  <P@draigBrady.com>
9604
9605         Use a better IO block size for modern systems
9606         * lib/copy-file.c (copy_file_preserving): Used a 32KiB malloced buffer.
9607         * lib/md2.c: Likewise.
9608         * lib/md4.c: Likewise.
9609         * lib/md5.c: Likewise.
9610         * lib/sha1.c: Likewise.
9611         * lib/sha256.c: Likewise.
9612         * lib/sha512.c: Likewise.
9613
9614 2009-10-22  Eric Blake  <ebb9@byu.net>
9615
9616         tests: avoid several compiler warnings
9617         * tests/test-getcwd.c (main): Avoid buffer underflow.
9618         * tests/test-getdate.c (main): String literals are not safe with
9619         putenv, so use setenv.  Declare unused argument.
9620         * modules/getdate-tests (Depends-on): Add setenv.
9621         * tests/test-argv-iter.c (main): Declare unused argument.  Avoid
9622         problems with string literals in char *.
9623         * tests/test-hash.c (main): Avoid shadowing declaration.
9624         (insert_new): Treat string literals as char const *.
9625         * tests/test-getopt.h (test_getopt): Likewise.
9626         (getopt_loop): Alter types to minimize casting elsewhere.
9627         * tests/test-getopt_long.h (test_getopt_long, getopt_long_loop)
9628         (test_getopt_long_posix): Likewise.
9629         (do_getopt_long): Add wrapper to minimize casting.
9630         * tests/test-atexit.c (clear_temp_file): Use void.
9631         * tests/test-areadlink-with-size.c (main): Declare unused
9632         arguments.
9633         * tests/test-areadlink.c (main): Likewise.
9634         * tests/test-areadlinkat-with-size.c (main): Likewise.
9635         * tests/test-areadlinkat.c (main): Likewise.
9636         * tests/test-canonicalize-lgpl.c (main): Likewise.
9637         * tests/test-canonicalize.c (main): Likewise.
9638         * tests/test-dirent-safer.c (main): Likewise.
9639         * tests/test-dirname.c (main): Likewise.
9640         * tests/test-dup2.c (main): Likewise.
9641         * tests/test-fchdir.c (main): Likewise.
9642         * tests/test-fcntl-h.c (main): Likewise.
9643         * tests/test-fcntl-safer.c (main): Likewise.
9644         * tests/test-fdopendir.c (main): Likewise.
9645         * tests/test-fdutimensat.c (main): Likewise.
9646         * tests/test-fflush.c (main): Likewise.
9647         * tests/test-filenamecat.c (main): Likewise.
9648         * tests/test-filevercmp.c (main): Likewise.
9649         * tests/test-fopen-safer.c (main): Likewise.
9650         * tests/test-fopen.c (main): Likewise.
9651         * tests/test-fpending.c (main): Likewise.
9652         * tests/test-fpurge.c (main): Likewise.
9653         * tests/test-freading.c (main): Likewise.
9654         * tests/test-fstatat.c (main): Likewise.
9655         * tests/test-fsync.c (main): Likewise.
9656         * tests/test-futimens.c (main): Likewise.
9657         * tests/test-getndelim2.c (main): Likewise.
9658         * tests/test-gettimeofday.c (main): Likewise.
9659         * tests/test-getopt.c (main): Likewise.
9660         * tests/test-i-ring.c (main): Likewise.
9661         * tests/test-inttypes.c (main): Likewise.
9662         * tests/test-link.c (main): Likewise.
9663         * tests/test-lstat.c (main): Likewise.
9664         * tests/test-math.c (main): Likewise.
9665         * tests/test-md5.c (main): Likewise.
9666         * tests/test-memchr2.c (main): Likewise.
9667         * tests/test-memrchr.c (main): Likewise.
9668         * tests/test-mkdir.c (main): Likewise.
9669         * tests/test-mkdirat.c (main): Likewise.
9670         * tests/test-mkfifoat.c (main): Likewise.
9671         * tests/test-open.c (main): Likewise.
9672         * tests/test-openat-safer.c (main): Likewise.
9673         * tests/test-openat.c (main): Likewise.
9674         * tests/test-quotearg.c (main): Likewise.
9675         * tests/test-rawmemchr.c (main): Likewise.
9676         * tests/test-readlink.c (main): Likewise.
9677         * tests/test-remove.c (main): Likewise.
9678         * tests/test-rename.c (main): Likewise.
9679         * tests/test-renameat.c (main): Likewise.
9680         * tests/test-rmdir.c (main): Likewise.
9681         * tests/test-sha1.c (main): Likewise.
9682         * tests/test-signal.c (main): Likewise.
9683         * tests/test-sigaction.c (main): Likewise.
9684         * tests/test-stat.c (main): Likewise.
9685         * tests/test-stat-time.c (main): Likewise.
9686         * tests/test-stddef.c (main): Likewise.
9687         * tests/test-stdint.c (main): Likewise.
9688         * tests/test-stdio.c (main): Likewise.
9689         * tests/test-stdlib.c (main): Likewise.
9690         * tests/test-strchrnul.c (main): Likewise.
9691         * tests/test-strerror.c (main): Likewise.
9692         * tests/test-string.c (main): Likewise.
9693         * tests/test-strtod.c (main): Likewise.
9694         * tests/test-strverscmp.c (main): Likewise.
9695         * tests/test-symlink.c (main): Likewise.
9696         * tests/test-symlinkat.c (main): Likewise.
9697         * tests/test-sys_stat.c (main): Likewise.
9698         * tests/test-sys_time.c (main): Likewise.
9699         * tests/test-time.c (main): Likewise.
9700         * tests/test-unistd.c (main): Likewise.
9701         * tests/test-unlink.c (main): Likewise.
9702         * tests/test-unlinkat.c (main): Likewise.
9703         * tests/test-utimens.c (main): Likewise.
9704         * tests/test-utimensat.c (main): Likewise.
9705         * tests/test-version-etc.c (main): Likewise.
9706         * tests/test-wchar.c (main): Likewise.
9707         * tests/test-wctype.c (main): Likewise.
9708         * tests/test-xprintf-posix.c (main): Likewise.
9709         * tests/test-posixtm.c (main): Likewise.
9710         (STREQ): Delete unused macro.
9711         * tests/test-linkat.c (main): Declare unused arguments.  Avoid
9712         shadowed variables.
9713         * tests/test-memchr.c (main): Likewise.
9714
9715 2009-10-21  Eric Blake  <ebb9@byu.net>
9716
9717         areadlinkat: avoid failure on older glibc
9718         * lib/at-func.c (AT_FUNC_NAME): Check for explicit FUNC_FAIL,
9719         rather than mis-comparing 0 against FUNC_RESULT of char*.
9720
9721 2009-10-21  Bruno Haible  <bruno@clisp.org>
9722
9723         * modules/stpncpy (License): Relicense under LGPLv2+.
9724         Reported by David Lutterkort <lutter@redhat.com>.
9725
9726 2009-10-20  Eric Blake  <ebb9@byu.net>
9727
9728         utimensat: work around Solaris 9 bug
9729         * lib/utimens.c (fdutimens, lutimens): Force a stat if platform
9730         has trailing slash bugs.
9731         * tests/test-lutimens.h (test_lutimens): Enhance test.
9732         * tests/test-utimens.h (test_utimens): Likewise.
9733         * doc/posix-functions/utime.texi (utime): Enhance documentation.
9734         * doc/posix-functions/utimes.texi (utimes): Likewise.
9735         * doc/posix-functions/utimensat.texi (utimensat): Likewise.
9736         * doc/glibc-functions/futimesat.texi (futimesat): Likewise.
9737         * doc/glibc-functions/lutimes.texi (lutimes): Likewise.
9738         * doc/posix-functions/futimens.texi (futimens): Likewise.
9739
9740         fdutimensat: new module
9741         * modules/fdutimensat: New file.
9742         * lib/fdutimensat.c (fdutimensat): Likewise.
9743         * lib/utimens.h (fdutimensat, lutimensat): Declare new functions.
9744         * MODULES.html.sh (File system functions): Mention module.
9745         * modules/fdutimensat-tests: New test.
9746         * tests/test-fdutimensat.c: Likewise.
9747
9748         doc: regenerate INSTALL
9749         * doc/INSTALL: Reflect recent autoconf update.
9750         * doc/INSTALL.ISO: Likewise.
9751         * doc/INSTALL.UTF-8: Likewise.
9752
9753 2009-10-20  Pádraig Brady  <P@draigBrady.com>
9754
9755         acl: warn if ACL support is not detected
9756         * m4/acl.m4 (gl_FUNC_ACL): Output a warning if ACL support is not found.
9757
9758 2009-10-19  Giuseppe Scrivano  <gscrivano@gnu.org>
9759
9760         * lib/nproc.h: Add extern "C" block for C++.
9761
9762 2009-10-18  Reuben Thomas  <rrt@sc3d.org>
9763             Bruno Haible  <bruno@clisp.org>
9764
9765         * doc/posix-functions/isascii.texi: Document the 2 alternative APIs.
9766         * doc/posix-functions/isalnum.texi: Document the 4 alternative APIs.
9767         * doc/posix-functions/isalpha.texi: Likewise.
9768         * doc/posix-functions/isblank.texi: Likewise.
9769         * doc/posix-functions/iscntrl.texi: Likewise.
9770         * doc/posix-functions/isdigit.texi: Likewise.
9771         * doc/posix-functions/isgraph.texi: Likewise.
9772         * doc/posix-functions/islower.texi: Likewise.
9773         * doc/posix-functions/isprint.texi: Likewise.
9774         * doc/posix-functions/ispunct.texi: Likewise.
9775         * doc/posix-functions/isspace.texi: Likewise.
9776         * doc/posix-functions/isupper.texi: Likewise.
9777         * doc/posix-functions/isxdigit.texi: Likewise.
9778
9779 2009-10-18  Bruno Haible  <bruno@clisp.org>
9780
9781         Tests for module 'isblank'.
9782         * modules/isblank-tests: New file.
9783         * tests/test-isblank.c: New file.
9784
9785         New module 'isblank'.
9786         * lib/isblank.c: New file.
9787         * m4/isblank.m4: New file.
9788         * modules/isblank: New file.
9789         * doc/posix-functions/isblank.texi: Mention the new module.
9790
9791 2009-10-18  Bruno Haible  <bruno@clisp.org>
9792
9793         New module 'ctype'.
9794         * lib/ctype.in.h: New file.
9795         * m4/ctype.m4: New file.
9796         * modules/ctype: New file.
9797         * doc/posix-headers/ctype.texi: Mention the new module.
9798
9799 2009-10-18  Jim Meyering  <meyering@redhat.com>
9800
9801         m4: stylistic-only: hoist AC_SUBST to be adjacent to initialization
9802         Declare a variable like LIB_CLOCK_GETTIME to be AC_SUBSTituted
9803         right after its initialization, rather than farther down.
9804         Keeping these in close proximity makes it easier to ensure
9805         that each such variable is initialized.  E.g.,
9806
9807             LIB_CLOCK_GETTIME=
9808             AC_SUBST([LIB_CLOCK_GETTIME])
9809
9810         This change also increments these serial numbers.
9811         * m4/clock_time.m4 (gl_CLOCK_TIME): Hoist AC_SUBST use.
9812         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Likewise.
9813         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
9814
9815 2009-10-18  Bruno Haible  <bruno@clisp.org>
9816
9817         Don't let environment variables perturb build.
9818         * m4/gethrxtime.m4 (gl_GETHRXTIME): Initialize LIB_GETHRXTIME here...
9819         (gl_PREREQ_GETHRXTIME): ... not here.
9820
9821 2009-10-18  Bruno Haible  <bruno@clisp.org>
9822
9823         Avoid symlink attack in localcharset module.
9824         * lib/localcharset.c: Include <fcntl.h>, <unistd.h>.
9825         (O_NOFOLLOW): Define fallback.
9826         (get_charset_aliases): Don't open the file if it is a symbolic link.
9827         * m4/fcntl_h.m4 (gl_FCNTL_O_FLAGS): New macro, extracted from
9828         gl_FCNTL_H.
9829         (gl_FCNTL_H): Require it.
9830         * m4/localcharset.m4 (gl_LOCALCHARSET): Likewise.
9831         * modules/localcharset (Files): Add m4/fcntl_h.m4.
9832         Reported by Fergal Glynn <fglynn@veracode.com>.
9833
9834 2009-10-18  Bruno Haible  <bruno@clisp.org>
9835
9836         Implement nproc for mingw.
9837         * lib/nproc.c: Include <windows.h>
9838         (num_processors): On native Windows platforms, try GetSystemInfo.
9839
9840 2009-10-18  Bruno Haible  <bruno@clisp.org>
9841
9842         Implement nproc for IRIX.
9843         * lib/nproc.c: Include <sys/sysmp.h>.
9844         (num_processors): On IRIX systems, try sysmp.
9845         * m4/nproc.m4 (gl_PREREQ_NPROC): Check for sys/sysmp.h and sysmp.
9846
9847 2009-10-18  Bruno Haible  <bruno@clisp.org>
9848
9849         Implement nproc for HP-UX.
9850         * lib/nproc.c: Include <sys/pstat.h>
9851         (num_processors): On HP-UX systems, try pstat_getdynamic.
9852         * m4/nproc.m4 (gl_PREREQ_NPROC): Check for sys/pstat.h and
9853         pstat_getdynamic.
9854
9855 2009-10-18  Giuseppe Scrivano  <gscrivano@gnu.org>
9856             Bruno Haible  <bruno@clisp.org>
9857
9858         Implement nproc for NetBSD, OpenBSD.
9859         * lib/nproc.c: Include <sys/types.h>, <sys/param.h>, <sys/sysctl.h>.
9860         (ARRAY_SIZE): New macro.
9861         (num_processors): On BSD systems, try sysctl of HW_NCPU.
9862         * m4/nproc.m4: New file.
9863         * modules/nproc (Files): Add m4/nproc.m4.
9864         (configure.ac): Invoke gl_NPROC. Remove AC_LIBOBJ invocation.
9865         (Makefile.am): Instead, augment lib_SOURCES.
9866
9867 2009-10-18  Bruno Haible  <bruno@clisp.org>
9868
9869         Fix recognition of sys/sysctl.h on OpenBSD 4.0.
9870         * m4/physmem.m4 (gl_PHYSMEM): Before including sys/sysctl.h, include
9871         sys/param.h.
9872
9873 2009-10-16  Eric Blake  <ebb9@byu.net>
9874
9875         utimensat: new module
9876         * modules/utimensat: New file.
9877         * lib/utimensat.c (utimensat): Likewise.
9878         * m4/utimensat.m4 (gl_FUNC_UTIMENSAT): Likewise.
9879         * lib/utimens.c (utimensat): Avoid recursion into rpl_utimensat,
9880         so we can work around Linux bugs.
9881         * m4/sys_stat_h.m4 (gl_SYS_STAT_H_DEFAULTS): Add witnesses.
9882         * modules/sys_stat (Makefile.am): Substitute them.
9883         * lib/sys_stat.in.h (utimensat): Declare it.
9884         * MODULES.html.sh (systems lacking POSIX:2008): Mention module.
9885         * doc/posix-functions/utimensat.texi (utimensat): Likewise.
9886         * modules/utimensat-tests: New test.
9887         * tests/test-utimensat.c: Likewise.
9888
9889         utimens: let lutimens work on non-symlinks
9890         * lib/utimens.c (lutimens): Fall back to utimens rather than
9891         failing with ENOSYS, when file is not a symlink.
9892         (utimens): Reduce redirection.
9893         * tests/test-lutimens.h (test_lutimens): Update test to cover
9894         non-symlinks.
9895         * tests/test-utimens.h (test_utimens): Update test to cover
9896         symlinks.
9897         * tests/test-utimens.c (main): Update caller.
9898
9899         utimens: cache whether utimensat syscall works
9900         * lib/utimens.c (utimensat_works_really): New cache variable.
9901         (fdutimens, lutimens): Use it to avoid failing syscall.
9902
9903         test-stat-time, test-utimens: improve portability
9904         * tests/test-stat-time.c (nap): Lengthen delay to 20ms, for
9905         ext4 on alpha, and for cygwin.
9906         * tests/test-utimens-common.h: New file.
9907         (nap): Factor delays into single function.
9908         * tests/test-lutimens.h (test_lutimens): Use new header.
9909         * tests/test-futimens.h (test_futimens): Likewise.
9910         * tests/test-utimens.h (test_utimens): Likewise.  Also, force NFS
9911         timestamps to occur from same machine, as was done previously for
9912         test_utimens.
9913         * modules/utimens-tests (Files): Ship new file.
9914         * modules/futimens-tests (Files): Likewise.
9915         Reported in part by Jim Meyering.
9916
9917         sys_stat: sort replacement declarations
9918         * lib/sys_stat.in.h: Sort declarations.
9919         * lib/futimens.c (futimens): Fix typo.
9920
9921 2009-10-15  Jim Meyering  <meyering@redhat.com>
9922
9923         don't let environment settings perturb build
9924         Setting the envvars, LIB_CLOCK_GETTIME, LIB_EACCESS or LIB_NANOSLEEP
9925         could cause a configure-time and/or build-time malfunction.
9926         Typically, a configure-time function-in-library test is performed
9927         via code like this:
9928
9929           LIB_VAR=
9930           AC_SUBST([LIB_VAR])
9931           prefix_saved_LIBS=$LIBS
9932             AC_SEARCH_LIBS([FUNC], [LIB_NAME],
9933                        [test "$ac_cv_search_FUNC" = "none required" ||
9934                         LIB_VAR=$ac_cv_search_FUNC])
9935           LIBS=$prefix_saved_LIBS
9936
9937         However, in each of the files affected by this change, the LIB_VAR=
9938         initialization was omitted.  Thus, when set in the environment, its
9939         value would propagate into generated Makefiles when FUNC is not found
9940         in LIB_NAME.
9941         * m4/clock_time.m4 (gl_CLOCK_TIME): Initialize AC_SUBST'd var.
9942         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Likewise.
9943         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
9944
9945 2009-10-14  Eric Blake  <ebb9@byu.net>
9946
9947         fchdir: avoid infinite recursion in mingw
9948         * lib/fchdir.c (rpl_fstat): Call system fstat, rather than
9949         recursing.
9950
9951         test-stat-time: port to mingw
9952         * tests/test-stat-time.c (force_unlink): Return a value.
9953         (test_ctime) [W32]: Fix compilation error.
9954         (nap): Don't call usleep with too large an argument.  Use
9955         force_unlink.
9956         * doc/pastposix-functions/usleep.texi (usleep): Document the
9957         portability issue.
9958
9959 2009-10-13  Jim Meyering  <meyering@redhat.com>
9960
9961         use AC_CHECK_FUNCS_ONCE, not AC_CHECK_FUNCS in modules/*
9962         * modules/pipe-filter-gi: Use AC_CHECK_FUNCS_ONCE, not AC_CHECK_FUNCS.
9963         * modules/pipe-filter-ii: Likewise.
9964         * modules/sys_socket-tests: Likewise.
9965         * modules/tsearch-tests: Likewise.
9966         * Makefile (sc_prefer_ac_check_funcs_once): New rule.
9967         (check): Depend on it.
9968
9969 2009-10-12  Eric Blake  <ebb9@byu.net>
9970
9971         utimens-tests: port to NFS file systems
9972         * tests/test-utimens.h (test_utimens): Refactor utimecmp
9973         comparisons to avoid spurious failures from timestamp drift
9974         between NFS machines.
9975
9976 2009-10-12  Eric Blake  <ebb9@byu.net>
9977
9978         stat-time-tests: minor cleanups
9979         * modules/stat-time-tests (configure.ac): Use AC_CHECK_FUNCS_ONCE.
9980         * tests/test-stat-time.c (nap): Separate assignment from call.
9981         Suggested by Paolo Bonzini and Bruno Haible.
9982
9983         sys_stat: guarantee struct timespec
9984         * lib/sys_stat.in.h (includes): Always include <time.h>
9985         * modules/sys_stat (Depends-on): Add time.
9986         * tests/test-sys_stat.c: Guarantee struct timespec, as well as
9987         mode_t permission values.
9988         * doc/posix-headers/sys_stat.texi (sys/stat.h): Document how to
9989         get at subsecond timestamps.
9990
9991 2009-10-10  Eric Blake  <ebb9@byu.net>
9992
9993         futimens: new module
9994         * modules/futimens: New file.
9995         * lib/futimens.c (futimens): Likewise.
9996         * m4/futimens.m4 (gl_FUNC_FUTIMENS): Likewise.
9997         * lib/utimens.c (futimens): Avoid recursion into rpl_futimens, so
9998         we can work around Linux bugs.
9999         * m4/sys_stat_h.m4 (gl_SYS_STAT_H_DEFAULTS): Add witnesses.
10000         * modules/sys_stat (Makefile.am): Substitute them.
10001         * lib/sys_stat.in.h (futimens): Declare it.
10002         * MODULES.html.sh (systems lacking POSIX:2008): Mention module.
10003         * doc/posix-functions/futimens.texi (futimens): Likewise.
10004         * modules/futimens-tests: New test.
10005         * tests/test-futimens.c: Likewise.
10006
10007         utimens: introduce fdutimens
10008         * lib/utimens.h (fdutimens): New prototype.
10009         * lib/utimens.c (gl_futimens): Move guts...
10010         (fdutimens): ...to new interface.
10011         * tests/test-utimens.c (do_fdutimens): Use it.
10012
10013         utimens: add UTIME_NOW and UTIME_OMIT support
10014         * lib/utimens.c (validate_timespec, update_timespec): New helper
10015         functions.
10016         (gl_futimens, lutimens): Use them.
10017         * modules/utimens (Depends-on): Add gettime, lstat, stat-time,
10018         stdbool, sys_stat.
10019         (Link): Mention resulting library dependency.
10020         * modules/utimecmp (Link): Likewise.
10021         * modules/utimens-tests (Depends-on): Drop stat-time, stdbool.
10022         (Makefile.am): Pick up library dependency.
10023         * lib/sys_stat.in.h (UTIME_NOW, UTIME_OMIT): Guarantee a
10024         definition.
10025         * tests/test-sys_stat.c: Test the definitions.
10026         * doc/posix-headers/sys_stat.texi (sys/stat.h): Document this.
10027         * NEWS: Document library dependency.
10028
10029         utimecmp: support symlink timestamps
10030         * lib/utimecmp.c (utimecmp): Use new interface.  Skip effort of
10031         hashing when possible.  Use pathconf when available.
10032         (SYSCALL_RESOLUTION): Recognize tighter resolution.
10033         * modules/utimecmp (Depends-on): Add lstat.
10034
10035         utimens: add lutimens interface
10036         * lib/utimens.c (lutimens): New function.
10037         * m4/utimens.m4 (gl_UTIMENS): Check for lutimes.
10038         * lib/utimens.h (lutimens): Declare new interface.
10039         * tests/test-utimens.c (main): Enhance test.
10040         * tests/test-lutimens.h (test_lutimens): New file.
10041         * modules/utimens-tests (Files): Distribute it.
10042         (Depends-on): Add symlink.
10043         (configure.ac): Check for usleep.
10044
10045         utimens: validate futimens usage
10046         * lib/utimens.c (gl_futimens): Require valid fd up front, using
10047         fewer syscalls on failure later on.  Avoid compiler warning on
10048         mingw.
10049         * modules/utimens (Depends-on): Add dup2.
10050
10051         utimens: add test
10052         * modules/utimens-tests: New test.
10053         * tests/test-utimens.h: New file.
10054         * tests/test-futimens.h: Likewise.
10055         * tests/test-utimens.c: Likewise.
10056
10057         doc: mention timestamp portability issues
10058         * doc/glibc-functions/lutimes.texi (lutimes): Refer to utimensat
10059         instead.
10060         * doc/posix-functions/utime.texi (utime): Likewise.
10061         * doc/posix-functions/utimes.texi (utimes): Likewise.
10062         * doc/glibc-functions/futimes.texi (futimes): Refer to futimens
10063         instead.
10064         * doc/posix-functions/futimens.texi (futimens): Mention utimens
10065         module.
10066         * doc/posix-functions/utimensat.texi (utimensat): Likewise.
10067         Mention weakness with symlink timestamps.
10068         * doc/glibc-functions/futimesat.texi (futimesat): New file; refer
10069         to utimensat/futimens instead.
10070         * doc/gnulib.texi (Glibc sys/time.h): Include new file.
10071
10072         test-dup2: enhance test
10073         * tests/test-dup2.c (main): Also check AT_FDCWD.
10074
10075         test-stat-time: avoid more spurious failures
10076         * tests/test-stat-time.c (nap): Wait for 15ms rather than 2ms, for
10077         xfs; and avoid race if the two timestamps cross quantization edge.
10078
10079         relocatable: prefer 'file system' over 'filesystem'
10080         * m4/relocatable-lib.m4 (gl_RELOCATABLE_NOP): Use AS_HELP_STRING.
10081         (gl_RELOCATABLE_LIBRARY_BODY): Fix spelling.
10082         * doc/relocatable-maint.texi (Supporting Relocation): Likewise.
10083         * doc/relocatable.texi (Enabling Relocatability): Likewise.
10084         * lib/relocatable.c (compute_curr_prefix): Likewise.
10085
10086 2009-10-10  Jim Meyering  <meyering@redhat.com>
10087
10088         stat-time-tests: check for the usleep function
10089         * modules/stat-time-tests (configure.ac): Now that we test HAVE_USLEEP.
10090
10091 2009-10-10  Bruno Haible  <bruno@clisp.org>
10092
10093         * modules/xnanosleep: Put the Link section after the Include section.
10094
10095 2009-10-09  Eric Blake  <ebb9@byu.net>
10096
10097         dup2: work around FreeBSD 6.1 bug
10098         * m4/dup2.m4 (gl_FUNC_DUP2): Detect bug.
10099         * doc/posix-functions/dup2.texi (dup2): Document it.
10100         Reported by Nelson H. F. Beebe and Jim Meyering.
10101
10102         test-stat-time: port to buggy NFS clients
10103         * tests/test-stat-time.c (main) [W32]: Reduce ifdefs.
10104         (test_ctime): Also skip test if mtime and ctime are skewed.
10105
10106         maint: prefer 'file system' over 'filesystem'
10107         * doc/posix-functions/fstatat.texi (fstatat): Likewise.
10108         * doc/posix-functions/lstat.texi (lstat): Likewise.
10109         * lib/file-has-acl.c (file_has_acl): Likewise.
10110         * lib/fwriteerror.c [TEST]: Likewise.
10111         * tests/test-areadlink.h (test_areadlink): Likewise.
10112         * tests/test-areadlinkat-with-size.c (main): Likewise.
10113         * tests/test-areadlinkat.c (main): Likewise.
10114         * tests/test-canonicalize-lgpl.c (main): Likewise.
10115         * tests/test-canonicalize.c (main): Likewise.
10116         * tests/test-fstatat.c (main): Likewise.
10117         * tests/test-linkat.c (main): Likewise.
10118         * tests/test-lstat.h (test_lstat_func): Likewise.
10119         * tests/test-mkdir.h (test_mkdir): Likewise.
10120         * tests/test-readlink.h (test_readlink): Likewise.
10121         * tests/test-remove.c (main): Likewise.
10122         * tests/test-rename.h (test_rename): Likewise.
10123         * tests/test-renameat.c (main): Likewise.
10124         * tests/test-rmdir.h (test_rmdir_func): Likewise.
10125         * tests/test-symlink.h (test_symlink): Likewise.
10126         * tests/test-symlinkat.c (main): Likewise.
10127         * tests/test-unlink.h (test_unlink_func): Likewise.
10128         * tests/test-unlinkat.c (main): Likewise.
10129
10130         maint: make realtime library usage explicit
10131         * modules/gethrxtime (Link): Mention LIB_GETHRXTIME.
10132         * modules/gettime (Link): Mention LIB_CLOCK_GETTIME.
10133         * modules/settime (Link): Likewise.
10134         * modules/xnanosleep (Link): Mention LIB_NANOSLEEP.
10135
10136         test-stat-time: speed up execution
10137         * tests/test-stat-time.c (test_ctime) [!W32]: Avoid compiler
10138         warning on mingw.
10139         (nap): New helper function.
10140         (prepare_test): Use it to reduce sleep time.
10141         (test_mtime, test_ctime, test_birthtime): Allow for subsecond
10142         execution.
10143         * modules/stat-time-tests (configure.ac): Check for usleep.
10144
10145 2009-10-09  Jim Meyering  <meyering@redhat.com>
10146
10147         selinux-h: always use getfilecon wrappers
10148         * lib/getfilecon.c: New file.
10149         * lib/se-selinux.in.h: Use a better inclusion guard symbol name.
10150         [HAVE_SELINUX_SELINUX_H]: Include-next <selinux/selinux.h>.
10151         [!HAVE_SELINUX_SELINUX_H]: Use better parameter names.
10152         (fgetfilecon): Provide a stub.
10153         * m4/selinux-selinux-h.m4 (gl_HEADERS_SELINUX_SELINUX_H): Don't
10154         AC_SUBST SELINUX_SELINUX_H, since now we're generating that
10155         file unconditionally.
10156         When <selinux/selinux.h> is found, arrange to use wrappers.
10157         * modules/selinux-h (Files): Add getfilecon.c.
10158         (Makefile.am): Substitute include-next-related bits
10159         into the now-always-generated selinux/selinux.h file.
10160         * doc/glibc-functions/lgetfilecon.texi: New file.
10161         * doc/glibc-functions/fgetfilecon.texi: New file.
10162         * doc/glibc-functions/getfilecon.texi: New file.
10163         * doc/glibc-functions/getfilecon-desc.texi: New file.
10164         * doc/gnulib.texi (Glibc selinux/selinux.h): New section, by
10165         which to pull in the new files.
10166         * MODULES.html.sh (Misc): Add selinux-h.
10167
10168 2009-10-08  Jim Meyering  <meyering@redhat.com>
10169
10170         unistd: fix comment typo
10171         * lib/unistd.in.h (euidaccess): Fix a comment typo.
10172
10173 2009-10-08  Eric Blake  <ebb9@byu.net>
10174
10175         areadlink: use SIZE_MAX consistently
10176         * modules/areadlink (Depends-on): Add stdint.
10177         * modules/areadlink-with-size (Depends-on): Likewise.
10178         * lib/areadlink-with-size.c (includes): Drop stdio, since stdlib
10179         gives NULL; drop sys/types, since unistd gives size_t; and add
10180         stdint for SIZE_MAX.
10181         (SIZE_MAX): Rely on headers.
10182         * lib/areadlinkat-with-size.c (includes): Drop stdio, sys/types,
10183         and add stdint.
10184         * lib/areadlink.c (includes): Drop sys/types, and add stdint.
10185         (SIZE_MAX): Likewise.
10186         (INITIAL_BUF_SIZE): Turn into enum.
10187         * lib/areadlinkat.c (INITIAL_BUF_SIZE): Likewise.
10188
10189 2009-10-08  Jim Meyering  <meyering@redhat.com>
10190
10191         areadlinkat: avoid compilation failure
10192         * lib/areadlinkat.c: Include <stdint.h> for use of SIZE_MAX.
10193         Fix typo in comment.
10194
10195 2009-10-07  Eric Blake  <ebb9@byu.net>
10196
10197         areadlinkat-with-size: new module
10198         * modules/areadlinkat-with-size: New module.
10199         * lib/areadlinkat-with-size.c (areadlinkat_with_size): New file.
10200         * lib/areadlink.h (areadlinkat): Declare it.
10201         * MODULES.html.sh (File system functions): Mention it.
10202         * modules/areadlinkat-with-size-tests: New test.
10203         * tests/test-areadlinkat-with-size.c: New file.
10204
10205         xreadlinkat: new module
10206         * modules/xreadlinkat: New module.
10207         * lib/xreadlinkat.c (xreadlinkat): New file.
10208         * lib/xreadlink.h (xreadlinkat): Declare it.
10209         * MODULES.html.sh (File system functions): Mention it.
10210
10211         areadlinkat: new module
10212         * lib/at-func.c (FUNC_FAIL): New define.
10213         (AT_FUNC_NAME, VALIDATE_FLAG): Use it rather than raw -1.
10214         * modules/areadlinkat: New module.
10215         * lib/linkat.c (areadlinkat): Move...
10216         * lib/areadlinkat.c (areadlinkat): ...to new file.
10217         * lib/areadlink.h (areadlinkat): Declare it.
10218         * modules/linkat (Depends-on): Add areadlinkat.
10219         * MODULES.html.sh (File system functions): Mention it.
10220         * modules/areadlinkat-tests: New test.
10221         * tests/test-areadlinkat.c: New file.
10222
10223         areadlink, areadlink-with-size: add tests
10224         * modules/areadlink-tests: New test.
10225         * modules/areadlink-with-size-tests: Likewise.
10226         * tests/test-areadlink.h: New file.
10227         * tests/test-areadlink.c: Likewise.
10228         * tests/test-areadlink-with-size.c: Likewise.
10229
10230         maint: minor cleanups
10231         * lib/fts.c (ATTRIBUTE_UNUSED): Delete; use gnulib-guaranteed
10232         _UNUSED_PARAMETER_ instead.
10233         * lib/getdate.y (ATTRIBUTE_UNUSED): Likewise.
10234         * lib/utimens.c (ATTRIBUTE_UNUSED): Likewise.
10235         * modules/linkat-tests (Files): Distribute test-link.h.
10236
10237         openat, utimens: whitespace cleanup
10238         * lib/openat.c: Prefer space throughout, rather than mix of 8
10239         spaces vs. tabs.
10240         * lib/at-func.c: Likewise.
10241         * lib/utimens.c: Likewise.
10242
10243         openat: avoid using wrong fd
10244         * lib/openat.c (openat_permissive): Reject user's fd if saving the
10245         working directory chooses same fd.
10246         * lib/at-func.c (AT_FUNC_NAME): Likewise.
10247
10248         mkdir, mkdirat: fix cygwin 1.5.x bug
10249         * lib/mkdir.c (rpl_mkdir) [FUNC_MKDIR_DOT_BUG]: Work around bug.
10250         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Move...
10251         * m4/mkdir.m4 (gl_FUNC_MKDIR): ...here, and add check for cygwin
10252         bug.
10253         (gl_PREREQ_MKDIR): Delete unused macro.
10254         * modules/mkdir (Files): Track file rename.
10255         (configure.ac): Update macro name.
10256         * modules/openat (Depends-on): Add mkdir.
10257         * doc/posix-functions/mkdir.texi (mkdir): Document the bug.
10258
10259         mkdir, mkdirat: add tests
10260         * modules/mkdir-tests: New test.
10261         * tests/test-mkdir.h: New file.
10262         * tests/test-mkdir.c: Likewise.
10263         * tests/test-mkdirat.c: Likewise.
10264         * modules/openat-tests (Files): Add new files.
10265         (Makefile.am): Run new test.
10266
10267 2009-10-06  Eric Blake  <ebb9@byu.net>
10268
10269         doc: tweak *at function documentation
10270         * doc/posix-functions/faccessat.texi (faccessat): Mention
10271         known issue with replacement.
10272         * doc/posix-functions/fchdir.texi (fchdir): Likewise.
10273         * doc/posix-functions/linkat.texi (linkat): Likewise.
10274         * doc/posix-functions/mkfifoat.texi (mkfifoat): Likewise.
10275         * doc/posix-functions/mknodat.texi (mknodat): Likewise.
10276         * doc/posix-functions/readlinkat.texi (readlinkat): Likewise.
10277         * doc/posix-functions/renameat.texi (renameat): Likewise.
10278         * doc/posix-functions/symlinkat.texi (symlinkat): Likewise.
10279
10280         openat: fix GNU/Hurd bug in unlinkat
10281         * m4/openat.m4 (gl_FUNC_OPENAT): Replace unlinkat if unlink is
10282         broken.
10283         * doc/posix-functions/unlink.texi (unlink): Document this.
10284         * doc/posix-functions/unlinkat.texi (unlinkat): Likewise.
10285
10286         fdopendir: fix GNU/Hurd bug
10287         * m4/fdopendir.m4 (gl_FUNC_FDOPENDIR): Check for Hurd bug in
10288         allowing non-directory fds.
10289         * lib/fdopendir.c (rpl_fdopendir): Work around it.
10290         * m4/dirent_h.m4 (gl_DIRENT_H_DEFAULTS): New witness.
10291         * modules/dirent (Makefile.am): Substitute it.
10292         * lib/dirent.in.h (fdopendir): Declare replacement.
10293         * doc/posix-functions/fdopendir.texi (fdopendir): Document this.
10294         * tests/test-fdopendir.c (main): Test something other than
10295         /dev/null, since on Hurd that behaves like a directory.
10296
10297         test-symlink: port to GNU/Hurd
10298         * tests/test-symlink.h (test_symlink): Relax expected errno.
10299
10300         doc: tweak more cygwin information
10301         * doc/glibc-headers/getopt.texi (getopt.h): Cygwin 1.7 getopt is
10302         now compatible with glibc.
10303         * doc/posix-functions/getopt.texi (getopt): Likewise.
10304
10305         getopt-gnu: add another test
10306         * tests/test-getopt_long.h (test_getopt_long_posix): New test, to
10307         guarantee behavior relied on by m4.
10308         * tests/test-getopt.c (main): Use it.
10309         * modules/getopt-posix-tests (Depends-on): Add setenv.
10310         See http://lists.gnu.org/archive/html/bug-m4/2006-09/msg00028.html.
10311
10312         getopt: fix compilation on darwin
10313         * lib/getopt.in.h (includes): Leave breadcrumbs during system
10314         include.
10315         * lib/unistd.in.h (getopt): Use them to avoid recursive include.
10316         Reported by Ludovic Courtès.
10317
10318 2009-10-06  Bruno Haible  <bruno@clisp.org>
10319
10320         * modules/size_max (Description): Discourage its use.
10321         Reported by Simon Josefsson.
10322
10323 2009-10-06  Jim Meyering  <meyering@redhat.com>
10324
10325         linkat: avoid compilation failure
10326         * lib/linkat.c: Include <stdint.h> for use of SIZE_MAX.
10327
10328 2009-10-05  Eric Blake  <ebb9@byu.net>
10329
10330         linkat: support Linux 2.6.17
10331         * m4/linkat.m4 (gl_FUNC_LINKAT): Default to always replacing
10332         linkat on Linux, but allow cache variable override.
10333         * lib/linkat.c (rpl_linkat): Define override.
10334         * modules/linkat (Depends-on): Add symlinkat.
10335         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add new default.
10336         * modules/unistd (Makefile.am): Substitute it.
10337         * lib/unistd.in.h (linkat): Declare replacement.
10338         Reported by Pádraig Brady.
10339
10340         quotearg: port test to systems with C.UTF-8 locale
10341         * tests/test-quotearg.c (struct result_strings): Add another
10342         member, differentiating between C.ASCII and C.UTF-8 handling.
10343         (compare_strings): Add parameter.
10344         (main): Adjust all callers.
10345
10346         getopt: avoid clash with FreeBSD _getopt_internal
10347         * lib/getopt.in.h (_getopt_internal): Override the name.
10348         * lib/getopt_int.h (includes): Pick up any overrides.
10349         Reported by Reuben Thomas.
10350
10351         hash: allow C89 compilation
10352         * lib/hash.c (check_tuning): Move declaration before statement.
10353         Reported by Reuben Thomas.
10354
10355 2009-10-05  Karl Berry  <karl@gnu.org>
10356
10357         * doc/gnulib.texi: @include execvpe.texi, missing for several days.
10358
10359 2009-10-04  Paolo Bonzini  <bonzini@gnu.org>
10360             Bruno Haible  <bruno@clisp.org>
10361
10362         * lib/uname.c (uname): Use a table-driven algorithm to compute
10363         Windows NT versions.
10364
10365 2009-10-04  Bruno Haible  <bruno@clisp.org>
10366
10367         * lib/progname.c (set_program_name): Also remove the "lt-" prefix from
10368         program_invocation_short_name.
10369         * modules/progname (configure.ac): Test for presence of
10370         program_invocation_short_name.
10371         Reported by Sergey Poznyakoff <gray@gnu.org.ua>.
10372
10373 2009-10-04  Bruno Haible  <bruno@clisp.org>
10374
10375         * lib/progname.c (set_program_name): Fix comment.
10376         Reported by Jim Meyering.
10377
10378 2009-10-03  Paolo Bonzini  <bonzini@gnu.org>
10379             Bruno Haible  <bruno@clisp.org>
10380
10381         * lib/uname.c: Include <string.h>.
10382         (uname): Do only one call to GetVersionEx in the common case.
10383
10384 2009-10-03  Paolo Bonzini  <bonzini@gnu.org>
10385             Bruno Haible  <bruno@clisp.org>
10386
10387         * lib/uname.c (VER_PLATFORM_WIN32_CE, PROCESSOR_ARCHITECTURE_AMD64,
10388         PROCESSOR_ARCHITECTURE_IA32_ON_WIN64): Define fallbacks.
10389         (uname): Add support for Windows CE and various non-x86 CPU types.
10390
10391 2009-10-03  Bruno Haible  <bruno@clisp.org>
10392
10393         * gnulib-tool (func_create_testdir): Conditionally emit AM_PROG_CC_C_O
10394         invocation to tests/configure.ac.
10395         Reported by Ian Beckwith <ianb@erislabs.net>.
10396
10397 2009-10-02  Eric Blake  <ebb9@byu.net>
10398
10399         fchdir: avoid compiler warning
10400         * lib/fchdir.c (canonicalize_file_name)
10401         [!HAVE_CANONICALIZE_FILE_NAME]: Avoid compiler warning on mingw.
10402
10403         test-open: support mingw errno values
10404         * tests/test-open.h (test_open): Relax test.
10405         * tests/test-fopen.h (test_fopen): Likewise.
10406         * tests/test-openat-safer.c (main): Likewise.
10407
10408         open: fix opening directory on mingw
10409         * lib/open.c (open) [REPLACE_OPEN_DIRECTORY]: Correct typo.
10410
10411         test-open: on GNU/Hurd, /dev/null is a directory
10412         * tests/test-fopen.h (main): Rename...
10413         (test_fopen): ...to this.  Use a guaranteed non-directory when
10414         confirming open behavior on trailing slash.
10415         * tests/test-openat-safer.c (main): Likewise.
10416         * tests/test-open.h (main): Likewise....
10417         (test_open): ...to this.
10418         * tests/test-fopen.c (main): Adjust caller.
10419         * tests/test-fopen-safer.c (main): Likewise.
10420         * tests/test-open.c (main): Likewise.
10421         * tests/test-fcntl-safer.c (main): Likewise.
10422         Reported by Samuel Thibault.
10423
10424         rename, fchdir: don't ignore chdir failure
10425         * lib/fchdir.c (get_name): Abort on unexpected chdir failure.
10426         * lib/rename.c (rpl_rename) [W32]: Likewise.
10427         (rpl_rename) [RENAME_DEST_EXISTS_BUG]: Avoid one case of losing
10428         an empty destination directory if source cannot be renamed,
10429         although there is still possibility for failure.
10430         * doc/posix-functions/rename.texi (rename): Document the race.
10431         Reported by Jim Meyering.
10432
10433         maint: cleanup whitespace in recent commits
10434         * lib/rename.c (rpl_rename): Remove tabs.
10435         * tests/test-link.h (test_link): Likewise.
10436         * lib/fchdir.c (get_name): Likewise.
10437         Reported by Jim Meyering.
10438
10439 2009-10-02  Ben Pfaff  <blp@gnu.org>
10440
10441         relocatable-prog-wrapper: Add missing dependency on
10442         double-slash-root.
10443         * modules/relocatable-prog-wrapper: Add dependency.
10444         Reported by Ian Beckwith <ianb@erislabs.net>.
10445
10446 2009-10-02  Eric Blake  <ebb9@byu.net>
10447
10448         renameat: fix Solaris bugs
10449         * m4/renameat.m4 (gl_FUNC_RENAMEAT): Replace renameat if rename
10450         needed fixing.
10451         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): New witness.
10452         * modules/stdio (Makefile.am): Substitute it.
10453         * lib/stdio.in.h (renameat): Declare replacement.
10454         * lib/renameat.c (rpl_renameat): Implement fix.
10455
10456         renameat: new module
10457         * modules/renameat: New file.
10458         * lib/renameat.c (renameat): Likewise.
10459         * m4/renameat.m4 (gl_FUNC_RENAMEAT): Likewise.
10460         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Add witnesses.
10461         * modules/stdio (Makefile.am): Substitute them.
10462         * lib/stdio.in.h (renameat): Declare it.
10463         * MODULES.html.sh (systems lacking POSIX:2008): Mention module.
10464         * doc/posix-functions/renameat.texi (renameat): Likewise.
10465         * modules/renameat-tests: New test.
10466         * tests/test-renameat.c: Likewise.
10467
10468         rename: fix mingw bugs
10469         * lib/rename.c (rpl_rename) [W32]: Fix trailing slash and
10470         directory overwrite bugs.
10471
10472         rename: fix another cygwin 1.5 bug
10473         * m4/rename.m4 (gl_FUNC_RENAME): Split cygwin bugs into two
10474         checks.
10475         * lib/rename.c (rpl_rename): Don't penalize NetBSD with
10476         unnecessary cygwin workarounds.  Also work around bug with moving
10477         full directory onto an empty one.
10478         * modules/rename (Depends-on): Add canonicalize-lgpl, rmdir.
10479
10480         rename-dest-slash: merge into rename module
10481         * modules/rename-dest-slash (Status): Mark obsolete.
10482         (Depends-on): Add rename.
10483         (Files): Let rename do it all.
10484         * m4/rename.m4 (gl_FUNC_RENAME): Also test for NetBSD bugs,
10485         subsuming the test from gl_FUNC_RENAME_TRAILING_DEST_SLASH...
10486         * m4/rename-dest-slash.m4: ...so this file can be deleted.
10487         * lib/rename-dest-slash.c (rpl_rename_dest_slash): Delete.
10488         * lib/rename.c (rpl_rename): Update comments.
10489
10490         rename: fix cygwin 1.5.x bugs
10491         * m4/rename.m4 (gl_FUNC_RENAME): Detect cygwin bugs.
10492         * lib/rename.c (rpl_rename): Work around them.
10493         * modules/rename (Depends-on): Add same-inode.
10494
10495         rename: fix Solaris 10 bug
10496         * m4/rename.m4 (gl_FUNC_RENAME): Detect Solaris bug.
10497         * lib/rename.c (rpl_rename): Don't cripple POSIX behavior if this
10498         was the only bug.
10499
10500         rename: fix Solaris 9 bug
10501         * lib/rename.c (rpl_rename): Rewrite to recognize trailing slash
10502         on non-directory.  Avoid calling exit.
10503         * modules/rename (Depends-on): Drop xalloc; add lstat, stdbool,
10504         strdup.
10505         * modules/rename-tests (Depends-on): Drop lstat.
10506         * m4/rename.m4 (gl_FUNC_RENAME): Detect Solaris bug.
10507         (gl_PREREQ_RENAME): Delete unused macro.
10508
10509         rename-dest-slash: fix NetBSD bug
10510         * lib/rename-dest-slash.c (rpl_rename_dest_slash): Detect hard
10511         links.
10512         * modules/rename-dest-slash (Depends-on): Add same-inode.
10513
10514         rename-tests: new test, exposes several platform bugs
10515         * modules/rename-tests: New file.
10516         * tests/test-rename.h: Likewise.
10517         * tests/test-rename.c: Likewise.
10518         * doc/posix-functions/rename.texi (rename): Improve documentation,
10519         including bugs that will eventually be fixed in gnulib.
10520
10521 2009-10-02  Paolo Bonzini  <bonzini@gnu.org>
10522
10523         * lib/uname.c: Include <stdlib.h>
10524         (uname): Assume version info is available.
10525
10526 2009-10-02  Jim Meyering  <meyering@redhat.com>
10527
10528         gnu-web-doc-update: correct --help output
10529         * build-aux/gnu-web-doc-update: Make --help output relevant.
10530
10531         gnu-web-doc-update: add standard options
10532         * build-aux/gnu-web-doc-update: Add --help, --version, etc.
10533
10534         gnu-web-doc-update: New module.
10535         Use this script to automatically update the on-line web documentation
10536         for your GNU project at http://www.gnu.org/software/$pkg/manual/
10537         * modules/gnu-web-doc-update: New file, from coreutils.
10538         * build-aux/gnu-web-doc-update: New script.
10539
10540 2009-10-01  Paolo Bonzini  <bonzini@gnu.org>
10541
10542         link: LoadLibrary is not needed.
10543         * lib/link.c: Use GetModuleHandle.
10544
10545 2009-10-01  Eric Blake  <ebb9@byu.net>
10546
10547         getopt: bump serial number
10548         * m4/getopt.m4: Increment serial number, to account for 2009-09-24
10549         change.
10550
10551         tests: tighten link, rmdir, and remove tests
10552         * tests/test-link.h (includes): No need to use <config.h> here.
10553         Clean up if directory hard link was created, otherwise test for
10554         trailing '.'.
10555         * tests/test-linkat.c (main): Simplify.
10556         * tests/test-remove.c (main): Enhance test for trailing '.'.
10557         * tests/test-rmdir.h (test_rmdir_func): Likewise.
10558
10559 2009-10-01  Jim Meyering  <meyering@redhat.com>
10560
10561         maint.mk: requiring "make major" was annoying, for a "minor" release.
10562         What is intended is "stable", to contrast with alpha and beta,
10563         so require "make stable", not "make major".
10564         * build-aux/announce-gen (%valid_release_types): s/major/stable/.
10565         (get_tool_versions): Likewise.
10566         * top/maint.mk (ALL_RECURSIVE_TARGETS): s/major/stable/
10567
10568 2009-09-30  Ben Pfaff  <blp@gnu.org>
10569
10570         Fix broken build of replacement for Windows tmpfile().
10571         * lib/tmpfile.c (tmpfile): Fix call to gen_tempname() to provide
10572         flags argument added along with the 'mkostemp' module.
10573
10574 2009-09-28  Bruno Haible  <bruno@clisp.org>
10575
10576         Avoid identifier clash with POSIX function 'remove' defined as a macro.
10577         * lib/gl_list.h (struct gl_list_implementation): Rename field 'remove'
10578         to 'remove_elt'.
10579         (gl_list_remove): Update.
10580         * lib/gl_list.c (gl_list_remove): Update.
10581         * lib/gl_oset.h (struct gl_oset_implementation): Rename field 'remove'
10582         to 'remove_elt'.
10583         (gl_oset_remove): Update.
10584         * lib/gl_list.c (gl_oset_remove): Update.
10585         Reported by Eric Blake.
10586
10587 2009-09-28  Eric Blake  <ebb9@byu.net>
10588
10589         doc: mention yet more cygwin 1.7 status
10590         * doc/posix-functions/fexecve.texi (fexecve): Now implemented in
10591         cygwin.
10592         * doc/glibc-functions/execvpe.texi (execvpe): New file.
10593         * doc/gnulib.texi (Glibc unistd.h): Mention it.
10594
10595         argp: fix test failure
10596         * lib/argp-help.c (hol_entry_cmp): Don't use _tolower on values
10597         that are not upper-case.  Pass correct range to tolower.
10598
10599 2009-09-27  Jim Meyering  <meyering@redhat.com>
10600
10601         test-yesno: work around sparc-dash here-document infelicity
10602         Without this change, the literal \177 byte in a here document
10603         would make dash 0.5.5.1-3 access uninitialized memory.
10604         * tests/test-yesno.sh: Don't put the \177 byte in the here document.
10605         Instead, use a marker, "@", and filter through tr to create the desired
10606         contents.  Reported as <http://bugs.debian.org/548493> by Kurt Roeckx.
10607
10608 2009-09-27  Bruno Haible  <bruno@clisp.org>
10609
10610         Disable untested support for new flavours of ACLs on AIX.
10611         * lib/file-has-acl.c (file_has_acl): Mark newer AIX code as work in
10612         progress.
10613         * lib/set-mode-acl.c (qset_acl): Likewise.
10614
10615 2008-12-07  Bruno Haible  <bruno@clisp.org>
10616
10617         Add support for new flavours of ACLs on AIX. (Untested.)
10618         * lib/file-has-acl.c [AIX] (acl_nfs4_nontrivial): New function.
10619         (file_has_acl): Add support for newer AIX.
10620         * lib/set-mode-acl.c (qset_acl): Likewise.
10621         * tests/test-sameacls.c (main): Fix use of aclx_get function. Hint by
10622         Rainer Tammer <tammer@tammer.net>.
10623
10624 2009-09-26  Eric Blake  <ebb9@byu.net>
10625
10626         argp: fix compilation of getopt
10627         * lib/getopt.in.h (includes): Use different guard than glibc.
10628         Reported by Sergey Poznyakoff.
10629
10630         doc: mention more cygwin 1.7 status
10631         * doc/posix-functions/access.texi (access): Mention cygwin 1.5
10632         bug.
10633         * doc/posix-functions/execl.texi (execl): Likewise.
10634         * doc/posix-functions/execle.texi (execle): Likewise.
10635         * doc/posix-functions/execlp.texi (execlp): Likewise.
10636         * doc/posix-functions/execv.texi (execv): Likewise.
10637         * doc/posix-functions/execve.texi (execve): Likewise.
10638         * doc/posix-functions/execvp.texi (execvp): Likewise.
10639         * doc/glibc-functions/canonicalize_file_name.texi
10640         (canonicalize_file_name): Cygwin 1.7 now provides this.
10641         * doc/glibc-functions/euidaccess.texi (euidaccess): Likewise.
10642         * doc/posix-functions/fchmodat.texi (fchmodat): Mention limitation
10643         on AT_SYMLINK_NOFOLLOW.
10644
10645 2009-09-24  Eric Blake  <ebb9@byu.net>
10646
10647         test-linkat: make test more robust
10648         * tests/test-linkat.c (main): Avoid collision with EEXIST.
10649
10650         getopt: fix inclusion guards for cygwin
10651         * modules/getopt-posix (Depends-on): Add include-next.
10652         (Makefile.am): Substitute more items in replacement header.
10653         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Also check for native
10654         <getopt.h>.
10655         * lib/getopt.in.h (includes): Use split inclusion guard, and
10656         prefer <getopt.h> over include <unistd.h> when one is present.
10657         (option): Also override name of 'struct option'.
10658
10659         same-inode: revert prior change; it is not yet ready
10660         * NEWS: Undo mention of this change.
10661         * lib/same-inode.h (same-inode.h): Undo tri-state change.
10662         * lib/cycle-check.h (CYCLE_CHECK_REFLECT_CHDIR_UP): Update caller.
10663         * lib/cycle-check.c (cycle_check): Likewise.
10664         * lib/same.c (same_name): Likewise.
10665         * lib/at-func2.c (at_func2): Likewise.
10666
10667 2009-09-23  Eric Blake  <ebb9@byu.net>
10668
10669         linkat: new module
10670         * modules/linkat: New file.
10671         * lib/at-func2.c (at_func2): Likewise.
10672         * lib/linkat.c (linkat): Likewise.
10673         * m4/linkat.m4 (gl_FUNC_LINKAT): Likewise.
10674         * lib/openat-priv.h (at_func2): Add declaration.
10675         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add witnesses.
10676         * modules/unistd (Makefile.am): Substitute them.
10677         * lib/unistd.in.h (linkat): Declare it.
10678         * MODULES.html.sh (systems lacking POSIX:2008): Mention module.
10679         * doc/posix-functions/linkat.texi (linkat): Likewise.
10680         * doc/posix-functions/link.texi (link): Tweak wording.
10681         * tests/test-link.c (main): Move guts...
10682         * tests/test-link.h (test_link): ...into new file.
10683         * modules/linkat-tests: New test.
10684         * tests/test-linkat.c: Likewise.
10685         * modules/link-tests (Files): Ship new file.
10686         (Depends-on): Add stdbool.
10687
10688         dirname: add library-safe mdir_name
10689         * lib/dirname.h (mdir_name): New prototype.
10690         * lib/dirname.c (dir_name): Move guts...
10691         (mdir_name): ...to new function that avoids xalloc_die.
10692
10693         fchdir: another mingw fix
10694         * modules/fchdir (Depends-on): Drop canonicalize-lgpl.
10695         * lib/fchdir.c (get_name): New helper method; skips canonicalize
10696         on mingw (where it has not yet been ported), and make it optional
10697         elsewhere.
10698         (_gl_register_fd): Use it.
10699
10700         same-inode: make SAME_INODE tri-state, to port to mingw
10701         * NEWS: Mention this change.
10702         * lib/same-inode.h (same-inode.h): Recognize mingw limitation of
10703         st_ino always being 0.
10704         * lib/cycle-check.h (CYCLE_CHECK_REFLECT_CHDIR_UP): Update caller.
10705         * lib/cycle-check.c (cycle_check): Likewise.
10706         * lib/same.c (same_name): Likewise.
10707
10708         lstat: avoid mingw compilation error
10709         * m4/lstat.m4 (gl_FUNC_LSTAT): Avoid duplicate calls to
10710         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK, and deal with missing
10711         lstat ourselves.
10712         * lib/lstat.c [!HAVE_LSTAT]: Do nothing if <sys/stat.h> override
10713         was adequate.
10714         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Let lstat module handle
10715         the checks for lstat.
10716         (gl_SYS_STAT_H_DEFAULTS): Set default for HAVE_LSTAT.
10717
10718         link: fix test failure on Solaris 9
10719         * lib/link.c (rpl_link): Don't assume link will catch bogus
10720         trailing slash on source.
10721
10722         test-symlinkat: enhance test
10723         * tests/test-readlink.c (main): Move guts...
10724         * tests/test-readlink.h (test_readlink): ...into new file.
10725         * tests/test-symlink.c (main): Move guts...
10726         * tests/test-symlink.h (test_symlink): ...into new file.
10727         * tests/test-symlinkat.c (main): Use new files for further
10728         coverage.
10729         (do_symlink, do_readlink): New helper functions.
10730         * modules/symlink-tests (Files): Ship new file.
10731         (Depends-on): Add stdbool.
10732         * modules/readlink-tests (Files): Ship new file.
10733         (Depends-on): Add stdbool.
10734         * modules/symlinkat-tests (Files): Use new files.
10735
10736 2009-09-23  Eric Blake  <ebb9@byu.net>
10737
10738         readlink: document portability issue with symlink length
10739         * doc/posix-functions/lstat.texi (lstat): Mention that some file
10740         systems have bogus st_size on symlinks, and mention the
10741         areadlink-with-size module.
10742         * doc/posix-functions/fstatat.texi (fstatat): Likewise.
10743         * doc/posix-functions/readlink.texi (readlink): Mention the
10744         areadlink module, and ERANGE failure.
10745         * doc/posix-functions/readlinkat.texi (readlinkat): Likewise.
10746         * tests/test-readlink.c (main): Relax test for AIX, HP-UX.
10747
10748         readlink: fix Solaris 9 bug with trailing slash
10749         * lib/readlink.c (rpl_readlink): Work around trailing slash bug.
10750         * m4/readlink.m4 (gl_FUNC_READLINK): Detect the bug.
10751         * doc/posix-functions/readlink.texi (readlink): Document this.
10752         * modules/readlink-tests: New test.
10753         * tests/test-readlink.c: Likewise.
10754
10755         readlink: fix cygwin 1.5.x bug with return type
10756         * m4/readlink.m4 (gl_FUNC_READLINK): Require correct signature.
10757         * lib/unistd.in.h (readlink): Use ssize_t.
10758         * lib/readlink.c (readlink): Likewise.
10759         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add witness.
10760         * modules/unistd (Makefile.am): Substitute it.
10761         * lib/unistd.in.h (readlink): Declare replacement.
10762         * doc/posix-functions/readlink.texi (readlink): Document this.
10763
10764         symlink: use throughout gnulib
10765         * m4/symlinkat.m4 (gl_FUNC_SYMLINKAT): Omit symlink check.
10766         * lib/symlinkat.c (symlinkat) [!HAVE_SYMLINK]: Document why
10767         symlink is not used.
10768         * modules/symlinkat (Depends-on): Add symlink.
10769         * modules/canonicalize-lgpl-tests (Depends-on): Likewise.
10770         * modules/canonicalize-tests (Depends-on): Likewise.
10771         * modules/lstat-tests (Depends-on): Likewise.
10772         * modules/openat-tests (Depends-on): Likewise.
10773         * modules/remove-tests (Depends-on): Likewise.
10774         * modules/rmdir-tests (Depends-on): Likewise.
10775         * modules/unlink-tests (Depends-on): Likewise.
10776         * tests/test-canonicalize-lgpl.c (symlink): Delete stub.
10777         * tests/test-canonicalize.c (symlink): Likewise.
10778         * tests/test-fstatat.c (symlink): Likewise.
10779         * tests/test-lstat.c (symlink): Likewise.
10780         * tests/test-remove.c (symlink): Likewise.
10781         * tests/test-rmdir.c (symlink): Likewise.
10782         * tests/test-unlink.c (symlink): Likewise.
10783         * tests/test-unlinkat.c (symlink): Likewise.
10784
10785         symlink: new module, for Solaris 9 bug
10786         * modules/symlink: New file.
10787         * m4/symlink.m4 (gl_FUNC_SYMLINK): Likewise.
10788         * lib/symlink.c: Likewise.
10789         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add defaults.
10790         * modules/unistd (Makefile.am): Substitute them.
10791         * lib/unistd.in.h (symlink): Declare replacement.
10792         * MODULES.html.sh (File system functions): Mention it.
10793         * doc/posix-functions/symlink.texi (symlink): Likewise.
10794         * modules/symlink-tests: New test.
10795         * tests/test-symlink.c: Likewise.
10796
10797 2009-09-23  Bruno Haible  <bruno@clisp.org>
10798
10799         * gnulib-tool (func_import): Add 'link-warning' to testsrelated_modules
10800         when needed.
10801         Test case: gnulib-tool --import --with-tests atexit inttypes.
10802         Reported by Pauli Miettinen <pauli.miettinen@cs.helsinki.fi>.
10803
10804 2009-09-23  Bruno Haible  <bruno@clisp.org>
10805
10806         * gnulib-tool (func_emit_tests_Makefile_am): Set uses_subdirs in a
10807         subcommand, not in a subshell.
10808
10809 2009-09-22  Eric Blake  <ebb9@byu.net>
10810
10811         unistd: sort replacement declarations
10812         * lib/unistd.in.h: Sort declarations.
10813
10814         open, openat: minor optimization
10815         * lib/open.c (open): If open succeeded, len is non-zero.
10816         * lib/openat.c (rpl_openat): Likewise.
10817
10818         link-follow: ensure correct result
10819         * m4/fcntl_h.m4 (gl_FCNTL_H): Clean up temporary file.
10820         * m4/link-follow.m4 (gl_FUNC_LINK_FOLLOWS_SYMLINK): Likewise, and
10821         distinguish between possible failures.
10822
10823 2009-09-21  Eric Blake  <ebb9@byu.net>
10824
10825         fts: avoid compiler warning
10826         * lib/fts.c (dirent_inode_sort_may_be_useful)
10827         (leaf_optimization_applies) [!__linux__]: Mark unused parameters.
10828
10829 2009-09-19  Bruno Haible  <bruno@clisp.org>
10830
10831         * lib/progreloc.c (canonicalize_file_name): New declaration.
10832
10833 2009-09-19  Eric Blake  <ebb9@byu.net>
10834
10835         link: fix quoting
10836         * m4/link.m4 (gl_FUNC_LINK): Fix shell quoting.
10837
10838         openat: fix openat bugs on Solaris 9
10839         * lib/openat.c (rpl_openat): Work around Solaris 9 bug.
10840         * m4/openat.m4 (gl_FUNC_OPENAT): Also replace openat on Solaris.
10841         * modules/openat (Depends-on): Add open.
10842         * m4/fcntl_h.m4 (gl_FCNTL_H_DEFAULTS): Provide new default.
10843         * modules/fcntl-h (Makefile.am): Substitute it.
10844         * lib/fcntl.in.h (openat): Declare replacement.
10845         * doc/posix-functions/openat.texi (openat): Document this.
10846
10847         openat: move fstatat and unlinkat into correct files
10848         * m4/openat.m4 (gl_FUNC_OPENAT): Adjust which files will be
10849         compiled.
10850         * lib/openat.c (fstatat, unlinkat): Move...
10851         * lib/fstatat.c (fstatat): ...into correct files.
10852         * lib/unlinkat.c (unlinkat): Likewise.
10853
10854         openat: fix unlinkat bugs on Solaris 9
10855         * lib/unlinkat.c (unlinkat): New file.
10856         * modules/openat (Depends-on): Add unlink.
10857         (Files): Distribute it.
10858         * m4/openat.m4 (gl_FUNC_OPENAT): Mark unlinkat for replacement if
10859         trailing slash behavior is broken.
10860         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add witness.
10861         * modules/unistd (Makefile.am): Substitute it.
10862         * lib/unistd.in.h (unlinkat): Declare replacement.
10863         * doc/posix-functions/unlinkat.texi (unlinkat): Document this.
10864
10865         openat: fix fstatat bugs on Solaris 9
10866         * lib/fstatat.c (rpl_fstatat): Copy recent fixes from lstat and
10867         stat.
10868         * doc/posix-functions/fstatat.texi (fstatat): Document this.
10869
10870         test-unlinkat: enhance test, to expose Solaris 9 bug
10871         * tests/test-unlink.c (main): Factor guts...
10872         * tests/test-unlink.h (test_rmdir_func): ...into new file.
10873         * tests/test-rmdir.h (test_rmdir_func): Add parameter.
10874         * tests/test-rmdir.c (main): Adjust caller.
10875         * tests/test-unlinkat.c (main): Likewise.  Add unlink tests.
10876         (unlinker): New helper function.
10877         (rmdirat): Enhance check.
10878         * modules/rmdir-tests (Depends-on): Add stdbool.
10879         * modules/unlink-tests (Depends-on): Likewise.
10880         (Files): Add test-unlink.h.
10881         * modules/openat-tests (Files): Likewise.
10882         (Depends-on): Add unlinkdir.
10883
10884         test-fstatat: new test, to expose Solaris 9 bugs
10885         * tests/test-stat.c (main): Factor guts...
10886         * tests/test-stat.h (test_stat_func): ...into new file.
10887         * tests/test-lstat.c (main): Factor guts...
10888         * tests/test-lstat.h (test_lstat_func): ...into new file.
10889         * tests/test-fstatat.c: New file.
10890         * modules/stat-tests (Files): Add test-stat.h.
10891         * modules/lstat-tests (Files): Add test-lstat.h.
10892         (Depends-on): Add stdbool.
10893         * modules/openat-tests (Depends-on): Add pathmax.
10894         (Files): Add test-lstat.h, test-stat.h, test-fstatat.c.
10895         (Makefile.am): Run new test.
10896
10897         remove: new module, for mingw and Solaris 9 bugs
10898         * modules/remove: New file.
10899         * lib/remove.c: Likewise.
10900         * m4/remove.m4 (gl_FUNC_REMOVE): Likewise.
10901         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Add witnesses.
10902         * modules/stdio (Makefile.am): Use them.
10903         * lib/stdio.in.h (remove): Declare replacement.
10904         * MODULES.html.sh (systems lacking POSIX:2008): Mention module.
10905         * doc/posix-functions/remove.texi (remove): Likewise.
10906         * modules/remove-tests: New test.
10907         * tests/test-remove.c: Likewise.
10908
10909         unlink: new module, for Solaris 9 bug
10910         * modules/unlink: New file.
10911         * lib/unlink.c: Likewise.
10912         * m4/unlink.m4 (gl_FUNC_UNLINK): Likewise.
10913         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add witnesses.
10914         * modules/unistd (Makefile.am): Use them.
10915         * lib/unistd.in.h (stat): Declare replacement.
10916         * MODULES.html.sh (systems lacking POSIX:2008): Mention module.
10917         * doc/posix-functions/unlink.texi (unlink): Likewise.
10918         * modules/unlink-tests: New test.
10919         * tests/test-unlink.c: Likewise.
10920
10921         lstat: fix Solaris 9 bug
10922         * lib/lstat.c (lstat): Also check for trailing slash on
10923         non-symlink, non-directories.  Use stat module to simplify logic.
10924         * doc/posix-functions/lstat.texi (lstat): Document it.
10925         * modules/lstat-tests (Depends-on): Add errno, same-inode.
10926         (configure.ac): Check for symlink.
10927         * tests/test-lstat.c (main): Add more tests.
10928
10929         stat: add as dependency to other modules
10930         * modules/chown (Depends-on): Add stat.
10931         * modules/euidaccess (Depends-on): Likewise.
10932         * modules/fchdir (Depends-on): Likewise.
10933         * modules/isdir (Depends-on): Likewise.
10934         * modules/link (Depends-on): Likewise.
10935         * modules/lstat (Depends-on): Likewise.
10936         * modules/mkdir-p (Depends-on): Likewise.
10937         * modules/modechange (Depends-on): Likewise.
10938         * modules/open (Depends-on): Likewise.
10939         * modules/readlink (Depends-on): Likewise.
10940         * modules/same (Depends-on): Likewise.
10941
10942         stat: fix Solaris 9 bug
10943         * m4/stat.m4 (gl_FUNC_STAT): Detect Solaris 9 bug with trailing
10944         slash.
10945         * lib/stat.c (rpl_stat): Work around it.
10946         * doc/posix-functions/stat.texi (stat): Update documentation.
10947
10948         stat: new module, for mingw bug
10949         * modules/stat: New file.
10950         * lib/stat.c: Likewise.
10951         * m4/stat.m4 (gl_FUNC_STAT): Likewise.
10952         * m4/sys_stat_h.m4 (gl_SYS_STAT_H_DEFAULTS): Add witnesses.
10953         * modules/sys_stat (Makefile.am): Use them.
10954         * lib/sys_stat.in.h (stat): Declare replacement.
10955         * lib/openat.c (fstatat): Deal with lstat and stat being function
10956         macros.
10957         * modules/openat (Depends-on): Add inline.
10958         * MODULES.html.sh (systems lacking POSIX:2008): Mention module.
10959         * doc/posix-functions/stat.texi (stat): Likewise.
10960         * modules/stat-tests: New test.
10961         * tests/test-stat.c: Likewise.
10962
10963 2009-09-19  Jim Meyering  <meyering@redhat.com>
10964
10965         syntax-check: detect unnecessary inclusion of canonicalize.h
10966         * top/maint.mk (sc_prohibit_canonicalize_without_use): New rule.
10967
10968 2009-09-19  Eric Blake  <ebb9@byu.net>
10969
10970         canonicalize-lgpl: adjust clients to use correct header
10971         * m4/canonicalize.m4 (gl_FUNC_CANONICALIZE_FILENAME_MODE)
10972         (gl_CANONICALIZE_LGPL): Use correct shell quoting.
10973         * modules/relocatable-prog-wrapper (Files): Drop canonicalize.h.
10974         * lib/fchdir.c (includes): Use <stdlib.h>, not "canonicalize.h".
10975         * lib/progreloc.c (includes): Likewise.
10976
10977 2009-09-19  Jim Meyering  <meyering@redhat.com>
10978
10979         test-posixtm.c: correct a comment
10980         * tests/test-posixtm.c: Correct first-line comment.
10981         Spotted by Eric Blake.
10982
10983 2009-09-16  Jim Meyering  <meyering@redhat.com>
10984
10985         posixtm-tests: make T const-correct; add a test case
10986         * tests/test-posixtm.c (T): Declare const.
10987         Add a test for -(2^31+1).
10988         Remove useless can-succeed-only-in-2002 test.
10989
10990         posixtm-tests: adjust the sole failing test
10991         * tests/test-posixtm.c: Correct 0000-01-01 00:00:00 test so that
10992         expected output matches what mktime now produces.  Cross-checked via
10993         erlang's calendar:datetime_to_gregorian_seconds({{1970,1,1},{0,0,0}})
10994
10995         posixtm: move #ifdef'd tests into a new module
10996         * lib/posixtm.c (posixtime): Remove #ifdef'd tests.  Move to...
10997         * tests/test-posixtm.c: ... this new file.
10998         * modules/posixtm-tests: New module.
10999
11000 2009-09-19  Eric Blake  <ebb9@byu.net>
11001
11002         openat: simplify use of at-func.c
11003         * lib/at-func.c (includes): Include prerequisites here, to
11004         simplify requirements on client files.
11005         * lib/openat-priv.h: Add double-inclusion guard.
11006         * lib/faccessat.c (includes): Simplify.
11007         * lib/fchmodat.c (includes): Likewise.
11008         * lib/fchownat.c (includes): Likewise.
11009         * lib/mkdirat.c (includes): Likewise.
11010         * lib/mkfifoat.c (includes): Likewise.
11011         * lib/symlinkat.c (includes): Likewise.
11012
11013         openat: allow return of fd 0
11014         * modules/chdir-long (Depends-on): Relax openat-safer to openat.
11015         * modules/save-cwd (Depends-on): Replace fcntl-safer with
11016         unistd-safer.
11017         * lib/chdir-long.c (includes): Replace "fcntl--.h" with
11018         <fcntl.h>; this module does not leak fds.
11019         * lib/openat.c (includes): Do not use "fcntl_safer"; plain openat
11020         must be allowed to return 0, leaving openat_safer to add the
11021         safety.
11022         (openat_permissive): Avoid writing to just-opened fd 2 if
11023         restoring the current directory fails.
11024         * lib/openat-die.c (openat_restore_fail): Add comment.
11025         * lib/save-cwd.c (includes): Make "fcntl--.h" conditional.
11026         (save_cwd): Guarantee safe fd, but without use of open_safer.
11027         * tests/test-openat.c: New test.
11028         * modules/openat-tests (Files, Makefile.am): Distribute and build
11029         new file.
11030
11031         relocatable-prog-wrapper: fix build
11032         * modules/relocatable-prog-wrapper (Files): Update name of
11033         canonicalize m4 file, broken on 2009-09-17.
11034         Reported by emad hajjar <aleppos@hotmail.com>.
11035
11036 2009-09-19  Bruno Haible  <bruno@clisp.org>
11037
11038         * lib/safe-alloc.h: Use the standard header with GPL copyright.
11039         * lib/safe-alloc.c: Likewise.
11040         Reported by Ian Beckwith <ianb@erislabs.net>.
11041
11042 2009-09-18  Bruno Haible  <bruno@clisp.org>
11043
11044         * gnulib-tool: Add advice to "cannot find configure.ac" error message.
11045         Reported by <erobles@sensacd.com.mx>.
11046
11047 2009-09-17  Eric Blake  <ebb9@byu.net>
11048
11049         canonicalize: in CAN_ALL_BUT_LAST, allow trailing slash
11050         * lib/canonicalize.c (canonicalize_filename_mode): Skip trailing
11051         slashes when checking if last component is missing.
11052         * tests/test-canonicalize.c (main): Test this.
11053
11054         canonicalize, canonicalize-lgpl: honor // if distinct from /
11055         * modules/canonicalize (Files): Add double-slash-root.m4.
11056         * modules/canonicalize-lgpl (Files): Likewise.
11057         * m4/canonicalize.m4 (gl_FUNC_CANONICALIZE_FILENAME_MODE)
11058         (gl_CANONICALIZE_LGPL_SEPARATE): Add dependency.
11059         * lib/canonicalize.c (DOUBLE_SLASH_IS_DISTINCT_ROOT): Provide
11060         fallback definition.
11061         (canonicalize_filename_mode): Use it to protect //.
11062         * lib/canonicalize-lgpl.c (DOUBLE_SLASH_IS_DISTINCT_ROOT)
11063         (__realpath): Likewise.
11064         * tests/test-canonicalize.c (main): Test this.
11065         * tests/test-canonicalize-lgpl.c (main): Likewise.
11066         * modules/canonicalize-tests (Depends-on): Add same-inode.
11067         * modules/canonicalize-lgpl-tests (Depends-on): Likewise.
11068
11069         canonicalize-lgpl: fix glibc bug with trailing slash
11070         * m4/canonicalize-lgpl.m4: Move contents...
11071         * m4/canonicalize.m4: ...here.
11072         (gl_CANONICALIZE_LGPL): Factor realpath check...
11073         (gl_FUNC_REALPATH_WORKS): ...into new macro.  Enhance to catch
11074         glibc 2.3.5 bug, fixed 2005-04-27.
11075         (gl_FUNC_CANONICALIZE_FILENAME_MODE): Use it.
11076         (gl_PREREQ_CANONICALIZE_LGPL): Inline...
11077         (gl_CANONICALIZE_LGPL_SEPARATE): ...into this macro.
11078         * modules/canonicalize-lgpl (Files): Manage file rename.
11079         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Provide default.
11080         * modules/stdlib (Makefile.am): Substitute witness.
11081         * lib/stdlib.in.h (canonicalize_file_name): Declare if replacement
11082         is needed.
11083         * lib/canonicalize-lgpl.c: Also compile if canonicalize_file_name
11084         replacement is required.
11085         * lib/canonicalize.c (canonicalize_file_name): Likewise.
11086         * doc/glibc-functions/canonicalize_file_name.texi
11087         (canonicalize_file_name): Document this.
11088         * doc/posix-functions/realpath.texi (realpath): Likewise.
11089
11090         canonicalize-lgpl: reject non-directory with trailing slash
11091         * lib/canonicalize-lgpl.c (__realpath): Synchronize with glibc.
11092         * tests/test-canonicalize-lgpl.c (main): Enhance test.  This
11093         catches failures in glibc 2.3.5.
11094         * tests/test-canonicalize.c (main): Likewise.
11095
11096         canonicalize-lgpl: use native realpath if it works
11097         * lib/canonicalize-lgpl.c (realpath): Guard with
11098         FUNC_REALPATH_WORKS.
11099         * lib/stdlib.in.h (realpath): Make declaration optional based on
11100         HAVE_REALPATH.
11101         * m4/canonicalize-lgpl.m4 (gl_CANONICALIZE_LGPL): Check whether
11102         native realpath works.
11103         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Provide default.
11104         * modules/stdlib (Makefile.am): Substitute witness.
11105
11106         canonicalize, canonicalize-lgpl: use <stdlib.h>
11107         * modules/canonicalize-lgpl (Files): Drop canonicalize.h.
11108         (Include): Mention <stdlib.h>.
11109         (configure.ac): Mention functions we provide.
11110         * modules/canonicalize (configure.ac): Likewise.
11111         * m4/canonicalize-lgpl.m4 (gl_CANONICALIZE_LGPL): Always replace
11112         realpath if canonicalize_file_name is missing.
11113         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Provide defaults.
11114         * modules/stdlib (Makefile.am): Substitute witnesses.
11115         * lib/stdlib.in.h (canonicalize_file_name, realpath): Declare.
11116         * lib/canonicalize-lgpl.c (includes): Adjust accordingly.
11117         * lib/canonicalize.h (canonicalize_file_name): Drop declaration.
11118         * NEWS: Document this.
11119         * doc/glibc-functions/canonicalize_file_name.texi
11120         (canonicalize_file_name): Likewise.
11121         * doc/posix-functions/realpath.texi (realpath): Likewise.
11122         * tests/test-canonicalize-lgpl.c (includes): Use <stdlib.h>.
11123
11124         test-canonicalize: consolidate into single C program
11125         * tests/test-canonicalize.sh: Delete; move setup into...
11126         * tests/test-canonicalize.c (main): ...the program, making it
11127         easier to run in debugger.  Add some tests.
11128         * modules/canonicalize-tests (Files): Remove unused file.
11129         (Depends-on): Add progname.
11130         (configure.ac, Makefile.am): Simplify.
11131
11132         test-canonicalize-lgpl: consolidate into single C program
11133         * tests/test-canonicalize-lgpl.sh: Delete; move setup into...
11134         * tests/test-canonicalize-lgpl.c (main): ...the program, making it
11135         easier to run in debugger.  Add some tests.
11136         * modules/canonicalize-lgpl-tests (Files): Remove unused file.
11137         (configure.ac, Makefile.am): Simplify.
11138
11139         canonicalize: avoid resolvepath
11140         * m4/canonicalize.m4 (gl_FUNC_CANONICALIZE_FILENAME_MODE): Delete
11141         unnecessary checks.
11142         * lib/canonicalize.c (includes): Simplify.
11143         (canonicalize_file_name): Drop resolvepath implementation.
11144         * modules/canonicalize (Depends-on): Drop filenamecat.
11145
11146         canonicalize: don't lose errno
11147         * lib/canonicalize.c (canonicalize_filename_mode): Protect errno
11148         over calls to free.
11149
11150         canonicalize: simplify errno handling
11151         * lib/canonicalize.c (__set_errno): Delete macro, and use direct
11152         assignment.
11153
11154         canonicalize, canonicalize-lgpl: update module dependencies
11155         * modules/canonicalize (Depends-on): Add extensions, lstat,
11156         pathmax, stdlib.
11157         (Files): Drop pathmax.h.
11158         (configure.ac): Adjust macro name.
11159         * modules/canonicalize-lgpl (Depends-on): Add errno, extensions,
11160         lstat, stdlib, sys_stat.
11161         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Rename...
11162         (gl_FUNC_CANONICALIZE_FILENAME_MODE): ...to this, and require
11163         extensions.
11164         * m4/canonicalize-lgpl.m4 (gl_CANONICALIZE_LGPL)
11165         (gl_CANONICALIZE_LGPL_SEPARATE): Require extensions.
11166         (gl_PREREQ_CANONICALIZE_LGPL): Assume unistd.h.
11167         * lib/canonicalize.h (canonicalize_file_name): Use <stdlib.h>
11168         declaration, if available.
11169         * lib/canonicalize-lgpl.c [HAVE_READLINK]: Delete this condition;
11170         we can rely on the readlink module.
11171         (MAXSYMLINKS): Also consult SYMLOOP_MAX.
11172         (includes): Use <unistd.h> unconditionally.
11173
11174 2009-09-17  Eric Blake  <ebb9@byu.net>
11175
11176         maint: make Include sections of modules consistent
11177         * modules/alloca: Use only header name; no need to list #include.
11178         * modules/alloca-opt: Likewise.
11179         * modules/arpa_inet: Likewise.
11180         * modules/canon-host: Likewise.
11181         * modules/configmake: Likewise.
11182         * modules/dirent: Likewise.
11183         * modules/eealloc: Likewise.
11184         * modules/environ: Likewise.
11185         * modules/fchdir: Likewise.
11186         * modules/fcntl: Likewise.
11187         * modules/fcntl-h: Likewise.
11188         * modules/gethrxtime: Likewise.
11189         * modules/gettime: Likewise.
11190         * modules/ignore-value: Likewise.
11191         * modules/inet_ntop: Likewise.
11192         * modules/inet_pton: Likewise.
11193         * modules/inttypes: Likewise.
11194         * modules/isnand-nolibm: Likewise.
11195         * modules/isnanf-nolibm: Likewise.
11196         * modules/mbchar: Likewise.
11197         * modules/mbfile: Likewise.
11198         * modules/mbiter: Likewise.
11199         * modules/mbuiter: Likewise.
11200         * modules/netdb: Likewise.
11201         * modules/netinet_in: Likewise.
11202         * modules/nproc: Likewise.
11203         * modules/pagealign_alloc: Likewise.
11204         * modules/poll: Likewise.
11205         * modules/printf-frexp: Likewise.
11206         * modules/pthread: Likewise.
11207         * modules/putenv: Likewise.
11208         * modules/random_r: Likewise.
11209         * modules/relocatable-prog: Likewise.
11210         * modules/search: Likewise.
11211         * modules/select: Likewise.
11212         * modules/selinux-h: Likewise.
11213         * modules/settime: Likewise.
11214         * modules/signal: Likewise.
11215         * modules/size_max: Likewise.
11216         * modules/socklen: Likewise.
11217         * modules/ssize_t: Likewise.
11218         * modules/stdarg: Likewise.
11219         * modules/stdbool: Likewise.
11220         * modules/stddef: Likewise.
11221         * modules/stdint: Likewise.
11222         * modules/stdio: Likewise.
11223         * modules/stdlib: Likewise.
11224         * modules/string: Likewise.
11225         * modules/strings: Likewise.
11226         * modules/sys_file: Likewise.
11227         * modules/sys_ioctl: Likewise.
11228         * modules/sys_select: Likewise.
11229         * modules/sys_socket: Likewise.
11230         * modules/sys_stat: Likewise.
11231         * modules/sys_time: Likewise.
11232         * modules/sys_times: Likewise.
11233         * modules/sys_utsname: Likewise.
11234         * modules/sys_wait: Likewise.
11235         * modules/sysexits: Likewise.
11236         * modules/time: Likewise.
11237         * modules/times: Likewise.
11238         * modules/tmpfile: Likewise.
11239         * modules/trim: Likewise.
11240         * modules/unistd: Likewise.
11241         * modules/wchar: Likewise.
11242         * modules/wctype: Likewise.
11243
11244 2009-09-17  Bruno Haible  <bruno@clisp.org>
11245
11246         Make getdate.y compile on QNX and NetBSD 5 / i386.
11247         * m4/getdate.m4 (gl_GETDATE): Conditionally define
11248         TIME_T_FITS_IN_LONG_INT.
11249         * lib/getdate.y (long_time_t): New type.
11250         (relative_time): Change type of 'seconds' field to long_time_t.
11251         (get_date): Update types of local variables. Check against overflow
11252         during conversion from long_time_t to time_t.
11253         Reported by Matt Kraai <kraai@ftbfs.org>
11254         and Hasso Tepper <hasso@netbsd.org>.
11255
11256 2009-09-17  Bruno Haible  <bruno@clisp.org>
11257
11258         * modules/COPYING: Update copyright years.
11259         * modules/README: Likeiwse.
11260         * doc/gnulib-intro.texi (Copyright): Use a wildcard year.
11261         Reported by Ian Beckwith <ianb@erislabs.net>.
11262
11263 2009-09-17  Ian Beckwith  <ianb@erislabs.net>  (tiny change)
11264
11265         * users.txt: Update references for gnuit package.
11266
11267 2009-09-17  Ian Beckwith  <ianb@erislabs.net>  (tiny change)
11268
11269         * m4/getdelim.m4: Fix typo in copyright line.
11270
11271 2009-09-17  Bruno Haible  <bruno@clisp.org>
11272
11273         * lib/atoll.c: Use the standard header with GPL copyright.
11274         * lib/argz.in.h: Likewise.
11275         * lib/glob.c: Likewise.
11276         * lib/glob-libc.h: Likewise.
11277         * lib/random_r.c: Likewise.
11278         * lib/siglist.h: Likewise.
11279         * lib/strsignal.c: Likewise.
11280         Reported by Ian Beckwith <ianb@erislabs.net>.
11281
11282 2009-09-17  Eric Blake  <ebb9@byu.net>
11283
11284         rmdir: ensure correct dependency order
11285         * m4/rmdir.m4 (gl_FUNC_RMDIR): Require unistd defaults.
11286
11287 2009-09-17  Bruno Haible  <bruno@clisp.org>
11288
11289         Disable assertion that fails on NetBSD 5 / i386.
11290         * lib/mktime.c (ydhms_diff): Disable assertion about time_t size.
11291         Reported by Sam Steingold <sds@gnu.org>
11292         and Hasso Tepper <hasso@netbsd.org>.
11293
11294 2009-09-16  Eric Blake  <ebb9@byu.net>
11295
11296         unlinkdir: port to mingw
11297         * m4/unlinkdir.m4 (gl_UNLINKDIR): Add mingw to list of platforms
11298         on which no one can unlink a directory.
11299
11300         stdlib: sort witness names
11301         * modules/stdlib (Makefile.am): Sort replacements.
11302         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Likewise.
11303         * lib/stdlib.in.h: Likewise.
11304
11305         parse-duration-tests: avoid link failure
11306         * modules/parse-duration-tests (test_parse_duration_LDADD): Add
11307         LIBINTL.
11308         Reported by Tom G. Christensen.
11309
11310         openat-tests: ensure unlinkat behaves like rmdir
11311         * tests/test-rmdir.c (main): Factor guts...
11312         * tests/test-rmdir.h (test_rmdir_func): ...into new file.
11313         * modules/rmdir-tests (Files): Ship new file.
11314         * modules/openat-tests: New test.
11315         * tests/test-unlinkat.c: Likewise.
11316
11317         rmdir-errno: mark obsolete, it is unsafe for cross-compilation
11318         * modules/rmdir-errno (Status, Notice): Now obsolete.
11319
11320         rmdir: work around cygwin 1.5.x and mingw bugs
11321         * m4/rmdir.m4 (gl_FUNC_RMDIR): Detect the bugs.
11322         * lib/rmdir.c (rmdir): Work around it.
11323         * modules/rmdir (Status, Notice): No longer obsolete.
11324         (Files): Add dos.m4.
11325         (Depends-on): Add unistd.
11326         (configure.ac): Set witnesses.
11327         (License): Relax to LGPLv2+.
11328         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Set defaults.
11329         * modules/unistd (Makefile.am): Substitute witnesses.
11330         * lib/unistd.in.h (rmdir): Declare replacement.
11331         * doc/posix-functions/rmdir.texi (rmdir): Document this.
11332         * modules/rmdir-tests: New tests.
11333         * tests/test-rmdir.c: Likewise.
11334
11335 2009-09-15  Eric Blake  <ebb9@byu.net>
11336
11337         fchdir: improve use of replacement functions
11338         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Set appropriate witnesses.
11339         * m4/sys_stat_h.m4 (gl_SYS_STAT_H_DEFAULTS): Add REPLACE_FSTAT.
11340         * m4/dirent_h.m4 (gl_DIRENT_H_DEFAULTS): Add REPLACE_OPENDIR,
11341         REPLACE_CLOSEDIR.
11342         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add REPLACE_DUP.
11343         * modules/sys_stat (Makefile.am): Substitute correct witness.
11344         * modules/dirent (Makefile.am): Likewise.
11345         * modules/unistd (Makefile.am): Likewise.
11346         * lib/dirent.in.h (opendir, closedir): Use better witnesses.
11347         * lib/unistd.in.h (dup): Likewise.
11348         * lib/sys_stat.in.h (fstat): Likewise.
11349
11350         maint: ignore gnulib-tool temp files
11351         * .gitignore: Ignore files created during gnulib-tool --test.
11352
11353 2009-09-13  Jim Meyering  <meyering@redhat.com>
11354
11355         posixtm: don't reject a time that specify "60" as the number of seconds
11356         * lib/posixtm.c (posixtime): The code to reject invalid dates
11357         would also reject a time specified with the .60 suffix.
11358         But POSIX allows that, in order to accommodate leap seconds.
11359         So don't reject it.
11360         (main): Adjust tests accordingly.
11361         * modules/posixtm (Depends-on): Add stpcpy.
11362
11363 2009-09-11  Jim Meyering  <meyering@redhat.com>
11364
11365         announce-gen: include [$release_type] in emitted Subject:
11366         * build-aux/announce-gen (get_tool_versions): Include [$release_type],
11367         e.g., [stable] in the emitted Subject: line.
11368
11369 2009-09-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11370
11371         Remove obsolete macros from several modules.
11372         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Replace
11373         obsolete Autoconf macros with their modern counterparts.
11374         * m4/check-math-lib.m4 (gl_CHECK_MATH_LIB): Likewise.
11375         * m4/gc-camellia.m4 (gl_GC_CAMELLIA): Likewise.
11376         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Likewise.
11377         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): Likewise.
11378         * m4/gethostname.m4 (gl_FUNC_GETHOSTNAME): Likewise.
11379         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
11380         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Likewise.
11381         * m4/isfinite.m4 (gl_ISFINITEL_WORKS): Likewise.
11382         * m4/poll.m4 (gl_FUNC_POLL): Likewise.
11383         * m4/readline.m4 (gl_FUNC_READLINE): Likewise.
11384         * m4/round.m4 (gl_FUNC_ROUND): Likewise.
11385         * m4/roundf.m4 (gl_FUNC_ROUNDF): Likewise.
11386         * m4/select.m4 (gl_FUNC_SELECT): Likewise.
11387         * m4/sockets.m4 (gl_SOCKETS): Likewise.
11388         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Likewise.
11389         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Likewise.
11390         * m4/sysexits.m4 (gl_SYSEXITS): Likewise.
11391         * m4/time_r.m4 (gl_TIME_R): Likewise.
11392         * m4/tsearch.m4 (gl_FUNC_TSEARCH): Likewise.
11393         * m4/vararrays.m4 (AC_C_VARARRAYS): Likewise.
11394         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
11395
11396         Fix copyright header in build-aux scripts.
11397         * build-aux/git-version-gen: Fix copyright header to match GPLv3
11398         recommendation.
11399         * build-aux/ncftpput-ftp: Likewise.
11400         * build-aux/update-copyright: Likewise.
11401
11402 2009-09-09  Eric Blake  <ebb9@byu.net>
11403
11404         test-link: allow Linux choice of errno
11405         * tests/test-link.c (main): Relax test for alternate error.
11406
11407         strndup: fix improper m4 caching
11408         * m4/strndup.m4 (gl_FUNC_STRNDUP): Rework to avoid side effects
11409         inside AC_CACHE_CHECK.  Use REPLACE_STRNDUP, not HAVE_STRNDUP.
11410         (gl_PREREQ_STRNDUP): Delete.
11411         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Update default.
11412         * modules/string (Makefile.am): Substitute it.
11413         * lib/string.in.h (strndup): Modernize prototype.
11414
11415         getcwd: port to mingw
11416         * m4/getcwd.m4 (gl_FUNC_GETCWD): Mingw directories are very
11417         different from the POSIX assumptions made throughout the getcwd
11418         module; fortunately, the mingw getcwd does not need replacement.
11419         (gl_FUNC_GETCWD_NULL): Skip test on mingw.
11420         * modules/getcwd-tests: New test.
11421         * tests/test-getcwd.c: Likewise.
11422
11423         link: fix platform bugs
11424         * m4/link.m4 (gl_FUNC_LINK): Detect Solaris and Cygwin bugs.
11425         * lib/link.c (link): Work around them.  Fix related mingw bug.
11426         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add REPLACE_LINK.
11427         * modules/unistd (Makefile.am): Substitute it.
11428         * lib/unistd.in.h (link): Declare replacement.
11429         * doc/posix-functions/link.texi (link): Document this.
11430         * modules/link (Depends-on): Add strdup-posix, sys_stat.
11431
11432         test-link: consolidate into single C program, test more cases
11433         * tests/test-link.sh: Delete.
11434         * tests/test-link.c: Test more error conditions.  Exposes bugs on
11435         at least Cygwin and Solaris.
11436         * modules/link-tests (Files): Remove unused file.
11437         (Depends-on): Add errno, sys_stat.
11438         (Makefile.am): Simplify.
11439
11440 2009-09-08  Bruno Haible  <bruno@clisp.org>
11441
11442         Work around towlower, towupper bug on mingw.
11443         * lib/wctype.in.h (towlower, towupper) [__MINGW32__]: New replacements.
11444         * m4/wctype.m4 (gl_WCTYPE_H): Replace <wctype.h> also on mingw.
11445         * doc/posix-functions/towlower.texi: Mention the mingw bug.
11446         * doc/posix-functions/towupper.texi: Likewise.
11447         Reported by Eric Blake.
11448
11449 2009-09-08  Jim Meyering  <meyering@redhat.com>
11450
11451         build: don't try to run autoheader if we don't use it
11452         * build-aux/bootstrap: Define AUTOHEADER=true when AC_CONFIG_HEADERS
11453         is not used in configure.ac.
11454
11455 2009-09-08  Eric Blake  <ebb9@byu.net>
11456
11457         euidaccess: fix compilation error
11458         * lib/euidaccess.c (includes): Add <fcntl.h>, for AT_EACCESS.
11459
11460         rawmemchr: relax license
11461         * modules/rawmemchr (License): Derived from glibc, so LGPLv2+ is
11462         okay.
11463         Reported by Jim Meyering.
11464
11465         mkfifoat: new module
11466         * modules/mkfifoat: New file.
11467         * lib/mkfifoat.c: Likewise.
11468         * m4/mkfifoat.m4 (gl_FUNC_MKFIFOAT): Likewise.
11469         * m4/sys_stat_h.m4 (gl_SYS_STAT_H_DEFAULTS): Add witnesses.
11470         * modules/sys_stat (Makefile.am): Use them.
11471         * lib/sys_stat.in.h (mkfifoat, mknodat): Declare them.
11472         * MODULES.html.sh (File system functions): Mention module.
11473         * doc/posix-functions/mkfifoat.texi (mkfifoat): Likewise.
11474         * doc/posix-functions/mknodat.texi (mknodat): Likewise.
11475         * modules/mkfifoat-tests: New test.
11476         * tests/test-mkfifoat.c: Likewise.
11477
11478         strchrnul: relax license
11479         * modules/strchrnul (License): Derived from glibc, so LGPLv2+ is
11480         okay.
11481         Reported by Jim Meyering.
11482
11483 2009-09-08  Eric Blake  <ebb9@byu.net>
11484
11485         fstatat: fix compilation on Solaris
11486         * lib/fstatat.c (includes): Add fcntl.h.
11487         Reported by Pádraig Brady.
11488
11489 2009-09-07  Eric Blake  <ebb9@byu.net>
11490
11491         rename: modernize replacement
11492         * modules/rename (Depends-on): Add stdio.
11493         (configure.ac): Declare witness.
11494         * m4/rename.m4 (gl_FUNC_RENAME): Ensure dependency order, and let
11495         stdio take care of replacement.
11496         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Add new defaults.
11497         * modules/stdio (Makefile.am): Substitute them.
11498         * lib/stdio.in.h (rename): Declare replacement.
11499         * lib/rename.c (includes): Allow cross-compilation to non-windows
11500         machines.
11501         * doc/posix-functions/rename.texi (rename): Improve
11502         documentation.
11503
11504         stdio: sort witness names
11505         * modules/stdio (Makefile.am): Sort replacements.
11506         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
11507         * lib/stdio.in.h: Likewise.
11508
11509         getcwd: minor cleanups
11510         * lib/getcwd.c (AT_FDCWD): Delete; rely on <fcntl.h> instead.
11511         (is_ENAMETOOLONG): Delete; ENAMETOOLONG is portable.
11512
11513         openat: provide more convenience names
11514         * modules/faccessat (configure.ac): Add C witness.
11515         * lib/unistd.in.h (readlinkat): Fix typo.
11516         * lib/openat.h (statat, lstatat, accessat, euidaccessat): New
11517         convenience wrappers.
11518         * top/maint.mk (sc_prohibit_openat_without_use): Allow these
11519         wrappers in syntax checks.
11520
11521 2009-09-06  Eric Blake  <ebb9@byu.net>
11522
11523         doc: fix comments in recent patches
11524         * lib/faccessat.c: Mention correct function.
11525         * lib/fchmodat.c: Likewise.
11526         * lib/fchownat.c: Likewise.
11527         * lib/symlinkat.c: Likewise.
11528         * doc/posix-headers/fcntl.texi (fcntl.h): Cygwin 1.7 has AT_*
11529         constants.
11530
11531         faccessat, symlinkat: continue cleanup of previous patch
11532         * m4/symlinkat.m4 (gl_FUNC_SYMLINKAT): Ensure dependency order.
11533         * m4/faccessat.m4 (gl_FUNC_FACCESSAT): Likewise.
11534         * modules/unistd (Makefile.am): Substitute GNULIB_READLINKAT.
11535         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Offer GNULIB_READLINKAT.
11536         * modules/symlinkat (configure.ac): Set GNULIB_READLINKAT.
11537         * lib/unistd.in.h (readlinkat): Declare if GNULIB_READLINKAT is
11538         set.
11539
11540 2009-09-06  Bruno Haible  <bruno@clisp.org>
11541
11542         * lib/sys_stat.in.h (fchmodat): Declare if GNULIB_FCHMODAT is set.
11543         (fstatat): Declare if GNULIB_FSTATAT is set.
11544         (mkdirat): Declare if GNULIB_MKDIRAT is set.
11545         * lib/unistd.in.h (fchownat): Declare if GNULIB_FCHOWNAT is set.
11546         (unlinkat): Declare if GNULIB_UNLINKAT is set.
11547         * modules/fcntl-h (Files): Remove m4/openat.m4.
11548         * modules/sys_stat (Files): Remove m4/openat.m4.
11549         (Makefile.am): Substitute GNULIB_FCHMODAT, GNULIB_FSTATAT,
11550         GNULIB_MKDIRAT instead of GNULIB_OPENAT.
11551         * modules/unistd (Files): Remove m4/openat.m4.
11552         (Makefile.am): Substitute GNULIB_FCHOWNAT, GNULIB_UNLINKAT instead of
11553         GNULIB_OPENAT.
11554         * m4/fcntl_h.m4 (gl_FCNTL_H_DEFAULTS): Initialize GNULIB_OPENAT,
11555         HAVE_OPENAT here. Don't require gl_OPENAT_DEFAULTS.
11556         * m4/sys_stat_h.m4 (gl_SYS_STAT_H_DEFAULTS): Initialize
11557         GNULIB_FCHMODAT, GNULIB_FSTATAT, GNULIB_MKDIRAT, HAVE_FCHMODAT,
11558         HAVE_FSTATAT, HAVE_MKDIRAT, REPLACE_FSTATAT here. Don't require
11559         gl_OPENAT_DEFAULTS.
11560         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_FCHOWNAT,
11561         GNULIB_UNLINKAT, HAVE_FCHOWNAT, HAVE_UNLINKAT, REPLACE_FCHOWNAT here.
11562         Don't require gl_OPENAT_DEFAULTS.
11563         * m4/openat.m4 (gl_FUNC_OPENAT): Require gl_FCNTL_H_DEFAULTS,
11564         gl_SYS_STAT_H_DEFAULTS, gl_UNISTD_H_DEFAULTS. Set GNULIB_FCHMODAT,
11565         GNULIB_FSTATAT, GNULIB_MKDIRAT, GNULIB_FCHOWNAT, GNULIB_UNLINKAT.
11566         (gl_OPENAT_DEFAULTS): Remove macro.
11567
11568 2009-09-06  Bruno Haible  <bruno@clisp.org>
11569
11570         * modules/openat (configure.ac): Remove unneeded witness.
11571
11572 2009-09-06  Bruno Haible  <bruno@clisp.org>
11573
11574         Set errno to ENOSYS when a function is entirely unsupported.
11575         * lib/chown.c (rpl_chown) [!HAVE_CHOWN]: Set errno to ENOSYS instead of
11576         EOPNOTSUPP.
11577         * lib/lchown.c (lchown) [!HAVE_CHOWN]: Likewise.
11578         * modules/chown (Depends-on): Remove errno.
11579
11580 2009-09-06  Bruno Haible  <bruno@clisp.org>
11581
11582         * doc/posix-headers/fcntl.texi (AT_*): Mention affected platforms.
11583
11584 2009-09-06  Bruno Haible  <bruno@clisp.org>
11585
11586         * lib/sys_stat.in.h: Fix preprocessor command indentation.
11587
11588 2009-09-06  Ben Pfaff  <blp@gnu.org>
11589             Bruno Haible  <bruno@clisp.org>
11590
11591         Work around a glibc bug in strtok_r.
11592         * lib/string.in.h (strtok_r): Replace if REPLACE_STRTOK_R is set.
11593         Undefine if UNDEFINE_STRTOK_R is set.
11594         * lib/strtok_r.c (strtok_r, __strtok_r) [!_LIBC]: Don't undefine.
11595         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
11596         REPLACE_STRTOK_R and UNDEFINE_STRTOK_R.
11597         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Check against the glibc bug.
11598         * modules/string (Makefile.am): Substitute REPLACE_STRTOK_R,
11599         UNDEFINE_STRTOK_R.
11600         * doc/posix-functions/strtok_r.texi: Mention the glibc 2.7 bug.
11601
11602 2009-09-06  Sergey Poznyakoff  <gray@gnu.org.ua>
11603
11604         exclude: minor fix
11605         * lib/exclude.c: Include wctype.h
11606
11607 2009-09-06  Akim Demaille  <demaille@gostai.com>
11608
11609         bootstrap: improve error message
11610         * build-aux/bootstrap (find_tool): Upon failure, report the list
11611         of candidates.
11612         Honor the initial value of the envvar.
11613
11614 2009-09-05  Eric Blake  <ebb9@byu.net>
11615
11616         symlinkat: new module
11617         * modules/symlinkat: New file.
11618         * lib/symlinkat.c: Likewise.
11619         * m4/symlinkat.m4 (gl_FUNC_SYMLINKAT): Likewise.
11620         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add witnesses.
11621         * modules/unistd (Makefile.am): Use them.
11622         * lib/unistd.in.h (symlinkat, readlinkat): Declare them.
11623         (faccessat) [GNULIB_POSIXCHECK]: Fix typo.
11624         * lib/at-func.c (FUNC_RESULT): New macro, defaulting to int.
11625         * MODULES.html.sh (File system functions): Mention module.
11626         * doc/posix-functions/symlinkat.texi (symlinkat): Likewise.
11627         * doc/posix-functions/readlinkat.texi (readlinkat): Likewise.
11628         * modules/symlinkat-tests: New test.
11629         * tests/test-symlinkat.c: Likewise.
11630
11631         test-openat-safer: add more checks
11632         * tests/test-openat-safer.c (main): Check more code paths.
11633
11634 2009-09-05  Jim Meyering  <meyering@redhat.com>
11635
11636         syntax-check: detect unnecessary inclusion of openat.h
11637         * top/maint.mk (sc_prohibit_openat_without_use): New rule.
11638
11639 2009-09-05  Bruno Haible  <bruno@clisp.org>
11640
11641         Support towlower, towupper.
11642         * doc/posix-functions/towlower.texi: Mention module wctype.
11643         * doc/posix-functions/towupper.texi: Likewise.
11644         * lib/wctype.in.h (towlower, towupper): New functions.
11645         * tests/test-wctype.c: Include stdio.h, stdlib.h.
11646         (ASSERT): New macro.
11647         (e): New variable.
11648         (main): Test also towlower, towupper. Test WEOF argument.
11649         Reported by Alan Hourihane <alanh@fairlite.co.uk>.
11650
11651 2009-09-05  Bruno Haible  <bruno@clisp.org>
11652
11653         Fix conversion behaviour when the input is invalid.
11654         * lib/striconveh.c (mem_cd_iconveh_internal): Fix storing of question
11655         mark occurring in first pass of indirect conversion.
11656         * tests/test-striconveh.c (main): Test conversion of invalid ASCII
11657         input.
11658         Found by clang's static analyzer.
11659
11660 2009-09-05  Bruno Haible  <bruno@clisp.org>
11661
11662         * tests/test-striconveh.c (main): Test indirect conversion on platforms
11663         where direct conversion is possible.
11664
11665 2009-09-04  Eric Blake  <ebb9@byu.net>
11666
11667         openat: fail with ENOENT on empty name
11668         * lib/openat-proc.c (openat_proc_name): Special-case the empty
11669         buffer.
11670
11671         link-follow: fix logic bug in prior patch
11672         * m4/link-follow.m4 (gl_FUNC_LINK_FOLLOWS_SYMLINK): Fix bug that
11673         reversed sense of yes and no in prior patch.  Avoid confusing
11674         compilation failure with desired semantics.
11675
11676         link-follow: accomodate mingw and cross-compilation
11677         * m4/link-follow.m4 (gl_AC_FUNC_LINK_FOLLOWS_SYMLINK): Rename...
11678         (gl_FUNC_LINK_FOLLOWS_SYMLINK): ...to this.  Change
11679         cross-compilation results to -1, to make linkat easier to
11680         implement when cross-compiling.  Trivially support mingw.
11681         * modules/link-follow (configure.ac): Call new name.
11682         * NEWS: Mention this.
11683
11684 2009-09-03  Eric Blake  <ebb9@byu.net>
11685
11686         faccessat: compile replacement
11687         * m4/faccessat.m4 (gl_FUNC_FACCESSAT): Build replacement when
11688         needed.
11689
11690         fts: fix compilation error
11691         * lib/fts.c (includes): Re-add "openat.h", for
11692         openat_needs_fchdir.
11693
11694         faccessat: new module
11695         * modules/faccessat: New file.
11696         * lib/faccessat.c: Likewise.
11697         * m4/faccessat.m4 (gl_FUNC_FACCESSAT): Likewise.
11698         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add witness.
11699         * modules/unistd (Makefile.am): Use it.
11700         * lib/unistd.in.h (faccessat): Declare it.
11701         (F_OK, X_OK, W_OK, R_OK): Provide definitions.
11702         * lib/fcntl.in.h (AT_SYMLINK_FOLLOW, AT_EACCESS): Likewise.
11703         * MODULES.html.sh (File system functions): Mention it.
11704         * doc/posix-functions/faccessat.texi (faccessat): Likewise.
11705         * doc/posix-headers/fcntl.texi (fcntl.h): Likewise.
11706
11707         euidaccess: prefer POSIX over non-standard implementation
11708         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Check for faccessat.
11709         * lib/euidaccess.c (euidaccess): Use it if available.
11710
11711         openat: make template easier to use
11712         * lib/at-func.c (CALL_FUNC): Allow AT_FUNC_USE_F1_COND and
11713         AT_FUNC_F2 to be undefined.
11714         (VALIDATE_FLAG): New macro; use it to reject bad flags.
11715         (AT_FUNC_USE_F1_COND): Change sense to just flag bit.
11716         * lib/fchmodat.c (AT_FUNC_USE_F1_COND): Adjust.
11717         * lib/fchownat.c (AT_FUNC_USE_F1_COND): Likewise.
11718         * lib/openat.c (AT_FUNC_USE_F1_COND) [fstatat, unlinkat]:
11719         Likewise.
11720         * lib/mkdirat.c (AT_FUNC_F2, AT_FUNC_USE_F1_COND): Delete.
11721         * lib/selinux-at.c (AT_FUNC_F2, AT_FUNC_USE_F1_COND)
11722         [getfileconat, lgetfileconat, setfileconat, lsetfileconat]:
11723         Likewise.
11724
11725         openat: declare in POSIX headers
11726         * NEWS: Mention this.
11727         * modules/openat (configure.ac): Declare witnesses.
11728         (Depends-on): Add fcntl-h, sys_stat, unistd.
11729         (Include): Mention correct headers.
11730         * modules/fcntl-h (Depends-on): Add link-warning.
11731         (Files): Add openat.m4.
11732         (Makefile.am): Substitute witnesses.
11733         * modules/sys_stat (Files, Makefile.am): Likewise.
11734         * modules/unistd (Files, Makefile.am): Likewise.
11735         * m4/openat.m4 (gl_FUNC_OPENAT, gl_FUNC_FCHOWNAT): Set witnesses.
11736         (gl_OPENAT_DEFAULTS): New macro.
11737         * m4/fcntl_h.m4 (gl_FCNTL_H_DEFAULTS): Use it.
11738         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Likewise.
11739         * m4/sys_stat_h.m4 (gl_SYS_STAT_H_DEFAULTS): Likewise.
11740         (SYS_STAT_H): Remove unused variable.
11741         * doc/posix-headers/fcntl.texi (fcntl.h): Update content.
11742         * lib/fcntl--.h (includes): Remove unneeded header.
11743         * lib/openat-safer.c (includes): Likewise.
11744         * lib/openat.h (AT_FDCWD, AT_SYMLINK_NOFOLLOW, AT_REMOVEDIR)
11745         (openat, fstatat, unlinkat, mkdirat, fchmodat, fchownat): Move to
11746         appropriate headers.
11747         (__OPENAT_PREFIX): Delete.
11748         * lib/fcntl.in.h (openat): Provide declaration.
11749         (AT_FDCWD): Fix Solaris bug.
11750         (AT_SYMLINK_NOFOLLOW, AT_REMOVEDIR): Provide macros.
11751         * lib/sys_stat.in.h (fstatat, mkdirat): Provide declaration.
11752         * lib/fchmodat.c (includes):  Adjust to find declaration.
11753         * lib/fchownat.c (includes): Likewise.
11754         * lib/mkdirat.c (includes): Likewise.
11755         * lib/fstatat.c (includes): Likewise.  Ensure original fstatat is
11756         still visible.
11757
11758 2009-09-02  Eric Blake  <ebb9@byu.net>
11759
11760         errno: use consistently
11761         * lib/c-stack.c (ENOTSUP): <errno.h> guarantees a definition.
11762         * lib/canonicalize-lgpl.c (ENAMETOOLONG): Likewise.
11763         * lib/canonicalize.c (ELOOP): Likewise.
11764         * lib/inet_ntop.c (EAFNOSUPPORT): Likewise.
11765         * lib/inet_pton.c (EAFNOSUPPORT): Likewise.
11766         * lib/lchown.c (EOPNOTSUPP): Likewise.
11767         * lib/openat-priv.h (ENOSYS, EOPNOTSUPP): Likewise.
11768         * lib/savewd.c (ESTALE): Likewise.
11769         * lib/settime.c (ENOSYS): Likewise.
11770         * lib/utimens.c (ENOSYS): Likewise.
11771         * lib/xgethostname.c (ENAMETOOLONG): Likewise.
11772         * lib/chdir-safer.c (ELOOP): Likewise.
11773         (chdir_no_follow): Use HAVE_READLINK, not ELOOP, as witness.
11774         * modules/c-stack (Depends-on): Add errno.
11775         * modules/canonicalize (Depends-on): Likewise.
11776         * modules/chdir-safer (Depends-on): Likewise.
11777         * modules/fdopendir (Depends-on): Likewise.
11778         * modules/inet_ntop (Depends-on): Likewise.
11779         * modules/inet_pton (Depends-on): Likewise.
11780         * modules/lchown (Depends-on): Likewise.
11781         * modules/openat (Depends-on): Likewise.
11782         * modules/savewd (Depends-on): Likewise.
11783         * modules/settime (Depends-on): Likewise.
11784         * m4/chdir-safer.m4 (gl_CHDIR_SAFER): Check for readlink.
11785
11786         fts: avoid leaking fds
11787         * modules/fts (Depends-on): Add cloexec.
11788         * lib/fts.c (opendirat, diropen, fts_build): Set close-on-exec
11789         flag.
11790
11791         fts: make directory fds more robust
11792         * lib/fts.c (O_DIRECTORY): Let <fcntl.h> take care of this.
11793         (opendirat): Specify O_DIRECTORY, and add fallbacks for safety.
11794
11795         backupfile, chdir-long, fts, savedir: make safer
11796         * lib/backupfile.c (includes): Use "dirent--.h", since
11797         numbered_backup can write to stderr during readdir.
11798         * lib/savedir.c (includes): Likewise.
11799         * lib/chdir-long.c (includes): Use "fcntl--.h", since openat
11800         emulation can write to stderr on failure.
11801         * lib/fts.c (includes) [!_LIBC]: Likewise for opendir and openat.
11802         * lib/getcwd.c: Document why opendir_safer is unused.
11803         * lib/glob.c: Likewise.
11804         * lib/scandir.c: Likewise.
11805         * lib/openat-proc.c: Likewise, for open_safer.
11806         * modules/backupfile (Depends-on): Add dirent-safer.
11807         * modules/savedir (Depends-on): Likewise.
11808         * modules/fts (Depends-on): Add dirent-safer and openat-safer.
11809         * modules/chdir-long (Depends-on): Add openat-safer.
11810
11811         openat-safer: new module
11812         * modules/openat-safer: New file.
11813         * lib/openat-safer.c: Likewise.
11814         * m4/fcntl-safer.m4 (gl_OPENAT_SAFER): New macro.
11815         * lib/fcntl-safer.h (openat_safer): Declare.
11816         * lib/fcntl--.h (openat): Override.
11817         * MODULES.html.sh (File descriptor based I/O): Mention it.
11818         * lib/openat.h: Add double-inclusion guards.
11819         * lib/openat.c (includes): Only include "fcntl-safer.h", not
11820         "fcntl--.h", so we can implement openat.
11821         * modules/openat-safer-tests: New test.
11822         * tests/test-openat-safer.c: New file.
11823
11824         dirent-safer: new module
11825         * modules/dirent-safer: New file.
11826         * lib/dirent--.h: Likewise.
11827         * lib/dirent-safer.h: Likewise.
11828         * lib/opendir-safer.c: Likewise.
11829         * m4/dirent-safer.m4: Likewise.
11830         * MODULES.html.sh (Enhancements for POSIX:2008): Mention it.
11831         * modules/dirent-safer-tests: New test.
11832         * tests/test-dirent-safer.c: New file.
11833         * lib/fdopendir.c (includes): Ensure fdopendir is also safe.
11834
11835         fdopendir: optimize on mingw
11836         * lib/unistd.in.h (_gl_directory_name): New prototype.
11837         * lib/fchdir.c (_gl_directory_name): Implement it.
11838         (fchdir): Use it to simplify implementation.
11839         * lib/fdopendir.c (fdopendir) [REPLACE_FCHDIR]: Use metadata from
11840         fchdir, when available, to avoid calling [f]chdir().
11841
11842         fdopendir: split into its own module
11843         * lib/openat.c (fdopendir): Move...
11844         * lib/fdopendir.c: ...into new file.
11845         * modules/fdopendir: New module.
11846         * m4/fdopendir.m4 (gl_FUNC_FDOPENDIR): New file.
11847         * modules/openat (Depends-on): Add fdopendir.
11848         * m4/openat.m4 (gl_FUNC_OPENAT): No longer need to check for
11849         fdopendir here.
11850         * modules/savedir (Depends-on): Only need fdopendir, not full
11851         openat.
11852         * lib/savedir.c (include): Use <dirent.h>, not "openat.h".
11853         * lib/openat.h (fdopendir): Drop prototype.
11854         * lib/dirent.in.h (fdopendir): Provide prototype.
11855         * m4/dirent_h.m4 (gl_DIRENT_H_DEFAULTS): Add replacements.
11856         * modules/dirent (Makefile.am): Substitute them.
11857         * MODULES.html.sh (File system functions): Mention it.
11858         * doc/posix-functions/fdopendir.texi (fdopendir): Likewise.
11859         * modules/fdopendir-tests: New file.
11860         * tests/test-fdopendir.c: Likewise.
11861
11862         fchdir: use more consistent macro convention
11863         * lib/fcntl.in.h (_gl_register_fd): Move declaration to unistd.
11864         * lib/sys_stat.in.h (rpl_fstat): Declare via make-time
11865         REPLACE_FCHDIR, rather than relying on config.h macros.
11866         * lib/unistd.in.h (fchdir): Move all fchdir internal declarations
11867         inside a single make-time REPLACE_FCHDIR block, rather than using
11868         the config.h FCHDIR_REPLACEMENT.
11869         * m4/fchdir.m4 (gl_FUNC_FCHDIR): REPLACE_FCHDIR was already
11870         AC_SUBST'd, also AC_DEFINE it.  Don't define FCHDIR_REPLACEMENT.
11871         Manage fstat replacement.
11872         * m4/sys_stat_h.m4 (gl_SYS_STAT_H_DEFAULTS): Pick up
11873         REPLACE_FCHDIR.
11874         * modules/sys_stat (Files): Add m4/unistd_h.m4.
11875         (Makefile.am): Substitute REPLACE_FCHDIR.
11876         * lib/close.c (rpl_close): Use REPLACE_FCHDIR, not
11877         FCHDIR_REPLACEMENT.
11878         * lib/dup-safer.c (dup_safer): Likewise.
11879         * lib/dup2.c (rpl_dup2): Likewise.
11880         * lib/dup3.c (rpl_dup3): Likewise.
11881         * lib/open.c (rpl_open): Likewise.
11882
11883         fchdir: simplify error handling, and support dup3
11884         * modules/fchdir (Depends-on): Use strdup-posix, not strdup.  Add
11885         stdbool, malloc-posix, realloc-posix.
11886         * lib/fchdir.c (struct dir_info_t): Delete saved_errno.
11887         (ensure_dirs_slot): Return false on allocation failure.
11888         (rpl_dup2): Delete.
11889         (_gl_register_dup): New function.
11890         (_gl_unregister_fd, rpl_opendir, rpl_dup): Update callers.
11891         (_gl_register_fd): Close fd on allocation failure.
11892         * lib/fcntl.in.h (_gl_register_fd): Update signature.
11893         * lib/unistd.in.h (_gl_register_dup) [FCHDIR_REPLACEMENT]: New
11894         prototype.
11895         (rpl_dup2_fchdir): Delete prototype.
11896         * lib/open.c (open): Update caller.
11897         * lib/dup2.c (dup2): Track fchdir metadata.
11898         * lib/dup3.c (dup3): Likewise.
11899         * m4/dup2.m4 (gl_REPLACE_DUP2): New macro.
11900         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Use it.
11901
11902 2009-09-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11903
11904         * gnulib-tool (func_create_testdir, func_create_megatestdir): Use
11905         AC_CONFIG_HEADERS instead of AM_CONFIG_HEADER. Use AC_CONFIG_FILES and
11906         don't pass arguments to AC_OUTPUT.
11907
11908 2009-09-02  Bruno Haible  <bruno@clisp.org>
11909
11910         * modules/mkdtemp (License): Relicense under LGPLv2+.
11911         Reported by Paolo Bonzini.
11912
11913 2009-09-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
11914
11915         Replace uses of obsolete autoconf macros in Jim's modules.
11916         The Autoconf macros AC_TRY_CPP, AC_TRY_COMPILE, AC_TRY_LINK and
11917         AC_TRY_RUN have been obsolete since Autoconf 2.55, and each use
11918         can evoke a warning from autoconf when run with -Wobsolete
11919         enabled.  They were declared obsolete for good reasons (see
11920         the `AC_FOO_IFELSE vs AC_TRY_FOO' node in the Autoconf manual,
11921         recently renamed to `AC_ACT_IFELSE vs AC_TRY_ACT'), and we
11922         should not continue using the deprecated macros.
11923         * m4/d-type.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Replace
11924         obsolete Autoconf macros with modern counterparts.
11925         * m4/dirfd.m4 (gl_FUNC_DIRFD): Likewise.
11926         * m4/dos.m4 (gl_AC_DOS): Likewise.
11927         * m4/fpending.m4 (gl_FUNC_FPENDING): Likewise.
11928         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Likewise.
11929         * m4/getloadavg.m4 (gl_PREREQ_GETLOADAVG): Likewise.
11930         * m4/jm-winsz1.m4 (gl_WINSIZE_IN_PTEM): Likewise.
11931         * m4/link-follow.m4 (gl_AC_FUNC_LINK_FOLLOWS_SYMLINK): Likewise.
11932         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Likewise.
11933         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Likewise.
11934         * m4/mode_t.m4 (gl_PROMOTED_TYPE_MODE_T): Likewise.
11935         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH):
11936         Likewise.
11937         * m4/rename.m4 (gl_FUNC_RENAME): Likewise.
11938         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Likewise.
11939         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Likewise.
11940         * m4/st_dm_mode.m4 (AC_STRUCT_ST_DM_MODE): Likewise.
11941         * m4/stat-time.m4 (gl_STAT_TIME): Likewise.
11942         * m4/utimes-null.m4 (gl_FUNC_UTIMES_NULL): Likewise.
11943
11944 2009-09-01  Eric Blake  <ebb9@byu.net>
11945
11946         fchdir: fix off-by-one bug in previous patch
11947         * lib/fchdir.c (rpl_fstat): Use correct bounds.
11948         (_gl_unregister_fd): Delete useless if.
11949
11950 2009-09-01  Daniel P. Berrange  <berrange@redhat.com>
11951
11952         maint.mk: sort the list of syntax-check rules
11953         * top/maint.mk (syntax-check-rules): Sort syntax-check rules, so it's
11954         easier to get a sense of progress when the rules are run sequentially
11955         and take a long time.
11956
11957 2009-09-01  Simon Josefsson  <simon@josefsson.org>
11958
11959         * modules/arpa_inet: Use $(MKDIR_P) instead of @MKDIR_P@.
11960         * modules/netinet_in: Likewise.
11961         * modules/sys_file: Likewise.
11962         * modules/sys_ioctl: Likewise.
11963         * modules/sys_select: Likewise.
11964         * modules/sys_socket: Likewise.
11965         * modules/sys_stat: Likewise.
11966         * modules/sys_time: Likewise.
11967         * modules/sys_times: Likewise.
11968         * modules/sys_utsname: Likewise.
11969         * modules/sys_wait: Likewise.
11970
11971 2009-09-01  Jim Meyering  <meyering@redhat.com>
11972
11973         fts: help ensure that return values are not ignored
11974         * lib/fts_.h (__GNUC_PREREQ): Define.
11975         (__attribute_warn_unused_result__): Define.
11976         (fts_children, fts_close, fts_open, fts_read): Declare with
11977         __attribute_warn_unused_result__.
11978
11979         fts: fts_close now fails also when closing a dir file descriptor fails
11980         * lib/fts.c (fts_close): Detect close failure, not just fchdir failure,
11981         and propagate to caller, along with errno.
11982
11983         announce-gen: correct formatting in --help output
11984         * build-aux/announce-gen (usage): Move the one-line description in
11985         --help output "up", to where it belongs, just after Usage:.
11986
11987 2009-08-31  Eric Blake  <ebb9@byu.net>
11988
11989         fchdir: port to mingw
11990         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Check for mingw bug.
11991         * lib/open.c (open) [FCHDIR_REPLACEMENT]: If directories can't be
11992         opened, then use a substitute.
11993         * lib/sys_stat.in.h (fstat) [REPLACE_OPEN_DIRECTORY]: Declare
11994         replacement.
11995         * lib/fchdir.c (fstat) [REPLACE_OPEN_DIRECTORY]: Implement it.
11996         (_gl_register_fd): No need to check stat if open already filters
11997         all directories.
11998         (fchdir): Fix error condition to match POSIX.
11999         * modules/fchdir (Depends-on): Add sys_stat.
12000         * doc/posix-functions/open.texi (open): Document the limitation.
12001         * modules/fchdir-tests: New file.
12002         * tests/test-fchdir.c: Likewise.
12003
12004         canonicalize: allow cross-testing from cygwin to mingw
12005         * modules/canonicalize-tests (configure.ac): Define HAVE_SYMLINK.
12006         (Makefile.am): Pass it through TESTS_ENVIRONMENT.
12007         * modules/canonicalize-lgpl-tests (configure.ac, Makefile.am):
12008         Likewise.
12009         * tests/test-canonicalize.sh: Also skip test if 'ln -s' works, but
12010         target does not support symlinks.
12011         * tests/test-canonicalize-lgpl.sh: Likewise.
12012
12013         chown: avoid compilation warning on mingw
12014         * m4/chown.m4 (gl_FUNC_CHOWN): Recognize missing chown.
12015         * lib/chown.c (rpl_chown) [!HAVE_CHOWN]: Always return failure on
12016         mingw.
12017         * lib/lchown.c (lchown) [!HAVE_CHOWN]: Likewise.
12018         * modules/chown (Depends-on): Add errno.
12019
12020 2009-08-31  Stefano Lattarini  <stefano.lattarini@gmail.com>  (tiny change)
12021
12022         * gnulib-tool: Fix test whether $CONFIG_SHELL has a working 'echo'
12023         command.
12024
12025 2009-08-31  Jim Meyering  <meyering@redhat.com>
12026
12027         canonicalize: remove useless initialization
12028         * lib/canonicalize.c (canonicalize_filename_mode): Remove useless
12029         initialization of local, "end".
12030
12031 2009-08-30  Bruno Haible  <bruno@clisp.org>
12032
12033         Fix an unnecessary error on Solaris 10 on NFSv3 file systems.
12034         * lib/set-mode-acl.c (qset_acl) [Solaris 10 new]: Treat EOPNOTSUPP like
12035         ENOSYS.
12036
12037 2009-08-30  Bruno Haible  <bruno@clisp.org>
12038
12039         * tests/test-pipe-filter-ii1.sh: Prefer /usr/xpg6/bin/tr over
12040         /usr/xpg4/bin/tr when it exists.
12041         * tests/test-pipe-filter-gi1.sh: Likewise.
12042
12043 2009-08-30  Bruno Haible  <bruno@clisp.org>
12044
12045         Work around deficient /usr/bin/id program on Solaris.
12046         * tests/test-file-has-acl.sh (ID): New variable.
12047         * tests/test-set-mode-acl.sh (ID): Likewise.
12048         * tests/test-copy-acl.sh (ID): Likewise.
12049         * tests/test-copy-file.sh (ID): Likewise.
12050
12051 2009-08-30  Bruno Haible  <bruno@clisp.org>
12052
12053         New module 'xstriconveh'.
12054         * lib/xstriconveh.h: New file.
12055         * lib/xstriconveh.c: New file.
12056         * modules/xstriconveh: New file.
12057
12058 2009-08-30  Bruno Haible  <bruno@clisp.org>
12059
12060         Make it easier to use mem_cd_iconveh.
12061         * lib/striconveh.h (iconveh_t): New type.
12062         (iconveh_open, iconveh_close): New declarations.
12063         (mem_cd_iconveh, str_cd_iconveh): Replace the three iconv_t arguments
12064         with a single 'const iconveh_t *' argument.
12065         * lib/striconveh.c (iconveh_open, iconveh_close): New functions.
12066         (mem_cd_iconveh, str_cd_iconveh): Replace the three iconv_t arguments
12067         with a single 'const iconveh_t *' argument.
12068         (mem_iconveh, str_iconveh): Use iconveh_open, iconveh_close.
12069         * tests/test-striconveh.c (main): Update.
12070         * NEWS: Mention the change.
12071
12072 2009-08-30  Bruno Haible  <bruno@clisp.org>
12073
12074         * doc/posix-functions/iconv_open.texi: Mention indirect conversion
12075         problem.
12076
12077 2009-08-30  Bruno Haible  <bruno@clisp.org>
12078
12079         Work around iconv_open problem on Solaris.
12080         * lib/iconv_open-solaris.gperf: New file.
12081         * lib/iconv_open.c (ICONV_FLAVOR_SOLARIS): New macro.
12082         * m4/iconv_open.m4 (gl_FUNC_ICONV_OPEN): Also handle Solaris.
12083         * modules/iconv_open (Files): Add lib/iconv_open-solaris.gperf.
12084         (Makefile.am): Add rule for iconv_open-solaris.h. Augment
12085         BUILT_SOURCES, MOSTLYCLEANFILES, MAINTAINERCLEANFILES, EXTRA_DIST.
12086         * doc/posix-functions/iconv_open.texi: Mention the Solaris problem.
12087
12088 2009-08-29  Jim Meyering  <meyering@redhat.com>
12089
12090         maint.mk: remove more coreutils-specific targets; XZ_OPT=-9ev
12091         * top/maint.mk (cvs-check): Remove target; it was just an alias
12092         to the better-named vc-diff-check.
12093         (maintainer-distcheck): Remove rule.  It was used only from
12094         the (alpha/beta/major) target, and all of its commands but one
12095         were coreutils-specific.
12096         (vc-dist): Remove rule.
12097         (alpha beta major): Run "$(MAKE) distcheck" explicitly.
12098         Run vc-diff-check, not vc-dist.
12099         Run $(MAKE) dist with XZ_OPT=-9ev.  Note spelling, with "-".
12100
12101 2009-08-27  Bruno Haible  <bruno@clisp.org>
12102
12103         * tests/test-bitrotate.c (main): Remove test that uses a shift count
12104         of 0.
12105
12106 2009-08-27  Bruno Haible  <bruno@clisp.org>
12107
12108         * tests/test-func.c (main): Don't verify sizeof __func__ on SunPRO C
12109         compilers.
12110         * doc/func.texi: Document the SunPRO C bug.
12111
12112 2009-08-27  Bruno Haible  <bruno@clisp.org>
12113
12114         Fix link error on Solaris.
12115         * tests/test-parse-duration.c (xstrdup): Remove function.
12116
12117 2009-08-26  Pádraig Brady  <P@draigbrady.com>
12118
12119         ignore-value: handle pointer types, too
12120         * lib/ignore-value.h (__attribute__): Remove definition.
12121         (ignore_value): Remove use of "__attribute__ ((unused))" in favor
12122         of a more concise and more-often effective "(void) i" statement.
12123         (ignore_ptr): New function to suppress warnings from functions that
12124         return pointers, and to make it explicit that one function doesn't
12125         handle all cases.
12126
12127 2009-08-25  Bruno Haible  <bruno@clisp.org>
12128
12129         dup2: work around a Linux bug.
12130         * m4/dup2.m4 (gl_FUNC_DUP2): Test for the Linux bug.
12131         * lib/dup2.c (rpl_dup2): Correct the return value if it is -EBADF.
12132         * doc/posix-functions/dup2.texi: Mention the Linux bug.
12133         Reported by Simon Josefsson.
12134
12135 2009-08-25  Jim Meyering  <meyering@redhat.com>
12136
12137         libguestfs uses gnulib
12138         * users.txt: Add libguestfs.
12139
12140 2009-08-24  Eric Blake  <ebb9@byu.net>
12141
12142         dup2, pipe2: fix some recent test failures on cygwin 1.5.x
12143         * lib/pipe2.c (includes): Add binary-io.h.
12144         * lib/dup2.c (rpl_dup2): Correct buggy errno value.
12145
12146 2009-08-24  Bruno Haible  <bruno@clisp.org>
12147
12148         Tolerate declared but missing accept4 syscall.
12149         * lib/accept4.c (accept4): Invoke original accept4 function first, if
12150         available.
12151         * lib/sys_socket.in.h (accept4): If the function is already present,
12152         override it.
12153         * m4/accept4.m4 (gl_FUNC_ACCEPT4): Remove AC_LIBOBJ invocation.
12154         * modules/accept4 (Makefile.am): Compile accept4.c always.
12155         Reported by Paolo Bonzini and Eric Blake.
12156
12157 2009-08-23  Bruno Haible  <bruno@clisp.org>
12158
12159         New module 'accept4'.
12160         * lib/sys_socket.in.h (accept4): New declaration.
12161         * lib/accept4.c: New file.
12162         * m4/accept4.m4: New file.
12163         * m4/sys_socket_h.m4 (gl_SYS_SOCKET_H_DEFAULTS): Initialize
12164         GNULIB_ACCEPT4, HAVE_ACCEPT4.
12165         * modules/sys_socket (Makefile.am): Substitute GNULIB_ACCEPT4,
12166         HAVE_ACCEPT4.
12167         * modules/accept4: New file.
12168         * doc/glibc-functions/accept4.texi: Mention the new module.
12169
12170 2009-08-24  Jim Meyering  <meyering@redhat.com>
12171
12172         progname: also set global program_invocation_name, when possible
12173         Before this change, a libtool-enabled program that calls glibc's
12174         error function would report the program name as
12175         "/abs/dir/.libs/lt-program_name" rather than the desired program_name.
12176         * modules/progname (configure.ac): Check for a declaration of
12177         program_invocation_name.
12178         * lib/progname.c:  Include <errno.h>.
12179         (set_program_name) [HAVE_DECL_PROGRAM_INVOCATION_NAME]:
12180         Set program_invocation_name.
12181
12182 2009-08-23  Bruno Haible  <bruno@clisp.org>
12183
12184         * lib/dup3.c: Include <string.h>.
12185
12186 2009-08-23  Bruno Haible  <bruno@clisp.org>
12187
12188         * lib/dup3.c (dup3): Test only once whether the system actually exists.
12189         * lib/pipe2.c (pipe2): Likewise.
12190         Suggested by Eric Blake.
12191
12192 2009-08-23  Bruno Haible  <bruno@clisp.org>
12193
12194         Tolerate declared but missing dup3 syscall.
12195         * lib/dup3.c (dup3): Invoke original dup3 function first, if available.
12196         * lib/unistd.in.h (dup3): If the function is already present,
12197         override it.
12198         * m4/dup3.m4 (gl_FUNC_DUP3): Remove AC_LIBOBJ invocation.
12199         * modules/dup3 (Makefile.am): Compile dup3.c always.
12200         Reported by Paolo Bonzini.
12201
12202 2009-08-23  Bruno Haible  <bruno@clisp.org>
12203
12204         Tolerate declared but missing pipe2 syscall.
12205         * lib/pipe2.c (pipe2): Invoke original pipe2 function first, if
12206         available.
12207         * lib/unistd.in.h (pipe2): If the function is already present,
12208         override it.
12209         * m4/pipe2.m4 (gl_FUNC_PIPE2): Remove AC_LIBOBJ invocation.
12210         * modules/pipe2 (Makefile.am): Compile pipe2.c always.
12211         Reported by Paolo Bonzini.
12212
12213 2009-08-23  Bruno Haible  <bruno@clisp.org>
12214
12215         * lib/pipe2.c (pipe2): Move #ifs inside function.
12216
12217 2009-08-22  Joel E. Denny  <jdenny@clemson.edu>
12218
12219         quotearg: document limitations of quote_these_too
12220         * lib/quotearg.c (quotearg_buffer_restyled): Add comments where
12221         those limitations are created.
12222         * lib/quotearg.h (set_char_quoting): Document that digits and
12223         letters that are special after backslash are not permitted.
12224         (quotearg_char): Cross-reference set_char_quoting documentation.
12225
12226 2009-08-23  Joel E. Denny  <jdenny@clemson.edu>
12227
12228         quotearg: implement custom_quoting_style
12229         * lib/quotearg.c: (struct quoting_options): Add left_quote and
12230         right_quote fields.
12231         (set_custom_quoting): New public function.
12232         (quotearg_buffer_restyled): Add left_quote and right_quote
12233         arguments, handle them very much like locale quoting, and update
12234         all uses.
12235         (quotearg_n_custom): New public function.
12236         (quotearg_n_custom_mem): New public function.
12237         (quotearg_custom): New public function.
12238         (quotearg_custom_mem): New public function.
12239         * lib/quotearg.h: Prototype and document new public functions.
12240         (enum quoting_style): For escape_quoting_style and
12241         clocale_quoting_style, comment that QA_SPLIT_TRIGRAPHS is
12242         ignored even though they're otherwise like c_quoting_style.
12243         Add custom_quoting_style member and document with comparison to
12244         clocale_quoting_style.
12245         * tests/test-quotearg.c (custom_quotes): New array.
12246         (custom_results): New array.
12247         (main): Extend to test custom quoting.
12248
12249 2009-08-22  Joel E. Denny  <jdenny@clemson.edu>
12250
12251         quotearg: fix right quote escaping when it's in quote_these_too
12252         * lib/quotearg.c (quotearg_buffer_restyled): Upon seeing a right
12253         quote, be sure to prepend only one backslash.
12254         * tests/test-quotearg.c (use_quote_double_quotes): New function.
12255         (main): Test it.
12256
12257 2009-08-22  Joel E. Denny  <jdenny@clemson.edu>
12258
12259         quotearg-tests: test escaping of embedded locale quotes
12260         * tests/test-quotearg.c (struct result_strings): Add member for
12261         new input.
12262         (LQ_ENC, RQ_ENC, RQ_ESC): New macros.
12263         (inputs): Add new input.
12264         (results_g): Add expected results.
12265         (flag_results): Likewise.
12266         (locale_results): Likewise.
12267         (compare_strings): Check those.
12268
12269 2009-08-23  Bruno Haible  <bruno@clisp.org>
12270
12271         Tests for module 'dup3'.
12272         * modules/dup3-tests: New file.
12273         * tests/test-dup3.c: New file.
12274
12275         New module 'dup3'.
12276         * lib/unistd.in.h (dup3): New declaration.
12277         * lib/dup3.c: New file.
12278         * m4/dup3.m4: New file.
12279         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_DUP3 and
12280         HAVE_DUP3.
12281         * modules/unistd (Makefile.am): Substitute GNULIB_DUP3 and HAVE_DUP3.
12282         * modules/dup3: New file.
12283         * doc/glibc-functions/dup3.texi: Mention the new module.
12284
12285 2009-08-23  Bruno Haible  <bruno@clisp.org>
12286
12287         Tweak the dup2 test.
12288         * tests/test-dup2.c (main): Create the test file empty. Verify that an
12289         out-of-range fd yields EBADF. Verify that after writing to /dev/null,
12290         the test file is still empty. Fix argument order of lseek.
12291
12292 2009-08-23  Bruno Haible  <bruno@clisp.org>
12293
12294         Avoid test link errors when the modules getopt-gnu, gettext are used.
12295         * modules/getopt-posix-tests (Makefile.am): Define test_getopt_LDADD.
12296         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
12297
12298 2009-08-23  Bruno Haible  <bruno@clisp.org>
12299
12300         Fix getdtablesize() on mingw.
12301         * lib/getdtablesize.c (getdtablesize): Implement differently.
12302         * lib/unistd.in.h (getdtablesize): Improve comment.
12303
12304 2009-08-23  Bruno Haible  <bruno@clisp.org>
12305
12306         New module 'mkostemp'.
12307         Based on Ulrich Drepper's 2007-08-10 change in glibc.
12308         * lib/stdlib.in.h (mksotemp): New declaration.
12309         * lib/mkostemp.c: New file, from glibc with modifications.
12310         * lib/tempname.h (GT_FILE): Remove outdated comment.
12311         (gen_tempname): Add flags argument.
12312         * lib/tempname.c (__GT_BIGFILE): Remove macro.
12313         (__GT_FILE): Map to 1.
12314         (small_open, large_open): Remove macros.
12315         (__gen_tempname): Add flags argument. Remove code for __GT_BIGFILE.
12316         * lib/mkstemp.c (mkstemp): Update.
12317         * lib/mkdtemp.c (mkdtemp): Likewise.
12318         * m4/mkostemp.m4: New file.
12319         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_MKOSTEMP,
12320         HAVE_MKOSTEMP.
12321         * modules/stdlib (Makefile.am): Substitute GNULIB_MKOSTEMP,
12322         HAVE_MKOSTEMP.
12323         * modules/mkostemp: New file, based on modules/mkstemp.
12324         * doc/glibc-functions/mkostemp.texi: Mention the new module.
12325         * NEWS: Mention the change.
12326
12327 2009-08-23  Bruno Haible  <bruno@clisp.org>
12328
12329         * lib/pipe2.c (pipe2): Support O_TEXT, O_BINARY on all platforms.
12330         Reported by Eric Blake.
12331
12332 2009-08-23  Bruno Haible  <bruno@clisp.org>
12333
12334         * lib/pipe2.c (pipe2): Fix test of fcntl's return value.
12335         Reported by Eric Blake.
12336
12337 2009-08-23  Bruno Haible  <bruno@clisp.org>
12338
12339         * modules/fchdir (Depends-on): Use fcntl-h instead of fcntl.
12340         * modules/pipe2 (Depends-on): Likewise.
12341
12342 2009-08-23  Eric Blake  <ebb9@byu.net>
12343
12344         fcntl-h: add O_TTY_INIT support
12345         * lib/fcntl.in.h (O_TTY_INIT): Support another POSIX macro.
12346         * tests/test-fcntl-h.c (o): Test it.
12347         * doc/posix-headers/fcntl.texi (fcntl.h): Update documentation.
12348
12349         fcntl-h: rename from fcntl, in preparation for fcntl(2)
12350         * modules/fcntl: Move <fcntl.h> header replacement...
12351         * modules/fcntl-h: ...to new name, so as not to collide with
12352         like-named function.
12353         * tests/test-fcntl.c: Rename...
12354         * tests/test-fcntl-h.c: ...to this.  Test FD_CLOEXEC.
12355         * modules/fcntl-tests: Rename...
12356         * modules/fcntl-h-tests: ...to this.  Update test file name.
12357         * modules/chdir-long (Depends-on): Update clients.
12358         * modules/chdir-safer (Depends-on): Likewise.
12359         * modules/fcntl-safer (Depends-on): Likewise.
12360         * modules/fts (Depends-on): Likewise.
12361         * modules/mkancesdirs (Depends-on): Likewise.
12362         * modules/mkdir-p (Depends-on): Likewise.
12363         * modules/open (Depends-on): Likewise.
12364         * modules/savewd (Depends-on): Likewise.
12365         * MODULES.html.sh (systems lacking POSIX:2008): Update name.
12366         * doc/posix-headers/fcntl.texi (fcntl.h): Update documentation.
12367
12368 2009-08-22  Bruno Haible  <bruno@clisp.org>
12369
12370         * modules/binary-io (License): Relicense under LGPL.
12371         * modules/pipe2 (License): Likewise.
12372
12373 2009-08-22  Bruno Haible  <bruno@clisp.org>
12374
12375         * lib/pipe-filter-ii.c (pipe_filter_ii_execute): Fix test of fcntl's
12376         return value.
12377         * lib/pipe-filter-gi.c (filter_init): Likewise.
12378         Reported by Eric Blake.
12379
12380 2009-08-22  Bruno Haible  <bruno@clisp.org>
12381
12382         * lib/pipe.c (create_pipe): Use pipe2 instead of _pipe.
12383         * modules/pipe (Depends-on): Add pipe2.
12384
12385 2009-08-22  Bruno Haible  <bruno@clisp.org>
12386
12387         Tests for module 'pipe2'.
12388         * modules/pipe2-tests: New file.
12389         * tests/test-pipe2.c: New file.
12390
12391         New module 'pipe2'.
12392         * lib/unistd.in.h (pipe2): New declaration.
12393         * lib/pipe2.c: New file.
12394         * m4/pipe2.m4: New file.
12395         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_PIPE2 and
12396         HAVE_PIPE2.
12397         * modules/unistd (Makefile.am): Substitute GNULIB_PIPE2 and HAVE_PIPE2.
12398         * modules/pipe2: New file.
12399         * doc/glibc-functions/pipe2.texi: Mention the new module.
12400
12401 2009-08-22  Bruno Haible  <bruno@clisp.org>
12402
12403         Reference some new glibc functions.
12404         * doc/glibc-functions/accept4.texi: New file.
12405         * doc/glibc-functions/dup3.texi: New file.
12406         * doc/glibc-functions/mkostemp.texi: New file.
12407         * doc/glibc-functions/pipe2.texi: New file.
12408         * doc/gnulib.texi (Glibc stdlib.h): Refer to mkostemp.
12409         (Glibc sys/socket.h): Refer to accept4.
12410         (Glibc unistd.h): Refer to dup3, pipe2.
12411         Reported by Eric Blake.
12412
12413 2009-08-22  Jim Meyering  <meyering@redhat.com>
12414             Bruno Haible  <bruno@clisp.org>
12415
12416         annotate automake snippets with $(AM_V_GEN) and $(AM_V_at)
12417         This makes it so packages using automake-1.11's silent-rules option
12418         can print e.g., a single "GEN    configmake.h" line, rather than
12419         the 30+ statements that perform the job.  If you want to see the
12420         actual commands, you can still run "make V=1".
12421         * modules/alloca-opt: Add $(AM_V_GEN) and $(AM_V_at) prefixes
12422         so that make output is abbreviated when those variables are defined
12423         appropriately.
12424         * modules/argz: Likewise.
12425         * modules/arpa_inet: Likewise.
12426         * modules/byteswap: Likewise.
12427         * modules/configmake: Likewise.
12428         * modules/dirent: Likewise.
12429         * modules/errno: Likewise.
12430         * modules/fcntl: Likewise.
12431         * modules/float: Likewise.
12432         * modules/fnmatch: Likewise.
12433         * modules/getopt-posix: Likewise.
12434         * modules/glob: Likewise.
12435         * modules/iconv_open: Likewise.
12436         * modules/inttypes: Likewise.
12437         * modules/localcharset: Likewise.
12438         * modules/locale: Likewise.
12439         * modules/math: Likewise.
12440         * modules/netdb: Likewise.
12441         * modules/netinet_in: Likewise.
12442         * modules/poll: Likewise.
12443         * modules/posix_spawnp-tests: Likewise.
12444         * modules/sched: Likewise.
12445         * modules/search: Likewise.
12446         * modules/selinux-h: Likewise.
12447         * modules/signal: Likewise.
12448         * modules/spawn: Likewise.
12449         * modules/stdarg: Likewise.
12450         * modules/stdbool: Likewise.
12451         * modules/stddef: Likewise.
12452         * modules/stdint: Likewise.
12453         * modules/stdio: Likewise.
12454         * modules/stdlib: Likewise.
12455         * modules/string: Likewise.
12456         * modules/strings: Likewise.
12457         * modules/sys_file: Likewise.
12458         * modules/sys_ioctl: Likewise.
12459         * modules/sys_select: Likewise.
12460         * modules/sys_socket: Likewise.
12461         * modules/sys_stat: Likewise.
12462         * modules/sys_time: Likewise.
12463         * modules/sys_times: Likewise.
12464         * modules/sys_utsname: Likewise.
12465         * modules/sys_wait: Likewise.
12466         * modules/sysexits: Likewise.
12467         * modules/time: Likewise.
12468         * modules/unistd: Likewise.
12469         * modules/wchar: Likewise.
12470         * modules/wctype: Likewise.
12471
12472 2009-08-22  Jim Meyering  <meyering@redhat.com>
12473
12474         announce-gen: detect write failure
12475         * build-aux/announce-gen: Add Coda at end.
12476         Remove equivalent-but-more-verbose block at top.
12477
12478 2009-08-19  Akim Demaille  <demaille@gostai.com>
12479
12480         bootstrap: --help to stdout.
12481         * bootstrap (usage): Don't send --help to stderr.
12482         Use a here doc instead of a long string.
12483
12484 2009-08-21  Eric Blake  <ebb9@byu.net>
12485
12486         test-popen-safer: split from test-popen
12487         * tests/test-popen.c (main): Move...
12488         * tests/test-popen.h: ...into new file.
12489         * tests/test-popen-safer2.c: New file.
12490         * modules/popen-tests (Files): Add test-popen.h.
12491         * modules/popen-safer-tests (Files): Add test-popen-safer2.c.
12492         Suggested by Bruno Haible.
12493
12494         test-fcntl-safer: split from test-open
12495         * tests/test-open.c (main): Move...
12496         * tests/test-open.h: ...into new file.
12497         * tests/test-fcntl-safer.c: New file.
12498         * modules/open-tests (Files): Add test-open.h.
12499         * modules/fcntl-safer-tests: New file.
12500         Suggested by Bruno Haible.
12501
12502         test-fopen-safer: split from test-fopen
12503         * tests/test-fopen.c (main): Move...
12504         * tests/test-fopen.h: ...into new file.
12505         * tests/test-fopen-safer.c: New file.
12506         * modules/fopen-tests (Files): Add test-fopen.h.
12507         * modules/fopen-safer-tests: New file.
12508         Suggested by Bruno Haible.
12509
12510 2009-08-21  Paolo Bonzini  <bonzini@gnu.org>
12511
12512         popen-safer: test O_CLOEXEC at run-time.
12513         * lib/popen-safer.c: Test O_CLOEXEC at run-time.
12514
12515 2009-08-21  Paolo Bonzini  <bonzini@gnu.org>
12516
12517         fcntl: move more flags to the header
12518         * lib/cloexec.c: Do not define FD_CLOEXEC here.
12519         * lib/popen-safer.c: Do not alias O_NOINHERIT to O_CLOEXEC here.
12520         * lib/fcntl.in.h: Do both things here.
12521
12522 2009-08-21  Jim Meyering  <meyering@redhat.com>
12523
12524         consistently remove $@-t before redirecting to it
12525         * modules/argz: Remove $@-t and $@ before redirecting to the former.
12526         * modules/alloca-opt: Likewise.
12527         * modules/byteswap: Likewise.
12528         * modules/fnmatch: Likewise.
12529         * modules/getopt-posix: Likewise.
12530         * modules/glob: Likewise.
12531         * modules/poll: Likewise.
12532         * modules/posix_spawnp-tests: Likewise.
12533         * modules/sys_socket: Likewise.
12534         * modules/sysexits: Likewise.
12535
12536 2009-08-21  Eric Blake  <ebb9@byu.net>
12537
12538         popen: simplify access to original popen
12539         * lib/popen.c (rpl_popen): No need to worry about popen being a
12540         macro.
12541         Reported by Bruno Haible.
12542
12543 2009-08-20  Eric Blake  <ebb9@byu.net>
12544
12545         build: avoid some compiler warnings
12546         * lib/selinux-at.h: Use dir_fd, not dirfd, to avoid shadowing.
12547         * lib/exclude.c (fnmatch_pattern_has_wildcards): Use correct
12548         type.
12549         (new_exclude_segment, excluded_file_pattern_p)
12550         (excluded_file_name_p): Reduce scope.
12551         * lib/vasnprintf.c (decimal_point_char): Avoid warning on
12552         old-style declaration.
12553
12554 2009-08-20  Simon Josefsson  <simon@josefsson.org>
12555
12556         * tests/test-exclude1.sh: Handle Windows EOL.
12557         * tests/test-exclude2.sh: Likewise.
12558         * tests/test-exclude3.sh: Likewise.
12559         * tests/test-exclude4.sh: Likewise.
12560         * tests/test-exclude5.sh: Likewise.
12561         * tests/test-exclude6.sh: Likewise.
12562         * tests/test-exclude7.sh: Likewise.
12563
12564 2009-08-19  Akim Demaille  <demaille@gostai.com>
12565
12566         bootstrap: find sha1sum when named gsha1sum.
12567         * bootstrap (find_tool): New.
12568         ($SHA1SUM): New.
12569         Use it.
12570
12571 2009-08-20  Jim Meyering  <meyering@redhat.com>
12572
12573         maint.mk: _header_without_use: fix a quoting bug and remove a bash'ism
12574         * top/maint.mk (_header_without_use): Use "\\\\", not "\\" in the sed
12575         expression that converts "." in a file name to "\." in the resulting
12576         regexp.  Start with a dummy statement, so that prior shell variable
12577         definitions are expanded portably.  Reported by Simon Josefsson.
12578
12579 2009-08-20  Paolo Bonzini  <bonzini@gnu.org>
12580
12581         Fix polling for writeability of a screen buffer.
12582         * lib/poll.c: Distinguish input and screen buffers for the
12583         Win32 implementation.
12584         * lib/select.c: Likewise.
12585
12586 2009-08-19  Eric Blake  <ebb9@byu.net>
12587
12588         popen-safer: prevent popen from clobbering std descriptors
12589         * modules/popen-safer: New file.
12590         * lib/popen-safer.c: Likewise.
12591         * m4/stdio-safer.m4 (gl_POPEN_SAFER): New macro.
12592         * lib/stdio--.h (popen): Provide override.
12593         * lib/stdio-safer.h (popen_safer): Provide declaration.
12594         * tests/test-popen.c (includes): Partially test this.
12595         * modules/popen-safer-tests: New file, for more tests.
12596         * tests/test-popen-safer.c: Likewise.
12597         * MODULES.html.sh (file stream based Input/Output): Mention it.
12598
12599         tests: test some of the *-safer modules
12600         * modules/fopen-safer (Depends-on): Add fopen.
12601         * modules/fcntl-safer (Depends-on): Add fcntl.
12602         * modules/stdlib-safer (Depends-on): Add stdlib.
12603         (configure.ac): Set indicator.
12604         * modules/unistd-safer (configure.ac): Likewise.
12605         * modules/tmpfile-safer (configure.ac): Likewise.
12606         (Depends-on): Add tmpfile.
12607         * lib/stdio--.h (fopen, tmpfile): Don't override unless module is
12608         active.
12609         * tests/test-fopen.c (includes): Test safer versions when they are
12610         in use.
12611         * tests/test-open.c (includes): Likewise.
12612
12613         popen: fix cygwin 1.5 bug when stdin closed
12614         * doc/posix-functions/popen.texi (popen): Document cygwin bugs.
12615         * modules/popen: New file.
12616         * modules/popen-tests: Likewise.
12617         * tests/test-popen.c: Likewise.
12618         * m4/popen.m4: Likewise.
12619         * lib/popen.c: Likewise.
12620         * lib/stdio.in.h (popen): New declaration.
12621         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Add popen.
12622         * modules/stdio (Makefile.am): Likewise.
12623         * MODULES.html.sh (systems lacking POSIX:2008): Mention it.
12624
12625 2009-08-17  Joel E. Denny  <jdenny@clemson.edu>
12626
12627         maint.mk: give full control over update-copyright exclusions
12628         * top/maint.mk (VC_LIST_EXCEPT): Instead of ChangeLog, use
12629         ${VC_LIST_EXCEPT_DEFAULT-ChangeLog} as the default exclusion.
12630         (update-copyright): Don't force inclusion of top-level
12631         ChangeLog.  Don't force exclusion of all COPYING files, but make
12632         them the default exclusion instead.
12633
12634 2009-08-16  Bruno Haible  <bruno@clisp.org>
12635
12636         Fix test failures on Solaris 10.
12637         * tests/uniconv/test-u8-conv-from-enc.c (main): Disable autodetect_jp
12638         tests when Solaris iconv() is used.
12639         * tests/uniconv/test-u16-conv-from-enc.c (main): Likewise.
12640         * tests/uniconv/test-u32-conv-from-enc.c (main): Likewise.
12641         * tests/uniconv/test-u8-strconv-from-enc.c (main): Likewise.
12642         * tests/uniconv/test-u16-strconv-from-enc.c (main): Likewise.
12643         * tests/uniconv/test-u32-strconv-from-enc.c (main): Likewise.
12644
12645 2009-08-16  Bruno Haible  <bruno@clisp.org>
12646
12647         Fix test failures on Solaris 10.
12648         * tests/test-pipe-filter-ii1.sh: Determine the filename of a working
12649         'tr' program and pass it as first argument.
12650         * tests/test-pipe-filter-gi1.sh: Likewise.
12651         * tests/test-pipe-filter-ii1.c (main): Except the filename of a 'tr'
12652         program as first argument.
12653         * tests/test-pipe-filter-gi1.c (main): Likewise.
12654
12655 2009-08-16  Eric Blake  <ebb9@byu.net>
12656
12657         fpurge: fix previous commits
12658         * modules/fpurge (Makefile.am): Make replacement conditional,
12659         partially reverting 2007-04-29 change; missed in previous
12660         attempt.
12661         * m4/fpurge.m4 (gl_FUNC_FPURGE): Also compile fpurge.c when fpurge
12662         is missing.
12663
12664 2009-08-16  Bruno Haible  <bruno@clisp.org>
12665
12666         Clarify fpurge's effect on the file position.
12667         * lib/stdio.in.h (fpurge): Specify the file position after fpurge.
12668         * tests/test-fpurge.c (main): Make a second pass for checking the file
12669         position.
12670
12671 2009-08-16  Bruno Haible  <bruno@clisp.org>
12672
12673         * m4/fpurge.m4 (gl_FUNC_FPURGE): Don't compile fpurge.c if only the
12674         declaration of fpurge is missing.
12675         * tests/test-fpurge.c (main): Check that the file has not more contents
12676         than expected. Close the file before removing it.
12677
12678 2009-08-15  Eric Blake  <ebb9@byu.net>
12679
12680         fpurge: don't wrap working cygwin implementation
12681         * lib/fpurge.c (fpurge): Fix comment typo.
12682         * m4/fpurge.m4 (gl_FUNC_FPURGE): Detect BSD bug, allowing cygwin
12683         1.7 to avoid replacement.
12684         * tests/test-fpurge.c (main): Enhance test.
12685
12686 2009-08-15  Eric Blake  <ebb9@byu.net>
12687         and Jim Meyering  <meyering@redhat.com>
12688
12689         test-update-copyright: skip if perl is insufficient
12690         * tests/test-update-copyright.sh: Failure to run maintainer tool
12691         should not cause testsuite failure on cygwin 1.5.
12692
12693 2009-08-14  Eric Blake  <ebb9@byu.net>
12694
12695         doc: mention more functions added in cygwin 1.7.0
12696         * doc/posix-headers/limits.texi (limits.h): Update for recent
12697         cygwin additions.
12698         * doc/posix-headers/wordexp.texi (wordexp.h): Likewise.
12699         * doc/posix-functions/wordexp.texi (wordexp): Likewise.
12700         * doc/posix-functions/wordfree.texi (wordfree): Likewise.
12701         * doc/posix-functions/setlocale.texi (setlocale): Likewise.
12702         * doc/posix-functions/nl_langinfo.texi (nl_langinfo): Likewise.
12703
12704 2009-08-14  Eric Blake  <ebb9@byu.net>
12705
12706         maint.mk: simplify update-copyright rule
12707         * top/maint.mk (update-copyright-local): Delete, and document how
12708         to do it in cfg.mk instead.
12709         (update-copyright-exclude-regexp): Delete, and document how to do
12710         it in .x-update-copyright instead.
12711         (update-copyright): Simplify, thanks to VC_LIST_EXCEPT.  Don't
12712         exclude ChangeLog.
12713
12714 2009-08-14  Bruno Haible  <bruno@clisp.org>
12715
12716         * m4/wchar.m4 (gl_WCHAR_H): Undo invalid optimization in last commit.
12717
12718 2009-08-14  Joel E. Denny  <jdenny@clemson.edu>
12719
12720         maint.mk: support update-copyright-env
12721         * top/maint.mk (update-copyright-env): Define place-holder.
12722         (update-copyright): Expand $(update-copyright-env) before
12723         invoking update-copyright.
12724
12725 2009-08-14  Joel E. Denny  <jdenny@clemson.edu>
12726
12727         update-copyright: implement forced reformatting
12728         * build-aux/update-copyright: Implement and document
12729         UPDATE_COPYRIGHT_FORCE.
12730         * tests/test-update-copyright.sh: Test it.
12731
12732 2009-08-14  Eric Blake  <ebb9@byu.net>
12733         and Bruno Haible  <bruno@clisp.org>
12734
12735         stddef: fix NetBSD 5.0 NULL bug, rather than working around it
12736         * tests/test-locale.c: Revert previous patch related to NULL.
12737         * tests/test-stdio.c: Likewise.
12738         * tests/test-stdlib.c: Likewise.
12739         * tests/test-string.c: Likewise.
12740         * tests/test-unistd.c: Likewise.
12741         * modules/time-tests (Depends-on): Add verify.
12742         * modules/wchar-tests (Depends-on): Likewise.
12743         * tests/test-time.c: Test for NULL compliance.
12744         * tests/test-wchar.c: Likewise.
12745         * modules/locale (Depends-on): Add stddef.
12746         * modules/stdio (Depends-on): Likewise.
12747         * modules/stdlib (Depends-on): Likewise.
12748         * modules/string (Depends-on): Likewise.
12749         * modules/time (Depends-on): Likewise.
12750         * modules/unistd (Depends-on): Likewise.
12751         * modules/wchar (Depends-on): Likewise.
12752         * lib/locale.in.h (includes): Use <stddef.h> to fix NULL.
12753         * lib/stdlib.in.h (includes): Likewise.
12754         * lib/string.in.h (includes): Likewise.
12755         * lib/time.in.h (includes): Likewise.
12756         * lib/unistd.in.h (includes): Likewise.
12757         * m4/locale_h.m4 (gl_LOCALE_H): Replace locale.h if stddef.h was
12758         replaced.
12759         * m4/wchar.m4 (gl_WCHAR_H): Likewise.
12760         * m4/stddef_h.m4: New file.
12761         * modules/stddef: Likewise.
12762         * lib/stddef.in.h: Likewise.
12763         * modules/stddef-tests: Likewise.
12764         * tests/test-stddef.c: Likewise.
12765         * MODULES.html.sh (Basic types <stddef.h>): Mention new module.
12766         * doc/posix-headers/stddef.texi (stddef.h): Document the bug.
12767         * doc/posix-headers/locale.texi (locale.h): Likewise.
12768         * doc/posix-headers/stdio.texi (stdio.h): Likewise.
12769         * doc/posix-headers/stdlib.texi (stdlib.h): Likewise.
12770         * doc/posix-headers/string.texi (string.h): Likewise.
12771         * doc/posix-headers/time.texi (time.h): Likewise.
12772         * doc/posix-headers/unistd.texi (unistd.h): Likewise.
12773         * doc/posix-headers/wchar.texi (wchar.h): Likewise.
12774
12775 2009-08-14  Eric Blake  <ebb9@byu.net>
12776
12777         doc: improve git diff of texinfo files
12778         * .gitattributes: Add rule for *.texi files, with hint on how to
12779         use it.
12780         Copied from m4, and based on a report by Bruno Haible.
12781
12782 2009-08-14  Bruno Haible  <bruno@clisp.org>
12783
12784         Disable multithread support by default on Cygwin 1.5.x for real.
12785         * m4/threadlib.m4 (gl_THREADLIB_EARLY_BODY): Fix last commit.
12786
12787 2009-08-14  Joel E. Denny  <jdenny@clemson.edu>
12788
12789         update-copyright: much ado about intervals
12790         * build-aux/update-copyright: Implement and document
12791         UPDATE_COPYRIGHT_USE_INTERVALS to control expansion and collapse
12792         of copyright year intervals.
12793         Also, document UPDATE_COPYRIGHT_YEAR.
12794         * tests/test-update-copyright.sh: Test it.
12795
12796         update-copyright: convert 2-digit to 4-digit years
12797         * build-aux/update-copyright: Implement and document.
12798         * tests/test-update-copyright.sh: Update.
12799
12800 2009-08-14  Jim Meyering  <meyering@redhat.com>
12801
12802         test-exclude: avoid coreutils "make check" failure
12803         * tests/test-exclude.c (ARGMATCH_DIE_DECL) [ARGMATCH_DIE_DECL]: Define,
12804         just as in test-argmatch.c.
12805
12806 2009-08-13  Eric Blake  <ebb9@byu.net>
12807
12808         test-dup2: fix bad assumption
12809         * tests/test-dup2.c (main): Tolerate leaked fds from environment.
12810         Reported by Peter Breitenlohner <peb@mppmu.mpg.de>.
12811
12812         test-version-etc: fix CRLF portability issue
12813         * tests/test-version-etc.sh: Use tr, not sed, as not all sed
12814         recognize \r.
12815         * tests/test-argp-version-etc-1.sh: Likewise.
12816
12817         getopt: update client modules
12818         * modules/argp (Depends-on): Use getopt-gnu.
12819         * modules/git-merge-changelog (Depends-on): Likewise.
12820         * modules/long-options (Depends-on): Likewise.
12821         * modules/xstrtol (Depends-on): Likewise.
12822
12823 2009-08-13  Simon Josefsson  <simon@josefsson.org>
12824
12825         * tests/test-version-etc.sh: Don't fail on different
12826         project/version.  Don't fail on CRLF differences.  Rewrite to use
12827         multiple -e instead of multiple sed forks, suggested by Eric Blake
12828         <ebb9@byu.net>.
12829         * tests/test-argp-version-etc-1.sh: Likewise.
12830
12831 2009-08-13  Simon Josefsson  <simon@josefsson.org>
12832
12833         * tests/test-version-etc.sh: Don't fail on different
12834         project/version.
12835
12836 2009-08-12  Bruno Haible  <bruno@clisp.org>
12837
12838         Tests for modules 'getopt-posix', 'getopt-gnu'.
12839         * modules/getopt-posix-tests: New file.
12840         * tests/test-getopt.c: New file.
12841         * tests/test-getopt.h: New file.
12842         * tests/test-getopt_long.h: New file.
12843
12844         New modules 'getopt-posix', 'getopt-gnu'.
12845         * modules/getopt-gnu: New file, renamed from modules/getopt.
12846         * modules/getopt-posix: New file.
12847         * modules/getopt: Turn into an obsolete alias for getopt-gnu.
12848         * m4/getopt.m4 (gl_FUNC_GETOPT_POSIX, gl_FUNC_GETOPT_GNU): New macros.
12849         (gl_GETOPT): Remove macro.
12850         (gl_GETOPT_CHECK_HEADERS): Do some checks only for gl_FUNC_GETOPT_GNU.
12851         Disable the test against BSD systems that declare optreset. Test
12852         against mingw bug. Test against lack of support of optional arguments
12853         on many platforms.
12854         * doc/glibc-headers/getopt.texi: Update module name and list of
12855         relevant platforms.
12856         * doc/posix-functions/getopt.texi: Mention modules 'getopt-posix' and
12857         'getopt-gnu' and more portability problems.
12858         * NEWS: Mention the changes.
12859
12860 2009-08-12  Bruno Haible  <bruno@clisp.org>
12861
12862         Ensure that optarg etc. get declared by <unistd.h>.
12863         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Require
12864         AC_USE_SYSTEM_EXTENSIONS.
12865         * modules/getopt (Depends-on): Add 'extensions'.
12866
12867 2009-08-12  Bruno Haible  <bruno@clisp.org>
12868
12869         Avoid test link errors.
12870         * modules/pipe-filter-ii-tests (Makefile.am): Define
12871         test_pipe_filter_ii1_LDADD and test_pipe_filter_ii2_main_LDADD.
12872         * modules/pipe-filter-gi-tests (Makefile.am): Define
12873         test_pipe_filter_gi1_LDADD and test_pipe_filter_gi2_main_LDADD.
12874         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
12875
12876 2009-08-12  Bruno Haible  <bruno@clisp.org>
12877
12878         * m4/getopt.m4 (gl_REPLACE_GETOPT): New macro, was called
12879         gl_GETOPT_SUBSTITUTE before.
12880         (gl_GETOPT): Use it.
12881         * m4/argp.m4 (gl_ARGP): Update.
12882         Reported by Sergey Poznyakoff.
12883
12884         * m4/getopt.m4: Reorder macros.
12885         (gl_GETOPT): Inline gl_GETOPT_SUBSTITUTE.
12886         (gl_GETOPT_SUBSTITUTE): Remove macro.
12887
12888 2009-08-12  Sergey Poznyakoff  <gray@gnu.org.ua>
12889
12890         Minor improvement in gitlog-to-changelog
12891
12892         * build-aux/gitlog-to-changelog: New option `--format' makes
12893         output format string configurable.
12894
12895 2009-08-12  Sergey Poznyakoff  <gray@gnu.org.ua>
12896
12897         Optimize exclude: use hash tables for non-wildcard patterns.
12898
12899         * lib/exclude.c: Include hash.h and mbuiter.h
12900         (struct exclude_pattern, exclude_segment): New data types.
12901         (struct exclude): Rewrite.
12902         (fnmatch_pattern_has_wildcards): New function.
12903         (new_exclude_segment, free_exclude_segment): New functions.
12904         (excluded_file_pattern_p, excluded_file_name_p): New functions.
12905         (excluded_file_name, add_exclude): Rewrite using new struct exclude.
12906         * lib/exclude.h (is_fnmatch_pattern): New prototype.
12907         * modules/exclude: Depend on hash and mbuiter.
12908
12909         * modules/exclude-tests: New file.
12910         * tests/test-exclude.c: New file.
12911         * tests/test-exclude1.sh: New file.
12912         * tests/test-exclude2.sh: New file.
12913         * tests/test-exclude3.sh: New file.
12914         * tests/test-exclude4.sh: New file.
12915         * tests/test-exclude5.sh: New file.
12916         * tests/test-exclude6.sh: New file.
12917         * tests/test-exclude7.sh: New file.
12918
12919 2009-08-12  Bruno Haible  <bruno@clisp.org>
12920
12921         Ensure that getopt() gets declared by <unistd.h>.
12922         * lib/unistd.in.h: Conditionally include getopt.h.
12923         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): Require gl_UNISTD_H_DEFAULTS.
12924         Set GNULIB_UNISTD_H_GETOPT.
12925         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
12926         GNULIB_UNISTD_H_GETOPT.
12927         * modules/unistd (Makefile.am): Substitute GNULIB_UNISTD_H_GETOPT.
12928
12929 2009-08-12  Bruno Haible  <bruno@clisp.org>
12930
12931         Clarify logic.
12932         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS, gl_GETOPT_IFELSE): Use
12933         gl_replace_getopt instead of GETOPT_H.
12934
12935 2009-08-12  Bruno Haible  <bruno@clisp.org>
12936
12937         * m4/getopt.m4: Add comments.
12938
12939 2009-08-12  Bruno Haible  <bruno@clisp.org>
12940
12941         Disable multithread support by default on Cygwin 1.5.x.
12942         * m4/threadlib.m4 (gl_THREADLIB_EARLY_BODY): On Cygwin 1.5.x and older,
12943         set gl_use_threads=no if not specified otherwise.
12944
12945 2009-08-11  Bruno Haible  <bruno@clisp.org>
12946
12947         Avoid compilation error on NetBSD 5.0.
12948         * tests/test-locale.c: Write sizeof (NULL) instead of sizeof NULL.
12949         * tests/test-stdio.c: Likewise.
12950         * tests/test-stdlib.c: Likewise.
12951         * tests/test-string.c: Likewise.
12952         * tests/test-unistd.c: Likewise.
12953         Reported by Greg Troxel <gdt@ir.bbn.com>
12954         at <https://savannah.gnu.org/support/?106973>.
12955
12956 2009-08-11  Bruno Haible  <bruno@clisp.org>
12957
12958         * modules/dup2-tests (Depends-on): Remove close.
12959
12960         Undo 2009-07-19 commit.
12961         * modules/acl-tests (Depends-on): Remove close.
12962         * modules/binary-io-tests (Depends-on): Likewise.
12963         * modules/closein-tests (Depends-on): Likewise.
12964         * modules/flock-tests (Depends-on): Likewise.
12965         * modules/fsync-tests (Depends-on): Likewise.
12966         * modules/lseek-tests (Depends-on): Likewise.
12967         * modules/pipe-tests (Depends-on): Likewise.
12968         * modules/posix_spawn-tests (Depends-on): Likewise.
12969         * modules/posix_spawnp-tests (Depends-on): Likewise.
12970         * modules/stat-time-tests (Depends-on): Likewise.
12971         * modules/yesno-tests (Depends-on): Likewise.
12972
12973 2009-08-10  Bruno Haible  <bruno@clisp.org>
12974
12975         * lib/vasnprintf.c (DCHAR_SET): Undefine at the end.
12976
12977 2009-08-10  Bruno Haible  <bruno@clisp.org>
12978
12979         Fix a gcc warning.
12980         * lib/write.c (rpl_write): Cast result of _get_osfhandle.
12981
12982 2009-08-10  Bruno Haible  <bruno@clisp.org>
12983
12984         Don't optimize AC_LIBOBJs, as they may appear in different contexts.
12985         * m4/close.m4 (gl_REPLACE_CLOSE): Execute AC_LIBOBJ unconditionally,
12986         not only the first time.
12987         * m4/fclose.m4 (gl_REPLACE_FCLOSE): Likewise.
12988         * m4/open.m4 (gl_REPLACE_OPEN): Likewise.
12989         * m4/strstr.m4 (gl_FUNC_STRSTR): Execute AC_LIBOBJ when REPLACE_STRSTR
12990         is 1, not only the the first time.
12991
12992 2009-08-10  Bruno Haible  <bruno@clisp.org>
12993
12994         Make it possible to use module 'gethostname' without module 'close'.
12995         * lib/unistd.in.h (close): Evoke a link error only if
12996         UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS is set.
12997         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
12998         UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS.
12999         * modules/unistd (Makefile.am): Substitute
13000         UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS.
13001         * lib/sys_ioctl.in.h (ioctl): Evoke a link error only if
13002         SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS is set.
13003         * m4/sys_ioctl_h.m4 (gl_SYS_IOCTL_H_DEFAULTS): Initialize
13004         SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS.
13005         * modules/sys_ioctl (Makefile.am): Substitute
13006         SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS.
13007         * modules/socket (configure.ac): On native Windows, set
13008         UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS and
13009         SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS.
13010         Reported by Sam Steingold <sds@gnu.org>.
13011
13012 2009-08-10  Bruno Haible  <bruno@clisp.org>
13013
13014         * m4/close.m4 (gl_FUNC_CLOSE): Add comment.
13015         * modules/ioctl (configure.ac): Likewise.
13016
13017 2009-08-10  Bruno Haible  <bruno@clisp.org>
13018
13019         Avoid collision between gnulib wrapper and libintl wrapper.
13020         * lib/stdio-write.c (printf): Don't define if a printf wrapper is
13021         already defined in intl/printf.c.
13022         (vprintf): Test REPLACE_VPRINTF_POSIX, not REPLACE_VFPRINTF_POSIX.
13023         (vfprintf): Test REPLACE_VFPRINTF_POSIX, not REPLACE_VPRINTF_POSIX.
13024
13025 2009-08-09  Bruno Haible  <bruno@clisp.org>
13026
13027         Make <sys/select.h> really self-contained, also on Solaris 10.
13028         * lib/sys_select.in.h: Include <string.h>.
13029         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Test also against
13030         Solaris 10 problem.
13031         * tests/test-sys_select.c (main): Add check that FD_ZERO can be used.
13032         * doc/posix-headers/sys_select.texi: Mention the Solaris 10 problem.
13033         Reported by Jim Meyering.
13034
13035 2009-08-09  Bruno Haible  <bruno@clisp.org>
13036
13037         Avoid warnings from 'aclocal' that are due to a use of macro name
13038         AM_XGETTEXT_OPTION that is not defined in automake.
13039         * modules/argp (configure.ac): Hide use of AM_XGETTEXT_OPTION from
13040         automake.
13041         * modules/error (configure.ac): Likewise.
13042         * modules/propername (configure.ac): Likewise.
13043         * modules/vasprintf (configure.ac): Likewise.
13044         * modules/verror (configure.ac): Likewise.
13045         * modules/xprintf (configure.ac): Likewise.
13046         * modules/xvasprintf (configure.ac): Likewise.
13047
13048 2009-08-08  Bruno Haible  <bruno@clisp.org>
13049
13050         Avoid compilation error in C++ mode.
13051         * lib/gettimeofday.c (rpl_gettimeofday): Cast timezone argument.
13052         Reported by Sam Steingold <sds@gnu.org>.
13053
13054 2009-08-08  Bruno Haible  <bruno@clisp.org>
13055
13056         * m4/gethostname.m4 (gl_FUNC_GETHOSTNAME): Define HOST_NAME_MAX also
13057         for the various Unix platforms.
13058         * doc/posix-headers/limits.texi: Update platforms list regarding
13059         HOST_NAME_MAX.
13060         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
13061
13062 2009-08-07  Jim Meyering  <meyering@redhat.com>
13063
13064         selinux-at: fix typo in a comment
13065         * lib/selinux-at.h: s/getfileconat/getfilecon/ in a comment.
13066         Spotted by Paolo Bonzini.
13067
13068         selinux-at: remove redundant m4 code, add documentation
13069         * modules/selinux-at (configure.ac): Remove redundant code.
13070         LIB_SELINUX is already set via the dependent module, selinux-h.
13071         (Include): Add quotes around selinux-at.h.
13072         * lib/selinux-at.h: Add documentation.
13073         Reported by Bruno Haible in
13074         http://marc.info/?l=gnulib-bug&m=124958988300749
13075
13076 2009-08-07  Bruno Haible  <bruno@clisp.org>
13077
13078         Avoid link error on MacOS X 10.3 and 10.4.
13079         * lib/argp-ba.c (argp_program_bug_address): Explicitly zero-initialize
13080         on non-ELF systems.
13081         * lib/argp-pv.c (argp_program_version): Likewise.
13082         Reported by Simon Josefsson.
13083
13084 2009-08-07  Simon Josefsson  <simon@josefsson.org>
13085
13086         * tests/test-version-etc.sh: Use $EXEEXT.
13087
13088 2009-08-06  Joel E. Denny  <jdenny@clemson.edu>
13089
13090         update-copyright: update documentation to point to maint.mk
13091         * build-aux/update-copyright: Here.
13092
13093 2009-08-06  Jim Meyering  <meyering@redhat.com>
13094
13095         maint.mk: support update-copyright-local
13096         * top/maint.mk (update-copyright-local): Define place-holder.
13097         (update-copyright): Depend on $(update-copyright-local).
13098
13099 2009-08-06  Jim Meyering  <meyering@redhat.com>
13100
13101         selinux-at: new module
13102         Initially written for coreutils, this module will soon be
13103         used by findutils, too.
13104         * MODULES.html.sh [Misc]: Add selinux-at.
13105         * lib/selinux-at.h: New file, from coreutils.
13106         * lib/selinux-at.c: Likewise.
13107         * modules/selinux-at: Likewise.
13108         (License): Change from LGPL to GPL, since it depends
13109         on the GPL'd openat module.
13110
13111         doc: update README
13112         * README: Remove references to cogito.
13113         Remove cvs-repo-updating instructions from 2007.
13114         Don't imply that CVS is better if you have limited disk space.
13115
13116 2009-08-05  Joel E. Denny  <jdenny@clemson.edu>
13117
13118         update-copyright: support C-style comments
13119         * build-aux/update-copyright: Implement and document.
13120         * tests/test-update-copyright.sh: Test.
13121
13122 2009-08-05  Joel E. Denny  <jdenny@clemson.edu>
13123
13124         update-copyright: support omitted "(C)"
13125         * build-aux/update-copyright: Implement and document.  Also,
13126         allow variable whitespace before "(C)".
13127         * tests/test-update-copyright.sh: Test.
13128
13129 2009-08-05  Joel E. Denny  <jdenny@clemson.edu>
13130
13131         update-copyright: don't trip on non-FSF copyright statements
13132         * build-aux/update-copyright: Fix so that the first correctly
13133         formatted FSF copyright statement is recognized no matter what
13134         appears before it.  Update documentation.
13135         * tests/test-update-copyright.sh: Test that.
13136
13137 2009-08-05  Joel E. Denny  <jdenny@clemson.edu>
13138
13139         update-copyright: clean up code a little
13140         * build-aux/update-copyright: Append "_re" to the name of any
13141         variable holding a regular expression.
13142         Replace "old" and "new" with "stmt" in variable names.
13143         Do not accept 2-digit UPDATE_COPYRIGHT_YEAR, which was not
13144         handled correctly.
13145         Format code more consistently.
13146
13147 2009-08-05  Joel E. Denny  <jdenny@clemson.edu>
13148
13149         update-copyright-tests: improve portability
13150         * tests/test-update-copyright.sh: Use cmp if diff cannot handle
13151         -u or /dev/null.  Suggested by Jim Meyering and Eric Blake.
13152
13153 2009-08-03  Joel E. Denny  <jdenny@clemson.edu>
13154
13155         update-copyright: support @copyright{} and &copy;
13156         * build-aux/update-copyright: Implement and document.
13157         * tests/test-update-copyright.sh: Test.
13158
13159 2009-08-04  Jim Meyering  <meyering@redhat.com>
13160
13161         update-copyright-tests: correctly test EOL=\r\n handling
13162         * tests/test-update-copyright.sh: Put \r at the end of some lines
13163         for the dos-eol tests.  Based on a patch by Joel E. Denny.
13164
13165         maint.mk: make update-copyright exclusion list more configurable
13166         * top/maint.mk (update-copyright): Default to excluding COPYING,
13167         but allow an override, in case someone does want to update that file.
13168
13169         maint.mk: don't update copyright date in COPYING
13170         * top/maint.mk (update-copyright): Exclude COPYING.
13171
13172         maint.mk: add a copyright-updating rule
13173         * top/maint.mk (update-copyright): New rule.
13174         Derived from coreutils/Makefile.am.
13175
13176         update-copyright: rename some variables
13177         * build-aux/update-copyright: Rename a few variables for clarity.
13178         Tweak syntax.  List Joel E. Denny as coauthor.
13179
13180 2009-08-03  Joel E. Denny  <jdenny@clemson.edu>
13181
13182         update-copyright: fix bug for 2-digit last year and add tests
13183         * build-aux/update-copyright: Fix bug.
13184         Use UPDATE_COPYRIGHT_YEAR from environment as current year if
13185         specified.
13186         * modules/update-copyright-tests: New
13187         * tests/test-update-copyright.sh: New.
13188
13189 2009-07-31  Joel E. Denny  <jdenny@clemson.edu>
13190
13191         update-copyright: handle leading tabs in line prefix
13192         * build-aux/update-copyright: Count leading tabs as 8 spaces
13193         when computing margin.  This helps with the formatting of
13194         ChangeLogs, for example.
13195         Fix documentation a little.
13196
13197 2009-07-31  Joel E. Denny  <jdenny@clemson.edu>
13198
13199         update-copyright: support EOL=\r\n
13200         * build-aux/update-copyright: Implement that.
13201
13202 2009-07-31  Joel E. Denny  <jdenny@clemson.edu>
13203
13204         update-copyright: automatically format copyright statements
13205         * build-aux/update-copyright: Implement that.
13206         Also, be a little more predictable and safer by always failing
13207         when the full copyright format is not perfectly recognized as an
13208         unbroken whole.  Discussed at
13209         <http://lists.gnu.org/archive/html/bug-gnulib/2009-07/msg00131.html>.
13210         Rewrite documentation.
13211
13212 2009-08-03  Bruno Haible  <bruno@clisp.org>
13213
13214         * m4/iconv.m4 (AM_ICONV): Fix displayed message with autoconf-2.64.
13215
13216 2009-08-02  Bruno Haible  <bruno@clisp.org>
13217
13218         Tests for module 'uname'.
13219         * modules/uname-tests: New file.
13220         * tests/test-uname.c: New file.
13221
13222         New module 'uname'.
13223         * lib/uname.c: New file.
13224         * m4/uname.m4: New file.
13225         * modules/uname: New file.
13226         * doc/posix-functions/uname.texi: Mention the new module.
13227
13228 2009-08-02  Bruno Haible  <bruno@clisp.org>
13229
13230         Tests for module 'sys_utsname'.
13231         * modules/sys_utsname-tests: New file.
13232         * tests/test-sys_utsname.c: New file.
13233
13234         New module 'sys_utsname'.
13235         * lib/sys_utsname.in.h: New file, based on glibc's <sys/utsname.h>.
13236         * m4/sys_utsname_h.m4: New file.
13237         * modules/sys_utsname: New file.
13238         * doc/posix-headers/sys_utsname.texi: Mention the new module.
13239
13240 2009-08-02  Bruno Haible  <bruno@clisp.org>
13241
13242         Implicitly initialize the sockets library.
13243         * lib/gethostname.c: Include sockets.h.
13244         (rpl_gethostname): Invoke gl_sockets_startup.
13245         * lib/socket.c: Include sockets.h.
13246         (rpl_socket): Invoke gl_sockets_startup.
13247         * modules/gethostname (Depends-on): Add sockets.
13248         * modules/socket (Depends-on): Likewise.
13249         * tests/test-poll.c: Don't include sockets.h.
13250         (main): Don't invoke gl_sockets_startup.
13251         * tests/test-select.c: Don't include sockets.h.
13252         (main): Don't invoke gl_sockets_startup.
13253
13254 2009-08-02  Bruno Haible  <bruno@clisp.org>
13255
13256         Allow multiple calls to gl_sockets_startup.
13257         * lib/sockets.c (initialized_sockets_version): New variable.
13258         (gl_sockets_startup): Do nothing if already called for this or a higher
13259         version.
13260         (gl_sockets_cleanup): Reset initialized_sockets_version.
13261
13262 2009-08-03  Simon Josefsson  <simon@josefsson.org>
13263
13264         * tests/test-argp-version-etc-1.sh: Use EXEEXT.  Don't fail on
13265         different project/version.
13266
13267 2009-08-02  Paolo Bonzini  <bonzini@gnu.org>
13268             Bruno Haible  <bruno@clisp.org>
13269
13270         Tests for module 'pipe-filter-gi'.
13271         * modules/pipe-filter-gi-tests: New file.
13272         * tests/test-pipe-filter-gi1.sh: New file.
13273         * tests/test-pipe-filter-gi1.c: New file.
13274         * tests/test-pipe-filter-gi2.sh: New file.
13275         * tests/test-pipe-filter-gi2-main.c: New file.
13276         * tests/test-pipe-filter-gi2-child.c: New file.
13277
13278         New module 'pipe-filter-gi'.
13279         * lib/pipe-filter-gi.c: New file.
13280         * modules/pipe-filter-gi: New file.
13281
13282 2009-08-02  Bruno Haible  <bruno@clisp.org>
13283             Paolo Bonzini  <bonzini@gnu.org>
13284
13285         Tests for module 'pipe-filter-ii'.
13286         * modules/pipe-filter-ii-tests: New file.
13287         * tests/test-pipe-filter-ii1.sh: New file.
13288         * tests/test-pipe-filter-ii1.c: New file.
13289         * tests/test-pipe-filter-ii2.sh: New file.
13290         * tests/test-pipe-filter-ii2-main.c: New file.
13291         * tests/test-pipe-filter-ii2-child.c: New file.
13292
13293         New module 'pipe-filter-ii'.
13294         * lib/pipe-filter.h: New file.
13295         * lib/pipe-filter-ii.c: New file.
13296         * lib/pipe-filter-aux.h: New file.
13297         * modules/pipe-filter-ii: New file.
13298
13299 2009-08-02  Simon Josefsson  <simon@josefsson.org>
13300
13301         * lib/gc-libgcrypt.c: Change copyright to FSF.
13302         * lib/gc-gnulib.c: Likewise.
13303
13304 2009-08-02  Martin Lambers  <marlam@marlam.de>  (tiny change)
13305
13306         * lib/gethostname.c: Include limits.h.
13307
13308 2009-08-02  Simon Josefsson  <simon@josefsson.org>
13309             Bruno Haible  <bruno@clisp.org>
13310
13311         Ensure HOST_NAME_MAX as part of the gethostname module.
13312         * m4/gethostname.m4 (gl_FUNC_GETHOSTNAME): On native Windows platforms,
13313         define also HOST_NAME_MAX.
13314         * tests/test-gethostname.c: Include <limits.h>.
13315         (main): Check also HOST_NAME_MAX.
13316         * doc/posix-headers/limits.texi: Document the mingw problem.
13317
13318 2009-08-02  Bruno Haible  <bruno@clisp.org>
13319
13320         * lib/gethostname.c (gethostname): Fix handling of large len argument.
13321         Add comments.
13322
13323 2009-03-31  Simon Josefsson  <simon@josefsson.org>
13324
13325         * lib/gethostname.c: Add Windows wrapper.
13326         * m4/gethostname.m4: Look for gethostname in -lws2_32.
13327         * modules/gethostname: Depend on sys_socket & errno, for also
13328         added lib/w32sock.h.  Add GETHOSTNAME_LIB link directive.
13329         * modules/gethostname-tests: Link to @GETHOSTNAME_LIB@.
13330
13331 2009-07-31  Jim Meyering  <meyering@redhat.com>
13332
13333         getloadavg: fix symbol name in comment
13334         * lib/getloadavg.c: Correct a typo I introduced when adding
13335         comments to Matt's change: s/NLIST_POINTER/N_NAME_POINTER/.
13336         Matt Kraai spotted the problem.
13337
13338 2009-07-29  Matt Kraai  <mkraai@beckman.com>
13339
13340         getloadavg: check whether n_name is a pointer, for QNX 6.4.1
13341         * lib/getloadavg.c (getloadavg): Use the strcpy-into-nlist.n_name
13342         code also if ! defined N_NAME_POINTER.
13343         * m4/getloadavg.m4 (gl_GETLOADAVG): Add a link-test for N_NAME_POINTER.
13344         This is required on QNX 6.4.1, where /usr/include/nlist.h exists,
13345         but the n_name member is a 12-byte array.
13346
13347 2009-07-29  Joel E. Denny  <jdenny@clemson.edu>
13348
13349         update-copyright: generalize comment handling
13350         * build-aux/update-copyright: Handle copyright statements
13351         within more comment styles.
13352         Document usage.
13353         Report any file with an external copyright holder or parse failure.
13354
13355 2009-07-29  Jim Meyering  <meyering@redhat.com>
13356
13357         mktime: correct setting of REPLACE_MKTIME
13358         * m4/mktime.m4 (gl_FUNC_MKTIME): Set REPLACE_MKTIME=0, when required.
13359
13360         update-copyright: new module
13361         * modules/update-copyright: New file.
13362         * build-aux/update-copyright: New file.
13363         * MODULES.html.sh (maint+release support): Add update-copyright.
13364
13365 2009-07-27  Bruno Haible  <bruno@clisp.org>
13366
13367         Fix compilation error when <ctime> is used and mktime is replaced.
13368         * lib/time.in.h (mktime): New declaration.
13369         * m4/mktime.m4 (gl_FUNC_MKTIME): Require gl_HEADER_TIME_H_DEFAULTS. Set
13370         REPLACE_MKTIME instead of defining mktime in config.h.
13371         * m4/time_h.m4 (gl_HEADER_TIME_H_DEFAULTS): Initialize REPLACE_MKTIME.
13372         * modules/time (Makefile.am): Substitute REPLACE_MKTIME.
13373         Reported by Ross McFarland <rwmcfa1@neces.com>.
13374
13375 2009-07-27  Bruno Haible  <bruno@clisp.org>
13376
13377         * lib/math.in.h (cosl, logl, sinl): Undefine before declaring it.
13378         Reported by Matt Kraai <mkraai@beckman.com>.
13379
13380 2009-07-25  Jim Meyering  <meyering@redhat.com>
13381
13382         maint.mk: avoid warnings about missing files
13383         * top/maint.mk (PREV_VERSION): Suppress stderr, to hide a
13384         diagnostic when .prev-version does not exist.
13385         (_cfg_mk): Define, so it can be empty when cfg.mk does not exist.
13386         (syntax-check-rules): Use $(_cfg_mk) to avoid a diagnostic about
13387         nonexistent cfg.mk.
13388         Suggestions from Simon Josefsson.
13389
13390 2009-07-25  Bruno Haible  <bruno@clisp.org>
13391
13392         * lib/math.in.h (cosl, logl, sinl): Don't declare if they are already
13393         defined as macros. Needed on QNX 6.4.1.
13394         Reported by Matt Kraai <mkraai@beckman.com>.
13395
13396 2009-07-23  Jim Meyering  <meyering@redhat.com>
13397
13398         maint.mk: invoke "make dist" with a working value of XZ_OPT
13399         * top/maint.mk (vc-dist): Use no "-" in the value of XZ_OPT.
13400
13401 2009-07-22  Matt Kraai  <mkraai@beckman.com>  (tiny change)
13402
13403         Make fseeko.c compile on QNX.
13404         * lib/fseeko.c (rpl_fseeko): Use the numerical value of _MWRITE.
13405
13406 2009-07-22  Peter Simons  <simons@cryp.to>
13407
13408         C++: wrap md2,md5,sha1,etc. function declarations in extern "C" scope
13409         * lib/md2.h [__cplusplus]: Wrap declarations in extern "C" scope.
13410         * lib/md4.h: Likewise.
13411         * lib/md5.h: Likewise.
13412         * lib/sha1.h: Likewise.
13413         * lib/sha256.h: Likewise.
13414         * lib/sha512.h: Likewise.
13415
13416         tests-sha1: don't assign literal string to 'char *' variable
13417         * tests/test-sha1.c (main): Declare locals with "const" to match
13418         attributes of the right hand side.
13419
13420 2009-07-21  Eric Blake  <ebb9@byu.net>
13421
13422         dup2: fix more mingw problems
13423         * lib/dup2.c (rpl_dup2) [_WIN32]: Avoid hanging when duplicating
13424         fd to itself.
13425         * doc/posix-functions/dup2.texi (dup2): Document the bug.
13426         * lib/unistd.in.h (dup2) [REPLACE_FCHDIR]: Avoid name collision.
13427         * lib/fchdir.c (dup2): Manage preprocessor macros correctly.
13428         (rpl_dup2_fchdir): Rename from rpl_dup2, and let dup2 module take
13429         care of mingw bugs.
13430
13431 2009-07-21  Jim Meyering  <meyering@redhat.com>
13432
13433         vc-list-files: avoid failure when /bin/sh is dash
13434         * build-aux/vc-list-files: Avoid a shell portability problem with dash.
13435         On some Debian based systems, /bin/sh is a symlink to dash, and running
13436         this command would omit the "/" following each 'tests' prefix:
13437           dash -x build-aux/vc-list-files -C . tests
13438         That is because bash and dash work differently:
13439           $ for i in bash dash; do $i -c 'a=odd; a=ok b=$a; echo '$i' $b'; done
13440           bash ok
13441           dash odd
13442
13443 2009-07-21  Eric Blake  <ebb9@byu.net>
13444
13445         dup2-tests: test previous patch
13446         * modules/dup2-tests: New file.
13447         * tests/test-dup2.c: Likewise.
13448         * tests/test-open.c (main): Avoid unspecified behavior.
13449         * tests/test-pipe.c (child_main): Use dup2 semantics to simplify
13450         test.
13451
13452         dup2: work around mingw and cygwin 1.5 bug
13453         * m4/dup2.m4 (gl_FUNC_DUP2): Detect mingw bug.
13454         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add witness.
13455         * modules/unistd (Makefile.am): Substitute it.
13456         * lib/unistd.in.h (dup2): Declare the replacement.
13457         * lib/dup2.c (dup2) [REPLACE_DUP2]: Implement it.
13458         * doc/posix-functions/dup2.texi (dup2): Document the bugs.
13459         * lib/fchdir.c (rpl_dup2): Don't collide with mingw replacement.
13460         * modules/execute (Depends-on): Add dup2.
13461         * modules/fseterr (Depends-on): Likewise.
13462         * modules/pipe (Depends-on): Likewise.
13463         * modules/posix_spawn-internal (Depends-on): Likewise.
13464
13465 2009-07-21  Bruno Haible  <bruno@clisp.org>
13466
13467         * modules/.gitattributes: New file.
13468
13469 2009-07-20  Bruno Haible  <bruno@clisp.org>
13470
13471         * tests/test-pipe.c (BACKUP_STDERR_FILENO): New macro.
13472         (main): Use it.
13473
13474 2009-07-20  Eric Blake  <ebb9@byu.net>
13475
13476         test-pipe: make a bit more robust.
13477         * tests/test-pipe.c (myerr): Allow error messages regardless of
13478         what we do to stderr.
13479         (test_pipe): Rearrange to avoid deadlock.
13480         (child_main): Try a larger read, to ensure we avoided deadlock.
13481         * lib/pipe.c (create_pipe) [_WIN32]: Fix comment.
13482         * lib/pipe.h (create_pipe_bidi): Document potential for deadlock
13483         if misused.
13484
13485 2009-07-19  Jim Meyering  <meyering@redhat.com>
13486
13487         fts: avoid false-positive cycle-detection
13488         * lib/fts.c (fts_read): Reinitialize cycle-detection data structures
13489         for each new command line argument.
13490
13491 2009-07-19  Bruno Haible  <bruno@clisp.org>
13492
13493         Fix build error on mingw with the modules sys_select and unistd.
13494         * modules/acl-tests (Depends-on): Add close.
13495         * modules/binary-io-tests (Depends-on): Likewise.
13496         * modules/closein-tests (Depends-on): Likewise.
13497         * modules/flock-tests (Depends-on): Likewise.
13498         * modules/fsync-tests (Depends-on): Likewise.
13499         * modules/lseek-tests (Depends-on): Likewise.
13500         * modules/pipe-tests (Depends-on): Likewise.
13501         * modules/posix_spawn-tests (Depends-on): Likewise.
13502         * modules/posix_spawnp-tests (Depends-on): Likewise.
13503         * modules/stat-time-tests (Depends-on): Likewise.
13504         * modules/yesno-tests (Depends-on): Likewise.
13505
13506 2009-07-19  Bruno Haible  <bruno@clisp.org>
13507
13508         Unify conditionals.
13509         * lib/pipe.h: Detect native Win32 by looking at _WIN32 and __WIN32__
13510         macros, not at the compiler macros.
13511         * lib/pipe.c: Likewise.
13512         * lib/execute.c: Likewise.
13513         * lib/spawni.c: Likewise.
13514
13515 2009-07-19  Bruno Haible  <bruno@clisp.org>
13516
13517         Fix handling of closed stdin/stdout/stderr on mingw.
13518         * lib/w32spawn.h: Include unistd.h.
13519         (dup_noinherit): Return -1 if the old handle is invalid. Allocate new
13520         file descriptor with O_NOINHERIT flag.
13521         (fd_safer_noinherit): New function, based on fd-safer.c.
13522         (dup_safer_noinherit): New function, based on dup-safer.c.
13523         (undup_safer_noinherit): New function.
13524         * lib/execute.c (execute) [WIN32]: Use dup_safer_noinherit instead of
13525         dup_noinherit. Use undup_safer_noinherit instead of dup2 and close.
13526         * lib/pipe.c (create_pipe) [WIN32]: Likewise. Use fd_safer_noinherit
13527         instead of fd_safer.
13528         * tests/test-pipe.c: Include <windows.h>.
13529         (child_main) [WIN32]: Test the handle of STDERR_FILENO, not its close() result.
13530
13531         * tests/test-pipe.c (child_main, parent_main): New functions, extracted
13532         from main.
13533         (test_pipe): Pass an extra argument for disambiguation.
13534         (main): Invoke parent_main or child_main.
13535
13536         * tests/test-pipe.c (test_pipe): Pass slave_process = true argument
13537         consistently.
13538
13539 2009-07-18  Eric Blake  <ebb9@byu.net>
13540
13541         test-pipe: fix mingw build
13542         * tests/test-pipe.c (main): Avoid fcntl on mingw.
13543
13544 2009-07-18  Bruno Haible  <bruno@clisp.org>
13545
13546         * modules/pipe-tests (Makefile.am): Fix typo.
13547
13548 2009-07-18  Eric Blake  <ebb9@byu.net>
13549
13550         error: fix mingw build
13551         * lib/error.c (error, error_at_line): Avoid fcntl on mingw.
13552         Reported by Bruno Haible.
13553
13554         error: avoid undefined use of stdout
13555         * lib/error.c (error, error_at_line): Check that fd 1 is open
13556         before flushing stdout.  Avoids a crash on cygwin when libsigsegv
13557         is handling faults and the close_stdout module wants to report the
13558         detection of closed stdout as an error.
13559
13560 2009-07-17  Eric Blake  <ebb9@byu.net>
13561
13562         pipe: be robust in face of closed fds
13563         * lib/pipe.c (create_pipe): Closed standard descriptors in parent
13564         should cause child to misbehave.
13565         * modules/pipe-tests: New module.
13566         * tests/test-pipe.c: New file.
13567         * tests/test-pipe.sh: New file.
13568         Reported by Akim Demaille.
13569
13570 2009-07-14  Bruno Haible  <bruno@clisp.org>
13571
13572         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Guess it works on glibc systems.
13573         Reported by anonymous kc.
13574
13575 2009-07-07  Jim Meyering  <meyering@redhat.com>
13576
13577         maint.mk: don't look for translatable strings in *.m4 or *.mk
13578         * top/maint.mk (sc_po_check): Skip *.m4 and *.mk files,
13579         when searching for translatable strings.
13580
13581 2009-07-05  Jim Meyering  <meyering@redhat.com>
13582
13583         remove superfluous parentheses in STREQ definition
13584         * tests/test-argv-iter.c (STREQ): Remove redundant parentheses.
13585         * lib/getugroups.c (STREQ): Likewise.
13586         * lib/fnmatch.c (STREQ): Likewise.
13587         Spotted by Bruno Haible.
13588
13589 2009-07-04  Jim Meyering  <meyering@redhat.com>
13590
13591         argv-iter: new module
13592         * MODULES.html.sh: Add argv-iter.
13593         * lib/argv-iter.c, lib/argv-iter.h: New files.
13594         * modules/argv-iter: New file.
13595         * modules/argv-iter-tests: New file.
13596         * tests/test-argv-iter.c: Test it.
13597
13598 2009-07-04  Bruno Haible  <bruno@clisp.org>
13599
13600         Fix assertion.
13601         * lib/git-merge-changelog.c (compute_mapping): In the case where file1
13602         contains more exact copies of a given entry than file2, leave the extra
13603         copies unpaired rather than aborting.
13604         Reported by Eric Blake.
13605
13606 2009-07-02  Bruno Haible  <bruno@clisp.org>
13607
13608         Speedup git-merge-changelog for git cherry-pick.
13609         * lib/git-merge-changelog.c (struct entries_mapping): New type.
13610         (entries_mapping_get): New function, extracted from compute_mapping.
13611         (entries_mapping_reverse_get): New function.
13612         (compute_mapping): Add a 'full' argument. Return the result in a
13613         'struct entries_mapping'.
13614         (main): Update. Access the mappings through entries_mapping_get.
13615         Reported by Eric Blake.
13616
13617 2009-07-02  Bruno Haible  <bruno@clisp.org>
13618
13619         * lib/git-merge-changelog.c (compute_mapping): Fix determination of
13620         best_i.
13621
13622 2009-07-02  Bruno Haible  <bruno@clisp.org>
13623
13624         Speed up approximate search for matching ChangeLog entries.
13625         * lib/git-merge-changelog.c (entry_fstrcmp): Add a lower_bound
13626         argument. Call fstrcmp_bounded instead of fstrcmp.
13627         (compute_mapping, try_split_merged_entry, main): Update callers.
13628
13629 2009-07-02  Bruno Haible  <bruno@clisp.org>
13630
13631         * lib/git-merge-changelog.c (main): Add comment about git cherry-pick.
13632
13633 2009-06-30  Bruno Haible  <bruno@clisp.org>
13634
13635         Reduce the number of uc_is_cased calls.
13636         * lib/unicase.h (casing_suffix_context_t): Add
13637         'first_char_except_ignorable' field.
13638         * lib/unicase/context.h (SCC_FINAL_SIGMA_MASK): Remove macro.
13639         (SCC_MORE_ABOVE_MASK, SCC_BEFORE_DOT_MASK): Update.
13640         * lib/unicase/empty-suffix-context.c (unicase_empty_suffix_context):
13641         Update initializer.
13642         * lib/unicase/u-casemap.h (FUNC): Don't invoke uc_is_cased on
13643         case-ignorable characters.
13644         * lib/unicase/u-ct-totitle.h (FUNC): Likewise.
13645         * lib/unicase/u-suffix-context.h (FUNC2): Don't call uc_is_cased here.
13646         * modules/unicase/u8-suffix-context (Depends-on): Remove unicase/cased.
13647         * modules/unicase/u16-suffix-context (Depends-on): Likewise.
13648         * modules/unicase/u32-suffix-context (Depends-on): Likewise.
13649
13650 2009-06-30  Bruno Haible  <bruno@clisp.org>
13651
13652         Tests for module 'unicase/ignorable'.
13653         * modules/unicase/ignorable-tests: New file.
13654         * tests/unicase/test-ignorable.c: New file, generated by
13655         gen-uni-tables.
13656
13657         Tests for module 'unicase/cased'.
13658         * modules/unicase/cased-tests: New file.
13659         * tests/unicase/test-cased.c: New file, generated by gen-uni-tables.
13660         * tests/unicase/test-predicate-part1.h: New file, derived from
13661         tests/unictype/test-predicate-part1.h.
13662         * tests/unicase/test-predicate-part2.h: New file, same as
13663         tests/unictype/test-predicate-part2.h.
13664
13665         Fix evaluation of "Before C" condition of FINAL_SIGMA.
13666         * lib/gen-uni-tables.c (is_cased, is_case_ignorable): New functions.
13667         (output_casing_properties): New function.
13668         (main): Call it.
13669         * lib/unicase/cased.h: New file, generated by gen-uni-tables.
13670         * lib/unicase/cased.c: Include unictype/bitmap.h.
13671         (uc_is_cased): Define through a bitmap lookup.
13672         * lib/unicase/ignorable.h: New file, generated by gen-uni-tables.
13673         * lib/unicase/ignorable.c: Include unictype/bitmap.h.
13674         (uc_is_case_ignorable): Define through a bitmap lookup.
13675         * modules/unicase/cased (Files): Add lib/unicase/cased.h,
13676         lib/unictype/bitmap.h.
13677         (Depends-on): Add inline. Clean up.
13678         * modules/unicase/ignorable (Files): Add lib/unicase/ignorable.h,
13679         lib/unictype/bitmap.h.
13680         (Depends-on): Add inline. Clean up.
13681         * tests/unicase/test-u8-tolower.c (main): Add more tests of FINAL_SIGMA
13682         recognition.
13683         * tests/unicase/test-u16-tolower.c (main): Likewise.
13684         * tests/unicase/test-u32-tolower.c (main): Likewise.
13685
13686 2009-06-30  Bruno Haible  <bruno@clisp.org>
13687
13688         * lib/unicase/u8-casemap.c: Don't include uniwbrk.h.
13689         * lib/unicase/u16-casemap.c: Likewise.
13690         * lib/unicase/u32-casemap.c: Likewise.
13691
13692 2009-06-29  Bruno Haible  <bruno@clisp.org>
13693
13694         Define u32_casefold as a wrapper around u32_ct_casefold.
13695         * lib/unicase/u32-casefold.c: Update.
13696         * modules/unicase/u32-casefold (Depends-on): Add
13697         unicase/u32-ct-casefold, unicase/empty-prefix-context,
13698         unicase/empty-suffix-context. Clean up.
13699
13700         Define u16_casefold as a wrapper around u16_ct_casefold.
13701         * lib/unicase/u16-casefold.c: Update.
13702         * modules/unicase/u16-casefold (Depends-on): Add
13703         unicase/u16-ct-casefold, unicase/empty-prefix-context,
13704         unicase/empty-suffix-context. Clean up.
13705
13706         Define u8_casefold as a wrapper around u8_ct_casefold.
13707         * lib/unicase/u-casefold.h (FUNC): Delegate to U_CT_CASEFOLD.
13708         * lib/unicase/u8-casefold.c: Update.
13709         * modules/unicase/u8-casefold (Depends-on): Add unicase/u8-ct-casefold,
13710         unicase/empty-prefix-context, unicase/empty-suffix-context. Clean up.
13711
13712         Define u32_totitle as a wrapper around u32_ct_totitle.
13713         * lib/unicase/u32-totitle.c: Update.
13714         * modules/unicase/u32-totitle (Depends-on): Add unicase/u32-ct-totitle,
13715         unicase/empty-prefix-context, unicase/empty-suffix-context. Clean up.
13716
13717         Define u16_totitle as a wrapper around u16_ct_totitle.
13718         * lib/unicase/u16-totitle.c: Update.
13719         * modules/unicase/u16-totitle (Depends-on): Add unicase/u16-ct-totitle,
13720         unicase/empty-prefix-context, unicase/empty-suffix-context. Clean up.
13721
13722         Define u8_totitle as a wrapper around u8_ct_totitle.
13723         * lib/unicase/u-totitle.h (is_cased, is_case_ignorable): Remove
13724         functions.
13725         (FUNC): Delegate to U_CT_TOTITLE.
13726         * lib/unicase/u8-totitle.c: Update.
13727         * modules/unicase/u8-totitle (Depends-on): Add unicase/u8-ct-totitle,
13728         unicase/empty-prefix-context, unicase/empty-suffix-context. Clean up.
13729
13730         * lib/unicase/u32-tolower.c (u32_tolower): Update u32_casemap
13731         invocation.
13732         * modules/unicase/u32-tolower (Depends-on): Add
13733         unicase/empty-prefix-context, unicase/empty-suffix-context.
13734
13735         * lib/unicase/u16-tolower.c (u16_tolower): Update u16_casemap
13736         invocation.
13737         * modules/unicase/u16-tolower (Depends-on): Add
13738         unicase/empty-prefix-context, unicase/empty-suffix-context.
13739
13740         * lib/unicase/u8-tolower.c (u8_tolower): Update u8_casemap invocation.
13741         * modules/unicase/u8-tolower (Depends-on): Add
13742         unicase/empty-prefix-context, unicase/empty-suffix-context.
13743
13744         * lib/unicase/u32-toupper.c (u32_toupper): Update u32_casemap
13745         invocation.
13746         * modules/unicase/u32-toupper (Depends-on): Add
13747         unicase/empty-prefix-context, unicase/empty-suffix-context.
13748
13749         * lib/unicase/u16-toupper.c (u16_toupper): Update u16_casemap
13750         invocation.
13751         * modules/unicase/u16-toupper (Depends-on): Add
13752         unicase/empty-prefix-context, unicase/empty-suffix-context.
13753
13754         * lib/unicase/u8-toupper.c (u8_toupper): Update u8_casemap invocation.
13755         * modules/unicase/u8-toupper (Depends-on): Add
13756         unicase/empty-prefix-context, unicase/empty-suffix-context.
13757
13758         New module 'unicase/u32-ct-casefold'.
13759         * lib/unicase/u32-ct-casefold.c: New file.
13760         * modules/unicase/u32-ct-casefold: New file.
13761
13762         New module 'unicase/u16-ct-casefold'.
13763         * lib/unicase/u16-ct-casefold.c: New file.
13764         * modules/unicase/u16-ct-casefold: New file.
13765
13766         New module 'unicase/u8-ct-casefold'.
13767         * lib/unicase/u8-ct-casefold.c: New file.
13768         * lib/unicase/u-ct-casefold.h: New file, derived from
13769         lib/unicase/u-casefold.h.
13770         * modules/unicase/u8-ct-casefold: New file.
13771
13772         New module 'unicase/u32-ct-totitle'.
13773         * lib/unicase/u32-ct-totitle.c: New file.
13774         * modules/unicase/u32-ct-totitle: New file.
13775
13776         New module 'unicase/u16-ct-totitle'.
13777         * lib/unicase/u16-ct-totitle.c: New file.
13778         * modules/unicase/u16-ct-totitle: New file.
13779
13780         New module 'unicase/u8-ct-totitle'.
13781         * lib/unicase/u8-ct-totitle.c: New file.
13782         * lib/unicase/u-ct-totitle.h: New file, derived from
13783         lib/unicase/u-totitle.h.
13784         * modules/unicase/u8-ct-totitle: New file.
13785
13786         New module 'unicase/u32-ct-tolower'.
13787         * lib/unicase/u32-ct-tolower.c: New file.
13788         * modules/unicase/u32-ct-tolower: New file.
13789
13790         New module 'unicase/u16-ct-tolower'.
13791         * lib/unicase/u16-ct-tolower.c: New file.
13792         * modules/unicase/u16-ct-tolower: New file.
13793
13794         New module 'unicase/u8-ct-tolower'.
13795         * lib/unicase/u8-ct-tolower.c: New file.
13796         * modules/unicase/u8-ct-tolower: New file.
13797
13798         New module 'unicase/u32-ct-toupper'.
13799         * lib/unicase/u32-ct-toupper.c: New file.
13800         * modules/unicase/u32-ct-toupper: New file.
13801
13802         New module 'unicase/u16-ct-toupper'.
13803         * lib/unicase/u16-ct-toupper.c: New file.
13804         * modules/unicase/u16-ct-toupper: New file.
13805
13806         New module 'unicase/u8-ct-toupper'.
13807         * lib/unicase/u8-ct-toupper.c: New file.
13808         * modules/unicase/u8-ct-toupper: New file.
13809
13810         Add context arguments to u*_casemap functions.
13811         * lib/unicase/unicasemap.h: Include unicase.h.
13812         (u8_casemap, u16_casemap, u32_casemap): Add prefix_context and
13813         suffix_context arguments.
13814         * lib/unicase/u-casemap.h (is_cased, is_case_ignorable): Remove
13815         functions.
13816         (FUNC): Add prefix_context and suffix_context arguments. Use
13817         uc_is_cased and uc_is_case_ignorable.
13818         * lib/unicase/u8-casemap.c: Include caseprop.h and context.h.
13819         * lib/unicase/u16-casemap.c: Likewise.
13820         * lib/unicase/u32-casemap.c: Likewise.
13821         * modules/unicase/u8-casemap (Files): Add lib/unicase/context.h.
13822         (Depends-on): Add unicase/cased, unicase/ignorable. Clean up.
13823         * modules/unicase/u16-casemap (Files): Add lib/unicase/context.h.
13824         (Depends-on): Add unicase/cased, unicase/ignorable. Clean up.
13825         * modules/unicase/u32-casemap (Files): Add lib/unicase/context.h.
13826         (Depends-on): Add unicase/cased, unicase/ignorable. Clean up.
13827
13828         New module 'unicase/u32-suffix-context'.
13829         * lib/unicase/u32-suffix-context.c: New file.
13830         * modules/unicase/u32-suffix-context: New file.
13831
13832         New module 'unicase/u16-suffix-context'.
13833         * lib/unicase/u16-suffix-context.c: New file.
13834         * modules/unicase/u16-suffix-context: New file.
13835
13836         New module 'unicase/u8-suffix-context'.
13837         * lib/unicase/u8-suffix-context.c: New file.
13838         * lib/unicase/u-suffix-context.h: New file.
13839         * modules/unicase/u8-suffix-context: New file.
13840
13841         New module 'unicase/empty-suffix-context'.
13842         * lib/unicase/empty-suffix-context.c: New file.
13843         * modules/unicase/empty-suffix-context: New file.
13844
13845         New module 'unicase/u32-prefix-context'.
13846         * lib/unicase/u32-prefix-context.c: New file.
13847         * modules/unicase/u32-prefix-context: New file.
13848
13849         New module 'unicase/u16-prefix-context'.
13850         * lib/unicase/u16-prefix-context.c: New file.
13851         * modules/unicase/u16-prefix-context: New file.
13852
13853         New module 'unicase/u8-prefix-context'.
13854         * lib/unicase/u8-prefix-context.c: New file.
13855         * lib/unicase/u-prefix-context.h: New file.
13856         * lib/unicase/context.h: New file.
13857         * modules/unicase/u8-prefix-context: New file.
13858
13859         New module 'unicase/empty-prefix-context'.
13860         * lib/unicase/empty-prefix-context.c: New file.
13861         * modules/unicase/empty-prefix-context: New file.
13862
13863         New module 'unicase/ignorable'.
13864         * lib/unicase/ignorable.c: New file.
13865         * modules/unicase/ignorable: New file.
13866
13867         New module 'unicase/cased'.
13868         * lib/unicase/caseprop.h: New file.
13869         * lib/unicase/cased.c: New file.
13870         * modules/unicase/cased: New file.
13871
13872         New functions for case mapping of substrings.
13873         * lib/unicase.h (casing_prefix_context_t): New type.
13874         (unicase_empty_prefix_context): New variable.
13875         (u8_casing_prefix_context, u16_casing_prefix_context,
13876         u32_casing_prefix_context, u8_casing_prefixes_context,
13877         u16_casing_prefixes_context, u32_casing_prefixes_context): New
13878         declarations.
13879         (casing_suffix_context_t): New type.
13880         (unicase_empty_suffix_context): New variable.
13881         (u8_casing_suffix_context, u16_casing_suffix_context,
13882         u32_casing_suffix_context, u8_casing_suffixes_context,
13883         u16_casing_suffixes_context, u32_casing_suffixes_context,
13884         u8_ct_toupper, u16_ct_toupper, u32_ct_toupper, u8_ct_tolower,
13885         u16_ct_tolower, u32_ct_tolower, u8_ct_totitle, u16_ct_totitle,
13886         u32_ct_totitle, u8_ct_casefold, u16_ct_casefold, u32_ct_casefold): New
13887         declarations.
13888
13889 2009-06-28  Jim Meyering  <meyering@redhat.com>
13890
13891         boostrap: indent only with spaces
13892         * build-aux/bootstrap: Indent only with spaces, never TABs.
13893
13894         bootstrap: split long lines
13895         * build-aux/bootstrap: Keep line length < 80.
13896
13897         bootstrap: sync from coreutils
13898         * build-aux/bootstrap: Honor variables like $ACLOCAL, etc.,
13899         just as autoreconf does.  Verify a list of prerequisite
13900         package-name,version-number pairs if defined in bootstrap.conf.
13901         Refer to README-prereq, if prerequisites are not satisfied.
13902
13903 2009-06-27  Eric Blake  <ebb9@byu.net>
13904
13905         tests: add test for bogus NULL definition
13906         * tests/test-stdio.c: Ensure POSIX 2008 requirement on NULL.
13907         * tests/test-stdlib.c: Likewise.
13908         * tests/test-string.c: Likewise.
13909         * tests/test-locale.c: Likewise.
13910         * tests/test-unistd.c: Likewise.
13911         * modules/stdio-tests (Depends-on): Add verify.
13912         * modules/stdlib-tests (Depends-on): Likewise.
13913         * modules/string-tests (Depends-on): Likewise.
13914         * modules/locale-tests (Depends-on): Likewise.
13915         * modules/unistd-tests (Depends-on): Likewise.
13916
13917 2009-06-27  Paolo Bonzini  <bonzini@gnu.org>
13918
13919         * m4/selinux-context-h (gl_HEADERS_SELINUX_CONTEXT_H): Remove
13920         self-explaining comment.
13921         * m4/selinux-selinux-h: Update serial.
13922         (gl_LIBSELINUX): New macro, adding a warning for missing development
13923         packages to code extracted from...
13924         (gl_HEADERS_SELINUX_SELINUX_H): ... this one.  Require gl_LIBSELINUX.
13925         Add warning for missing development packages here, too.
13926
13927 2009-06-26  Paolo Bonzini  <bonzini@gnu.org>
13928
13929         * build-aux/bootstrap: Do not use GIT_CONFIG_LOCAL.
13930
13931 2009-06-25  Eric Blake  <ebb9@byu.net>
13932
13933         version-etc: fix regression
13934         * lib/version-etc.h (ATTRIBUTE_SENTINEL): Define for new enough
13935         gcc.
13936         (version_etc): Use it, to catch bugs with trailing NULL.
13937         * lib/version-etc.c (version_etc_arn): Delete unused argument.
13938         (version_etc_va): Fix logic bug.
13939         * modules/version-etc-tests: Add test.
13940         * tests/test-version-etc.c: New file.
13941         * tests/test-version-etc.sh: Likewise.
13942
13943 2009-06-25  Sam Steingold  <sds@gnu.org>
13944
13945         * mbrtowc.m4 (gl_MBRTOWC_SANITYCHECK): Include <stdlib.h>, for the
13946         mbtowc declaration.
13947
13948 2009-06-25  Eric Blake  <ebb9@byu.net>
13949
13950         fpurge: migrate into <stdio.h>
13951         * lib/fpurge.h: Delete...
13952         * lib/stdio.in.h (fpurge): ...and declare here, instead.
13953         * lib/fpurge.c (fpurge): Change declaring header.
13954         * modules/fpurge (Files): Drop deleted file.
13955         (Depends-on): Add stdio.
13956         (configure.ac): Set witness.
13957         * modules/stdio (Makefile.am): Support fpurge macros.
13958         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
13959         * m4/fpurge.m4 (gl_FUNC_FPURGE): Set appropriate variables.
13960         * lib/fflush.c: Update client.
13961         * tests/test-fpurge.c: Likewise.
13962         * NEWS: Mention the change.
13963
13964 2009-06-25  Sergey Poznyakoff  <gray@gnu.org.ua>
13965
13966         * lib/argp-version-etc.c (program_authors): Add const
13967         qualifier.
13968         * lib/version-etc.c: Fix typos in the comments.
13969         * modules/argp-version-etc: Depends on version-etc.
13970
13971 2009-06-25  Sergey Poznyakoff  <gray@gnu.org.ua>
13972
13973         argp-version-etc: new module.
13974
13975         * lib/argp-version-etc.c: New file.
13976         * lib/argp-version-etc.h: New file.
13977         * modules/argp-version-etc: New file.
13978         * modules/argp-version-etc-tests: New file.
13979         * tests/test-argp-version-etc.c: New test.
13980         * tests/test-argp-version-etc-1.sh: New test.
13981
13982 2009-06-25  Sergey Poznyakoff  <gray@gnu.org.ua>
13983
13984         Provide additional interfaces and documentation for version-etc
13985         module.
13986
13987         * lib/version-etc.c (version_etc_arn, version_etc_ar): New
13988         interfaces.
13989         * lib/version-etc.h (version_etc_arn, version_etc_ar): New
13990         prototypes.
13991
13992 2009-06-24  Bruno Haible  <bruno@clisp.org>
13993
13994         * m4/lib-link.m4 (AC_LIB_HAVE_LINKFLAGS): Fix description of
13995         HAVE_LIB${NAME} macro.
13996         Reported by Sam Steingold <sds@gnu.org>.
13997
13998 2009-06-23  Simon Josefsson  <simon@josefsson.org>
13999
14000         * modules/hash-tests (test_hash_LDADD): Link to libintl when
14001         needed.
14002
14003 2009-06-21  Bruno Haible  <bruno@clisp.org>
14004
14005         Make two consecutive identical invocations of AC_LIB_HAVE_LINKFLAGS
14006         work.
14007         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Reset HAVE_LIB${NAME}
14008         together with LIB${NAME}, LTLIB${NAME}.
14009         Reported by Sam Steingold <sds@gnu.org>.
14010
14011 2009-06-20  Jim Meyering  <meyering@redhat.com>
14012
14013         tests: make sc_require_test_exit_idiom more generic
14014         * top/maint.mk (Exit_witness_file): New overridable variable.
14015         (sc_require_test_exit_idiom): Don't hard-code tests/test-lib.sh.
14016         Relax test for /^Exit \$fail$$/ to just /^Exit ./.
14017
14018 2009-06-19  Jim Meyering  <meyering@redhat.com>
14019
14020         hash: reverse order of src/dst parameters in an internal interface
14021         * lib/hash.c (transfer_entries): Reverse order of parameters to
14022         put DST before SRC.  Adjust callers.
14023
14024         tests: test-hash: avoid wholesale duplication
14025         * tests/test-hash.c (main): Don't copy/paste a 60-line loop.
14026         Instead, use a loop and add a single conditional.
14027
14028         tests: test-hash: allow seed selection via a command line argument
14029         * tests/test-hash.c (get_seed): New function.
14030         (main): Use it.
14031
14032 2009-06-19  Eric Blake  <ebb9@byu.net>
14033
14034         hash: avoid memory leak on allocation failure
14035         * lib/hash.c: (hash_rehash): Avoid memory leak on allocation
14036         failure.  Factor repeated algorithm...
14037         (transfer_entries): ...into new helper routine.
14038         (hash_delete): React to hash_rehash return value.
14039
14040         hash: reduce memory pressure in hash_rehash no-op case
14041         * lib/hash.c (next_prime): Avoid overflow.
14042         (hash_initialize): Factor bucket size computation...
14043         (compute_bucket_size): ...into new helper function.
14044         (hash_rehash): Use new function and open coding to reduce memory
14045         pressure, and avoid a memory leak in USE_OBSTACK code.
14046         Reported by Jim Meyering.
14047
14048 2009-06-18  Eric Blake  <ebb9@byu.net>
14049
14050         hash: make rotation more obvious
14051         * modules/hash (Depends-on): Add bitrotate and stdint.
14052         * lib/bitrotate.h (rotl_sz, rotr_sz): New functions.
14053         * lib/hash.c (headers): Drop limits.h.  Add stdint.h.
14054         (SIZE_MAX): Rely on headers for definition.
14055         (hash_string) [USE_DIFF_HASH]: Use rotl_sz.
14056         (raw_hasher): Use rotr_sz.
14057         Suggested by Jim Meyering.
14058
14059         hash: fix memory leak in last patch
14060         * lib/hash.c (hash_rehash): Avoid memory leak.
14061
14062         hash: avoid no-op rehashing
14063         * lib/hash.c (hash_rehash): Recognize useless rehash attempts.
14064
14065         hash: provide default callback functions
14066         * lib/hash.c (raw_hasher, raw_comparator): New functions.
14067         (hash_initialize): Use them as defaults.
14068         * tests/test-hash.c (main): Test this.
14069
14070         hash: minor optimization
14071         * lib/hash.c (hash_lookup, hash_find_entry): Avoid function call
14072         when possible.
14073         (hash_initialize): Document this promise.
14074         (hash_do_for_each, hash_clear, hash_free): Use C89 syntax.
14075         * tests/test-hash.c (hash_compare_strings): Test this.
14076
14077 2009-06-18  Bruno Haible  <bruno@clisp.org>
14078
14079         * m4/strstr.m4 (gl_FUNC_STRSTR): Skip linear time test if strstr is
14080         going to be replaced anyway.
14081
14082 2009-06-18  Bruno Haible  <bruno@clisp.org>
14083
14084         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR_SIMPLE): Invoke AC_LIBOBJ only
14085         in one place.
14086         (gl_FUNC_STRCASESTR): Skip linear time test if strcasestr is going to
14087         be replaced anyway.
14088
14089 2009-06-18  Eric Blake  <ebb9@byu.net>
14090
14091         hash: check for resize before insertion
14092         * lib/hash.c (hash_insert): Check whether bucket usage exceeds
14093         threshold before insertion, so that a pathological hash_rehash
14094         that fills every bucket can still trigger another rehash.
14095
14096 2009-06-18  Jim Meyering  <meyering@redhat.com>
14097
14098         hash-tests: add a loop around the small tests
14099         * tests/test-hash.c (main): Repeat small tests with selected
14100         small initial table sizes.
14101
14102 2009-06-17  Eric Blake  <ebb9@byu.net>
14103
14104         hash: minor cleanups
14105         * lib/hash.h (hash_entry): Make opaque, by moving...
14106         * lib/hash.c (hash_entry): ...here.
14107         (hash_insert): Clarify restrictions on what can be inserted.
14108         (hash_get_next): Clarify when it is safe to remove an element
14109         during traversal.
14110         (check_tuning): Skip verification when tuning is known safe.
14111         (hash_initialize): Clarify restrictions on tuning.
14112
14113 2009-06-17  Jim Meyering  <jim@meyering.net>
14114         and Eric Blake  <ebb9@byu.net>
14115
14116         hash-tests: new module
14117         * modules/hash-tests: New file.
14118         * tests/test-hash.c: New file.
14119
14120 2009-06-17  Eric Blake  <ebb9@byu.net>
14121
14122         strstr-simple: document new module
14123         * MODULES.html.sh: Document new module.
14124
14125         strstr, strcasestr: replace on platforms with broken memchr
14126         * modules/strstr: Split into...
14127         * modules/strstr-simple: ...new module that does not care about
14128         performance, but does care about glibc bug.
14129         * m4/strstr.m4 (gl_FUNC_STRSTR): Split...
14130         (gl_FUNC_STRSTR_SIMPLE): ...into new macro, which replaces strstr
14131         if platform memchr is broken, per Debian bug 521737.
14132         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR_SIMPLE): React to broken
14133         memchr.
14134         * m4/memchr.m4 (gl_FUNC_MEMCHR): Only expand once.
14135         * doc/posix-functions/strstr.texi (strstr): Document the fix.
14136         * doc/glibc-functions/strcasestr.texi (strcasestr): Likewise.
14137         * modules/mountlist (Depends-on): Add strstr-simple.
14138         * modules/gen-uni-tables (Depends-on): Likewise.
14139         * modules/argz (Depends-on): Add strstr.
14140
14141 2009-06-17  Bruno Haible  <bruno@clisp.org>
14142
14143         * modules/posix_spawn-internal (Depends-on): Add errno.
14144
14145 2009-06-17  Bruno Haible  <bruno@clisp.org>
14146
14147         Define missing ESTALE on Interix 3.5.
14148         * lib/errno.in.h (ESTALE): Assign a value if missing.
14149         * lib/strerror.c (rpl_strerror): Handle missing ESTALE and ECANCELED.
14150         * m4/errno_h.m4 (gl_HEADER_ERRNO_H): Also test whether ESTALE is
14151         missing.
14152         * doc/posix-headers/errno.texi: Mention the Interix bug.
14153         Reported by Jay Krell <jay.krell@cornell.edu> via Eric Blake.
14154
14155 2009-06-15  Eric Blake  <ebb9@byu.net>
14156
14157         memchr, memchr2: add valgrind exception
14158         * lib/memchr.valgrind: New file.
14159         * lib/memchr2.valgrind: New file.
14160         * modules/memchr (Files): Distribute valgrind file.
14161         * modules/memchr2 (Files): Likewise.
14162
14163         docs: memchr is no longer obsolete
14164         * MODULES.html.sh: Move memchr from obsolete to string.h section.
14165         * lib/string.in.h (memchr): Simplify logic.
14166
14167 2009-06-14  Jim Meyering  <meyering@redhat.com>
14168
14169         link-follow: fix the "checking..." message to not mention trailing slash
14170         * m4/link-follow.m4 (gl_AC_FUNC_LINK_FOLLOWS_SYMLINK): This test has
14171         never considered trailing slashes.
14172
14173 2009-06-14  Bruno Haible  <bruno@clisp.org>
14174
14175         * m4/memchr.m4: Mention also the bug on IA-64.
14176         * doc/posix-functions/memchr.texi: Likewise.
14177
14178 2009-06-12  Eric Blake  <ebb9@byu.net>
14179
14180         memchr: detect broken x86_64 and alpha implementations
14181         * modules/memchr-tests (Depends-on): Move mmap detection...
14182         * modules/memchr (Depends-on): ...here.
14183         (configure.ac): Set indicator.
14184         * lib/string.in.h (memchr): Declare replacement.
14185         * modules/string (Makefile.am): Trigger replacement.
14186         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Likewise.
14187         * m4/memchr.m4 (gl_FUNC_MEMCHR): Use mmap to detect platform
14188         bugs.
14189         * doc/posix-functions/memchr.texi (memchr): Document the bug.
14190         * modules/getpagesize (License): Relax license.
14191
14192 2009-06-11  Bruno Haible  <bruno@clisp.org>
14193
14194         * lib/idpriv.h: Add more references.
14195
14196 2009-06-08  Bruno Haible  <bruno@clisp.org>
14197
14198         Tests for module 'idpriv-droptemp'.
14199         * modules/idpriv-droptemp-tests: New file.
14200         * tests/test-idpriv-droptemp.sh: New file.
14201         * tests/test-idpriv-droptemp.su.sh: New file.
14202         * tests/test-idpriv-droptemp.c: New file.
14203
14204         New module 'idpriv-droptemp'.
14205         * lib/idpriv-droptemp.c: New file.
14206         * modules/idpriv-droptemp: New file.
14207
14208 2009-06-08  Bruno Haible  <bruno@clisp.org>
14209
14210         Tests for module 'idpriv-drop'.
14211         * modules/idpriv-drop-tests: New file.
14212         * tests/test-idpriv-drop.sh: New file.
14213         * tests/test-idpriv-drop.su.sh: New file.
14214         * tests/test-idpriv-drop.c: New file.
14215
14216         New module 'idpriv-drop'.
14217         * lib/idpriv.h: New file.
14218         * lib-idpriv-drop.c: New file.
14219         * m4/idpriv.m4: New file.
14220         * modules/idpriv-drop: New file.
14221
14222 2009-06-08  Bruno Haible  <bruno@clisp.org>
14223
14224         * modules/unistdio/u8-vasnprintf (Depends-on): Add memchr.
14225         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
14226         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
14227         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
14228         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
14229         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
14230         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
14231
14232 2009-06-08  Eric Blake  <ebb9@byu.net>
14233
14234         test-strstr: use memory fence, when possible
14235         * tests/test-strstr.c (main): Use memory fence, in order to be
14236         more likely to trigger Debian bug 521737.
14237         * modules/strstr-tests (Files): Pull in additional files.
14238
14239         memchr: no longer obsolete, for wider field testing
14240         * modules/memchr (Status, Notice): Delete, this module is no
14241         longer obsolete.
14242         * modules/vasnprintf (Depends-on): Add memchr.
14243
14244 2009-06-07  Jim Meyering  <meyering@redhat.com>
14245
14246         hash: declare some functions with the warn_unused_result attribute
14247         * lib/hash.h (__attribute__, ATTRIBUTE_WUR): Define.
14248
14249 2009-06-07  Bruno Haible  <bruno@clisp.org>
14250
14251         * tests/test-alignof.c: Don't test int64_t if it does not exist.
14252         Reported by Eric Blake.
14253
14254 2009-06-06  Eric Blake  <ebb9@byu.net>
14255
14256         test-alignof: fix typo with long double
14257         * tests/test-alignof.c (CHECK): Use longdouble typedef to avoid
14258         compiler error.
14259
14260 2009-06-06  Neil Jerram  <neil@ossau.uklinux.net>  (tiny change)
14261
14262         Escape non-texinfo { and }s.
14263         * doc/ld-output-def.texi (Visual Studio Compatibility): Fix
14264         markup error.
14265
14266 2009-06-04  Jim Meyering  <meyering@redhat.com>
14267
14268         gitlog-to-changelog: don't infloop on an empty commit log
14269         * build-aux/gitlog-to-changelog: Warn about an empty log message.
14270         Reported by Boris Petersen <transacid@centerim.org>.
14271
14272 2009-06-03  Mike Frysinger  <vapier@gentoo.org>
14273
14274         version-etc: extend for packagers
14275         Add three new configure options, intended for packagers:
14276           --with-packager="packager name"
14277           --with-packager-version="packager-specific version"
14278           --with-packager-bug-reports="packager bug reporting"
14279         An example with coreutils:
14280           $ ./configure \
14281             --with-packager=Gentoo \
14282             --with-packager-bug-report=http://bugs.gentoo.org/ \
14283             --with-packager-version="patchset 1.6"
14284           $ ./src/ls --version | head -n2
14285           ls (GNU coreutils) 7.1-dirty
14286           Packaged by Gentoo (patchset 1.6)
14287         Note that the bug reporting info via --help doesn't show up because
14288         coreutils uses its own custom emit_bug_reporting_address() implementation
14289         in src/system.h.  If it didn't, it'd look like:
14290           $ ./src/ls --help | tail -n4
14291           Report bugs to <bug-coreutils@gnu.org>.
14292           Report Gentoo bugs to <http://bugs.gentoo.org/>.
14293           GNU coreutils home page: <http://www.gnu.org/software/coreutils/>.
14294           General help using GNU software: <http://www.gnu.org/gethelp/>.
14295         * lib/version-etc.c: Print new information, if provided.
14296         * m4/version-etc.m4: New file.
14297         * modules/version-etc (Files): Add m4/version-etc.m4.
14298         (configure.ac): Add gl_VERSION_ETC.
14299
14300 2009-05-31  Bruno Haible  <bruno@clisp.org>
14301
14302         * tests/test-alignof.c: Include <stdint.h>. Check also 'long double'
14303         and 'int64_t'.
14304         * modules/alignof-tests (Dependencies): Add stdint.
14305         Reported by Eric Blake.
14306
14307 2009-05-31  Bruno Haible  <bruno@clisp.org>
14308
14309         * lib/alignof.h (alignof_slot, alignof_type, alignof): Document
14310         restriction due to compiler bugs.
14311         Reported by Eric Blake.
14312
14313 2009-05-31  Simon Josefsson  <simon@josefsson.org>
14314             Bruno Haible  <bruno@clisp.org>
14315
14316         Fix test-alignof failure.
14317         * lib/alignof.h (alignof_slot): New macro.
14318         (alignof_type): New macro, with the same semantics as the previous
14319         'alignof'.
14320         (alignof): Alias to alignof_slot.
14321         * tests/test-alignof.c (CHECK): Check alignof_slot, not alignof. Also
14322         check that the results are usable as constant expressions.
14323
14324 2009-05-31  Bruno Haible  <bruno@clisp.org>
14325
14326         * tests/zerosize-ptr.h (zerosize_ptr): Specify more details.
14327         * tests/test-memchr.c (main): Check that memchr does not read past the
14328         first occurrence of the byte.
14329         * tests/test-strstr.c (main): Update comment.
14330         Suggested by Eric Blake.
14331
14332 2009-05-30  Bruno Haible  <bruno@clisp.org>
14333
14334         * doc/ld-output-def.texi (Visual Studio Compatibility): Explain in more
14335         detail how to use dumpbin.
14336         Reported by David Byron <dbyron@dbyron.com>.
14337
14338 2009-06-02  Simon Josefsson  <simon@josefsson.org>
14339
14340         * tests/test-parse-duration.sh: Don't use non-portable 'read -u3'.
14341
14342 2009-06-02  Simon Josefsson  <simon@josefsson.org>
14343
14344         * m4/manywarnings.m4: Add GCC 4.4 warnings.
14345
14346 2009-05-28  Bruno Haible  <bruno@clisp.org>
14347
14348         * gnulib-tool (func_import): Don't do HAVE_CONFIG_H replacements on
14349         build-aux/ files.
14350
14351 2009-05-28  Simon Josefsson  <simon@josefsson.org>
14352
14353         * gnulib-tool (func_import): Transform license on build-aux/ files too.
14354
14355 2009-05-27  Simon Josefsson  <simon@josefsson.org>
14356
14357         * gnulib-tool (sed_transform_main_lib_file)
14358         (sed_transform_testsrelated_lib_file): : Don't use non-POSIX
14359         regexps.
14360
14361 2009-05-26  Simon Josefsson  <simon@josefsson.org>
14362
14363         * tests/test-strstr.c: Add another self-test.
14364         * tests/test-strstr.c: Rewrite to use malloc/strcpy instead of
14365         strdup.  Suggested by Eric Blake  <ebb9@byu.net>.
14366
14367 2009-05-23  Bruno Haible  <bruno@clisp.org>
14368
14369         * doc/havelib.texi (AC_LIB_HAVE_LINKFLAGS): Update for 2009-04-26
14370         change.
14371
14372 2009-05-21  Bruno Haible  <bruno@clisp.org>
14373
14374         Simplify use of mode_t varargs.
14375         * lib/open.c (open): Use PROMOTED_MODE_T instead of a conditional that
14376         uses 'mode_t' or 'int'.
14377         * lib/openat.c (openat): Likewise.
14378         * lib/open-safer.c (open_safer): Likewise.
14379         * m4/mode_t.m4: New file.
14380         * m4/open.m4 (gl_PREREQ_OPEN): Require gl_PROMOTED_TYPE_MODE_T.
14381         * m4/openat.m4 (gl_PREREQ_OPENAT): Likewise.
14382         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Likewise.
14383         * modules/open (Files): Add m4/mode_t.m4.
14384         * modules/openat (Files): Likewise.
14385         * modules/fcntl-safer (Files): Likewise.
14386         Suggested by Eric Blake.
14387
14388 2009-05-21  Pádraig Brady  <P@draigbrady.com>
14389
14390         * doc/glibc-functions/fallocate.texi: New file.
14391         * doc/gnulib.texi: Include it.
14392
14393 2009-05-21  Eric Blake  <ebb9@byu.net>
14394             Bruno Haible  <bruno@clisp.org>
14395
14396         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Remove redundant m4_quote
14397         invocations.
14398         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
14399
14400 2009-05-21  Eric Blake  <ebb9@byu.net>
14401             Bruno Haible  <bruno@clisp.org>
14402
14403         Second attempt to work around an AIX 5.3, 6.1 compiler bug with
14404         include_next. Fix of 2008-11-20 commit.
14405         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Also set
14406         NEXT_AS_FIRST_DIRECTIVE_FOO_H.
14407         * lib/math.in.h: Use NEXT_AS_FIRST_DIRECTIVE_MATH_H instead of
14408         NEXT_MATH_H.
14409         * modules/math (Makefile.am): Substitute NEXT_AS_FIRST_DIRECTIVE_MATH_H
14410         instead of NEXT_MATH_H.
14411
14412 2009-05-21  Bruno Haible  <bruno@clisp.org>
14413
14414         Avoid redefinition warnings for SIZE_MAX.
14415         * m4/size_max.m4 (gl_SIZE_MAX): Avoid redefining SIZE_MAX in config.h.
14416         Reported by Simon Josefsson.
14417
14418 2009-05-21  Bruno Haible  <bruno@clisp.org>
14419
14420         * m4/size_max.m4 (gl_SIZE_MAX): Use AC_CACHE_CHECK instead of
14421         AC_CACHE_VAL.
14422
14423 2009-05-20  Bruno Haible  <bruno@clisp.org>
14424
14425         Make zeroptr.h work on mingw.
14426         * tests/zerosize-ptr.h: Test for the presence of <sys/mman.h> and
14427         mprotect.
14428         * modules/memchr-tests (configure.ac): Also test for sys/mman.h.
14429         * modules/memchr2-tests (configure.ac): Likewise.
14430         * modules/memcmp-tests (configure.ac): Likewise.
14431         * modules/memmem-tests (configure.ac): Likewise.
14432         * modules/memrchr-tests (configure.ac): Likewise.
14433         Reported by Simon Josefsson.
14434
14435 2009-05-20  Simon Josefsson  <simon@josefsson.org>
14436
14437         * tests/test-glob.c: Include string.h for strcmp prototype.
14438
14439 2009-05-20  Simon Josefsson  <simon@josefsson.org>
14440
14441         * modules/getdelim (Depends-on): Add explicit stdint, although it
14442         was implicitly already pulled in via realloc-posix.
14443         * lib/getdelim.c: Get SIZE_MAX from stdint.h.
14444
14445 2009-05-20  Simon Josefsson  <simon@josefsson.org>
14446
14447         MinGW and IRIX does not have sa_family_t type.  Reported by "Tom
14448         G. Christensen" <tgc@jupiterrise.com>.
14449         * m4/sys_socket_h.m4: Check for sa_family_t.
14450         * lib/sys_socket.in.h: Typedef sa_family_t when needed.
14451         * modules/sys_socket: Substitute HAVE_SA_FAMILY_T.
14452         * tests/test-sys_socket.c: Check that sa_family_t works.
14453
14454 2009-05-18  Eric Blake  <ebb9@byu.net>
14455
14456         maint.mk: allow gnulib_dir in VPATH build
14457         * top/maint.mk (gnulib_dir): Make relative to $(srcdir).
14458
14459 2009-05-15  Jim Meyering  <meyering@redhat.com>
14460
14461         maint.mk: Give gnulib_dir a default definition.
14462         * top/maint.mk (gnulib_dir): Define to 'gnulib', by default.
14463         Thus, most packages no longer need to specify this variable in cfg.mk
14464
14465 2009-05-14  Tom Prince  <tom.prince@ualberta.net>  (tiny change)
14466
14467         rename.m4: fix typos that would make non-mingw cross-configure fail
14468         * m4/rename.m4 (gl_FUNC_RENAME): Fix typos.
14469
14470 2009-05-13  Eric Blake  <ebb9@byu.net>
14471
14472         mmap-anon: avoid out-of-order autoconf expansion
14473         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Use correct
14474         SYSTEM_EXTENSIONS macro to silence warnings from autoconf 2.63b.
14475         * modules/memchr-tests (Depends-on): Add extensions.
14476         * modules/memchr2-tests (Depends-on): Add extensions.
14477         * modules/memcmp-tests (Depends-on): Add extensions.
14478         * modules/memmem-tests (Depends-on): Add extensions.
14479         * modules/memrchr-tests (Depends-on): Add extensions.
14480
14481 2009-05-13  Bruno Haible  <bruno@clisp.org>
14482
14483         Make some tests ISO C 99 compliant.
14484         * tests/zerosize-ptr.h: New file.
14485         * tests/test-memchr.c: Include zerosize-ptr.h.
14486         (main): Use a zero-size object pointer instead of NULL.
14487         * tests/test-memchr2.c: Include zerosize-ptr.h.
14488         (main): Use a zero-size object pointer instead of NULL.
14489         * tests/test-memcmp.c: Include zerosize-ptr.h.
14490         (main): Use a zero-size object pointer instead of NULL.
14491         * tests/test-memmem.c: Include zerosize-ptr.h.
14492         (main): Use a zero-size object pointer instead of NULL.
14493         * tests/test-memrchr.c: Include zerosize-ptr.h.
14494         (main): Use a zero-size object pointer instead of NULL.
14495         * modules/memchr-tests (Files): Add tests/zerosize-ptr.h,
14496         m4/mmap-anon.m4.
14497         (Depends-on): Add getpagesize.
14498         (configure.ac): Invoke gl_FUNC_MMAP_ANON. Check for mprotect.
14499         * modules/memchr2-tests (Files): Add tests/zerosize-ptr.h,
14500         m4/mmap-anon.m4.
14501         (Depends-on): Add getpagesize.
14502         (configure.ac): Invoke gl_FUNC_MMAP_ANON. Check for mprotect.
14503         * modules/memcmp-tests (Files): Add tests/zerosize-ptr.h,
14504         m4/mmap-anon.m4.
14505         (Depends-on): Add getpagesize.
14506         (configure.ac): Invoke gl_FUNC_MMAP_ANON. Check for mprotect.
14507         * modules/memmem-tests (Files): Add tests/zerosize-ptr.h,
14508         m4/mmap-anon.m4.
14509         (Depends-on): Add getpagesize.
14510         (configure.ac): Invoke gl_FUNC_MMAP_ANON. Check for mprotect.
14511         * modules/memrchr-tests (Files): Add tests/zerosize-ptr.h,
14512         m4/mmap-anon.m4.
14513         (Depends-on): Add getpagesize.
14514         (configure.ac): Invoke gl_FUNC_MMAP_ANON. Check for mprotect.
14515
14516 2009-05-12  Bruno Haible  <bruno@clisp.org>
14517
14518         Tests for module 'alignof'.
14519         * modules/alignof-tests: New file.
14520         * tests/test-alignof.c: New file.
14521
14522 2009-05-12  Bruno Haible  <bruno@clisp.org>
14523
14524         Fix alignof macro.
14525         * lib/alignof.h (alignof): Remove special cases for AIX and HP-UX
14526         vendor compilers that are always correct.
14527
14528 2009-05-12  Bruno Haible  <bruno@clisp.org>
14529
14530         Make the MAP_ANONYMOUS detection work on HP-UX 11.
14531         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Check whether mmap exists, but
14532         not whether its fully works.
14533
14534 2009-05-12  Bruno Haible  <bruno@clisp.org>
14535
14536         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Add comments.
14537
14538 2009-05-12  Jim Meyering  <meyering@redhat.com>
14539
14540         * top/maint.mk: Adjust backslash alignment.
14541
14542 2009-05-11  Simon Josefsson  <simon@josefsson.org>
14543
14544         * top/maint.mk: Make $(srcdir)/build-aux configurable.
14545
14546 2009-05-11  Eric Blake  <ebb9@byu.net>
14547
14548         argp: avoid undefined behavior
14549         * lib/argp-fmtstream.c (weak_alias): Pass correct types to ctype
14550         macros.
14551
14552 2009-05-08  Simon Josefsson  <simon@josefsson.org>
14553
14554         * tests/test-vc-list-files-git.sh: Do git config of user.email and
14555         user.name to prevent git commit from complaining.
14556
14557 2009-05-10  Bruno Haible  <bruno@clisp.org>
14558
14559         * gnulib-tool (func_import, func_create_testdir, copy-file): Change
14560         sed_rewrite_old_files, sed_rewrite_new_files, sed_rewrite_files so that
14561         it rewrites every file name only once.
14562         Reported by Simon Josefsson. Helped by Ralf Wildenhues.
14563
14564 2009-05-08  Bruno Haible  <bruno@clisp.org>
14565
14566         * lib/sys_socket.in.h (_SS_PADSIZE): Use a conditional expression
14567         instead of 'max'.
14568
14569 2009-05-08  Simon Josefsson  <simon@josefsson.org>
14570
14571         * m4/sys_socket_h.m4: Test for ws2tcpip.h earlier, needed for
14572         sockaddr_storage test.
14573
14574 2009-05-07  Simon Josefsson  <simon@josefsson.org>
14575
14576         * modules/sys_socket (Makefile.am): Substitute
14577         HAVE_STRUCT_SOCKADDR_STORAGE.  Depend on alignof.
14578         * m4/sys_socket_h.m4: Check for sockaddr_storage.
14579         * lib/sys_socket.in.h (sockaddr_storage): Define when needed.
14580         * tests/test-sys_socket.c: Check sockaddr_storage.
14581
14582 2009-05-08  Bruno Haible  <bruno@clisp.org>
14583
14584         New module 'alignof'.
14585         * lib/alignof.h: New file.
14586         * modules/alignof: New file.
14587
14588 2009-05-04  David Bartley  <dtbartle@csclub.uwaterloo.ca>
14589             Bruno Haible  <bruno@clisp.org>
14590
14591         Fix test-file-has-acl on FreeBSD.
14592         * tests/test-file-has-acl.sh: Also test a directory. On FreeBSD, the
14593         mask is implicitly added.
14594         * tests/test-file-has-acl.c: Include <signal.h>.
14595         (main): Terminate the test after 5 seconds.
14596         * modules/acl-tests (configure.ac): Check for alarm function.
14597
14598 2009-05-04  Bruno Haible  <bruno@clisp.org>
14599
14600         Exploit new semantics of AC_DEFUN_ONCE available since 2009-01-26.
14601         * m4/errno_h.m4 (gl_HEADER_ERRNO_H): Remove outdated comment.
14602         * modules/errno (configure.ac): Drop AC_REQUIRE.
14603         * m4/multiarch.m4 (gl_MULTIARCH): Remove outdated comment.
14604         * modules/multiarch (configure.ac): Drop AC_REQUIRE.
14605
14606 2009-05-04  Simon Josefsson  <simon@josefsson.org>
14607
14608         * modules/glob-tests: New module.
14609         * tests/test-glob.c: Add.
14610
14611 2009-05-04  Simon Josefsson  <simon@josefsson.org>
14612
14613         * modules/fnmatch-tests: New module.
14614         * tests/test-fnmatch.c: Add.
14615
14616 2009-05-04  Eric Blake  <ebb9@byu.net>
14617
14618         maint: make the new no-submodule-changes rule VPATH-safe
14619         * top/maint.mk (no-submodule-changes): Don't assume a srcdir build.
14620
14621 2009-05-04  David Bartley  <dtbartle@csclub.uwaterloo.ca>
14622             Bruno Haible  <bruno@clisp.org>
14623
14624         acl: Fix infinite loop on FreeBSD.
14625         * lib/acl_entries.c (acl_entries) [Linux, FreeBSD]: Fix interpretation
14626         of return value from acl_get_entry.
14627         * lib/file-has-acl.c (acl_access_nontrivial) [Linux, FreeBSD]:
14628         Likewise.
14629
14630 2009-05-03  Bruno Haible  <bruno@clisp.org>
14631
14632         * lib/acl-internal.h (acl_entries): Clarify return value.
14633         * lib/acl_entries.c (acl_entries): Likewise.
14634
14635 2009-05-04  David Bartley  <dtbartle@csclub.uwaterloo.ca>
14636
14637         Bug fix in acl module.
14638         * lib/set-mode-acl.c: Use correct struct with ACL_SETACL.
14639
14640 2009-05-03  Bruno Haible  <bruno@clisp.org>
14641
14642         Create gperf-generated file in the source dir, not in the build dir.
14643         * modules/iconv_open (iconv_open-aix.h, iconv_open-hpux.h,
14644         iconv_open-irix.h, iconv_open-osf.h): Create file in the source tree.
14645         * modules/unicase/locale-language (unicase/locale-languages.h):
14646         Likewise.
14647         * modules/unicase/special-casing (unicase/special-casing-table.h):
14648         Likewise.
14649         * modules/unictype/property-byname (unictype/pr_byname.h): Likewise.
14650         * modules/unictype/scripts (unictype/scripts_byname.h): Likewise.
14651         * modules/uninorm/composition (uninorm/composition-table.h): Likewise.
14652         Reported by Ralf Wildenhues.
14653
14654 2009-05-03  Bruno Haible  <bruno@clisp.org>
14655
14656         * modules/fnmatch (Description, configure.ac): Taken from
14657         fnmatch-posix.
14658         * modules/fnmatch-posix: Turn into a symbolic reference to the
14659         'fnmatch' module, and deprecate.
14660         * doc/posix-functions/fnmatch.texi: Mention the fnmatch module.
14661
14662 2009-05-03  Bruno Haible  <bruno@clisp.org>
14663
14664         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF,
14665         gl_PREREQ_VASNPRINTF_LONG_DOUBLE): Define through AC_DEFUN_ONCE.
14666         Reported by Ralf Wildenhues.
14667
14668 2009-05-04  Simon Josefsson  <simon@josefsson.org>
14669
14670         * m4/fnmatch.m4: Fix fnmatch re-define.
14671
14672 2009-04-27  David Bartley  <dtbartle@csclub.uwaterloo.ca>
14673
14674         priv-set: new module and tests; adapt write-any-file
14675         * lib/priv-set.c: New file.
14676         * lib/priv-set.h: New file.
14677         * lib/unlinkdir.c: Make cannot_unlink_dir thread-safe.
14678         * lib/write-any-file.c: Simplify by using priv-set module.
14679         * m4/priv-set.m4: New file.
14680         * modules/priv-set: New file.
14681         * modules/unlinkdir: Add dependency on priv-set module.
14682         * modules/write-any-file: Likewise.
14683
14684         Tests for module 'priv-set'.
14685         * modules/priv-set-tests: New file.
14686         * tests/test-priv-set.c: New file.
14687
14688 2009-05-03  Jim Meyering  <meyering@redhat.com>
14689             Bruno Haible  <bruno@clisp.org>
14690
14691         * lib/propername.c (proper_name_utf8): Ignore no-op translations;
14692         use the converted UTF-8 variant of the name instead.
14693
14694 2009-05-03  Jim Meyering  <meyering@redhat.com>
14695
14696         tests: tighten some getdate tests
14697         * tests/test-getdate.c (main): Tighten tests: require equality,
14698         not just greater than.  Set TZ envvar to UTC0.
14699
14700 2009-05-03  Giuseppe Scrivano  <gscrivano@gnu.org>
14701
14702         getdate: correctly interpret "next monday" when run on a Monday
14703         * lib/getdate.y (get_date): Correct the calculation of tm_mday so
14704         that e.g., "next tues" (when run on a tuesday) results in a date
14705         that is one week in the future, and not today's date.
14706         I.e., add a week when the wday is the same as the current one.
14707         Reported by Tom Broadhurst in http://savannah.gnu.org/bugs/?25406,
14708         and earlier by Martin Bernreuther and Jan Minář.
14709         * tests/test-getdate.c (main): Check that "next DAY" is always in
14710         the future and that "last DAY" is always in the past.
14711
14712 2009-05-02  Jim Meyering  <meyering@redhat.com>
14713
14714         build: ensure that a release build fails when a submodule is unclean
14715         * top/maint.mk (no-submodule-changes): New rule.
14716         (alpha beta major): Depend on it.
14717
14718 2009-05-02  Bruno Haible  <bruno@clisp.org>
14719
14720         Remove incompatibility between modules fnmatch-posix and fnmatch-gnu.
14721         * m4/fnmatch.m4 (gl_FUNC_FNMATCH_POSIX, gl_FUNC_FNMATCH_GNU): Use a
14722         shell variable gl_fnmatch_required to detect which variant is
14723         requested.
14724         (_AC_FUNC_FNMATCH_IF, _AC_LIBOBJ_FNMATCH): Remove macros. Inlined into
14725         gl_FUNC_FNMATCH_POSIX.
14726         * gnulib-tool (func_create_testdir, func_create_megatestdir): Don't
14727         exclude fnmatch-posix.
14728
14729 2009-05-02  Bruno Haible  <bruno@clisp.org>
14730
14731         Relicense mbsrtowcs and strnlen1 under LGPLv2+.
14732         * modules/mbsrtowcs (License): Change to LGPLv2+.
14733         * modules/strnlen1 (License): Likewise.
14734         Reported by Simon Josefsson.
14735
14736 2009-05-02  Bruno Haible  <bruno@clisp.org>
14737
14738         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Say "guessing no" instead of
14739         "cross".
14740         (gl_FUNC_FNMATCH_POSIX, gl_FUNC_FNMATCH_GNU): Update. Don't assume that
14741         gnulib-tool was called with option --source-base=lib.
14742
14743 2009-05-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
14744
14745         Use automake *-local hooks without commands, for extensibility.
14746         * modules/localcharset (Makefile.am): Rename install-exec-local
14747         rule to install-exec-localcharset, and make it a prerequisite of
14748         install-exec-local.  Likewise, rename the uninstall-local rule to
14749         uninstall-localcharset, and make it a prerequisite of the former.
14750
14751 2009-05-01  Bruno Haible  <bruno@clisp.org>
14752
14753         * lib/wchar.in.h (wcsnrtombs): Define if REPLACE_WCSNRTOMBS is 1.
14754         * m4/wcsnrtombs.m4 (gl_FUNC_WCSRTOMBS): Invoke gl_MBSTATE_T_BROKEN, and
14755         set REPLACE_WCSNRTOMBS if mbstate_t must be replaced.
14756         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_WCSNRTOMBS.
14757         * modules/wchar (Makefile.am): Substitute REPLACE_WCSNRTOMBS.
14758         * modules/wcsnrtombs (Files): Add m4/mbrtowc.m4, m4/locale-ja.m4,
14759         m4/locale-zh.m4, m4/codeset.m4.
14760
14761         * m4/wcsrtombs.m4 (gl_FUNC_WCSNRTOMBS): Invoke gl_MBSTATE_T_BROKEN, and
14762         set REPLACE_WCSRTOMBS if mbstate_t must be replaced.
14763         * modules/wcsrtombs (Files): Add m4/mbrtowc.m4, m4/locale-ja.m4,
14764         m4/locale-zh.m4.
14765
14766         * m4/wcrtomb.m4 (gl_FUNC_WCRTOMB): Invoke gl_MBSTATE_T_BROKEN, and set
14767         REPLACE_WCRTOMB if mbstate_t must be replaced.
14768         * modules/wcrtomb (Files): Add m4/mbrtowc.m4.
14769         Reported by Jens Rehsack <rehsack@googlemail.com> via Eric Blake.
14770
14771 2009-05-01  Bruno Haible  <bruno@clisp.org>
14772
14773         Avoid compiler warnings when redefining macros defined by <libintl.h>.
14774         * lib/gettext.h [!ENABLE_NLS] (gettext, dgettext, dcgettext, ngettext,
14775         dngettext, dcngettext, textdomain, bindtextdomain,
14776         bind_textdomain_codeset): Undefine before redefining.
14777
14778 2009-04-30  Bruno Haible  <bruno@clisp.org>
14779
14780         Fix bug introduced on 2009-04-25.
14781         * lib/math.in.h (gl_signbitf_OPTIMIZED_MACRO,
14782         gl_signbitd_OPTIMIZED_MACRO, gl_signbitl_OPTIMIZED_MACRO): New macros.
14783         * lib/signbitf.c (gl_signbitd): Undefine if gl_signbitf_OPTIMIZED_MACRO
14784         is defined.
14785         * lib/signbitd.c (gl_signbitd): Undefine if gl_signbitd_OPTIMIZED_MACRO
14786         is defined.
14787         * lib/signbitl.c (gl_signbitd): Undefine if gl_signbitl_OPTIMIZED_MACRO
14788         is defined.
14789         Reported by Elbert_Pol <elbert.pol@gmail.com>.
14790
14791 2009-04-28  Bruno Haible  <bruno@clisp.org>
14792
14793         Comment tweaks.
14794         * lib/unistr.h (u*_cmp2): Clarify what memcmp2 is.
14795         * lib/uninorm.h (u*_normxfrm): Fix description of return value.
14796         * lib/unicase.h (u*_casexfrm): Likewise.
14797         Reported by Paolo Bonzini.
14798
14799 2009-04-28  Bruno Haible  <bruno@clisp.org>
14800
14801         Fix a compilation error.
14802         * lib/mbsrtowcs-state.c (_gl_mbsrtowcs_state): Fix initializer.
14803         * lib/wcsrtombs-state.c (_gl_wcsrtombs_state): Likewise.
14804         Reported by Jim Meyering.
14805
14806 2009-04-27  Bruno Haible  <bruno@clisp.org>
14807
14808         New module 'libunistring'.
14809         * modules/libunistring: New file.
14810         * m4/libunistring.m4: New file.
14811         * MODULES.html.sh (Unicode string functions): Add it.
14812
14813 2009-04-27  Eric Blake  <ebb9@byu.net>
14814
14815         maint.mk: allow package-specific header to provide <config.h>
14816         * top/maint.mk (sc_require_config_h): New variable.
14817         (sc_require_config_h, sc_require_config_h_first): Use it.
14818
14819 2009-04-27  Simon Josefsson  <simon@josefsson.org>
14820
14821         * top/maint.mk (sc_avoid_if_before_free): Except
14822         useless-if-before-free script.
14823
14824 2009-04-27  Eric Blake  <ebb9@byu.net>
14825
14826         maintainer-makefile: depend on all required helper scripts
14827         * modules/maintainer-makefile (Depends-on): Add vc-list-files and
14828         useless-if-before-free.
14829         * top/maint.mk (VC_LIST, sc_avoid_if_before_free): Use local
14830         version, rather than assuming gnulib checkout is available.
14831         Reported by Simen Josefsson.
14832
14833 2009-04-26  Bruno Haible  <bruno@clisp.org>
14834
14835         Make the lib vs. lib64 recognition work on openSUSE 11 with "gcc -m32".
14836         * m4/lib-prefix.m4 (AC_LIB_PREPARE_MULTILIB): Ignore paths that end in
14837         "../" or "..".
14838
14839 2009-04-26  Bruno Haible  <bruno@clisp.org>
14840
14841         * m4/lib-link.m4 (AC_LIB_HAVE_LINKFLAGS): Accept a fifth argument.
14842         * m4/libsigsegv.m4 (gl_LIBSIGSEGV): Simplify by using
14843         AC_LIB_HAVE_LINKFLAGS.
14844
14845 2009-04-26  Bruno Haible  <bruno@clisp.org>
14846
14847         Simplify calling convention of u*_conv_from_encoding.
14848         * lib/uniconv.h (u8_conv_from_encoding, u16_conv_from_encoding,
14849         u32_conv_from_encoding): Expect a resultbuf argument and return the
14850         result directly as a pointer.
14851         * lib/uniconv/u8-conv-from-enc.c (u8_conv_from_encoding): Likewise.
14852         * lib/uniconv/u-conv-from-enc.h (FUNC): Likewise.
14853         * lib/uniconv/u-strconv-from-enc.h (FUNC): Update.
14854         * lib/unicase/ulc-casecmp.c (ulc_u8_casefold): Update.
14855         * lib/unicase/ulc-casexfrm.c (ulc_casexfrm): Update.
14856         * lib/unilbrk/ulc-possible-linebreaks.c (ulc_possible_linebreaks):
14857         Update.
14858         * lib/unilbrk/ulc-width-linebreaks.c (ulc_width_linebreaks): Update.
14859         * lib/uniwbrk/ulc-wordbreaks.c (ulc_wordbreaks): Update.
14860         * lib/vasnprintf.c (VASNPRINTF): Update.
14861         * tests/uniconv/test-u8-conv-from-enc.c (main): Update.
14862         * tests/uniconv/test-u16-conv-from-enc.c (main): Update.
14863         * tests/uniconv/test-u32-conv-from-enc.c (main): Update.
14864         * NEWS: Mention the change.
14865
14866 2009-04-26  Bruno Haible  <bruno@clisp.org>
14867
14868         Simplify calling convention of u*_conv_to_encoding.
14869         * lib/uniconv.h (u8_conv_to_encoding, u16_conv_to_encoding,
14870         u32_conv_to_encoding): Expect a resultbuf argument and return the
14871         result directly as a pointer.
14872         * lib/uniconv/u8-conv-to-enc.c (u8_conv_to_encoding): Likewise.
14873         * lib/uniconv/u-conv-to-enc.h (FUNC): Likewise. Preserve errno while
14874         freeing scaled_offsets if mem_iconveha failed.
14875         * lib/unicase/u-casexfrm.h (FUNC): Update.
14876         * lib/uninorm/u-normxfrm.h (FUNC): Update.
14877         * lib/vasnprintf.c (VASNPRINTF): Update.
14878         * tests/uniconv/test-u8-conv-to-enc.c (main): Update.
14879         * tests/uniconv/test-u16-conv-to-enc.c (main): Update.
14880         * tests/uniconv/test-u32-conv-to-enc.c (main): Update.
14881         * NEWS: Mention the change.
14882
14883 2009-04-26  Bruno Haible  <bruno@clisp.org>
14884
14885         Avoid test failures on AIX and OSF/1.
14886         * lib/uniconv/u8-conv-from-enc.c (u8_conv_from_encoding): Avoid calling
14887         malloc(0).
14888         * lib/uniconv/u8-conv-to-enc.c (u8_conv_to_encoding): Likewise.
14889         * lib/unilbrk/ulc-possible-linebreaks.c (ulc_possible_linebreaks):
14890         Likewise.
14891         * lib/unilbrk/ulc-width-linebreaks.c (ulc_width_linebreaks): Likewise.
14892         * lib/uniwbrk/ulc-wordbreaks.c (ulc_wordbreaks): Likewise.
14893         * lib/uniconv/u-conv-to-enc.h (FUNC): Likewise. Fix memory leak.
14894         * lib/unistr/u-cpy-alloc.h (FUNC): Call malloc(1) instead of malloc(0).
14895         * doc/posix-functions/malloc.texi: Document the portability problem
14896         related to malloc(0).
14897
14898 2009-04-26  Bruno Haible  <bruno@clisp.org>
14899
14900         * modules/unistr/u8-cpy-alloc (Depends-on): Add malloc-posix.
14901         * modules/unistr/u16-cpy-alloc (Depends-on): Likewise.
14902         * modules/unistr/u32-cpy-alloc (Depends-on): Likewise.
14903
14904 2009-04-25  Bruno Haible  <bruno@clisp.org>
14905
14906         Avoid link error when creating a namespace clean library.
14907         * lib/math.in.h (gl_signbitf, gl_signbitd, gl_signbitl): Don't define
14908         as macro with arguments if already defined as an alias.
14909         * lib/signbitf.c (gl_signbitf): Don't undefine.
14910         * lib/signbitd.c (gl_signbitd): Don't undefine.
14911         * lib/signbitl.c (gl_signbitl): Don't undefine.
14912
14913 2009-04-25  Jim Meyering  <meyering@redhat.com>
14914
14915         vc-list-files: fix another quoting bug
14916         * build-aux/vc-list-files: Avoid sed backslash expansion
14917         of pathological directory names.
14918
14919 2009-04-25  Eric Blake  <ebb9@byu.net>
14920
14921         vc-list-files: fix shell quoting error
14922         * build-aux/vc-list-files: Protect against $ in $dir.  Normalize
14923         timestamp.
14924
14925 2009-04-25  Jim Meyering  <meyering@redhat.com>
14926
14927         vc-list-files: restore lost functionality with subdir argument
14928         * build-aux/vc-list-files: When given a non-"." sub-directory
14929         argument, substitute the $dir/ prefix back onto each resulting name.
14930         Otherwise, coreutils' root_tests check would fail.
14931
14932 2009-04-24  Eric Blake  <ebb9@byu.net>
14933
14934         vc-list-files: ignore git symlinks
14935         * build-aux/vc-list-files (.git): Use ls-tree and a filter, rather
14936         than ls-files, to ignore git symlinks.
14937
14938         maint.mk: import improvements from m4
14939         * top/maint.mk (VC-tag): Use signing key from cfg.mk.
14940         (move_if_change): Delete unused macro.
14941         (news-date-check, vc-diff-check): Support VPATH builds.
14942         (announcement): Likewise.  Split --bootstrap-tools list...
14943         (boostrap-tools): ...into separate list, which can be overridden
14944         in cfg.mk.
14945         (sc_avoid_if_before_free): Point to $(gnulib_dir), rather than
14946         requiring dependency on useless-if-before-free module.
14947         (VC_LIST, VC_LIST_EXCEPT): Likewise for vc-list-files module.
14948         Support VPATH builds.
14949
14950 2009-04-24  Jim Meyering  <meyering@redhat.com>
14951
14952         maint.mk: remove coreutils-specific rules and variables
14953         * top/maint.mk (bin, taint-distcheck, coreutils-path-check, t): Remove.
14954         (fake_home, install-transform-check, my-instcheck, pfx, TMPDIR): Remove.
14955         (t_prefix, t_taint, tp, warn_cflags, write_loser, my-distcheck): Remove.
14956
14957         maint.mk: remove obsolete rule
14958         * top/maint.mk (rel-check): Remove rule.
14959         (WGET, WGETFLAGS): Remove now-unused variables.
14960
14961 2009-04-24  Simon Josefsson  <simon@josefsson.org>
14962
14963         * top/maint.mk (makefile-check): Renamed to sc_makefile_check for
14964         consistency.
14965
14966         * modules/vc-list-files-tests (TESTS_ENVIRONMENT): Use
14967         '$(PATH_SEPARATOR)' instead of ':'.
14968
14969 2009-04-24  Simon Josefsson  <simon@josefsson.org>
14970
14971         * lib/getopt1.c (main): Use 'const' for static array.
14972
14973 2009-04-24  Simon Josefsson  <simon@josefsson.org>
14974
14975         * top/maint.mk: Sync with coreutils.
14976         * NEWS: Explain incompatibilities.
14977
14978 2009-04-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
14979             Bruno Haible  <bruno@clisp.org>
14980
14981         Fix cross-compilation results.
14982         * m4/btowc.m4 (gl_FUNC_BTOWC): Use no-op statement, rather than empty
14983         statement, as third argument of AC_TRY_RUN.
14984         * m4/mbrtowc.m4 (gl_MBRTOWC_INCOMPLETE_STATE, gl_MBRTOWC_SANITYCHECK,
14985         gl_MBRTOWC_NULL_ARG, gl_MBRTOWC_RETVAL, gl_MBRTOWC_NUL_RETVAL):
14986         Likewise.
14987         * m4/mbsrtowcs.m4 (gl_MBSRTOWCS_WORKS): Likewise.
14988         * m4/wcsrtombs.m4 (gl_WCSRTOMBS_TERMINATION, gl_WCSRTOMBS_NULL):
14989         Likewise.
14990         * m4/wctob.m4 (gl_FUNC_WCTOB): Likewise.
14991         * m4/wcrtomb.m4 (gl_FUNC_WCRTOMB): Likewise. Update for AIX 4.3.
14992         * doc/posix-functions/wcrtomb.texi: Mention the bug on AIX 4.3.
14993
14994 2009-04-20  Bruno Haible  <bruno@clisp.org>
14995
14996         Avoid test failure on mingw.
14997         * tests/uniwidth/test-uc_width2.sh: Convert newlines in output.
14998
14999 2009-04-20  Bruno Haible  <bruno@clisp.org>
15000
15001         Avoid compilation error on mingw.
15002         * modules/localename-tests (Depends-on): Add locale.
15003
15004 2009-04-19  Bruno Haible  <bruno@clisp.org>
15005
15006         Support for building a shared library on Windows platforms.
15007         * tests/uninorm/test-nfc.c (n): Don't define if WOE32DLL.
15008         (main): Test the presence of UNINORM_NFC here.
15009         * tests/uninorm/test-nfd.c (n): Don't define if WOE32DLL.
15010         (main): Test the presence of UNINORM_NFD here.
15011         * tests/uninorm/test-nfkc.c (n): Don't define if WOE32DLL.
15012         (main): Test the presence of UNINORM_NFKC here.
15013         * tests/uninorm/test-nfkd.c (n): Don't define if WOE32DLL.
15014         (main): Test the presence of UNINORM_NFKD here.
15015
15016 2009-04-19  Bruno Haible  <bruno@clisp.org>
15017
15018         Avoid a compiler warning.
15019         * tests/uninorm/test-u32-normalize-big.c (read_normalization_test_file):
15020         Change type of variable 'sequence'.
15021
15022 2009-04-19  Bruno Haible  <bruno@clisp.org>
15023
15024         * modules/configmake (Makefile.am): When the contents of configmake.h
15025         does not change, arrange to preserve its modification time.
15026
15027 2009-04-17  Simon Josefsson  <simon@josefsson.org>
15028
15029         * top/maint.mk (PO_DOMAIN): New variable, allows overriding of
15030         gettext domain.
15031
15032 2009-04-16  Jim Meyering  <meyering@redhat.com>
15033
15034         useless-if-before-free: improve conversion code
15035         * build-aux/useless-if-before-free: Adjust code-in-comment to match
15036         "...!= 0" as well as "...!= NULL".  emacs has one of the former.
15037
15038 2009-04-14  Bruno Haible  <bruno@clisp.org>
15039
15040         * modules/fcntl (Depends-on): Add extensions.
15041         * m4/fcntl_h.m4 (gl_FCNTL_H): Add a comment.
15042
15043 2009-04-12  Ben Pfaff  <blp@gnu.org>
15044
15045         Make fcntl module detect O_NOATIME, O_NOFOLLOW on GNU/Linux.
15046         * m4/fcntl_h.m4 (gl_FCNTL_H): Require AC_USE_SYSTEM_EXTENSIONS.
15047
15048 2009-03-20  Ben Pfaff  <blp@gnu.org>
15049
15050         Make rename replace existing destinations on Windows.
15051         * m4/rename.m4: Add test for Mingw.
15052         * lib/rename.c: Add rename replacement that uses MoveFileEx with
15053         MOVEFILE_REPLACE_EXISTING to replace existing destination files.
15054         * doc/posix-functions/rename.texi: Document.
15055
15056 2009-04-10  Bruno Haible  <bruno@clisp.org>
15057
15058         New include file "iconveh.h".
15059         * lib/iconveh.h: New file, extracted from lib/striconveh.h.
15060         * lib/striconveh.h: Include it.
15061         (enum iconv_ilseq_handler): Remove definition.
15062         * lib/striconveha.h: Include <stddef.h> and iconveh.h instead of
15063         striconveh.h.
15064         * lib/striconveha.c: Include striconveh.h.
15065         * lib/uniconv.h: Include iconveh.h instead of striconveh.h.
15066         * modules/striconveh (Files): Add lib/iconveh.h.
15067         * modules/uniconv/base (Files): Add lib/iconveh.h. Remove
15068         lib/striconveh.h.
15069
15070 2009-04-10  Bruno Haible  <bruno@clisp.org>
15071
15072         * lib/uniconv.h: Update comment.
15073
15074 2009-04-10  Bruno Haible  <bruno@clisp.org>
15075
15076         * lib/unistr/u8-mbtouc-aux.c: Inside libunistring, define the function
15077         always.
15078         * lib/unistr/u8-mbtouc-unsafe-aux.c: Likewise.
15079         * lib/unistr/u16-mbtouc-aux.c: Likewise.
15080         * lib/unistr/u16-mbtouc-unsafe-aux.c: Likewise.
15081         * lib/unistr/u8-mbtouc.c: Inside libunistring, include
15082         "unistring-notinline.h", so that the function gets defined always.
15083         * lib/unistr/u8-mbtouc-unsafe.c: Likewise.
15084         * lib/unistr/u8-uctomb.c: Likewise.
15085         * lib/unistr/u16-mbtouc.c: Likewise.
15086         * lib/unistr/u16-mbtouc-unsafe.c: Likewise.
15087         * lib/unistr/u16-uctomb.c: Likewise.
15088         * lib/unistr/u32-mbtouc.c: Likewise.
15089         * lib/unistr/u32-mbtouc-unsafe.c: Likewise.
15090         * lib/unistr/u32-uctomb.c: Likewise.
15091
15092 2009-04-10  Bruno Haible  <bruno@clisp.org>
15093
15094         Mark 'utime' obsolete.
15095         * modules/utime (Status, Notice): New sections.
15096         Suggested by Jim Meyering.
15097
15098         Fix cross-compile guess for utime test.
15099         * m4/utime.m4 (AC_FUNC_UTIME_NULL): Add definition from newest unstable
15100         autoconf.
15101         * doc/posix-functions/utime.texi: Give more precisions.
15102         Reported by Jan <ipif@ymail.com>.
15103
15104 2009-04-09  Kamil Dudka  <kdudka@redhat.com>
15105
15106         filevercmp: correct today's change
15107         * lib/filevercmp.c: Also handle coreutils' test inputs.
15108         * tests/test-filevercmp.c: Add inputs from one of coreutils' test scripts.
15109
15110         Fix regression in 'filevercmp' module. Thanks Sven Joachim
15111         for reporting it.
15112         * lib/filevercmp.c: Special handle for "", "." and "..".
15113         * tests/test-filevercmp.c: Enlarge the set suite.
15114
15115 2009-04-07  Jim Meyering  <meyering@redhat.com>
15116
15117         useless-if-before-free: show how to remove braced useless free, too
15118         * build-aux/useless-if-before-free: still only in a comment, though.
15119
15120 2009-04-07  Reuben Thomas  <rrt@sc3d.org>
15121
15122         maint.mk: import changes to syntax-check macros from coreutils
15123         * top/maint.mk (_prohibit_regexp, _header_without_use): Define.
15124         Use them in the relevant macros.
15125
15126 2009-04-06  Bruno Haible  <bruno@clisp.org>
15127
15128         Fix unportable use of bit-fields.
15129         * lib/unicase/special-casing.h (struct special_casing_rule): Change the
15130         bit-field type from 'int' to 'signed int'. Otherwise Solaris cc,
15131         AIX xlc, and OSF/1 cc interpret it as 'unsigned int'.
15132
15133 2009-04-06  Bruno Haible  <bruno@clisp.org>
15134
15135         Avoid test failures on AIX and OSF/1.
15136         * tests/unicase/test-u8-casefold.c (check): Account for the possibility
15137         that malloc(0) = NULL.
15138         * tests/unicase/test-u8-tolower.c (check): Likewise.
15139         * tests/unicase/test-u8-totitle.c (check): Likewise.
15140         * tests/unicase/test-u8-toupper.c (check): Likewise.
15141         * tests/unicase/test-u16-casefold.c (check): Likewise.
15142         * tests/unicase/test-u16-tolower.c (check): Likewise.
15143         * tests/unicase/test-u16-totitle.c (check): Likewise.
15144         * tests/unicase/test-u16-toupper.c (check): Likewise.
15145         * tests/unicase/test-u32-casefold.c (check): Likewise.
15146         * tests/unicase/test-u32-tolower.c (check): Likewise.
15147         * tests/unicase/test-u32-totitle.c (check): Likewise.
15148         * tests/unicase/test-u32-toupper.c (check): Likewise.
15149         * tests/uninorm/test-u8-nfc.c (check): Likewise.
15150         * tests/uninorm/test-u8-nfd.c (check): Likewise.
15151         * tests/uninorm/test-u8-nfkc.c (check): Likewise.
15152         * tests/uninorm/test-u8-nfkd.c (check): Likewise.
15153         * tests/uninorm/test-u16-nfc.c (check): Likewise.
15154         * tests/uninorm/test-u16-nfd.c (check): Likewise.
15155         * tests/uninorm/test-u16-nfkc.c (check): Likewise.
15156         * tests/uninorm/test-u16-nfkd.c (check): Likewise.
15157         * tests/uninorm/test-u32-nfc.c (check): Likewise.
15158         * tests/uninorm/test-u32-nfd.c (check): Likewise.
15159         * tests/uninorm/test-u32-nfkc.c (check): Likewise.
15160         * tests/uninorm/test-u32-nfkd.c (check): Likewise.
15161
15162 2009-04-05  Bruno Haible  <bruno@clisp.org>
15163
15164         Work around an autoconf limitation.
15165         * gnulib-tool (func_emit_lib_Makefile_am): Omit the "Reproduce by"
15166         comment line if it would be longer than 3 KB.
15167
15168 2009-04-05  Bruno Haible  <bruno@clisp.org>
15169
15170         Avoid test failure with libiconv-1.13.
15171         * tests/test-striconveh.c (main): Allow result of libiconv 1.13 as one
15172         of the expected test results.
15173
15174 2009-04-05  Bruno Haible  <bruno@clisp.org>
15175
15176         * gnulib-tool (func_emit_lib_Makefile_am): Don't add the library to
15177         noinst_LTLIBRARIES if the Makefile.am in the same directory specifies
15178         that it should be installed.
15179
15180 2009-04-05  Bruno Haible  <bruno@clisp.org>
15181
15182         * gnulib-tool: New option --copy-file.
15183         (func_usage): Document it.
15184         (func_dest_tmpfilename): Moved out of func_import.
15185         (func_add_file, func_update_file): New functions, extracted from
15186         func_import.
15187         (func_import): Update.
15188
15189 2009-04-05  Karl Berry  <karl@gnu.org>
15190
15191         * README: prominently mention gnulib-tool.
15192         Rearrange sections so getting the code is near the top.
15193
15194 2009-04-05  Bruno Haible  <bruno@clisp.org>
15195
15196         * lib/unicase.h: Mention u*_cmp2.
15197         * lib/unicase/u-casecmp.h (FUNC): Invoke U_CMP2 instead of U_CMP.
15198         * lib/unicase/u8-casecmp.c: Use u8_cmp2 instead of u8_cmp.
15199         * lib/unicase/ulc-casecmp.c: Likewise.
15200         * lib/unicase/u16-casecmp.c: Use u16_cmp2 instead of u16_cmp.
15201         * lib/unicase/u32-casecmp.c: Use u32_cmp2 instead of u32_cmp.
15202         * modules/unicase/u8-casecmp (Depends-on): Add unistr/u8-cmp2, remove
15203         unistr/u8-cmp.
15204         * modules/unicase/ulc-casecmp (Depends-on): Likewise.
15205         * modules/unicase/u16-casecmp (Depends-on): Add unistr/u16-cmp2, remove
15206         unistr/u16-cmp.
15207         * modules/unicase/u32-casecmp (Depends-on): Add unistr/u32-cmp2, remove
15208         unistr/u32-cmp.
15209
15210         * lib/uninorm.h: Mention u*_cmp2.
15211         * lib/uninorm/u-normcmp.h (FUNC): Invoke U_CMP2 instead of U_CMP.
15212         * lib/uninorm/u8-normcmp.c: Use u8_cmp2 instead of u8_cmp.
15213         * lib/uninorm/u16-normcmp.c: Use u16_cmp2 instead of u16_cmp.
15214         * lib/uninorm/u32-normcmp.c: Use u32_cmp2 instead of u32_cmp.
15215         * modules/uninorm/u8-normcmp (Depends-on): Add unistr/u8-cmp2, remove
15216         unistr/u8-cmp.
15217         * modules/uninorm/u16-normcmp (Depends-on): Add unistr/u16-cmp2, remove
15218         unistr/u16-cmp.
15219         * modules/uninorm/u32-normcmp (Depends-on): Add unistr/u32-cmp2, remove
15220         unistr/u32-cmp.
15221
15222         New module 'unistr/u32-cmp2'.
15223         * lib/unistr/u32-cmp2.c: New file.
15224         * modules/unistr/u32-cmp2: New file.
15225
15226         New module 'unistr/u16-cmp2'.
15227         * lib/unistr/u16-cmp2.c: New file.
15228         * modules/unistr/u16-cmp2: New file.
15229
15230         New module 'unistr/u8-cmp2'.
15231         * lib/unistr.h (u8_cmp2, u16_cmp2, u32_cmp2): New declarations.
15232         * lib/unistr/u8-cmp2.c: New file.
15233         * lib/unistr/u-cmp2.h: New file.
15234         * modules/unistr/u8-cmp2: New file.
15235
15236 2009-04-05  Bruno Haible  <bruno@clisp.org>
15237
15238         * lib/unictype.h (uc_property_is_valid): New macro.
15239         * tests/unictype/test-pr_byname.c (main): Use it.
15240
15241         * lib/unistr.h: Doc fixes.
15242         * lib/uniconv.h: Doc fixes.
15243         * lib/unictype.h: Doc fixes.
15244
15245 2009-04-03  Paul Eggert  <eggert@cs.ucla.edu>
15246
15247         Port coreutils 7.2 to Solaris 8.
15248
15249         * modules/arpa_inet (arpa/inet.h): Depend on arpa_inet.in.h.
15250         * m4/inet_ntop.m4 (gl_INET_NTOP): Search for inet_ntop in -lnsl,
15251         for Solaris 8.  This is a bit of a hack, as it means it's the
15252         caller's responsibility to add -lnsl if needed, but most likely it
15253         won't be needed since only getaddrinfo uses this and getaddrinfo
15254         isn't needed on Solaris 8.
15255
15256         * modules/fnmatch (Depends-on): Add mbsrtowcs, to fix a porting
15257         problem to Solaris 8 encountered with coreutils 7.2, which
15258         resulted in a message "fnmatch.c:292: warning: passing argument 4
15259         of 'mbsrtowcs' from incompatible pointer type".  Also, add mbsinit
15260         at the suggestion of Bruno Haible, since fnmatch uses mbsinit.
15261
15262 2009-04-03  Simon Josefsson  <simon@josefsson.org>
15263
15264         * m4/ld-version-script.m4: Add FIXME comment.
15265
15266 2009-04-02  Simon Josefsson  <simon@josefsson.org>
15267
15268         * doc/ld-output-def.texi: Use DLL_VERSION instead of confusing
15269         SOVERSION variable.
15270
15271 2009-04-02  Bruno Haible  <bruno@clisp.org>
15272
15273         * Makefile (info, html, dvi, pdf): Combine the rules.
15274         Suggested by Jim Meyering.
15275
15276 2009-04-01  Bruno Haible  <bruno@clisp.org>
15277
15278         * Makefile (info, html, dvi, pdf): New targets.
15279         Reported by Reuben Thomas <rrt@sc3d.org>.
15280
15281 2009-04-01  Bruno Haible  <bruno@clisp.org>
15282
15283         * doc/gnulib-tool.texi (Invoking gnulib-tool): Document how gnulib-tool
15284         can be put into PATH.
15285         Reported by Reuben Thomas <rrt@sc3d.org>. Suggested by Karl Berry.
15286
15287 2009-04-01  Bruno Haible  <bruno@clisp.org>
15288
15289         * doc/lib-symbol-visibility.texi: Follow texinfo style conventions.
15290
15291 2009-04-01  Bruno Haible  <bruno@clisp.org>
15292
15293         Rename module 'visibility'.
15294         * modules/lib-symbol-visibility: Renamed from modules/visibility.
15295         * doc/lib-symbol-visibility.texi: Renamed from visibility.texi.
15296         * doc/gnulib.texi: Update.
15297         * MODULES.html.sh (Misc): Update.
15298         * NEWS: Mention the change.
15299
15300 2009-04-01  Simon Josefsson  <simon@josefsson.org>
15301
15302         * modules/lib-msvc-compat: New module.  Thanks to Bruno Haible
15303         <bruno@clisp.org>, Ralf Wildenhues <Ralf.Wildenhues@gmx.de>, and
15304         Eric Blake <ebb9@byu.net> for review.
15305         * MODULES.html.sh: Add lib-msvc-compat.
15306         * doc/gnulib.texi: Link to new section.
15307         * m4/ld-output-def.m4: New file.
15308         * doc/ld-output-def.texi: New file.
15309
15310 2009-04-01  Simon Josefsson  <simon@josefsson.org>
15311
15312         Rename ld-version-script to lib-symbol-versions.  Suggested by
15313         Bruno Haible <bruno@clisp.org>.
15314         * modules/ld-version-script: Renamed to lib-symbol-versions.
15315         * doc/ld-version-script.texi: Fix module name.
15316         * MODULES.html.sh: Add lib-symbol-versions.
15317
15318 2009-03-31  Simon Josefsson  <simon@josefsson.org>
15319
15320         * modules/u64-tests: New file.
15321         * tests/test-u64.c: New file.
15322
15323 2009-03-04  Simon Josefsson  <simon@josefsson.org>
15324
15325         * MODULES.html.sh: Mention u64.
15326         * modules/u64: New module.
15327         * modules/crypto/sha512: Depend on u64 module instead of providing
15328         u64.h.
15329
15330 2009-03-27  Eric Blake  <ebb9@byu.net>
15331
15332         test-strerror: make debugging EAI_SYSTEM easier
15333         * modules/getaddrinfo-tests (Depends-on): Add strerror.
15334         * test-getaddrinfo.c (simple) [ENABLE_DEBUGGING]: Report errno if
15335         failure was EAI_SYSTEM.
15336
15337 2009-03-25  Bruno Haible  <bruno@clisp.org>
15338
15339         Fix a problem with --enable-relocatable on Solaris 7.
15340         * modules/relocatable-prog-wrapper (Depends-on): Add environ. Needed
15341         since 2008-02-24.
15342
15343 2009-03-25  Eric Blake  <ebb9@byu.net>
15344
15345         test-sockets: avoid gcc warning
15346         * tests/test-sockets.c (main): Silence compiler warning.
15347
15348 2009-03-25  Paul Eggert  <eggert@cs.ucla.edu>
15349
15350         New modules nproc, pthread, contributed by Glen Lenker.
15351
15352         * MODULES.html.sh: Add pthread, nproc.
15353         * lib/nproc.c: New file.
15354         * lib/nproc.h: New file.
15355         * lib/pthread.in.h: New file.
15356         * m4/pthread.m4: New file.
15357         * modules/nproc: New file.
15358         * modules/pthread: New file.
15359
15360 2009-03-24  Simon Josefsson  <simon@josefsson.org>
15361
15362         * modules/unicase/locale-language-tests (test_locale_language_LDADD):
15363         New variable.
15364
15365 2009-03-24  Kamil Dudka  <kdudka@redhat.com>
15366
15367         filevercmp: handle simple~ and numbered.~3~ backup suffixes
15368         * lib/filevercmp.c: Handle simple~ and numbered.~3~ backup suffixes.
15369         * tests/test-filevercmp.c: Add tests for backup suffixes.
15370
15371 2009-03-24  Simon Josefsson  <simon@josefsson.org>
15372
15373         * modules/stdlib (Depends-on): Add stdint, needed when defining
15374         struct random_data on, for example, HP-UX 10.20.  Reported by
15375         Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
15376
15377 2009-03-24  Simon Josefsson  <simon@josefsson.org>
15378
15379         * lib/readline.c (readline): Call fflush on stdout after printing
15380         prompt.
15381
15382 2009-03-20  Bruno Haible  <bruno@clisp.org>
15383
15384         Remove dependency from 'close' module to -lws2_32 on native Windows.
15385         * lib/close-hook.h: New file.
15386         * lib/close-hook.c: New file.
15387         * lib/close.c: Include close-hook.h. Don't include <sys/socket.h>,
15388         w32sock.h.
15389         (_gl_close_fd_maybe_socket): Remove function.
15390         (rpl_close): Invoke execute_all_close_hooks instead of
15391         _gl_close_fd_maybe_socket.
15392         * lib/sockets.c: Include close-hook.h, w32sock.h.
15393         (close_fd_maybe_socket): New function, essentially from lib/close.c.
15394         (close_sockets_hook): New variable.
15395         (gl_sockets_startup): Register close_fd_maybe_socket as a hook.
15396         (gl_sockets_cleanup): Unregister it.
15397         * lib/unistd.in.h (HAVE__GL_CLOSE_FD_MAYBE_SOCKET): Remove macro.
15398         * m4/close.m4 (gl_REPLACE_CLOSE): Undo 2009-02-05 change.
15399         * modules/close-hook: New file.
15400         * modules/close (Files): Remove lib/w32sock.h.
15401         (Depends-on): Add close-hook.
15402         (Link): Remove section.
15403         * modules/sockets (Files): Add lib/w32sock.h.
15404         (Depends-on): Add close-hook.
15405         * modules/sys_socket (configure.ac): Remove gl_MODULE_INDICATOR
15406         invocation.
15407         * NEWS: Mention that LIB_CLOSE is gone.
15408
15409 2009-03-23  Eric Blake  <ebb9@byu.net>
15410
15411         signal-tests: test previous patch
15412         * tests/test-signal.c: New file.
15413         * modules/signal-tests: Likewise.
15414
15415         signal.h: always support 'volatile sig_atomic_t'
15416         * m4/signal_h.m4 (gl_SIGNAL_H): Check for AIX limitation.
15417         (gl_SIGNAL_H_DEFAULTS): Add a default.
15418         * modules/signal (Makefile.am): Substitute if needed.
15419         * lib/signal.in.h (sig_atomic_t): Redefine if needed, so that
15420         users can blindly add volatile.
15421         * doc/posix-headers/signal.texi (signal.h): Document it.
15422         Reported by Matthew Woehlke.
15423
15424 2009-03-23  Jim Meyering  <meyering@redhat.com>
15425
15426         pathmax: PATH_MAX: use pathconf only when available
15427         * lib/pathmax.h (PATH_MAX): Select the pathconf-using definition
15428         only if HAVE_PATHCONF is defined.  Patch by Sylvain Beucler.
15429         * m4/pathmax.m4 (gl_PATHMAX): Check for pathconf.
15430         This avoids a link failure in a PSP cross-compilation environment
15431         described in http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/17048
15432
15433         * lib/vasnprintf.c (divide): Fix typo in comment.
15434
15435 2009-03-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15436
15437         * gnulib-tool (func_filter_filelist): Fix comment.
15438
15439 2009-03-20  Bruno Haible  <bruno@clisp.org>
15440
15441         Make sockets.h self-contained.
15442         * lib/sockets.c: Include sockets.h first.
15443         * lib/sockets.h: Include <sys/socket.h> before using the SOCKET type.
15444
15445 2009-03-19  Eric Blake  <ebb9@byu.net>
15446
15447         doc: mention more functions added in cygwin 1.7.0
15448         * doc/posix-functions/log2.texi: Mention recent cygwin 1.7.0
15449         addition.
15450         * doc/posix-functions/log2f.texi: Likewise.
15451
15452 2009-03-19  Jim Meyering  <meyering@redhat.com>
15453
15454         fsusage: avoid syntax error due to statement-before-declaration
15455         * lib/fsusage.c (get_fs_usage): Put warning-avoidance statement
15456         after all declarations.  Reported by Matthew Woehlke in
15457         http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/16231
15458
15459 2009-03-18  Eric Blake  <ebb9@byu.net>
15460
15461         build-aux/compile: sync from automake
15462         * build-aux/compile: New file, from automake.
15463         * config/srclist.txt: Mention build-aux/compile.
15464
15465 2009-03-17  Bruno Haible  <bruno@clisp.org>
15466
15467         * lib/git-merge-changelog.c: Fix typo in comment.
15468         Reported by Reuben Thomas <rrt@sc3d.org>.
15469
15470 2009-03-17  Reuben Thomas  <rrt@sc3d.org>
15471
15472         * m4/regex.m4: update and improve help for
15473         --without-included-regex.
15474
15475 2009-03-17  Simon Josefsson  <simon@josefsson.org>
15476
15477         * modules/isnanl-nolibm-tests (Files): Add tests/nan.h to avoid
15478         failure on missing include files.
15479
15480 2009-03-17  Eric Blake  <ebb9@byu.net>
15481
15482         doc: mention more functions added in cygwin 1.7.0
15483         * doc/posix-functions/fwprintf.texi: Mention recent cygwin 1.7.0
15484         addition.
15485         * doc/posix-functions/fwscanf.texi: Likewise.
15486         * doc/posix-functions/swprintf.texi: Likewise.
15487         * doc/posix-functions/swscanf.texi: Likewise.
15488         * doc/posix-functions/vfwprintf.texi: Likewise.
15489         * doc/posix-functions/vfwscanf.texi: Likewise.
15490         * doc/posix-functions/vswprintf.texi: Likewise.
15491         * doc/posix-functions/vswscanf.texi: Likewise.
15492         * doc/posix-functions/vwprintf.texi: Likewise.
15493         * doc/posix-functions/vwscanf.texi: Likewise.
15494         * doc/posix-functions/wcscasecmp.texi: Likewise.
15495         * doc/posix-functions/wcsdup.texi: Likewise.
15496         * doc/posix-functions/wcsftime.texi: Likewise.
15497         * doc/posix-functions/wcsncasecmp.texi: Likewise.
15498         * doc/posix-functions/wprintf.texi: Likewise.
15499         * doc/posix-functions/wscanf.texi: Likewise.
15500         * doc/glibc-functions/gethostbyname2.texi: Likewise.
15501
15502 2009-03-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
15503
15504         maint.mk: really add $(AM_MAKEFLAGS)
15505         * top/maint.mk (init-coverage, build-coverage): `$(AM_MAKEFLAGS)'
15506         was inadvertently omitted in the last commit.
15507         Spotted by Bruno Haible.
15508
15509         maint.mk: use $(MAKE) $(AM_MAKEFLAGS) not make
15510         * top/maint.mk (init-coverage, build-coverage): Use `$(MAKE)
15511         $(AM_MAKEFLAGS)' rather than plain `make'.
15512
15513         gnulib-tool: execute $MAKE not make
15514         * gnulib-tool: Default $MAKE to 'make'.
15515         (func_create_testdir, func_create_megatestdir): Use $MAKE rather
15516         than make.  Initialize $MAKE in the do-autobuild script.
15517
15518         gnulib-tool: use $MAKE not make in generated files
15519         * gnulib-tool (func_create_megatestdir): Use $MAKE rather than
15520         make, in generated files.  Initialize $MAKE in the do-autobuild
15521         script.
15522
15523         * top/GNUmakefile (_have-git-version-gen): Fix typo.
15524
15525         GNUmakefile: disable parallelism only for multiple, recursive targets
15526         * top/GNUmakefile (ALL_RECURSIVE_TARGETS): New macro; allow user
15527         additions in the Makefile.
15528         (AM_RECURSIVE_TARGETS): New macro, override only if not provided
15529         by Automake.
15530         (.NOTPARALLEL): Only disable parallel builds if multiple targets
15531         are listed on the command line and at least one of them is
15532         listed in $(ALL_RECURSIVE_TARGETS).
15533
15534 2009-03-14  Bruno Haible  <bruno@clisp.org>
15535
15536         * modules/unilbrk/u8-possible-linebreaks (Depends-on): Replace
15537         utf8-ucs4-unsafe with unistr/u8-mbtouc-unsafe.
15538         * modules/unilbrk/u8-width-linebreaks (Depends-on): Likewise.
15539         * modules/unilbrk/u16-possible-linebreaks (Depends-on): Replace
15540         utf16-ucs4-unsafe with unistr/u16-mbtouc-unsafe.
15541         * modules/unilbrk/u16-width-linebreaks (Depends-on): Likewise.
15542         * modules/unistr/u8-chr (Depends-on): Replace ucs4-utf8 with
15543         unistr/u8-uctomb.
15544         * modules/unistr/u8-strchr (Depends-on): Likewise.
15545         * modules/unistr/u8-strrchr (Depends-on): Likewise.
15546         * modules/unistr/u16-chr (Depends-on): Replace ucs4-utf16 with
15547         unistr/u16-uctomb.
15548         * modules/unistr/u16-strchr (Depends-on): Likewise.
15549         * modules/unistr/u16-strrchr (Depends-on): Likewise.
15550
15551 2009-03-12  Bruno Haible  <bruno@clisp.org>
15552
15553         Work around select() bug on Interix 3.5.
15554         * lib/sys_select.in.h (select): Also replace if REPLACE_SELECT is 1.
15555         * lib/select.c (rpl_select): Add an implementation for Unix platforms.
15556         * m4/select.m4: New file.
15557         * m4/sys_select_h.m4 (gl_SYS_SELECT_H_DEFAULTS): Initialize REPLACE_SELECT.
15558         * modules/sys_select (Makefile.am): Substitute REPLACE_SELECT.
15559         * modules/select (Files): Add m4/select.m4.
15560         (configure.ac): Move conditional to m4/select.m4. Invoke gl_FUNC_SELECT.
15561         * modules/nanosleep (Depends-on): Add select.
15562         * modules/poll (Depends-on): Likewise.
15563         * doc/posix-functions/select.texi: Mention the Interix bug.
15564         Reported by Markus Duft <mduft@gentoo.org>.
15565
15566         * lib/select.c: Renamed from lib/winsock-select.c.
15567         * modules/select (Files): Add lib/select.c, remove
15568         lib/winsock-select.c.
15569         (configure.ac): Update.
15570
15571 2009-03-12  Jim Meyering  <meyering@redhat.com>
15572
15573         avoid gcc warnings about unused macro definitions
15574         * lib/readtokens.c (STREQ): Remove unused definition.
15575         * lib/xmalloc.c (SIZE_MAX): Likewise.
15576         * lib/openat-die.c (N_): Likewise.
15577         * lib/mountlist.c (SIZE_MAX): Remove definition.
15578         Instead, include <stdint.h>.
15579         * lib/readutmp.c: Likewise.
15580         * modules/readutmp (Depends-on): Add stdint.
15581         * modules/mountlist (Depends-on): Add stdint.
15582         * lib/userspec.c (ISDIGIT): Move definition into #if block where used.
15583
15584 2009-03-10  Bruno Haible  <bruno@clisp.org>
15585
15586         Tests for module 'mbmemcasecoll'.
15587         * modules/mbmemcasecoll-tests: New file.
15588         * tests/test-mbmemcasecoll1.sh: New file.
15589         * tests/test-mbmemcasecoll2.sh: New file.
15590         * tests/test-mbmemcasecoll3.sh: New file.
15591         * tests/test-mbmemcasecoll.c: New file.
15592
15593         New module 'mbmemcasecoll'.
15594         * lib/mbmemcasecoll.h: New file.
15595         * lib/mbmemcasecoll.c: New file.
15596         * modules/mbmemcasecoll: New file.
15597
15598         * tests/test-mbmemcasecmp.h: New file, extracted from
15599         tests/test-mbmemcasecmp.c.
15600         * tests/test-mbmemcasecmp.c: Include test-mbmemcasecmp.h.
15601         (test_ascii, test_iso_8859_1, test_utf_8): Remove functions.
15602         (main): Update.
15603         * modules/mbmemcasecmp-tests (Files): Add tests/test-mbmemcasecmp.h.
15604
15605 2009-03-09  Bruno Haible  <bruno@clisp.org>
15606
15607         Tests for module 'mbmemcasecmp'.
15608         * modules/mbmemcasecmp-tests: New file.
15609         * tests/test-mbmemcasecmp1.sh: New file.
15610         * tests/test-mbmemcasecmp2.sh: New file.
15611         * tests/test-mbmemcasecmp3.sh: New file.
15612         * tests/test-mbmemcasecmp.c: New file.
15613
15614         New module 'mbmemcasecmp'.
15615         * lib/mbmemcasecmp.h: New file.
15616         * lib/mbmemcasecmp.c: New file.
15617         * modules/mbmemcasecmp: New file.
15618
15619 2009-03-09  Bruno Haible  <bruno@clisp.org>
15620
15621         Tests for module 'unicase/ulc-casecoll'.
15622         * modules/unicase/ulc-casecoll-tests: New file.
15623         * tests/unicase/test-ulc-casecoll1.sh: New file.
15624         * tests/unicase/test-ulc-casecoll2.sh: New file.
15625         * tests/unicase/test-ulc-casecoll.c: New file.
15626
15627         New module 'unicase/ulc-casecoll'.
15628         * lib/unicase.h (ulc_casecoll): New declaration.
15629         * lib/unicase/ulc-casecoll.c: New file.
15630         * modules/unicase/ulc-casecoll: New file.
15631
15632         New module 'unicase/ulc-casexfrm'.
15633         * lib/unicase.h (ulc_casexfrm): New declaration.
15634         * lib/unicase/ulc-casexfrm.c: New file.
15635         * modules/unicase/ulc-casexfrm: New file.
15636
15637 2009-03-09  Bruno Haible  <bruno@clisp.org>
15638
15639         Followup to 2008-12-22 commit: Remove unnecessary AC_FUNC_MBRTOWC
15640         invocations.
15641
15642         * m4/mbscasecmp.m4: Remove file.
15643         * modules/mbscasecmp (Files): Remove it and m4/mbrtowc.m4
15644         (configure.ac): Remove gl_FUNC_MBSCASECMP invocation.
15645
15646         * m4/mbscasestr.m4: Remove file.
15647         * modules/mbscasestr (Files): Remove it and m4/mbrtowc.m4
15648         (configure.ac): Remove gl_FUNC_MBSCASESTR invocation.
15649
15650         * m4/mbschr.m4: Remove file.
15651         * modules/mbschr (Files): Remove it and m4/mbrtowc.m4
15652         (configure.ac): Remove gl_FUNC_MBSCHR invocation.
15653
15654         * m4/mbscspn.m4: Remove file.
15655         * modules/mbscspn (Files): Remove it and m4/mbrtowc.m4
15656         (configure.ac): Remove gl_FUNC_MBSCSPN invocation.
15657
15658         * m4/mbslen.m4: Remove file.
15659         * modules/mbslen (Files): Remove it and m4/mbrtowc.m4
15660         (configure.ac): Remove gl_FUNC_MBSLEN invocation.
15661
15662         * m4/mbsncasecmp.m4: Remove file.
15663         * modules/mbsncasecmp (Files): Remove it and m4/mbrtowc.m4
15664         (configure.ac): Remove gl_FUNC_MBSNCASECMP invocation.
15665
15666         * m4/mbsnlen.m4: Remove file.
15667         * modules/mbsnlen (Files): Remove it and m4/mbrtowc.m4
15668         (configure.ac): Remove gl_FUNC_MBSNLEN invocation.
15669
15670         * m4/mbspbrk.m4: Remove file.
15671         * modules/mbspbrk (Files): Remove it and m4/mbrtowc.m4
15672         (configure.ac): Remove gl_FUNC_MBSPBRK invocation.
15673
15674         * m4/mbspcasecmp.m4: Remove file.
15675         * modules/mbspcasecmp (Files): Remove it and m4/mbrtowc.m4
15676         (configure.ac): Remove gl_FUNC_MBSPCASECMP invocation.
15677
15678         * m4/mbsrchr.m4: Remove file.
15679         * modules/mbsrchr (Files): Remove it and m4/mbrtowc.m4
15680         (configure.ac): Remove gl_FUNC_MBSRCHR invocation.
15681
15682         * m4/mbssep.m4: Remove file.
15683         * modules/mbssep (Files): Remove it and m4/mbrtowc.m4
15684         (configure.ac): Remove gl_FUNC_MBSSEP invocation.
15685
15686         * m4/mbsspn.m4: Remove file.
15687         * modules/mbsspn (Files): Remove it and m4/mbrtowc.m4
15688         (configure.ac): Remove gl_FUNC_MBSSPN invocation.
15689
15690         * m4/mbsstr.m4: Remove file.
15691         * modules/mbsstr (Files): Remove it and m4/mbrtowc.m4
15692         (configure.ac): Remove gl_FUNC_MBSSTR invocation.
15693
15694         * m4/mbstok_r.m4: Remove file.
15695         * modules/mbstok_r (Files): Remove it and m4/mbrtowc.m4
15696         (configure.ac): Remove gl_FUNC_MBSTOK_R invocation.
15697
15698         * m4/mbswidth.m4 (gl_MBSWIDTH): Remove AC_FUNC_MBRTOWC invocation.
15699
15700         * m4/quotearg.m4 (gl_QUOTEARG): Remove mbsinit test and
15701         AC_TYPE_MBSTATE_T, AC_FUNC_MBRTOWC invocations.
15702
15703         * modules/trim (configure.ac): Remove AC_FUNC_MBRTOWC invocation.
15704
15705 2009-03-08  Bruno Haible  <bruno@clisp.org>
15706
15707         Tests for module 'unicase/ulc-casecmp'.
15708         * modules/unicase/ulc-casecmp-tests: New file.
15709         * tests/unicase/test-ulc-casecmp1.sh: New file.
15710         * tests/unicase/test-ulc-casecmp2.sh: New file.
15711         * tests/unicase/test-ulc-casecmp.c: New file.
15712
15713         New module 'unicase/ulc-casecmp'.
15714         * lib/unicase.h (ulc_casecmp): New declaration.
15715         * lib/unicase/ulc-casecmp.c: New file.
15716         * lib/unicase/u-casecmp.h (FUNC): Change argument types to
15717         'const SRC_UNIT *'.
15718         * lib/unicase/u8-casecmp.c (SRC_UNIT): Define like UNIT.
15719         * lib/unicase/u16-casecmp.c (SRC_UNIT): Likewise.
15720         * lib/unicase/u32-casecmp.c (SRC_UNIT): Likewise.
15721         * modules/unicase/ulc-casecmp: New file.
15722
15723         Tests for module 'unicase/u32-is-cased'.
15724         * modules/unicase/u32-is-cased-tests: New file.
15725         * tests/unicase/test-u32-is-cased.c: New file.
15726
15727         Tests for module 'unicase/u16-is-cased'.
15728         * modules/unicase/u16-is-cased-tests: New file.
15729         * tests/unicase/test-u16-is-cased.c: New file.
15730
15731         Tests for module 'unicase/u8-is-cased'.
15732         * modules/unicase/u8-is-cased-tests: New file.
15733         * tests/unicase/test-u8-is-cased.c: New file.
15734         * tests/unicase/test-is-cased.h: New file.
15735
15736         New module 'unicase/u32-is-cased'.
15737         * lib/unicase/u32-is-cased.c: New file.
15738         * modules/unicase/u32-is-cased: New file.
15739
15740         New module 'unicase/u16-is-cased'.
15741         * lib/unicase/u16-is-cased.c: New file.
15742         * modules/unicase/u16-is-cased: New file.
15743
15744         New module 'unicase/u8-is-cased'.
15745         * lib/unicase/u8-is-cased.c: New file.
15746         * lib/unicase/u-is-cased.h: New file.
15747         * modules/unicase/u8-is-cased: New file.
15748
15749         Tests for module 'unicase/u32-is-casefolded'.
15750         * modules/unicase/u32-is-casefolded-tests: New file.
15751         * tests/unicase/test-u32-is-casefolded.c: New file.
15752
15753         Tests for module 'unicase/u16-is-casefolded'.
15754         * modules/unicase/u16-is-casefolded-tests: New file.
15755         * tests/unicase/test-u16-is-casefolded.c: New file.
15756
15757         Tests for module 'unicase/u8-is-casefolded'.
15758         * modules/unicase/u8-is-casefolded-tests: New file.
15759         * tests/unicase/test-u8-is-casefolded.c: New file.
15760         * tests/unicase/test-is-casefolded.h: New file.
15761
15762         New module 'unicase/u32-is-casefolded'.
15763         * lib/unicase/u32-is-casefolded.c: New file.
15764         * modules/unicase/u32-is-casefolded: New file.
15765
15766         New module 'unicase/u16-is-casefolded'.
15767         * lib/unicase/u16-is-casefolded.c: New file.
15768         * modules/unicase/u16-is-casefolded: New file.
15769
15770         New module 'unicase/u8-is-casefolded'.
15771         * lib/unicase/u8-is-casefolded.c: New file.
15772         * modules/unicase/u8-is-casefolded: New file.
15773
15774         Tests for module 'unicase/u32-is-titlecase'.
15775         * modules/unicase/u32-is-titlecase-tests: New file.
15776         * tests/unicase/test-u32-is-titlecase.c: New file.
15777
15778         Tests for module 'unicase/u16-is-titlecase'.
15779         * modules/unicase/u16-is-titlecase-tests: New file.
15780         * tests/unicase/test-u16-is-titlecase.c: New file.
15781
15782         Tests for module 'unicase/u8-is-titlecase'.
15783         * modules/unicase/u8-is-titlecase-tests: New file.
15784         * tests/unicase/test-u8-is-titlecase.c: New file.
15785         * tests/unicase/test-is-titlecase.h: New file.
15786
15787         New module 'unicase/u32-is-titlecase'.
15788         * lib/unicase/u32-is-titlecase.c: New file.
15789         * modules/unicase/u32-is-titlecase: New file.
15790
15791         New module 'unicase/u16-is-titlecase'.
15792         * lib/unicase/u16-is-titlecase.c: New file.
15793         * modules/unicase/u16-is-titlecase: New file.
15794
15795         New module 'unicase/u8-is-titlecase'.
15796         * lib/unicase/u8-is-titlecase.c: New file.
15797         * modules/unicase/u8-is-titlecase: New file.
15798
15799         Tests for module 'unicase/u32-is-lowercase'.
15800         * modules/unicase/u32-is-lowercase-tests: New file.
15801         * tests/unicase/test-u32-is-lowercase.c: New file.
15802
15803         Tests for module 'unicase/u16-is-lowercase'.
15804         * modules/unicase/u16-is-lowercase-tests: New file.
15805         * tests/unicase/test-u16-is-lowercase.c: New file.
15806
15807         Tests for module 'unicase/u8-is-lowercase'.
15808         * modules/unicase/u8-is-lowercase-tests: New file.
15809         * tests/unicase/test-u8-is-lowercase.c: New file.
15810         * tests/unicase/test-is-lowercase.h: New file.
15811
15812         New module 'unicase/u32-is-lowercase'.
15813         * lib/unicase/u32-is-lowercase.c: New file.
15814         * modules/unicase/u32-is-lowercase: New file.
15815
15816         New module 'unicase/u16-is-lowercase'.
15817         * lib/unicase/u16-is-lowercase.c: New file.
15818         * modules/unicase/u16-is-lowercase: New file.
15819
15820         New module 'unicase/u8-is-lowercase'.
15821         * lib/unicase/u8-is-lowercase.c: New file.
15822         * modules/unicase/u8-is-lowercase: New file.
15823
15824         Tests for module 'unicase/u32-is-uppercase'.
15825         * modules/unicase/u32-is-uppercase-tests: New file.
15826         * tests/unicase/test-u32-is-uppercase.c: New file.
15827
15828         Tests for module 'unicase/u16-is-uppercase'.
15829         * modules/unicase/u16-is-uppercase-tests: New file.
15830         * tests/unicase/test-u16-is-uppercase.c: New file.
15831
15832         Tests for module 'unicase/u8-is-uppercase'.
15833         * modules/unicase/u8-is-uppercase-tests: New file.
15834         * tests/unicase/test-u8-is-uppercase.c: New file.
15835         * tests/unicase/test-is-uppercase.h: New file.
15836
15837         New module 'unicase/u32-is-uppercase'.
15838         * lib/unicase/u32-is-uppercase.c: New file.
15839         * modules/unicase/u32-is-uppercase: New file.
15840
15841         New module 'unicase/u16-is-uppercase'.
15842         * lib/unicase/u16-is-uppercase.c: New file.
15843         * modules/unicase/u16-is-uppercase: New file.
15844
15845         New module 'unicase/u8-is-uppercase'.
15846         * lib/unicase/u8-is-uppercase.c: New file.
15847         * modules/unicase/u8-is-uppercase: New file.
15848
15849         New module 'unicase/u32-is-invariant'.
15850         * lib/unicase/u32-is-invariant.c: New file.
15851         * modules/unicase/u32-is-invariant: New file.
15852
15853         New module 'unicase/u16-is-invariant'.
15854         * lib/unicase/u16-is-invariant.c: New file.
15855         * modules/unicase/u16-is-invariant: New file.
15856
15857         New module 'unicase/u8-is-invariant'.
15858         * lib/unicase/u8-is-invariant.c: New file.
15859         * lib/unicase/invariant.h: New file.
15860         * lib/unicase/u-is-invariant.h: New file.
15861         * modules/unicase/u8-is-invariant: New file.
15862
15863         Tests for module 'unicase/u32-casecoll'.
15864         * modules/unicase/u32-casecoll-tests: New file.
15865         * tests/unicase/test-u32-casecoll.c: New file.
15866
15867         Tests for module 'unicase/u16-casecoll'.
15868         * modules/unicase/u16-casecoll-tests: New file.
15869         * tests/unicase/test-u16-casecoll.c: New file.
15870
15871         Tests for module 'unicase/u8-casecoll'.
15872         * modules/unicase/u8-casecoll-tests: New file.
15873         * tests/unicase/test-u8-casecoll.c: New file.
15874
15875         New module 'unicase/u32-casecoll'.
15876         * lib/unicase/u32-casecoll.c: New file.
15877         * modules/unicase/u32-casecoll: New file.
15878
15879         New module 'unicase/u16-casecoll'.
15880         * lib/unicase/u16-casecoll.c: New file.
15881         * modules/unicase/u16-casecoll: New file.
15882
15883         New module 'unicase/u8-casecoll'.
15884         * lib/unicase/u8-casecoll.c: New file.
15885         * lib/unicase/u-casecoll.h: New file.
15886         * modules/unicase/u8-casecoll: New file.
15887
15888         New module 'unicase/u32-casexfrm'.
15889         * lib/unicase/u32-casexfrm.c: New file.
15890         * modules/unicase/u32-casexfrm: New file.
15891
15892         New module 'unicase/u16-casexfrm'.
15893         * lib/unicase/u16-casexfrm.c: New file.
15894         * modules/unicase/u16-casexfrm: New file.
15895
15896         New module 'unicase/u8-casexfrm'.
15897         * lib/unicase/u8-casexfrm.c: New file.
15898         * lib/unicase/u-casexfrm.h: New file.
15899         * modules/unicase/u8-casexfrm: New file.
15900
15901         Tests for module 'unicase/u32-casecmp'.
15902         * modules/unicase/u32-casecmp-tests: New file.
15903         * tests/unicase/test-u32-casecmp.c: New file.
15904
15905         Tests for module 'unicase/u16-casecmp'.
15906         * modules/unicase/u16-casecmp-tests: New file.
15907         * tests/unicase/test-u16-casecmp.c: New file.
15908
15909         Tests for module 'unicase/u8-casecmp'.
15910         * modules/unicase/u8-casecmp-tests: New file.
15911         * tests/unicase/test-u8-casecmp.c: New file.
15912         * tests/unicase/test-casecmp.h: New file.
15913
15914         New module 'unicase/u32-casecmp'.
15915         * lib/unicase/u32-casecmp.c: New file.
15916         * modules/unicase/u32-casecmp: New file.
15917
15918         New module 'unicase/u16-casecmp'.
15919         * lib/unicase/u16-casecmp.c: New file.
15920         * modules/unicase/u16-casecmp: New file.
15921
15922         New module 'unicase/u8-casecmp'.
15923         * lib/unicase/u8-casecmp.c: New file.
15924         * lib/unicase/u-casecmp.h: New file.
15925         * modules/unicase/u8-casecmp: New file.
15926
15927         Tests for module 'unicase/u32-casefold'.
15928         * modules/unicase/u32-casefold-tests: New file.
15929         * tests/unicase/test-u32-casefold.c: New file.
15930
15931         Tests for module 'unicase/u16-casefold'.
15932         * modules/unicase/u16-casefold-tests: New file.
15933         * tests/unicase/test-u16-casefold.c: New file.
15934
15935         Tests for module 'unicase/u8-casefold'.
15936         * modules/unicase/u8-casefold-tests: New file.
15937         * tests/unicase/test-u8-casefold.c: New file.
15938
15939         New module 'unicase/u32-casefold'.
15940         * lib/unicase/u32-casefold.c: New file.
15941         * modules/unicase/u32-casefold: New file.
15942
15943         New module 'unicase/u16-casefold'.
15944         * lib/unicase/u16-casefold.c: New file.
15945         * modules/unicase/u16-casefold: New file.
15946
15947         New module 'unicase/u8-casefold'.
15948         * lib/unicase/u8-casefold.c: New file.
15949         * lib/unicase/u-casefold.h: New file.
15950         * modules/unicase/u8-casefold: New file.
15951
15952         New module 'unicase/tocasefold'.
15953         * lib/unicase/casefold.h: New file.
15954         * lib/unicase/tocasefold.c: New file.
15955         * lib/unicase/tocasefold.h: New file, generated by gen-uni-tables.c.
15956         * modules/unicase/tocasefold: New file.
15957
15958         Tests for module 'unicase/u32-totitle'.
15959         * modules/unicase/u32-totitle-tests: New file.
15960         * tests/unicase/test-u32-totitle.c: New file.
15961
15962         Tests for module 'unicase/u16-totitle'.
15963         * modules/unicase/u16-totitle-tests: New file.
15964         * tests/unicase/test-u16-totitle.c: New file.
15965
15966         Tests for module 'unicase/u8-totitle'.
15967         * modules/unicase/u8-totitle-tests: New file.
15968         * tests/unicase/test-u8-totitle.c: New file.
15969
15970         New module 'unicase/u32-totitle'.
15971         * lib/unicase/u32-totitle.c: New file.
15972         * modules/unicase/u32-totitle: New file.
15973
15974         New module 'unicase/u16-totitle'.
15975         * lib/unicase/u16-totitle.c: New file.
15976         * modules/unicase/u16-totitle: New file.
15977
15978         New module 'unicase/u8-totitle'.
15979         * lib/unicase/u8-totitle.c: New file.
15980         * lib/unicase/u-totitle.h: New file.
15981         * modules/unicase/u8-totitle: New file.
15982
15983         Tests for module 'unicase/u32-tolower'.
15984         * modules/unicase/u32-tolower-tests: New file.
15985         * tests/unicase/test-u32-tolower.c: New file.
15986
15987         Tests for module 'unicase/u16-tolower'.
15988         * modules/unicase/u16-tolower-tests: New file.
15989         * tests/unicase/test-u16-tolower.c: New file.
15990
15991         Tests for module 'unicase/u8-tolower'.
15992         * modules/unicase/u8-tolower-tests: New file.
15993         * tests/unicase/test-u8-tolower.c: New file.
15994
15995         New module 'unicase/u32-tolower'.
15996         * lib/unicase/u32-tolower.c: New file.
15997         * modules/unicase/u32-tolower: New file.
15998
15999         New module 'unicase/u16-tolower'.
16000         * lib/unicase/u16-tolower.c: New file.
16001         * modules/unicase/u16-tolower: New file.
16002
16003         New module 'unicase/u8-tolower'.
16004         * lib/unicase/u8-tolower.c: New file.
16005         * modules/unicase/u8-tolower: New file.
16006
16007         Tests for module 'unicase/u32-toupper'.
16008         * modules/unicase/u32-toupper-tests: New file.
16009         * tests/unicase/test-u32-toupper.c: New file.
16010
16011         Tests for module 'unicase/u16-toupper'.
16012         * modules/unicase/u16-toupper-tests: New file.
16013         * tests/unicase/test-u16-toupper.c: New file.
16014
16015         Tests for module 'unicase/u8-toupper'.
16016         * modules/unicase/u8-toupper-tests: New file.
16017         * tests/unicase/test-u8-toupper.c: New file.
16018
16019         New module 'unicase/u32-toupper'.
16020         * lib/unicase/u32-toupper.c: New file.
16021         * modules/unicase/u32-toupper: New file.
16022
16023         New module 'unicase/u16-toupper'.
16024         * lib/unicase/u16-toupper.c: New file.
16025         * modules/unicase/u16-toupper: New file.
16026
16027         New module 'unicase/u8-toupper'.
16028         * lib/unicase/u8-toupper.c: New file.
16029         * modules/unicase/u8-toupper: New file.
16030
16031         New module 'unicase/u32-casemap'.
16032         * lib/unicase/u32-casemap.c: New file.
16033         * modules/unicase/u32-casemap: New file.
16034
16035         New module 'unicase/u16-casemap'.
16036         * lib/unicase/u16-casemap.c: New file.
16037         * modules/unicase/u16-casemap: New file.
16038
16039         New module 'unicase/u8-casemap'.
16040         * lib/unicase/unicasemap.h: New file.
16041         * lib/unicase/u8-casemap.c: New file.
16042         * lib/unicase/u-casemap.h: New file.
16043         * modules/unicase/u8-casemap: New file.
16044
16045         New module 'unicase/special-casing'.
16046         * lib/unicase/special-casing.h: New file.
16047         * lib/unicase/special-casing.c: New file.
16048         * lib/unicase/special-casing-table.gperf: New file, generated by
16049         gen-uni-tables.c.
16050         * modules/unicase/special-casing: New file.
16051
16052         Tests for module 'unicase/locale-language'.
16053         * modules/unicase/locale-language-tests: New file.
16054         * tests/unicase/test-locale-language.sh: New file.
16055         * tests/unicase/test-locale-language.c: New file.
16056
16057         New module 'unicase/locale-language'.
16058         * lib/unicase/locale-language.c: New file.
16059         * lib/unicase/locale-languages.gperf: New file.
16060         * modules/unicase/locale-language: New file.
16061
16062         Generate more tables for case conversion and case folding.
16063         * lib/gen-uni-tables.c (SCC_*): New enum items.
16064         (struct special_casing_rule): New type.
16065         (casing_rules, num_casing_rules, allocated_casing_rules): New
16066         variables.
16067         (add_casing_rule, fill_casing_rules): New functions.
16068         (struct casefold_rule): New type.
16069         (casefolding_rules, num_casefolding_rules,
16070         allocated_casefolding_rules): New variables.
16071         (fill_casefolding_rules): New function.
16072         (unicode_casefold): New variable.
16073         (to_casefold, redistribute_casefolding_rules, compare_casing_rules,
16074         sort_casing_rules, output_casing_rules): New functions.
16075         (main): Accept to more arguments: SpecialCasing.txt and
16076         CaseFolding.txt. Invoke fill_casing_rules, fill_casefolding_rules,
16077         redistribute_casefolding_rules, sort_casing_rules, output_casing_rules.
16078         Output mapping for casefolding.
16079
16080         * lib/unicase.h: Include stdbool.h, uninorm.h.
16081         (u8_toupper, u16_toupper, u32_toupper, u8_tolower, u16_tolower,
16082         u32_tolower, u8_totitle, u16_totitle, u32_totitle): Add nf argument.
16083         (u8_casefold, u16_casefold, u32_casefold): Add iso639_language and nf
16084         arguments.
16085         (u8_casecmp, u16_casecmp, u32_casecmp): Add iso639_language, nf,
16086         resultp arguments.
16087         (u8_casexfrm, u16_casexfrm, u32_casexfrm): New declarations.
16088         (u8_casecoll, u16_casecoll, u32_casecoll): Add iso639_language, nf,
16089         resultp arguments.
16090         (u8_is_uppercase, u16_is_uppercase, u32_is_uppercase, u8_is_lowercase,
16091         u16_is_lowercase, u32_is_lowercase, u8_is_titlecase, u16_is_titlecase,
16092         u32_is_titlecase, u8_is_casefolded, u16_is_casefolded,
16093         u32_is_casefolded, u8_is_cased, u16_is_cased, u32_is_cased): New
16094         declarations.
16095         * modules/unicase/base (Depends-on): Add uninorm/base, stdbool.
16096
16097 2009-03-08  Bruno Haible  <bruno@clisp.org>
16098
16099         * lib/uninorm.h (u8_normcmp, u16_normcmp, u32_normcmp, u8_normcoll,
16100         u16_normcoll, u32_normcoll): Rename argument 'result' to 'resultp'.
16101         * lib/uninorm/u-normcmp.h (FUNC): Likewise.
16102         * lib/uninorm/u-normcoll.h (FUNC): Likewise.
16103
16104 2009-03-07  Bruno Haible  <bruno@clisp.org>
16105
16106         Adjust u*_normcmp, u*_normcoll API.
16107         * lib/uninorm.h (u8_normcmp, u16_normcmp, u32_normcmp, u8_normcoll,
16108         u16_normcoll, u32_normcoll): Change failure conventions.
16109         * lib/uninorm/u-normcmp.h (FUNC): Upon failure, store the error code in
16110         errno and return -1.
16111         * lib/uninorm/u-normcoll.h (FUNC): Likewise.
16112
16113 2009-03-07  Bruno Haible  <bruno@clisp.org>
16114
16115         Tests for module 'uninorm/u32-normcoll'.
16116         * modules/uninorm/u32-normcoll-tests: New file.
16117         * tests/uninorm/test-u32-normcoll.c: New file.
16118
16119         Tests for module 'uninorm/u16-normcoll'.
16120         * modules/uninorm/u16-normcoll-tests: New file.
16121         * tests/uninorm/test-u16-normcoll.c: New file.
16122
16123         Tests for module 'uninorm/u8-normcoll'.
16124         * modules/uninorm/u8-normcoll-tests: New file.
16125         * tests/uninorm/test-u8-normcoll.c: New file.
16126
16127 2009-03-07  Bruno Haible  <bruno@clisp.org>
16128
16129         * tests/uninorm/test-u32-normcmp.h: New file, extracted from
16130         tests/uninorm/test-u32-normcmp.c.
16131         * tests/uninorm/test-u32-normcmp.c: Include it.
16132         (test_nonascii): New function, extracted from main. Add some more
16133         tests.
16134         (main): Invoke test_ascii and test_nonascii.
16135         * modules/uninorm/u32-normcmp-tests (Files): Add
16136         tests/uninorm/test-u32-normcmp.h.
16137         (Depends-on): Remove uninorm/u32-normcmp.
16138
16139         * tests/uninorm/test-u16-normcmp.h: New file, extracted from
16140         tests/uninorm/test-u16-normcmp.c.
16141         * tests/uninorm/test-u16-normcmp.c: Include it.
16142         (test_nonascii): New function, extracted from main. Add some more
16143         tests.
16144         (main): Invoke test_ascii and test_nonascii.
16145         * modules/uninorm/u16-normcmp-tests (Files): Add
16146         tests/uninorm/test-u16-normcmp.h.
16147         (Depends-on): Remove uninorm/u16-normcmp.
16148
16149         * tests/uninorm/test-u8-normcmp.h: New file, extracted from
16150         tests/uninorm/test-u8-normcmp.c.
16151         * tests/uninorm/test-u8-normcmp.c: Include it.
16152         (test_nonascii): New function, extracted from main. Add some more
16153         tests.
16154         (main): Invoke test_ascii and test_nonascii.
16155         * modules/uninorm/u8-normcmp-tests (Files): Add
16156         tests/uninorm/test-u8-normcmp.h.
16157         (Depends-on): Remove uninorm/u8-normcmp.
16158
16159 2009-03-07  Bruno Haible  <bruno@clisp.org>
16160
16161         New module 'uninorm/u32-normcoll'.
16162         * lib/uninorm/u32-normcoll.c: New file.
16163         * modules/uninorm/u32-normcoll: New file.
16164
16165         New module 'uninorm/u16-normcoll'.
16166         * lib/uninorm/u16-normcoll.c: New file.
16167         * modules/uninorm/u16-normcoll: New file.
16168
16169         New module 'uninorm/u8-normcoll'.
16170         * lib/uninorm.h (u8_normcoll, u16_normcoll, u32_normcoll): New
16171         declarations.
16172         * lib/uninorm/u8-normcoll.c: New file.
16173         * lib/uninorm/u-normcoll.h: New file.
16174         * modules/uninorm/u8-normcoll: New file.
16175
16176         New module 'uninorm/u32-normxfrm'.
16177         * lib/uninorm/u32-normxfrm.c: New file.
16178         * modules/uninorm/u32-normxfrm: New file.
16179
16180         New module 'uninorm/u16-normxfrm'.
16181         * lib/uninorm/u16-normxfrm.c: New file.
16182         * modules/uninorm/u16-normxfrm: New file.
16183
16184         New module 'uninorm/u8-normxfrm'.
16185         * lib/uninorm.h (u8_normxfrm, u16_normxfrm, u32_normxfrm): New
16186         declarations.
16187         * lib/uninorm/u8-normxfrm.c: New file.
16188         * lib/uninorm/u-normxfrm.h: New file.
16189         * modules/uninorm/u8-normxfrm: New file.
16190
16191 2009-03-07  Bruno Haible  <bruno@clisp.org>
16192
16193         * modules/uninorm/u8-normcmp (Depends-on): Add uninorm/base.
16194         * modules/uninorm/u16-normcmp (Depends-on): Likewise.
16195         * modules/uninorm/u32-normcmp (Depends-on): Likewise.
16196
16197 2009-03-07  Bruno Haible  <bruno@clisp.org>
16198
16199         New module 'memxfrm'.
16200         * lib/memxfrm.h: New file.
16201         * lib/memxfrm.c: New file.
16202         * modules/memxfrm: New file.
16203
16204 2009-03-07  Bruno Haible  <bruno@clisp.org>
16205
16206         New module 'memcmp2'.
16207         * lib/memcmp2.h: New file.
16208         * lib/memcmp2.c: New file.
16209         * modules/memcmp2: New file.
16210
16211 2009-03-07  Bruno Haible  <bruno@clisp.org>
16212
16213         Tests for module 'uninorm/decomposing-form'.
16214         * modules/uninorm/decomposing-form-tests: New file.
16215         * tests/uninorm/test-decomposing-form.c: New file.
16216
16217         New module 'uninorm/decomposing-form'.
16218         * lib/uninorm.h (uninorm_decomposing_form): New declaration.
16219         * lib/uninorm/normalize-internal.h (struct unicode_normalization_form):
16220         Add 'decomposing_variant' field.
16221         * lib/uninorm/decomposing-form.c: New file.
16222         * lib/uninorm/nfc.c (uninorm_nfc): Update.
16223         * lib/uninorm/nfd.c (uninorm_nfd): Update.
16224         * lib/uninorm/nfkc.c (uninorm_nfkc): Update.
16225         * lib/uninorm/nfkd.c (uninorm_nfkd): Update.
16226         * modules/uninorm/decomposing-form: New file.
16227         * modules/uninorm/nfc (Depends-on): Add uninorm/nfd.
16228         * modules/uninorm/nfkc (Depends-on): Add uninorm/nfkd.
16229
16230 2009-03-07  Bruno Haible  <bruno@clisp.org>
16231
16232         * lib/uninorm/u-normcmp.h (FUNC): Use stack=allocated buffers for small
16233         strings.
16234
16235 2009-03-06  Bruno Haible  <bruno@clisp.org>
16236
16237         Tests for module 'uninorm/u32-normcmp'.
16238         * tests/uninorm/test-u32-normcmp.c: New file.
16239         * modules/uninorm/u32-normcmp-tests: New file.
16240
16241         Tests for module 'uninorm/u16-normcmp'.
16242         * tests/uninorm/test-u16-normcmp.c: New file.
16243         * modules/uninorm/u16-normcmp-tests: New file.
16244
16245         Tests for module 'uninorm/u8-normcmp'.
16246         * tests/uninorm/test-u8-normcmp.c: New file.
16247         * modules/uninorm/u8-normcmp-tests: New file.
16248
16249         New module 'uninorm/u32-normcmp'.
16250         * lib/uninorm/u32-normcmp.c: New file.
16251         * modules/uninorm/u32-normcmp: New file.
16252
16253         New module 'uninorm/u16-normcmp'.
16254         * lib/uninorm/u16-normcmp.c: New file.
16255         * modules/uninorm/u16-normcmp: New file.
16256
16257         New module 'uninorm/u8-normcmp'.
16258         * lib/uninorm.h (u8_normcmp, u16_normcmp, u32_normcmp): New
16259         declarations.
16260         * lib/uninorm/u8-normcmp.c: New file.
16261         * lib/uninorm/u-normcmp.h: New file.
16262         * modules/uninorm/u8-normcmp: New file.
16263
16264 2009-03-06  Bruno Haible  <bruno@clisp.org>
16265
16266         * lib/w32spawn.h (dup_noinherit): Add cast, to avoid gcc warning.
16267         Reported by Eric Blake.
16268
16269 2009-03-06  Eric Blake  <ebb9@byu.net>
16270             Bruno Haible  <bruno@clisp.org>
16271
16272         * lib/spawni.c (__spawni) [WIN32_NATIVE]: Define as a stub.
16273         * modules/posix_spawn-tests (configure.ac): Define POSIX_SPAWN_PORTED
16274         condition.
16275         (Makefile.am): Do nothing if POSIX_SPAWN_PORTED is false.
16276         * modules/posix_spawnp-tests (configure.ac): Define POSIX_SPAWN_PORTED
16277         condition.
16278         (Makefile.am): Do nothing if POSIX_SPAWN_PORTED is false.
16279
16280 2009-03-06  Eric Blake  <ebb9@byu.net>
16281
16282         * lib/execute.c (execute) [WIN32_NATIVE]: Cast arguments of spawnvpe,
16283         to avoid compiler warnings.
16284         * lib/pipe.c (create_pipe) [WIN32_NATIVE]: Likewise.
16285
16286 2009-03-05  Bruno Haible  <bruno@clisp.org>
16287
16288         * tests/test-ftell.c (main): Disable test beyond end of file on
16289         FreeMiNT.
16290         Patch by Alan Hourihane <alanh@fairlite.co.uk>.
16291
16292 2009-03-05  Kamil Dudka  <kdudka@redhat.com>
16293
16294         * lib/filevercmp.c: Move hidden files up in ordering.
16295         * tests/test-filevercmp.c: Add tests for hidden files.
16296
16297 2009-03-04  Bruno Haible  <bruno@clisp.org>
16298
16299         * modules/visibility (Makefile.am): Augment AM_CFLAGS.
16300         * gnulib-tool (func_emit_lib_Makefile_am): Emit initialization of
16301         AM_CFLAGS.
16302         Reported by Simon Josefsson.
16303
16304 2009-03-03  Bruno Haible  <bruno@clisp.org>
16305
16306         * doc/visibility.texi: Recommend to use HAVE_VISIBILITY as a C macro.
16307         Reported by Simon Josefsson.
16308
16309         * doc/ld-version-script.texi: Update node reference.
16310
16311 2009-03-03  Bruno Haible  <bruno@clisp.org>
16312
16313         * modules/visibility (License): Change to 'unlimited'.
16314         Suggested by Simon Josefsson.
16315
16316 2009-03-03  Jim Meyering  <meyering@redhat.com>
16317
16318         unlinkdir: cannot_unlink_dir may modify process state
16319         * lib/unlinkdir.c (cannot_unlink_dir): Add a comment warning that
16320         it's neither thread-safe nor appropriate for use in a library.
16321
16322 2009-03-03  Eric Blake  <ebb9@byu.net>
16323
16324         test-closein: silence test under Darwin
16325         * tests/test-closein.sh: Ignore stderr from cat, since we don't
16326         care if it dies from EPIPE or EBADF.
16327
16328 2009-03-03  Bruno Haible  <bruno@clisp.org>
16329
16330         * doc/gnulib.texi: Include visibility.texi and ld-version-script.texi
16331         earlier.
16332         * doc/visibility.texi: Fix @node and @section.
16333
16334 2009-03-03  Simon Josefsson  <simon@josefsson.org>
16335
16336         * doc/gnulib.texi: Link to sections for ld version script and
16337         visibility.
16338         * doc/visibility.texi: Add @node and @section.
16339         * modules/ld-version-script: New module.
16340         * m4/ld-version-script.m4: New file.
16341         * doc/ld-version-script.texi: New file.
16342
16343 2009-03-02  David Lutterkort  <lutter@redhat.com>
16344
16345         * lib/safe-alloc.h (__GNUC_PREREQ): New macro.
16346         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
16347
16348 2009-03-02  Bruno Haible  <bruno@clisp.org>
16349
16350         * doc/visibility.texi: Mention libtool's -export-symbols option.
16351
16352 2009-03-02  Jim Meyering  <meyering@redhat.com>
16353
16354         announce-gen: new option: --no-print-checksums
16355         * build-aux/announce-gen (usage): Describe it.
16356         (print_checksums): Print a newline here, not in the [*] footnote.
16357         (main): Honor it.
16358
16359 2009-03-01  Bruno Haible  <bruno@clisp.org>
16360
16361         Use socklen_t in the native Windows replacements prototypes.
16362         * lib/sys_socket.in.h (rpl_getsockopt, rpl_setsockopt): Use socklen_t
16363         instead of 'int'.
16364         * lib/getsockopt.c (rpl_getsockopt): Likewise.
16365         * lib/setsockopt.c (rpl_setsockopt): Likewise.
16366         * modules/getsockopt (Depends-on): Add socklen.
16367         * modules/setsockopt (Depends-on): Add socklen.
16368
16369 2009-03-01  Bruno Haible  <bruno@clisp.org>
16370
16371         * gnulib-tool (sed): Do alias as "sed --posix" if sed's version is at
16372         least 4.2.
16373
16374 2009-03-01  Eric Blake  <ebb9@byu.net>
16375             Bruno Haible  <bruno@clisp.org>
16376
16377         * lib/wait-process.h (wait_subprocess): Describe effect of termsigp on
16378         error messages.
16379         * lib/wait-process.c (wait_subprocess): Omit error message about
16380         deadly signal sent to the child of termsigp != NULL.
16381
16382 2009-03-01  Eric Blake  <ebb9@byu.net>
16383
16384         * lib/wait-process.c (wait_subprocess): Remove unnecessary cast.
16385
16386 2009-03-01  Bruno Haible  <bruno@clisp.org>
16387
16388         Avoid a gcc warning.
16389         * tests/test-sched.c (b): Make global.
16390         Reported by Eric Blake.
16391
16392 2009-01-19  Martin Lambers  <marlam@marlam.de>
16393
16394         Provide POSIX semantics for socket timeout options on W32.
16395         * lib/setsockopt.c: Convert struct timeval to milliseconds on W32.
16396         * lib/getsockopt.c: Convert milliseconds to struct timeval on W32.
16397         * modules/setsockopt: Depend on sys_time module for struct timeval.
16398         * modules/getsockopt: Depend on sys_time module for struct timeval.
16399
16400 2009-03-01  Simon Josefsson  <simon@josefsson.org>
16401
16402         * lib/gai_strerror.c (values): Use EAI_INPROGRESS instead of
16403         __USE_GNU, for consistency with netdb.in.h.
16404         Reported by Alan Hourihane <alanh@fairlite.co.uk>.
16405
16406 2009-03-01  Bruno Haible  <bruno@clisp.org>
16407
16408         More support for FreeMiNT.
16409         * lib/fseeko.c (rpl_fseeko): Complete last commit.
16410         Reported by Alan Hourihane <alanh@fairlite.co.uk>.
16411
16412 2009-03-01  Bruno Haible  <bruno@clisp.org>
16413
16414         More support for FreeMiNT.
16415         * lib/fpurge.c (fpurge): Correct last commit.
16416         Reported by Alan Hourihane <alanh@fairlite.co.uk>.
16417
16418 2009-03-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
16419
16420         Fix unportable awk script in vc-list-files.
16421         * build-aux/vc-list-files: In the replacement awk script, use
16422         substr with a second argument of 1, not zero.
16423         Report by Simon Josefsson.
16424
16425 2009-02-28  Bruno Haible  <bruno@clisp.org>
16426
16427         More support for FreeMiNT.
16428         * lib/freading.c (freading) [__MINT__]: Use new macros that were added
16429         to FreeMiNT today.
16430         * lib/fwriting.c (fwriting): Likewise.
16431         Based on patch by Alan Hourihane <alanh@fairlite.co.uk>.
16432
16433 2009-02-28  Bruno Haible  <bruno@clisp.org>
16434
16435         * tests/test-freadseek.c (main): Disable test beyond end of file on
16436         FreeMiNT.
16437         * tests/test-ftello.c (main): Likewise.
16438         Patch by Alan Hourihane <alanh@fairlite.co.uk>.
16439
16440 2009-02-28  Bruno Haible  <bruno@clisp.org>
16441
16442         Add tentative support for FreeMiNT.
16443         * lib/fbufmode.c (fbufmode) [__MINT__]: Add conditional code.
16444         * lib/fpurge.c (fpurge): Likewise.
16445         * lib/freadable.c (freadable): Likewise.
16446         * lib/freading.c (freading): Likewise.
16447         * lib/freadptr.c (freadptr): Likewise.
16448         * lib/freadseek.c (freadptrinc): Likewise.
16449         * lib/fseeko.c (rpl_fseeko): Likewise.
16450         * lib/fseterr.c (fseterr): Likewise.
16451         * lib/fwritable.c (fwritable): Likewise.
16452         * lib/fwriting.c (fwriting): Likewise.
16453         * lib/freadahead.c (freadahead): Likewise, based on code by Alan
16454         Hourihane.
16455         Reported by Alan Hourihane <alanh@fairlite.co.uk>.
16456
16457 2009-02-28  Bruno Haible  <bruno@clisp.org>
16458
16459         * lib/wait-process.h (wait_subprocess): Clarify restriction regarding
16460         SIGCHLD.
16461         Reported by Jim Meyering.
16462
16463 2009-02-28  Bruno Haible  <bruno@clisp.org>
16464
16465         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_LS): Separate the two first tests.
16466         Mention the results of these tests on various platforms.
16467         * doc/posix-functions/fprintf.texi: Mention platforms in canonical
16468         order.
16469         * doc/posix-functions/printf.texi: Likewise.
16470         * doc/posix-functions/snprintf.texi: Likewise.
16471         * doc/posix-functions/sprintf.texi: Likewise.
16472         * doc/posix-functions/vfprintf.texi: Likewise.
16473         * doc/posix-functions/vprintf.texi: Likewise.
16474         * doc/posix-functions/vsnprintf.texi: Likewise.
16475         * doc/posix-functions/vsprintf.texi: Likewise.
16476         * doc/glibc-functions/obstack_printf.texi: Likewise.
16477         * doc/glibc-functions/obstack_vprintf.texi: Likewise.
16478
16479 2009-02-28  Bruno Haible  <bruno@clisp.org>
16480
16481         * build-aux/po/Makefile.in.in: Update from GNU gettext 0.17.
16482         Reported by Loïc Minier <lool@dooz.org>.
16483
16484 2009-02-27  Bruno Haible  <bruno@clisp.org>
16485
16486         * gnulib-tool (func_import): Make the sed expression used to create the
16487         sed script for updating the .gitignore file POSIX compliant.
16488         Reported by Eric Blake.
16489
16490 2009-02-27  Bruno Haible  <bruno@clisp.org>
16491
16492         * gnulib-tool (sed): Don't alias as "sed --posix".
16493         Reported by Eric Blake.
16494
16495 2009-02-27  Bruno Haible  <bruno@clisp.org>
16496
16497         Avoid test link errors.
16498         * modules/uninorm/nfc-tests (test_u32_nfc_big_LDADD): New variable.
16499         * modules/uninorm/nfd-tests (test_u32_nfd_big_LDADD): New variable.
16500         * modules/uninorm/nfkc-tests (test_u32_nfkc_big_LDADD): New variable.
16501         * modules/uninorm/nfkd-tests (test_u32_nfkd_big_LDADD): New variable.
16502         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
16503
16504 2009-02-27  Bruno Haible  <bruno@clisp.org>
16505
16506         Avoid spurious "(cached)" in configure output.
16507         * m4/gnulib-common.m4 (gl_CACHE_VAL_SILENT): New macro.
16508         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): Use it instead of AC_CACHE_VAL.
16509         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): Likewise.
16510         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): Likewise.
16511         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): Likewise.
16512         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): Likewise.
16513         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): Likewise.
16514         * m4/stdarg.m4 (gl_STDARG_H): Likewise.
16515         Reported by Eric Blake.
16516
16517 2009-02-27  Eric Blake  <ebb9@byu.net>
16518
16519         printf: fix regression in previous patch
16520         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_LS): Fix compilation error.
16521
16522 2009-02-27  Bruno Haible  <bruno@clisp.org>
16523
16524         * lib/inttypes.in.h: Test merely whether _LP64 is defined, not its
16525         value.
16526         * lib/stdint.in.h: Likewise.
16527         Suggested by Eric Blake. Reported by Peter Bray <pdb_ml@yahoo.com.au>.
16528
16529 2009-02-27  Eric Blake  <ebb9@byu.net>
16530
16531         doc: mention more functions added in cygwin 1.7.0
16532         * doc/posix-functions/mbsnrtowcs.texi: Mention recent cygwin 1.7.0
16533         addition.
16534         * doc/posix-functions/open_wmemstream.texi: Likewise.
16535         * doc/posix-functions/wcsnlen.texi: Likewise.
16536         * doc/posix-functions/wcsnrtombs.texi: Likewise.
16537         * doc/posix-functions/wcstod.texi: Likewise.
16538         * doc/posix-functions/wcstof.texi: Likewise.
16539         * doc/posix-functions/wcstoimax.texi: Likewise.
16540         * doc/posix-functions/wcstok.texi: Likewise.
16541         * doc/posix-functions/wcstoumax.texi: Likewise.
16542
16543         Detect bug in cygwin 1.5.x *printf on 1-character %ls.
16544         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_LS): Enhance filter.
16545         * doc/posix-functions/fprintf.texi: Update.
16546         * doc/posix-functions/printf.texi: Update.
16547         * doc/posix-functions/snprintf.texi: Update.
16548         * doc/posix-functions/sprintf.texi: Update.
16549         * doc/posix-functions/vfprintf.texi: Update.
16550         * doc/posix-functions/vprintf.texi: Update.
16551         * doc/posix-functions/vsnprintf.texi: Update.
16552         * doc/posix-functions/vsprintf.texi: Update.
16553         * doc/glibc-functions/obstack_printf.texi: Update.
16554         * doc/glibc-functions/obstack_vprintf.texi: Update.
16555
16556 2009-02-26  Eric Blake  <ebb9@byu.net>
16557
16558         avoid gcc 3.4.3 bug on long double NaN on Irix 6.5
16559         * tests/nan.h (NaNl): Rewrite as function on Irix, to avoid
16560         compilation bug by using runtime conversion.
16561         * m4/isfinite.m4 (gl_ISFINITE): Likewise.
16562         * m4/isnanl.m4 (gl_FUNC_ISNANL): Likewise.
16563         * modules/ceill-tests (Files): Use nan.h.
16564         * modules/floorl-tests (Files): Likewise.
16565         * modules/frexpl-tests (Files): Likewise.
16566         * modules/isnanl-tests (Files): Likewise.
16567         * modules/ldexpl-tests (Files): Likewise.
16568         * modules/roundl-tests (Files): Likewise.
16569         * modules/truncl-tests (Files): Likewise.
16570         * tests/test-ceill.c (main): Use a working NaN.
16571         * tests/test-floorl.c (main): Likewise.
16572         * tests/test-frexpl.c (main): Likewise.
16573         * tests/test-isnan.c (test_long_double): Likewise.
16574         * tests/test-isnanl.h (main): Likewise.
16575         * tests/test-ldexpl.h (main): Likewise.
16576         * tests/test-roundl.h (main): Likewise.
16577         * tests/test-truncl.h (main): Likewise.
16578         See http://lists.gnu.org/archive/html/bug-gnulib/2009-02/msg00190.html.
16579
16580 2009-02-26  Eric Blake  <ebb9@byu.net>
16581             Bruno Haible  <bruno@clisp.org>
16582
16583         Work around a *printf bug with %ls on Solaris.
16584         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_LS): Also test whether, when a
16585         precision is specified, sprintf stops converting the wide string
16586         argument when the number of bytes that have been produced by this
16587         conversion equals or exceeds the precision.
16588         * doc/posix-functions/fprintf.texi: Update.
16589         * doc/posix-functions/printf.texi: Update.
16590         * doc/posix-functions/snprintf.texi: Update.
16591         * doc/posix-functions/sprintf.texi: Update.
16592         * doc/posix-functions/vfprintf.texi: Update.
16593         * doc/posix-functions/vprintf.texi: Update.
16594         * doc/posix-functions/vsnprintf.texi: Update.
16595         * doc/posix-functions/vsprintf.texi: Update.
16596         * doc/glibc-functions/obstack_printf.texi: Update.
16597         * doc/glibc-functions/obstack_vprintf.texi: Update.
16598
16599 2009-02-26  Eric Blake  <ebb9@byu.net>
16600
16601         stdlib: favor compiler check of random.h
16602         * m4/stdlib_h.m4 (gl_STDLIB_H): Skip preprocessor check.  Needed
16603         to avoid an ObjC random.h installed by Swarm.
16604
16605 2009-02-26  Bruno Haible  <bruno@clisp.org>
16606
16607         Work around *printf bug with %g directive and 0.0 on HP-UX 10.20.
16608         * m4/printf.m4 (gl_PRINTF_INFINITE): Also test for %g output of -0.0.
16609         Reported by Gary V. Vaughan <gary@gnu.org>.
16610
16611 2009-02-26  Bruno Haible  <bruno@clisp.org>
16612
16613         Fix *printf behaviour regarding the %ls directive.
16614         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_LS): New macro.
16615         * lib/vasnprintf.c (local_wcslen, VASNPRINTF): Handle
16616         NEED_PRINTF_DIRECTIVE_LS.
16617         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_LS): New macro.
16618         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
16619         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
16620         gl_PREREQ_VASNPRINTF_DIRECTIVE_LS and test its result. Invoke
16621         gl_PREREQ_VASNPRINTF_DIRECTIVE_LS.
16622         * m4/dprintf-posix.m4 (gl_FUNC_DPRINTF_POSIX): Likewise.
16623         * m4/obstack-printf-posix.m4 (gl_FUNC_OBSTACK_PRINTF_POSIX): Likewise.
16624         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
16625         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
16626         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
16627         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
16628         * m4/vdprintf-posix.m4 (gl_FUNC_VDPRINTF_POSIX): Likewise.
16629         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
16630         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
16631         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
16632         * doc/posix-functions/fprintf.texi: Update.
16633         * doc/posix-functions/printf.texi: Update.
16634         * doc/posix-functions/snprintf.texi: Update.
16635         * doc/posix-functions/sprintf.texi: Update.
16636         * doc/posix-functions/vfprintf.texi: Update.
16637         * doc/posix-functions/vprintf.texi: Update.
16638         * doc/posix-functions/vsnprintf.texi: Update.
16639         * doc/posix-functions/vsprintf.texi: Update.
16640         * doc/glibc-functions/obstack_printf.texi: Update.
16641         * doc/glibc-functions/obstack_vprintf.texi: Update.
16642         Reported by Eric Blake.
16643
16644 2009-02-25  Bruno Haible  <bruno@clisp.org>
16645
16646         * m4/mbrtowc.m4 (gl_MBRTOWC_NUL_RETVAL): Update guess for Solaris 8
16647         with known value.
16648         Reported by Gary V. Vaughan <gary@gnu.org>.
16649
16650 2009-02-25  Bruno Haible  <bruno@clisp.org>
16651
16652         Work around mbrtowc bug in zh_CN.GB18030 locale on Solaris 8.
16653         * m4/mbrtowc.m4 (gl_MBRTOWC_SANITYCHECK): New macro.
16654         (gl_MBSTATE_T_BROKEN): Invoke it. Replace mbstate_t when it says "no".
16655         * doc/posix-functions/mbrtowc.texi: Document the Solaris 8 bug.
16656         Reported by Gary V. Vaughan <gary@gnu.org>.
16657
16658 2009-02-25  Bruno Haible  <bruno@clisp.org>
16659
16660         Work around broken INT8_MAX, UINT8_MAX etc. values on HP-UX 11.23.
16661         * m4/stdint.m4 (gl_STDINT_H): Also check whether the expansions of
16662         INT8_MAX, UINT8_MAX etc. contain casts to elementary types.
16663         * doc/posix-headers/stdint.texi: Mention the HP-UX bug.
16664         Reported by Gary V. Vaughan <gary@gnu.org>.
16665
16666 2009-02-25  Eric Blake  <ebb9@byu.net>
16667
16668         tests: skip fseek/ftell tests if ungetc is broken
16669         * m4/ungetc.m4: New file.
16670         * modules/fseek-tests: Split test, so ungetc dependency is
16671         separate from rest of test.
16672         * modules/fseeko-tests: Likewise.
16673         * modules/ftell-tests: Likewise.
16674         * modules/ftello-tests: Likewise.
16675         * tests/test-fseek.c (main): Isolate ungetc dependency.
16676         * tests/test-fseeko.c (main): Likewise.
16677         * tests/test-ftell.c (main): Likewise.
16678         * tests/test-ftello.c (main): Likewise.
16679         * tests/test-fseek2.sh: New file.
16680         * tests/test-fseeko2.sh: Likewise.
16681         * tests/test-ftell2.sh: Likewise.
16682         * tests/test-ftello2.sh: Likewise.
16683
16684 2009-02-25  Ondřej Vašík  <ovasik@redhat.com>
16685
16686         test-getaddrinfo: fix usage of skip return code 77
16687         * tests/test-gettaddrinfo.c: Return skip code 77 only
16688         for first occurance of skip (4x77 is not 77)
16689
16690 2009-02-25  Gary V. Vaughan  <gary@gnu.org>
16691
16692         strtod: avoid C99 decl-after-statement
16693         * m4/strtod.m4 (gl_FUNC_STRTOD): Rearrange declaration.
16694
16695 2009-02-24  Eric Blake  <ebb9@byu.net>
16696
16697         strtod: detect HP-UX 11.31 bug
16698         * m4/strtod.m4 (gl_FUNC_STRTOD): Detect errno handling bug.
16699         Reported by Gary V. Vaughan.
16700
16701 2009-02-23  Bruno Haible  <bruno@clisp.org>
16702
16703         Fix invalid read past end of memory block.
16704         * lib/vasnprintf.c (DCHAR_SET): Define.
16705         (local_wcslen): Define only when needed.
16706         (local_strnlen, local_wcsnlen): New functions.
16707         (VASNPRINTF) [!USE_SNPRINTF && HAVE_WCHAR_T]: Implement the %s and %ls
16708         directives that involve a conversion ourselves.
16709         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Also check for strnlen,
16710         wcsnlen, mbrtowc, wcrtomb.
16711         * tests/test-vasnprintf-posix.c (test_function): Add tests for %.*s.
16712         * tests/test-vasprintf-posix.c (test_function): Likewise.
16713         * tests/test-snprintf-posix.h (test_function): Likewise.
16714         * tests/test-sprintf-posix.h (test_function): Likewise.
16715         Reported by Ben Pfaff <blp@cs.stanford.edu>.
16716
16717 2009-02-22  Bruno Haible  <bruno@clisp.org>
16718
16719         Implement new clarified decomposition of Hangul syllables.
16720         * lib/uninorm/decomposition.c (uc_decomposition): For Hangul syllables
16721         of type LTV, return only a pairwise decomposition.
16722         * lib/uninorm/canonical-decomposition.c (uc_canonical_decomposition):
16723         Likewise.
16724         * tests/uninorm/test-decomposition.c (main): Updated expected result.
16725         * tests/uninorm/test-canonical-decomposition.c (main): Likewise.
16726         * tests/uninorm/test-compat-decomposition.c (main): Likewise.
16727
16728 2009-02-22  Bruno Haible  <bruno@clisp.org>
16729
16730         * lib/uninorm/u-normalize-internal.h (FUNC): At the end, handle
16731         zero-length results and shrink excess allocated memory.
16732         * tests/uninorm/test-u8-nfc.c (test_u8_nfc): Check empty string result.
16733         * tests/uninorm/test-u8-nfd.c (test_u8_nfd): Likewise.
16734         * tests/uninorm/test-u8-nfkc.c (test_u8_nfkc): Likewise.
16735         * tests/uninorm/test-u8-nfkd.c (test_u8_nfkd): Likewise.
16736         * tests/uninorm/test-u16-nfc.c (test_u16_nfc): Likewise.
16737         * tests/uninorm/test-u16-nfd.c (test_u16_nfd): Likewise.
16738         * tests/uninorm/test-u16-nfkc.c (test_u16_nfkc): Likewise.
16739         * tests/uninorm/test-u16-nfkd.c (test_u16_nfkd): Likewise.
16740         * tests/uninorm/test-u32-nfc.c (test_u32_nfc): Likewise.
16741         * tests/uninorm/test-u32-nfd.c (test_u32_nfd): Likewise.
16742         * tests/uninorm/test-u32-nfkc.c (test_u32_nfkc): Likewise.
16743         * tests/uninorm/test-u32-nfkd.c (test_u32_nfkd): Likewise.
16744
16745 2009-02-21  Bruno Haible  <bruno@clisp.org>
16746
16747         * doc/gnulib.texi: Include safe-alloc.texi earlier.
16748         * doc/safe-alloc.texi: Terminate sentences with a period. Use two
16749         spaces after a period. Put a space between a macro name and its
16750         argument list. Trivial rewordings.
16751         * lib/safe-alloc.c: Include safe-alloc.h right after config.h.
16752         * tests/test-safe-alloc.c: Likewise. Include stdlib.h.
16753         (main): Return 0 explicitly.
16754
16755 2009-02-21  Bruno Haible  <bruno@clisp.org>
16756
16757         Tests for module 'uninorm/filter'.
16758         * tests/uninorm/test-uninorm-filter-nfc.c: New file.
16759         * modules/uninorm/filter-tests: New file.
16760
16761         New module 'uninorm/filter'.
16762         * lib/uninorm.h (uninorm_filter_create, uninorm_filter_write,
16763         uninorm_filter_flush, uninorm_filter_free): New declarations.
16764         * lib/uninorm/uninorm-filter.c: New file.
16765         * modules/uninorm/filter: New file.
16766
16767 2009-02-21  Bruno Haible  <bruno@clisp.org>
16768
16769         Tests for module 'uninorm/nfkc'.
16770         * tests/uninorm/test-nfkc.c: New file.
16771         * tests/uninorm/test-u8-nfkc.c: New file.
16772         * tests/uninorm/test-u16-nfkc.c: New file.
16773         * tests/uninorm/test-u32-nfkc.c: New file.
16774         * tests/uninorm/test-u32-nfkc-big.sh: New file.
16775         * tests/uninorm/test-u32-nfkc-big.c: New file.
16776         * modules/uninorm/nfkc-tests: New file.
16777
16778         New module 'uninorm/nfkc'.
16779         * lib/uninorm/nfkc.c: New file.
16780         * modules/uninorm/nfkc: New file.
16781
16782         Tests for module 'uninorm/nfkd'.
16783         * tests/uninorm/test-nfkd.c: New file.
16784         * tests/uninorm/test-u8-nfkd.c: New file.
16785         * tests/uninorm/test-u16-nfkd.c: New file.
16786         * tests/uninorm/test-u32-nfkd.c: New file.
16787         * tests/uninorm/test-u32-nfkd-big.sh: New file.
16788         * tests/uninorm/test-u32-nfkd-big.c: New file.
16789         * modules/uninorm/nfkd-tests: New file.
16790
16791         New module 'uninorm/nfkd'.
16792         * lib/uninorm/nfkd.c: New file.
16793         * modules/uninorm/nfkd: New file.
16794
16795         Tests for module 'uninorm/nfc'.
16796         * tests/uninorm/test-nfc.c: New file.
16797         * tests/uninorm/test-u8-nfc.c: New file.
16798         * tests/uninorm/test-u16-nfc.c: New file.
16799         * tests/uninorm/test-u32-nfc.c: New file.
16800         * tests/uninorm/test-u32-nfc-big.sh: New file.
16801         * tests/uninorm/test-u32-nfc-big.c: New file.
16802         * modules/uninorm/nfc-tests: New file.
16803
16804         New module 'uninorm/nfc'.
16805         * lib/uninorm/nfc.c: New file.
16806         * modules/uninorm/nfc: New file.
16807
16808         Tests for module 'uninorm/nfd'.
16809         * tests/uninorm/test-nfd.c: New file.
16810         * tests/uninorm/test-u8-nfd.c: New file.
16811         * tests/uninorm/test-u16-nfd.c: New file.
16812         * tests/uninorm/test-u32-nfd.c: New file.
16813         * tests/uninorm/test-u32-nfd-big.sh: New file.
16814         * tests/uninorm/test-u32-nfd-big.c: New file.
16815         * tests/uninorm/test-u32-normalize-big.h: New file.
16816         * tests/uninorm/test-u32-normalize-big.c: New file.
16817         * tests/uninorm/NormalizationTest.txt: New file, created from
16818         Unicode 5.1.0 NormalizationTest.txt.
16819         * modules/uninorm/nfd-tests: New file.
16820
16821         New module 'uninorm/nfd'.
16822         * lib/uninorm/nfd.c: New file.
16823         * modules/uninorm/nfd: New file.
16824
16825         New module 'uninorm/u32-normalize'.
16826         * lib/uninorm/u32-normalize.c: New file.
16827         * modules/uninorm/u32-normalize: New file.
16828
16829         New module 'uninorm/u16-normalize'.
16830         * lib/uninorm/u16-normalize.c: New file.
16831         * modules/uninorm/u16-normalize: New file.
16832
16833         New module 'uninorm/u8-normalize'.
16834         * lib/uninorm/u8-normalize.c: New file.
16835         * lib/uninorm/normalize-internal.h: New file.
16836         * lib/uninorm/u-normalize-internal.h: New file.
16837         * modules/uninorm/u8-normalize: New file.
16838
16839         New module 'uninorm/decompose-internal'.
16840         * lib/uninorm/decompose-internal.c: New file.
16841         * modules/uninorm/decompose-internal: New file.
16842
16843         Tests for module 'uninorm/composition'.
16844         * tests/uninorm/test-composition.c: New file.
16845         * modules/uninorm/composition-tests: New file.
16846
16847         New module 'uninorm/composition'.
16848         * lib/uninorm/composition.c: New file.
16849         * lib/uninorm/composition-table.gperf: New file, generated by
16850         gen-uni-tables.
16851         * modules/uninorm/composition: New file.
16852
16853         Tests for module 'uninorm/compat-decomposition'.
16854         * tests/uninorm/test-compat-decomposition.c: New file.
16855         * modules/uninorm/compat-decomposition-tests: New file.
16856
16857         New module 'uninorm/compat-decomposition'.
16858         * lib/uninorm/decompose-internal.h: New file.
16859         * lib/uninorm/compat-decomposition.c: New file.
16860         * modules/uninorm/compat-decomposition: New file.
16861
16862         Tests for module 'uninorm/canonical-decomposition'.
16863         * tests/uninorm/test-canonical-decomposition.c: New file.
16864         * modules/uninorm/canonical-decomposition-tests: New file.
16865
16866         New module 'uninorm/canonical-decomposition'.
16867         * lib/uninorm/canonical-decomposition.c: New file.
16868         * modules/uninorm/canonical-decomposition: New file.
16869
16870         Tests for module 'uninorm/decomposition'.
16871         * tests/uninorm/test-decomposition.c: New file.
16872         * modules/uninorm/decomposition-tests: New file.
16873
16874         New module 'uninorm/decomposition'.
16875         * lib/uninorm/decomposition.c: New file.
16876         * modules/uninorm/decomposition: New file.
16877
16878         New module 'uninorm/decomposition-table'.
16879         * lib/uninorm/decomposition-table.h: New file.
16880         * lib/uninorm/decomposition-table.c: New file.
16881         * lib/uninorm/decomposition-table1.h: New file, generated by
16882         gen-uni-tables.
16883         * lib/uninorm/decomposition-table2.h: New file, generated by
16884         gen-uni-tables.
16885         * modules/uninorm/decomposition-table: New file.
16886
16887         * lib/gen-uni-tables.c (MAX_DECOMP_LENGTH): New macro.
16888         (UC_DECOMP_*): New enumeration items.
16889         (get_decomposition): New function.
16890         (struct decomp_table): New type.
16891         (output_decomposition, output_decomposition_tables): New functions.
16892         (unicode_composition_exclusions): New variable.
16893         (fill_composition_exclusions, debug_output_composition_tables): New
16894         functions.
16895         (main): Accept one more argument. Invoke fill_composition_exclusions.
16896         Output decomposition and composition tables.
16897
16898         New module 'uninorm/base'.
16899         * lib/uninorm.h: New file.
16900         * lib/unictype.h: Update comment.
16901         * modules/uninorm/base: New file.
16902
16903 2009-02-21  David Lutterkort  <lutter@redhat.com>
16904
16905         Tests for module 'safe-alloc'.
16906         * tests/test-safe-alloc.c: New file.
16907         * modules/safe-alloc-tests: New file.
16908
16909         New module 'safe-alloc'.
16910         * lib/safe-alloc.h: New file.
16911         * lib/safe-alloc.c: New file.
16912         * m4/safe-alloc.m4: New file.
16913         * modules/safe-alloc: New file.
16914         * doc/safe-alloc.texi: New file.
16915         * doc/gnulib.texi: Include it.
16916         * MODULES.html.sh (Memory management functions <stdlib.h>): Add
16917         safe-alloc.
16918
16919 2009-02-18  Bruno Haible  <bruno@clisp.org>
16920
16921         Fix link error on non-glibc systems.
16922         * modules/uniwbrk/ulc-wordbreaks-tests (test_ulc_wordbreaks_LDADD): New
16923         variable.
16924         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
16925
16926 2009-02-18  Jim Meyering  <meyering@redhat.com>
16927
16928         fts: avoid used-uninitialized error due to recent change
16929         * lib/fts.c (fts_read): Guard uses of the new member,
16930         parent->fts_n_dirs_remaining, since it's not relevant for
16931         the parent of a directory specified on the command-line.
16932
16933 2009-02-17  James Youngman  <jay@gnu.org>
16934             Bruno Haible  <bruno@clisp.org>
16935
16936         * m4/include_next.m4: Reformulate comment.
16937
16938 2009-02-16  Jim Meyering  <meyering@redhat.com>
16939
16940         fts: add #if guards so that the fts_lgpl module still builds
16941         * lib/fts.c: Guard just-added hash-table-using parts with
16942         #if GNULIB_FTS, so as not to break builds of the fts_lgpl module.
16943         Reported by Simon Josefsson.
16944
16945 2009-02-15  Bruno Haible  <bruno@clisp.org>
16946
16947         * modules/array-mergesort-tests: New file.
16948         * tests/test-array-mergesort.c: New file.
16949
16950         New module 'array-mergesort'.
16951         * modules/array-mergesort: New file.
16952         * lib/array-mergesort.h: New file.
16953
16954 2009-02-15  Bruno Haible  <bruno@clisp.org>
16955
16956         Fix 2009-02-07 commit.
16957         * lib/gen-uni-tables.c (output_predicate, output_category,
16958         output_combclass, output_bidi_category, output_decimal_digit,
16959         output_digit, output_numeric, output_mirror, output_scripts,
16960         output_ident_category, output_simple_mapping): Fix format directives.
16961         (output_lbp, output_wbp): Don't convert -1 to a size_t implicitly.
16962
16963 2009-02-15  Albert Chin-A-Young  <china@thewrittenword.com>
16964
16965         * m4/include_next.m4: Update comment about IBM C 9.0/10.1 bug, now that
16966         fixes are available from IBM.
16967
16968 2009-02-13  Jim Meyering  <meyering@redhat.com>
16969
16970         fts: arrange not to stat non-directories in more cases
16971         This makes GNU find (when it doesn't need to stat each file)
16972         *much* more efficient at traversing reiserfs file systems.
16973         * lib/fts_.h (struct ftsent) [fts_n_dirs_remaining]: New member.
16974         (struct FTS) [fts_leaf_optimization_works_ht]: Add member.
16975         * lib/fts.c (fts_close): Free ->fts_leaf_optimization_works_ht.
16976         (S_MAGIC_REISERFS, S_MAGIC_PROC): Define.
16977         (leaf_optimization_applies): New function.
16978         (LCO_hash, LCO_compare): New helper functions.
16979         (link_count_optimize_ok): New function.
16980         (fts_stat): Initialize new member (if dir).
16981         (fts_read): Decrement parent's fts_n_dirs_remaining count if
16982         we've just stat'ed a directory.  Skip the stat call when possible.
16983         ---
16984         Note this AFS-related exchange:
16985         http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=143111
16986         and note find's pioctl call in find/fstype.c.
16987         But that is necessary only if you want to enable the
16988         optimization for AFS, and for now, I don't.
16989
16990         fts: move a function definition "up" (no semantic change)
16991         * lib/fts.c (dirent_inode_sort_may_be_useful): Move definition
16992         "up" to precede upcoming use of a related function.
16993
16994 2009-02-11  Jim Meyering  <meyering@redhat.com>
16995
16996         fts: correct internal computation of nlinks (optimization-related)
16997         * lib/fts.c (fts_build): ISSET(FTS_NOSTAT) has no bearing on
16998         whether the current entry is a directory, so don't test it.
16999
17000 2009-02-10  Bruno Haible  <bruno@clisp.org>
17001
17002         Tests for module 'uniwbrk/ulc-wordbreaks'.
17003         * modules/uniwbrk/ulc-wordbreaks-tests: New file.
17004         * tests/uniwbrk/test-ulc-wordbreaks.sh: New file.
17005         * tests/uniwbrk/test-ulc-wordbreaks.c: New file.
17006
17007         Tests for module 'uniwbrk/u32-wordbreaks'.
17008         * modules/uniwbrk/u32-wordbreaks-tests: New file.
17009         * tests/uniwbrk/test-u32-wordbreaks.c: New file.
17010
17011         Tests for module 'uniwbrk/u16-wordbreaks'.
17012         * modules/uniwbrk/u16-wordbreaks-tests: New file.
17013         * tests/uniwbrk/test-u16-wordbreaks.c: New file.
17014
17015         Tests for module 'uniwbrk/u8-wordbreaks'.
17016         * modules/uniwbrk/u8-wordbreaks-tests: New file.
17017         * tests/uniwbrk/test-u8-wordbreaks.c: New file.
17018
17019 2009-02-10  Bruno Haible  <bruno@clisp.org>
17020
17021         * modules/uniwbrk/u8-wordbreaks (Depends-on): Add uniwbrk/wordbreak
17022         property.
17023         * modules/uniwbrk/u16-wordbreaks (Depends-on): Likewise.
17024         * modules/uniwbrk/u32-wordbreaks (Depends-on): Likewise.
17025         * modules/uniwbrk/ulc-wordbreaks (Depends-on): Add localcharset.
17026
17027 2009-02-10  Simon Josefsson  <simon@josefsson.org>
17028
17029         * m4/sockets.m4: Call AC_C_INLINE since sockets.h now can use
17030         inline keywords.  Reported by Bruno Haible <bruno@clisp.org>.
17031
17032 2009-02-10  Bruno Haible  <bruno@clisp.org>
17033
17034         * lib/unilbrk/lbrktables.h: Renamed from lib/unilbrk/tables.h.
17035         * lib/unilbrk/lbrktables.c: Renamed from lib/unilbrk/tables.c.
17036         * modules/unilbrk/tables (Files, Makefile.am, Include): Update.
17037         * lib/unilbrk/u8-possible-linebreaks.c: Update.
17038         * lib/unilbrk/u16-possible-linebreaks.c: Likewise.
17039         * lib/unilbrk/u32-possible-linebreaks.c: Likewise.
17040
17041 2009-02-09  Simon Josefsson  <simon@josefsson.org>
17042
17043         * lib/sockets.h (gl_fd_to_handle): New function.
17044
17045         * tests/test-sockets.c: Call gl_fd_to_handle.
17046
17047 2009-02-09  Bruno Haible  <bruno@clisp.org>
17048
17049         * doc/havelib.texi: Document the conventions on bi-arch systems.
17050
17051 2009-02-08  Bruno Haible  <bruno@clisp.org>
17052
17053         Document the AC_LIB_LINKFLAGS macro.
17054         * doc/havelib.texi: New file, mostly written on 2005-05-24.
17055         * doc/gnulib.texi: Include it.
17056
17057 2009-02-08  Bruno Haible  <bruno@clisp.org>
17058
17059         Fix wrong order of sections, compared to TOC.
17060         * doc/gnulib.texi: Include relocatable-maint.texi after the
17061         "Regular expressions" node, not before.
17062
17063 2009-02-08  Bruno Haible  <bruno@clisp.org>
17064
17065         Tests for module 'unicase/totitle'.
17066         * modules/unicase/totitle-tests: New file.
17067
17068         Tests for module 'unicase/tolower'.
17069         * modules/unicase/tolower-tests: New file.
17070
17071         Tests for module 'unicase/toupper'.
17072         * modules/unicase/toupper-tests: New file.
17073         * tests/unicase/test-mapping-part1.h: New file.
17074         * tests/unicase/test-mapping-part2.h: New file.
17075
17076         New module 'unicase/totitle'.
17077         * modules/unicase/totitle: New file.
17078         * lib/unicase/totitle.c: New file.
17079
17080         New module 'unicase/tolower'.
17081         * modules/unicase/tolower: New file.
17082         * lib/unicase/tolower.c: New file.
17083
17084         New module 'unicase/toupper'.
17085         * modules/unicase/toupper: New file.
17086         * lib/unicase/toupper.c: New file.
17087         * lib/unicase/simple-mapping.h: New file.
17088
17089         * lib/gen-uni-tables.c (output_simple_mapping_test): New function.
17090         (mapping_table): New structure.
17091         (output_simple_mapping): New function.
17092         (main): Invoke output_simple_mapping_test and output_simple_mapping.
17093         * modules/gen-uni-tables (Description): Update.
17094         * lib/unicase/toupper.h: New file, automatically generated by
17095         gen-uni-tables.
17096         * lib/unicase/tolower.h: New file, automatically generated by
17097         gen-uni-tables.
17098         * lib/unicase/totitle.h: New file, automatically generated by
17099         gen-uni-tables.
17100         * tests/unicase/test-uc_toupper.c: New file, automatically generated by
17101         gen-uni-tables.
17102         * tests/unicase/test-uc_tolower.c: New file, automatically generated by
17103         gen-uni-tables.
17104         * tests/unicase/test-uc_totitle.c: New file, automatically generated by
17105         gen-uni-tables.
17106
17107         New module 'unicase/base'.
17108         * modules/unicase/base: New file.
17109         * lib/unicase.h: New file.
17110
17111 2009-02-08  Bruno Haible  <bruno@clisp.org>
17112
17113         New module 'uniwbrk/ulc-wordbreaks'.
17114         * modules/uniwbrk/ulc-wordbreaks: New file.
17115         * lib/uniwbrk/ulc-wordbreaks.c: New file.
17116
17117         New module 'uniwbrk/u32-wordbreaks'.
17118         * modules/uniwbrk/u32-wordbreaks: New file.
17119         * lib/uniwbrk/u32-wordbreaks.c: New file.
17120
17121         New module 'uniwbrk/u16-wordbreaks'.
17122         * modules/uniwbrk/u16-wordbreaks: New file.
17123         * lib/uniwbrk/u16-wordbreaks.c: New file.
17124
17125         New module 'uniwbrk/u8-wordbreaks'.
17126         * modules/uniwbrk/u8-wordbreaks: New file.
17127         * lib/uniwbrk/u8-wordbreaks.c: New file.
17128         * lib/uniwbrk/u-wordbreaks.h: New file.
17129
17130         New module 'uniwbrk/table'.
17131         * modules/uniwbrk/table: New file.
17132         * lib/uniwbrk/wbrktable.h: New file.
17133         * lib/uniwbrk/wbrktable.c: New file.
17134
17135         New module 'uniwbrk/wordbreak-property'.
17136         * modules/uniwbrk/wordbreak-property: New file.
17137         * lib/uniwbrk/wordbreak-property.c: New file.
17138
17139         * lib/gen-uni-tables.c (WBP_*): New enum items.
17140         (get_wbp, debug_output_wbp, debug_output_wbrk_tables): New functions.
17141         (unicode_org_wbp): New variable.
17142         (fill_org_wbp, debug_output_org_wbp, debug_output_org_wbrk_tables):
17143         New functions.
17144         (wbp_table): New structure.
17145         (output_wbp, output_wbrk_tables): New functions.
17146         (main): Accept additional argument. Invoke fill_org_wbp,
17147         debug_output_wbrk_tables, debug_output_org_wbrk_tables,
17148         output_wbrk_tables.
17149         * modules/gen-uni-tables (Description): Update.
17150         * lib/uniwbrk/wbrkprop.h: New file, automatically generated by
17151         gen-uni-tables.
17152
17153         New module 'uniwbrk/base'.
17154         * modules/uniwbrk/base: New file.
17155         * lib/uniwbrk.h: New file.
17156
17157 2009-02-08  Bruno Haible  <bruno@clisp.org>
17158
17159         Update to Unicode 5.1.0.
17160         * lib/gen-uni-tables.c (is_property_alphabetic): Include
17161         U+2185..U+2188.
17162         (is_property_default_ignorable_code_point): Don't include characters
17163         of category Cc or Cs and not-a-characters.
17164         (get_lbp): Assume REVISION_22. Special handling of U+0609, U+060A,
17165         U+0D79, U+109E, U+109F, U+A60C.
17166         * lib/unictype/bidi_of.h: Regenerated.
17167         * lib/unictype/blocks.h: Regenerated.
17168         * lib/unictype/categ_C.h: Regenerated.
17169         * lib/unictype/categ_Cf.h: Regenerated.
17170         * lib/unictype/categ_Cn.h: Regenerated.
17171         * lib/unictype/categ_L.h: Regenerated.
17172         * lib/unictype/categ_Ll.h: Regenerated.
17173         * lib/unictype/categ_Lm.h: Regenerated.
17174         * lib/unictype/categ_Lo.h: Regenerated.
17175         * lib/unictype/categ_Lu.h: Regenerated.
17176         * lib/unictype/categ_M.h: Regenerated.
17177         * lib/unictype/categ_Mc.h: Regenerated.
17178         * lib/unictype/categ_Me.h: Regenerated.
17179         * lib/unictype/categ_Mn.h: Regenerated.
17180         * lib/unictype/categ_N.h: Regenerated.
17181         * lib/unictype/categ_Nd.h: Regenerated.
17182         * lib/unictype/categ_Nl.h: Regenerated.
17183         * lib/unictype/categ_No.h: Regenerated.
17184         * lib/unictype/categ_P.h: Regenerated.
17185         * lib/unictype/categ_Pd.h: Regenerated.
17186         * lib/unictype/categ_Pe.h: Regenerated.
17187         * lib/unictype/categ_Pf.h: Regenerated.
17188         * lib/unictype/categ_Pi.h: Regenerated.
17189         * lib/unictype/categ_Po.h: Regenerated.
17190         * lib/unictype/categ_Ps.h: Regenerated.
17191         * lib/unictype/categ_S.h: Regenerated.
17192         * lib/unictype/categ_Sk.h: Regenerated.
17193         * lib/unictype/categ_Sm.h: Regenerated.
17194         * lib/unictype/categ_So.h: Regenerated.
17195         * lib/unictype/categ_of.h: Regenerated.
17196         * lib/unictype/combining.h: Regenerated.
17197         * lib/unictype/ctype_alnum.h: Regenerated.
17198         * lib/unictype/ctype_alpha.h: Regenerated.
17199         * lib/unictype/ctype_graph.h: Regenerated.
17200         * lib/unictype/ctype_lower.h: Regenerated.
17201         * lib/unictype/ctype_print.h: Regenerated.
17202         * lib/unictype/ctype_punct.h: Regenerated.
17203         * lib/unictype/ctype_upper.h: Regenerated.
17204         * lib/unictype/decdigit.h: Regenerated.
17205         * lib/unictype/digit.h: Regenerated.
17206         * lib/unictype/mirror.h: Regenerated.
17207         * lib/unictype/numeric.h: Regenerated.
17208         * lib/unictype/pr_alphabetic.h: Regenerated.
17209         * lib/unictype/pr_bidi_arabic_digit.h: Regenerated.
17210         * lib/unictype/pr_bidi_arabic_right_to_left.h: Regenerated.
17211         * lib/unictype/pr_bidi_boundary_neutral.h: Regenerated.
17212         * lib/unictype/pr_bidi_eur_num_terminator.h: Regenerated.
17213         * lib/unictype/pr_bidi_left_to_right.h: Regenerated.
17214         * lib/unictype/pr_bidi_non_spacing_mark.h: Regenerated.
17215         * lib/unictype/pr_bidi_other_neutral.h: Regenerated.
17216         * lib/unictype/pr_combining.h: Regenerated.
17217         * lib/unictype/pr_dash.h: Regenerated.
17218         * lib/unictype/pr_decimal_digit.h: Regenerated.
17219         * lib/unictype/pr_default_ignorable_code_point.h: Regenerated.
17220         * lib/unictype/pr_deprecated.h: Regenerated.
17221         * lib/unictype/pr_diacritic.h: Regenerated.
17222         * lib/unictype/pr_extender.h: Regenerated.
17223         * lib/unictype/pr_format_control.h: Regenerated.
17224         * lib/unictype/pr_grapheme_base.h: Regenerated.
17225         * lib/unictype/pr_grapheme_extend.h: Regenerated.
17226         * lib/unictype/pr_grapheme_link.h: Regenerated.
17227         * lib/unictype/pr_id_continue.h: Regenerated.
17228         * lib/unictype/pr_id_start.h: Regenerated.
17229         * lib/unictype/pr_ideographic.h: Regenerated.
17230         * lib/unictype/pr_ignorable_control.h: Regenerated.
17231         * lib/unictype/pr_lowercase.h: Regenerated.
17232         * lib/unictype/pr_math.h: Regenerated.
17233         * lib/unictype/pr_numeric.h: Regenerated.
17234         * lib/unictype/pr_other_alphabetic.h: Regenerated.
17235         * lib/unictype/pr_other_default_ignorable_code_point.h: Regenerated.
17236         * lib/unictype/pr_other_grapheme_extend.h: Regenerated.
17237         * lib/unictype/pr_other_id_continue.h: Regenerated.
17238         * lib/unictype/pr_other_lowercase.h: Regenerated.
17239         * lib/unictype/pr_other_math.h: Regenerated.
17240         * lib/unictype/pr_punctuation.h: Regenerated.
17241         * lib/unictype/pr_sentence_terminal.h: Regenerated.
17242         * lib/unictype/pr_soft_dotted.h: Regenerated.
17243         * lib/unictype/pr_terminal_punctuation.h: Regenerated.
17244         * lib/unictype/pr_unassigned_code_value.h: Regenerated.
17245         * lib/unictype/pr_unified_ideograph.h: Regenerated.
17246         * lib/unictype/pr_uppercase.h: Regenerated.
17247         * lib/unictype/pr_xid_continue.h: Regenerated.
17248         * lib/unictype/pr_xid_start.h: Regenerated.
17249         * lib/unictype/pr_zero_width.h: Regenerated.
17250         * lib/unictype/scripts.h: Regenerated.
17251         * lib/unictype/scripts_byname.gperf: Regenerated.
17252         * lib/unictype/sy_java_ident.h: Regenerated.
17253         * lib/unilbrk/lbrkprop1.h: Regenerated.
17254         * lib/unilbrk/lbrkprop2.h: Regenerated.
17255         * tests/unictype/test-categ_C.c: Regenerated.
17256         * tests/unictype/test-categ_Cf.c: Regenerated.
17257         * tests/unictype/test-categ_Cn.c: Regenerated.
17258         * tests/unictype/test-categ_L.c: Regenerated.
17259         * tests/unictype/test-categ_Ll.c: Regenerated.
17260         * tests/unictype/test-categ_Lm.c: Regenerated.
17261         * tests/unictype/test-categ_Lo.c: Regenerated.
17262         * tests/unictype/test-categ_Lu.c: Regenerated.
17263         * tests/unictype/test-categ_M.c: Regenerated.
17264         * tests/unictype/test-categ_Mc.c: Regenerated.
17265         * tests/unictype/test-categ_Me.c: Regenerated.
17266         * tests/unictype/test-categ_Mn.c: Regenerated.
17267         * tests/unictype/test-categ_N.c: Regenerated.
17268         * tests/unictype/test-categ_Nd.c: Regenerated.
17269         * tests/unictype/test-categ_Nl.c: Regenerated.
17270         * tests/unictype/test-categ_No.c: Regenerated.
17271         * tests/unictype/test-categ_P.c: Regenerated.
17272         * tests/unictype/test-categ_Pd.c: Regenerated.
17273         * tests/unictype/test-categ_Pe.c: Regenerated.
17274         * tests/unictype/test-categ_Pf.c: Regenerated.
17275         * tests/unictype/test-categ_Pi.c: Regenerated.
17276         * tests/unictype/test-categ_Po.c: Regenerated.
17277         * tests/unictype/test-categ_Ps.c: Regenerated.
17278         * tests/unictype/test-categ_S.c: Regenerated.
17279         * tests/unictype/test-categ_Sk.c: Regenerated.
17280         * tests/unictype/test-categ_Sm.c: Regenerated.
17281         * tests/unictype/test-categ_So.c: Regenerated.
17282         * tests/unictype/test-ctype_alnum.c: Regenerated.
17283         * tests/unictype/test-ctype_alpha.c: Regenerated.
17284         * tests/unictype/test-ctype_graph.c: Regenerated.
17285         * tests/unictype/test-ctype_lower.c: Regenerated.
17286         * tests/unictype/test-ctype_print.c: Regenerated.
17287         * tests/unictype/test-ctype_punct.c: Regenerated.
17288         * tests/unictype/test-ctype_upper.c: Regenerated.
17289         * tests/unictype/test-decdigit.h: Regenerated.
17290         * tests/unictype/test-digit.h: Regenerated.
17291         * tests/unictype/test-numeric.h: Regenerated.
17292         * tests/unictype/test-pr_alphabetic.c: Regenerated.
17293         * tests/unictype/test-pr_bidi_arabic_digit.c: Regenerated.
17294         * tests/unictype/test-pr_bidi_arabic_right_to_left.c: Regenerated.
17295         * tests/unictype/test-pr_bidi_boundary_neutral.c: Regenerated.
17296         * tests/unictype/test-pr_bidi_eur_num_terminator.c: Regenerated.
17297         * tests/unictype/test-pr_bidi_left_to_right.c: Regenerated.
17298         * tests/unictype/test-pr_bidi_non_spacing_mark.c: Regenerated.
17299         * tests/unictype/test-pr_bidi_other_neutral.c: Regenerated.
17300         * tests/unictype/test-pr_combining.c: Regenerated.
17301         * tests/unictype/test-pr_dash.c: Regenerated.
17302         * tests/unictype/test-pr_decimal_digit.c: Regenerated.
17303         * tests/unictype/test-pr_default_ignorable_code_point.c: Regenerated.
17304         * tests/unictype/test-pr_deprecated.c: Regenerated.
17305         * tests/unictype/test-pr_diacritic.c: Regenerated.
17306         * tests/unictype/test-pr_extender.c: Regenerated.
17307         * tests/unictype/test-pr_format_control.c: Regenerated.
17308         * tests/unictype/test-pr_grapheme_base.c: Regenerated.
17309         * tests/unictype/test-pr_grapheme_extend.c: Regenerated.
17310         * tests/unictype/test-pr_grapheme_link.c: Regenerated.
17311         * tests/unictype/test-pr_id_continue.c: Regenerated.
17312         * tests/unictype/test-pr_id_start.c: Regenerated.
17313         * tests/unictype/test-pr_ideographic.c: Regenerated.
17314         * tests/unictype/test-pr_ignorable_control.c: Regenerated.
17315         * tests/unictype/test-pr_lowercase.c: Regenerated.
17316         * tests/unictype/test-pr_math.c: Regenerated.
17317         * tests/unictype/test-pr_numeric.c: Regenerated.
17318         * tests/unictype/test-pr_other_alphabetic.c: Regenerated.
17319         * tests/unictype/test-pr_other_default_ignorable_code_point.c:
17320         Regenerated.
17321         * tests/unictype/test-pr_other_grapheme_extend.c: Regenerated.
17322         * tests/unictype/test-pr_other_id_continue.c: Regenerated.
17323         * tests/unictype/test-pr_other_lowercase.c: Regenerated.
17324         * tests/unictype/test-pr_other_math.c: Regenerated.
17325         * tests/unictype/test-pr_punctuation.c: Regenerated.
17326         * tests/unictype/test-pr_sentence_terminal.c: Regenerated.
17327         * tests/unictype/test-pr_soft_dotted.c: Regenerated.
17328         * tests/unictype/test-pr_terminal_punctuation.c: Regenerated.
17329         * tests/unictype/test-pr_unassigned_code_value.c: Regenerated.
17330         * tests/unictype/test-pr_unified_ideograph.c: Regenerated.
17331         * tests/unictype/test-pr_uppercase.c: Regenerated.
17332         * tests/unictype/test-pr_xid_continue.c: Regenerated.
17333         * tests/unictype/test-pr_xid_start.c: Regenerated.
17334         * tests/unictype/test-pr_zero_width.c: Regenerated.
17335
17336         Update to Unicode 5.1.0.
17337         * lib/uniwidth/width.c (nonspacing_table_data): Add U+0487,
17338         U+0616..U+061A, U+0A51, U+0A75, U+0B44, U+0B62..U+0B63, U+0C62..U+0C63,
17339         U+0D44, U+0D62..U+0D63, U+1033..U+1035, U+103A, U+103D..U+103E,
17340         U+105E..U+1060, U+1071..U+1074, U+1082, U+1085..U+1086, U+108D,
17341         U+1B80..U+1B81, U+1BA2..U+1BA5, U+1BA8..U+1BA9, U+1C2C..U+1C33,
17342         U+1C36..U+1C37, U+1DCB..U+1DE6, U+2064, U+20F0, U+2DE0..U+2DFF,
17343         U+A66F..U+A672, U+A67C..U+A67D, U+A8C4, U+A926..U+A92D, U+A947..U+A951,
17344         U+AA29..U+AA2E, U+AA31..U+AA32, U+AA35..U+AA36, U+AA43, U+AA4C,
17345         U+FE24..U+FE26, U+101FD. Remove U+1929..U+192B.
17346         (nonspacing_table_ind): Update.
17347         * tests/uniwidth/test-uc_width2.sh: Update expected result.
17348
17349         Update to Unicode 5.1.0.
17350         * lib/uniname/gen-uninames.lisp (main): Add the range 0x1Fxxx to the
17351         code transform.
17352         * lib/uniname/uniname.c (unicode_character_name,
17353         unicode_name_character): Add the range 0x1Fxxx to the code transform.
17354         * lib/uniname/uninames.h: Regenerated.
17355         * tests/uniname/UnicodeDataNames.txt: Update to Unicode 5.1.0.
17356
17357 2009-02-07  Bruno Haible  <bruno@clisp.org>
17358
17359         Merge gen-ctype and gen-lbrk into a single program.
17360         * lib/gen-uni-tables.c: New file, incorporating
17361         lib/unictype/gen-ctype.c and lib/unilbrk/gen-lbrk.c.
17362         Add directory prefixes to the names of the generated files.
17363         * lib/unictype/gen-ctype.c: Remove file.
17364         * lib/unilbrk/gen-lbrk.c: Remove file.
17365         * modules/gen-uni-tables: New file.
17366         * modules/unictype/gen-ctype: Remove file.
17367         * modules/unilbrk/gen-lbrk: Remove file.
17368
17369 2009-02-07  Bruno Haible  <bruno@clisp.org>
17370
17371         * lib/unistr.h (u8_strcoll, u16_strcoll, u32_strcoll): New declations.
17372
17373         New module 'unistr/u32-strcoll'.
17374         * modules/unistr/u32-strcoll: New file.
17375         * lib/unistr/u32-strcoll.c: New file.
17376
17377         New module 'unistr/u16-strcoll'.
17378         * modules/unistr/u16-strcoll: New file.
17379         * lib/unistr/u16-strcoll.c: New file.
17380
17381         New module 'unistr/u8-strcoll'.
17382         * modules/unistr/u8-strcoll: New file.
17383         * lib/unistr/u8-strcoll.c: New file.
17384         * lib/unistr/u-strcoll.h: New file.
17385
17386 2009-02-07  Bruno Haible  <bruno@clisp.org>
17387
17388         * test-mbrtowc4.sh (LOCALE_ZH_CN): Fix default value.
17389         * test-mbsnrtowcs4.sh (LOCALE_ZH_CN): Likewise.
17390         * test-mbsrtowcs4.sh (LOCALE_ZH_CN): Likewise.
17391         * test-wcrtomb.sh (LOCALE_ZH_CN): Likewise.
17392         * test-wcsnrtombs4.sh (LOCALE_ZH_CN): Likewise.
17393         * test-wcsrtombs4.sh (LOCALE_ZH_CN): Likewise.
17394
17395 2009-02-07  Bruno Haible  <bruno@clisp.org>
17396
17397         Make 64-bit clean.
17398         * lib/unictype/gen-ctype.c (output_predicate, output_category,
17399         output_combclass, output_bidi_category, output_decimal_digit,
17400         output_digit, output_numeric, output_mirror, output_scripts,
17401         output_ident_category): Use proper width specifier in format strings.
17402
17403 2009-02-07  Bruno Haible  <bruno@clisp.org>
17404
17405         * doc/posix-functions/dirfd.texi: Clarify situation on mingw. Document
17406         failure behaviour.
17407
17408 2009-02-07  Jim Meyering  <meyering@redhat.com>
17409
17410         regex: avoid compilation failure with upcoming gcc-4.4
17411         * lib/regex_internal.h: Revert e48d8b47fb3eee81d341b71c3e006efe9e3433a7
17412         [workaround for PGC prior to 6.1-2].  Otherwise, we'd get this:
17413         "... error: integer overflow in preprocessor expression".
17414
17415 2009-02-05  Ben Pfaff  <blp@gnu.org>
17416
17417         Fix link errors on Windows when close module is used.
17418         * modules/close: Add $(LIB_CLOSE) to Link section.
17419         * m4/close.m4 (gl_REPLACE_CLOSE): Substitute -lws2_32 into
17420         $(LIB_CLOSE) on Windows.
17421
17422 2009-02-05  Jim Meyering  <meyering@redhat.com>
17423
17424         still avoid unused-parameter warnings, but do it cleanly
17425         * lib/fsusage.c (UNUSED_PARAM): Remove definition.
17426         (get_fs_usage): Cast to void instead.
17427         * lib/mountlist.c (UNUSED_PARAM): Remove definition.
17428         (dev_from_mount_options, read_file_system_list): Cast to void.
17429         Prompted by Bruno Haible.
17430
17431 2009-02-04  Jim Meyering  <meyering@redhat.com>
17432
17433         fsusage.c: correct copyright year
17434         * lib/fsusage.c: Reflect year in which the change is pushed into
17435
17436         avoid misc. warnings
17437         * lib/fsusage.c (UNUSED_PARAM): Define.
17438         (get_fs_usage): Mark parameter "disk" as unused.
17439         * lib/getugroups.c (getgrent): Use "void" in prototype.
17440         * lib/mountlist.c: Mark unused parameters.
17441         (read_file_system_list): Declare a local with "const".
17442         * lib/nanosleep.c (getnow): Declare static.
17443         * lib/strftime.c: Include strftime.h, for declaration of nstrftime.
17444
17445         dirfd: set errno upon failure
17446         * lib/dirfd.c: Include <errno.h>.
17447         Set errno to ENOTSUP when returning -1.
17448         * modules/dirfd (Depends-on): Add errno.
17449         Suggested by John Kodis <kodis@comcast.net>.
17450
17451 2009-02-01  Bruno Haible  <bruno@clisp.org>
17452
17453         Don't assume sizeof (long) >= sizeof (void *).
17454         * lib/memcmp.c: Include stdint.h.
17455         (memcmp_bytes): Change argument types to op_t. Change type of srcp1,
17456         srcp2 to 'const byte *'.
17457         (memcmp_common_alignment, memcmp_not_common_alignment): Change argument
17458         types to uintptr_t.
17459         (rpl_memcmp): Change type of srcp1, srcp2 to 'uintptr_t'.
17460         * modules/memcmp (Depends-on): Add stdint.
17461         Reported by Ozkan Sezer <sezeroz@gmail.com>.
17462
17463 2009-01-30  Eric Blake  <ebb9@byu.net>
17464
17465         fix more require-before-expand issues
17466         * m4/pmccabe2html.m4 (gl_PMCCABE2HTML): Require, rather than
17467         expand, AC_PROG_AWK.
17468         * m4/gnulib-common.m4 (AC_PROG_MKDIR_P): Use AC_DEFUN_ONCE.
17469
17470 2009-01-28  Eric Blake  <ebb9@byu.net>
17471
17472         version-etc: use consistent URL formatting
17473         * lib/version-etc.c (emit_bug_reporting_address, version_etc_va):
17474         Improve formatting.  Use fputs for string without %.
17475
17476 2009-01-28  Jim Meyering  <meyering@redhat.com>
17477
17478         00gnulib.m4: add m4 quotes in shell comment to avoid autoconf warning
17479         * m4/00gnulib.m4 (AC_DEFUN_ONCE): Add quotes to avoid an
17480         "underquoted definition of NAME" from autoconf-2.59.
17481
17482 2009-01-28  Bruno Haible  <bruno@clisp.org>
17483
17484         * doc/gnulib.texi: Add "Obsolete modules" to index.
17485
17486 2009-01-28  Jim Meyering  <meyering@redhat.com>
17487
17488         useless-if-before-free: recognize more variants
17489         * build-aux/useless-if-before-free: Also recognize e.g.,
17490         if (NULL != p) free (p);
17491
17492 2009-01-27  Mark McLoughlin  <markmc@redhat.com>
17493
17494         test-getaddrinfo: skip (don't fail) this test when there's no network
17495         * tests/test-getaddrinfo.c: Skip test upon failure with EAI_AGAIN,
17496         on the presumption that it means you lack network access.
17497
17498 2009-01-26  Jim Meyering  <meyering@redhat.com>
17499
17500         fflush: avoid warnings on modern systems
17501         * lib/fflush.c (rpl_fflush): Move declarations of locals,
17502         pos and result, into scopes where they're used.
17503
17504 2009-01-26  Eric Blake  <ebb9@byu.net>
17505
17506         Silence warning reintroduced by recent extensions patch.
17507         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS)
17508         (gl_USE_SYSTEM_EXTENSIONS): Use AC_DEFUN_ONCE to silence newer
17509         autoconf.
17510
17511         Backport improved autoconf semantics of AC_DEFUN_ONCE.
17512         * m4/00gnulib.m4: New file.
17513         * gnulib-tool (func_get_filelist): Always use it.
17514         * m4/gnulib-common.m4 (gl_COMMON): Force the file to be used.
17515         Reported by Bruno Haible, with suggestions from Paolo Bonzini.
17516
17517 2009-01-25  Bruno Haible  <bruno@clisp.org>
17518
17519         Make test-quotearg work on MacOS X and AIX.
17520         * tests/test-quotearg.sh: New file.
17521         * tests/locale/fr/LC_MESSAGES/test-quotearg.po: New file.
17522         * tests/locale/fr/LC_MESSAGES/test-quotearg.mo: New file.
17523         * tests/test-quotearg.c: Include <locale.h> and gettext.h. Don't
17524         include <libintl.h>.
17525         (fake_locale): Remove variable.
17526         (gettext, dgettext, dcgettext): Remove functions.
17527         (main): Instead of setting a fake locale, set a real locale. Call
17528         textdomain and bindtextdomain.
17529         * modules/quotearg-tests (Files): Add the new files.
17530         (Depends-on): Add gettext, setenv, unsetenv.
17531         (configure.ac): Invoke gt_LOCALE_FR and gt_LOCALE_FR_UTF8.
17532         (Makefile.am): Add test-quotearg.sh to TESTS, remove test-quotearg.
17533         Augment TESTS_ENVIRONMENT.
17534
17535 2009-01-25  Bruno Haible  <bruno@clisp.org>
17536
17537         * m4/locale-fr.m4 (gt_LOCALE_FR): Remove special code that hid the
17538         fr_FR.ISO8859-1 locale on MacOS X.
17539         * m4/locale-ja.m4 (gt_LOCALE_JA): Remove special code that hid the
17540         ja_JP.eucJP locale on MacOS X.
17541         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Remove special code that hid the
17542         zh_CN.GB18030 locale on MacOS X.
17543
17544 2009-01-25  Bruno Haible  <bruno@clisp.org>
17545
17546         Avoid link errors on MacOS X 10.3.
17547         * lib/mbsrtowcs-state.c (_gl_mbsrtowcs_state): Add initializer.
17548         * lib/wcsrtombs-state.c (_gl_wcsrtombs_state): Likewise.
17549
17550 2009-01-25  Bruno Haible  <bruno@clisp.org>
17551
17552         * lib/pipe.c: On Unix, assume HAVE_POSIX_SPAWN and use posix_spawnp.
17553         * m4/pipe.m4 (gl_PIPE): Remove tests for vfork() based code.
17554         * modules/pipe (Files): Remove m4/posix_spawn.m4.
17555         (Depends-on): Add spawn, posix_spawnp, posix_spawn_file_actions_init,
17556         posix_spawn_file_actions_addclose, posix_spawn_file_actions_adddup2,
17557         posix_spawn_file_actions_addopen, posix_spawn_file_actions_destroy,
17558         posix_spawnattr_init, posix_spawnattr_setsigmask,
17559         posix_spawnattr_setflags, posix_spawnattr_destroy.
17560
17561         * lib/execute.c: On Unix, assume HAVE_POSIX_SPAWN and use posix_spawnp.
17562         * m4/execute.m4 (gl_EXECUTE): Remove tests for vfork() based code.
17563         * modules/execute (Files): Remove m4/posix_spawn.m4.
17564         (Depends-on): Add spawn, posix_spawnp, posix_spawn_file_actions_init,
17565         posix_spawn_file_actions_addopen, posix_spawn_file_actions_destroy,
17566         posix_spawnattr_init, posix_spawnattr_setsigmask,
17567         posix_spawnattr_setflags, posix_spawnattr_destroy.
17568
17569 2009-01-25  Bruno Haible  <bruno@clisp.org>
17570
17571         * lib/glthread/threadlib.c: Include <stdlib.h>.
17572
17573 2009-01-25  Bruno Haible  <bruno@clisp.org>
17574
17575         * lib/glthread/threadlib.c (dummy): New declaration.
17576
17577 2009-01-25  Bruno Haible  <bruno@clisp.org>
17578
17579         * lib/mbrtowc.c (mbrtowc): Distinguish invalid and incomplete
17580         multibyte characters also for the GB18030 encoding. Don't crash when
17581         the encoding is unknown and nstate = 0. Needed on OSF/1 5.1.
17582
17583 2009-01-25  Bruno Haible  <bruno@clisp.org>
17584
17585         Avoid redefining 'struct random_data' on OSF/1 5.1.
17586         * lib/stdlib.in.h: Include <random.h> if it exists.
17587         * m4/stdlib_h.m4 (gl_STDLIB_H): Test whether <random.h> exists. Set
17588         HAVE_RANDOM_H. Include <random.h> when testing whether
17589         'struct random_data' exists.
17590         * modules/stdlib (Makefile.am): Substitute HAVE_RANDOM_H.
17591
17592 2009-01-25  Bruno Haible  <bruno@clisp.org>
17593
17594         Don't install charset.alias on MacOS X >= 10.3.
17595         * lib/localcharset.c (DARWIN7): New macro.
17596         (get_charset_aliases): Hardcode the result for Darwin7.
17597         * modules/localcharset (install-exec-local): Don't install
17598         charset.alias on MacOS X >= 10.3, if the file does not yet exist.
17599
17600 2009-01-25  Bruno Haible  <bruno@clisp.org>
17601
17602         Don't install charset.alias on mingw and Cygwin.
17603         * modules/localcharset (install-exec-local): Don't install
17604         charset.alias on mingw and Cygwin, if the file does not yet exist.
17605         The result for these platforms is hardcoded in localcharset.c.
17606
17607 2009-01-25  Bruno Haible  <bruno@clisp.org>
17608
17609         Make it possible again to use AC_GNU_SOURCE together with gnulib.
17610         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Require AC_GNU_SOURCE
17611         before requiring AC_USE_SYSTEM_EXTENSIONS.
17612
17613 2009-01-25  Jim Meyering  <meyering@redhat.com>
17614
17615         c-strtod: avoid warnings
17616         * lib/c-strtod.c (C_STRTOD): Cast nptr to (char *) to avoid
17617         "assignment discards qualifiers from pointer target type" warnings.
17618
17619 2009-01-24  Bruno Haible  <bruno@clisp.org>
17620
17621         Add support for non-UTF-8 locales on MacOS X.
17622         * lib/config.charset: Add CP1131, ARMSCII-8, PT154 to the list of
17623         canonical encodings. For Darwin 7 and newer, don't map traditional
17624         encodings to UTF-8.
17625         Reported by Vincent Lefevre <vincent@vinc17.org>
17626         at <http://savannah.gnu.org/bugs/?25235>.
17627
17628 2009-01-24  Bruno Haible  <bruno@clisp.org>
17629
17630         * doc/gnulib.texi (Obsolete modules): New section.
17631         Reported by Mike Frysinger <vapier@gentoo.org>.
17632
17633 2009-01-24  Bruno Haible  <bruno@clisp.org>
17634
17635         * doc/Makefile (%.pdf): Clarify where to find texmf.cnf.
17636         (%.dvi): New rule.
17637
17638 2009-01-24  Bruno Haible  <bruno@clisp.org>
17639
17640         * lib/c-strtod.h (c_strtod, c_strtold): Adjust specification.
17641         Reported by Eric Blake.
17642
17643 2009-01-24  Bruno Haible  <bruno@clisp.org>
17644
17645         * lib/c-stack.c (segv_handler): If !HAVE_XSI_STACK_OVERFLOW_HEURISTIC,
17646         set signo = 0 also if info->si_code <= 0. Needed on HP-UX 11.11.
17647         Reported by Gary V. Vaughan <gary@gnu.org>.
17648
17649 2009-01-24  Bruno Haible  <bruno@clisp.org>
17650
17651         * lib/c-strtod.h (c_strtod, c_strtold): Add specification.
17652
17653 2009-01-23  Bruno Haible  <bruno@clisp.org>
17654
17655         Make c-strtod, c-strtold usable in libraries.
17656         * lib/c-strtod.c: Include string.h instead of xalloc.h.
17657         (C_STRTOD): Call strdup instead of xstrdup.
17658         * modules/c-strtod (Depends-on): Add strdup-posix, remove xalloc.
17659         * modules/c-strtold (Depends-on): Likewise.
17660         * doc/c-strtod.texi: Remove the sentence mentioning xalloc_die.
17661         * NEWS: Mention the change.
17662         Reported by Michael Gold <mgold@ncf.ca>.
17663
17664 2009-01-23  Jim Meyering  <meyering@redhat.com>
17665
17666         c-strtod: when ENDPTR is non-NULL, set *ENDPTR in new failure path
17667         * lib/c-strtod.c (C_STRTOD) [LC_ALL_MASKC]: Ensure that when
17668         ENDPTR is non-NULL, *ENDPTR is set to NPTR upon failure.
17669
17670 2009-01-23  Simon Josefsson  <simon@josefsson.org>
17671
17672         * lib/version-etc.c: Add emit_bug_reporting_address, inspired by
17673         GNU CoreUtils.
17674         * lib/version-etc.h: Add prototype for emit_bug_reporting_address.
17675         * modules/version-etc (Description): Update.
17676
17677 2009-01-22  Bruno Haible  <bruno@clisp.org>
17678
17679         Cache the C locale object.
17680         * lib/c-strtod.c (c_locale_cache): New variable.
17681         (c_locale): New function.
17682         (C_STRTOD): Use it, and don't call freelocale.
17683         * m4/c-strtod.m4 (gl_C_STRTOD, gl_C_STRTOLD): Require AC_C_INLINE.
17684         Suggested by Paolo Bonzini.
17685
17686 2009-01-21  Bruno Haible  <bruno@clisp.org>
17687
17688         * lib/getloadavg.c (getloadavg): Check c_strtod result against error
17689         conditions other than overflow.
17690
17691 2009-01-21  Bruno Haible  <bruno@clisp.org>
17692
17693         * lib/c-strtod.c: Include errno.h.
17694         (C_STRTOD): Check against NULL return from newlocale. Preserve errno
17695         value from STRTOD_L and STRTOD.
17696
17697 2009-01-21  Bruno Haible  <bruno@clisp.org>
17698         and Jim Meyering  <meyering@redhat.com>
17699
17700         nanosleep: skip configure test (fail it) for apple universal builds
17701         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Require gl_MULTIARCH. In Apple
17702         universal builds, assume that nanosleep does not work.
17703         * modules/nanosleep (Depends-on): Add multiarch.
17704
17705         mktime: skip configure test (fail it) for apple universal builds
17706         * m4/mktime.m4 (AC_FUNC_MKTIME): Require gl_MULTIARCH. In Apple
17707         universal builds, assume that mktime does not work.
17708         * modules/mktime (Depends-on): Add multiarch.
17709
17710 2009-01-21  Eric Blake  <ebb9@byu.net>
17711
17712         multiarch: avoid expand-before-require warning
17713         * modules/multiarch (configure.ac): Require, rather than expand,
17714         gl_MULTIARCH.
17715         * m4/multiarch.m4 (gl_MULTIARCH_BODY): Merge...
17716         (gl_MULTIARCH): ...into this macro, and use AC_DEFUN_ONCE to
17717         enforce that all clients require it.  Partial reversion of
17718         2008-12-29 patch.
17719
17720         error: avoid expand-before-require warning
17721         * modules/errno (configure.ac): Require, rather than expand,
17722         gl_HEADER_ERRNO_H.
17723         * m4/errno_h.m4 (gl_HEADER_ERRNO_H_BODY): Merge...
17724         (gl_HEADER_ERRNO_H): ...into this macro, and use AC_DEFUN_ONCE to
17725         enforce that all clients require it.
17726
17727         gnulib-tool: avoid warnings from using obsolete AC_GNU_SOURCE
17728         * gnulib-tool (func_dest_tmpfilename, func_create_testdir): Using
17729         obsolete AC_GNU_SOURCE causes out-of-order expansion; avoid it,
17730         and rely solely on gl_USE_SYSTEM_EXTENSIONS.
17731
17732 2009-01-21  Paolo Bonzini  <bonzini@gnu.org>
17733
17734         Revert:
17735         2009-01-20  Paolo Bonzini  <bonzini@gnu.org>
17736
17737         regex: do not depend on obsolete modules.
17738         * modules/regex: Remove memcmp and memmove.
17739
17740 2009-01-20  Bruno Haible  <bruno@clisp.org>
17741
17742         Make the 'link' module link on Windows NT 4.
17743         * lib/link.c (_WIN32_WINNT): Don't define.
17744         (CreateHardLinkFuncType): New type.
17745         (CreateHardLinkFunc, initialized): New variables.
17746         (initialize): New function.
17747         (link): Invoke CreateHardLink indirectly through the function pointer.
17748
17749 2009-01-20  Bruno Haible  <bruno@clisp.org>
17750
17751         Fix compilation failure on mingw.
17752         * tests/test-link.c (main): Don't assume that EOPNOTSUPP exists.
17753
17754 2009-01-20  Michael Gold  <mgold@ncf.ca>  (tiny change)
17755
17756         * doc/c-strtod.texi: Mention a couple of restrictions.
17757
17758 2009-01-20  Jim Meyering  <meyering@redhat.com>
17759
17760         gettimeofday: move more declarations out of functions
17761         * lib/gettimeofday.c: Move extern declarations of tzset and
17762         gmtime out of containing functions.  Prompted by Bruno Haible.
17763
17764 2009-01-20  Paolo Bonzini  <bonzini@gnu.org>
17765
17766         regex: do not depend on obsolete modules.
17767         * modules/regex: Remove memcmp and memmove.
17768
17769 2009-01-19  Bruno Haible  <bruno@clisp.org>
17770
17771         Don't use AC_REQUIRE([AC_C_BIGENDIAN]).
17772         * modules/uniconv/u16-conv-from-enc (configure.ac): Require
17773         gl_BIGENDIAN, not AC_C_BIGENDIAN.
17774         * modules/uniconv/u16-conv-to-enc (configure.ac): Likewise.
17775         * modules/uniconv/u16-strconv-to-enc (configure.ac): Likewise.
17776
17777 2009-01-19  Bruno Haible  <bruno@clisp.org>
17778
17779         * tests/test-link.c: Include <errno.h>.
17780         (main): Exit with code 77 when a hard link cannot be created due to
17781         the file system.
17782         * tests/test-link.sh: Skip test when a hard link cannot be created due
17783         to the file system.
17784         Suggested by Eric Blake.
17785
17786 2009-01-19  Martin Lambers  <marlam@marlam.de>
17787
17788         * modules/link-tests: New file.
17789         * tests/test-link.sh: New file.
17790         * tests/test-link.c: New file.
17791
17792 2009-01-19  Eric Blake  <ebb9@byu.net>
17793
17794         doc: mention another function added in cygwin 1.7.0
17795         * doc/glibc-functions/glob_pattern_p.texi (glob_pattern_p):
17796         Another new function in cygwin 1.7.
17797
17798 2009-01-19  Bruno Haible  <bruno@clisp.org>
17799
17800         Don't use AC_REQUIRE([AC_C_BIGENDIAN]).
17801         * m4/gnulib-common.m4 (gl_BIGENDIAN): New macro.
17802         * m4/exponentl.m4 (gl_LONG_DOUBLE_EXPONENT_LOCATION): Require
17803         gl_BIGENDIAN, not AC_C_BIGENDIAN.
17804         * m4/isfinite.m4 (gl_ISFINITEL_WORKS): Likewise.
17805         * m4/isinf.m4 (gl_ISINFL_WORKS): Likewise.
17806         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Likewise.
17807         * m4/md4.m4 (gl_MD4): Likewise.
17808         * m4/md5.m4 (gl_MD5): Likewise.
17809         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Likewise.
17810         * m4/sha1.m4 (gl_SHA1): Likewise.
17811         * m4/sha256.m4 (gl_SHA256): Likewise.
17812         * m4/sha512.m4 (gl_SHA512): Likewise.
17813
17814 2009-01-19  Bruno Haible  <bruno@clisp.org>
17815
17816         * modules/uniname/uniname-tests (Depends-on): Add progname.
17817         * tests/uniname/test-uninames.c: Include progname.h.
17818         (main): Call set_program_name.
17819
17820         * modules/unistdio/u8-vsprintf-tests (Depends-on): Add progname.
17821         * tests/unistdio/test-u8-vsprintf1.c: Include progname.h.
17822         (main): Call set_program_name.
17823
17824         * modules/unistdio/u8-vsnprintf-tests (Depends-on): Add progname.
17825         * tests/unistdio/test-u8-vsnprintf1.c: Include progname.h.
17826         (main): Call set_program_name.
17827
17828         * modules/unistdio/u16-vsprintf-tests (Depends-on): Add progname.
17829         * tests/unistdio/test-u16-vsprintf1.c: Include progname.h.
17830         (main): Call set_program_name.
17831
17832         * modules/unistdio/u16-vsnprintf-tests (Depends-on): Add progname.
17833         * tests/unistdio/test-u16-vsnprintf1.c: Include progname.h.
17834         (main): Call set_program_name.
17835
17836         * modules/unistdio/u32-vsprintf-tests (Depends-on): Add progname.
17837         * tests/unistdio/test-u32-vsprintf1.c: Include progname.h.
17838         (main): Call set_program_name.
17839
17840         * modules/unistdio/u32-vsnprintf-tests (Depends-on): Add progname.
17841         * tests/unistdio/test-u32-vsnprintf1.c: Include progname.h.
17842         (main): Call set_program_name.
17843
17844         * modules/unistdio/ulc-vsprintf-tests (Depends-on): Add progname.
17845         * tests/unistdio/test-ulc-vsprintf1.c: Include progname.h.
17846         (main): Call set_program_name.
17847
17848         * modules/unistdio/ulc-vsnprintf-tests (Depends-on): Add progname.
17849         * tests/unistdio/test-ulc-vsnprintf1.c: Include progname.h.
17850         (main): Call set_program_name.
17851
17852 2009-01-19  Eric Blake  <ebb9@byu.net>
17853
17854         test-unistd: test previous patch
17855         * tests/test-unistd.c: Test *_FILENO macros.
17856
17857         unistd: guarantee STDIN_FILENO here, for OS/2 EMX
17858         * lib/unistd.in.h (STDIN_FILENO, STDOUT_FILENO, STDERR_FILENO):
17859         Guarantee a definition.
17860         * doc/posix-headers/unistd.texi (unistd.h): Document the bug.
17861         * modules/unistd-safer (Depends-on): Add dependency on unistd.
17862         * lib/c-stack.c (STDERR_FILENO): Rely on <unistd.h>.
17863         * lib/dup-safer.c (STDERR_FILENO): Likewise.
17864         * lib/execute.c (STDIN_FILENO, STDOUT_FILENO, STDERR_FILENO):
17865         Likewise.
17866         * lib/fd-safer.c (STDIN_FILENO, STDERR_FILENO): Likewise.
17867         * lib/fopen-safer.c (STDERR_FILENO): Likewise.
17868         * lib/pipe.c (STDIN_FILENO, STDOUT_FILENO, STDERR_FILENO):
17869         Likewise.
17870         * lib/tmpfile-safer.c (STDERR_FILENO): Likewise.
17871         * tests/test-posix_spawn1.c (STDIN_FILENO, STDOUT_FILENO)
17872         (STDERR_FILENO): Likewise.
17873         * tests/test-posix_spawn2.c (STDIN_FILENO, STDOUT_FILENO)
17874         (STDERR_FILENO): Likewise.
17875         * tests/test-posix_spawn3.c (STDIN_FILENO, STDOUT_FILENO)
17876         (STDERR_FILENO): Likewise.
17877         Reported by Elbert Pol.
17878
17879 2009-01-19  Eric Blake  <ebb9@byu.net>
17880
17881         doc: mention more functions added in cygwin 1.7.0
17882         * doc/posix-functions/abort.texi (abort): Update wording related
17883         to cygwin.
17884         * doc/posix-functions/daylight.texi (daylight): Likewise.
17885         * doc/posix-functions/optarg.texi (optarg): Likewise.
17886         * doc/posix-functions/optarg.texi (opterr): Likewise.
17887         * doc/posix-functions/optarg.texi (optind): Likewise.
17888         * doc/posix-functions/optarg.texi (optopt): Likewise.
17889         * doc/posix-functions/wprintf.texi (wprintf): Cygwin wprintf never
17890         worked in 1.5.x, and was withdrawn in 1.7.
17891         * doc/posix-functions/vwprintf.texi (vwprintf): Likewise.
17892         * doc/posix-functions/fprintf.texi (fprintf): Tighten mention of
17893         cygwin versions.
17894         * doc/posix-functions/perror.texi (perror): Likewise.
17895         * doc/posix-functions/printf.texi (printf): Likewise.
17896         * doc/posix-functions/snprintf.texi (snprintf): Likewise.
17897         * doc/posix-functions/sprintf.texi (sprintf): Likewise.
17898         * doc/posix-functions/vfprintf.texi (vfprintf): Likewise.
17899         * doc/posix-functions/vprintf.texi (vprintf): Likewise.
17900         * doc/posix-functions/vsnprintf.texi (vsnprintf): Likewise.
17901         * doc/posix-functions/vsprintf.texi (vsprintf): Likewise.
17902         * doc/glibc-functions/obstack_printf.texi (obstack_printf):
17903         Likewise.
17904         * doc/glibc-functions/obstack_vprintf.texi (obstack_vprintf):
17905         Likewise.
17906         * doc/glibc-functions/cfmakeraw.texi (cfmakeraw): Cygwin 1.7 adds
17907         this function.
17908         * doc/glibc-functions/in6addr_any.texi (in6addr_any): Likewise.
17909         * doc/glibc-functions/in6addr_loopback.texi (in6addr_loopback):
17910         Likewise.
17911         * doc/glibc-functions/updwtmpx.texi (updwtmpx): Likewise.
17912         * doc/posix-functions/_Exit_C99.texi (_Exit): Likewise.
17913         * doc/posix-functions/confstr.texi (confstr): Likewise.
17914         * doc/posix-functions/dprintf.texi (dprintf): Likewise.
17915         * doc/posix-functions/fgetwc.texi (fgetwc): Likewise.
17916         * doc/posix-functions/fgetws.texi (fgetws): Likewise.
17917         * doc/posix-functions/fputwc.texi (fputwc): Likewise.
17918         * doc/posix-functions/fputws.texi (fputws): Likewise.
17919         * doc/posix-functions/fwide.texi (fwide): Likewise.
17920         * doc/posix-functions/getwc.texi (getwc): Likewise.
17921         * doc/posix-functions/getwchar.texi (getwchar): Likewise.
17922         * doc/posix-functions/putwc.texi (putwc): Likewise.
17923         * doc/posix-functions/putwchar.texi (putwchar): Likewise.
17924         * doc/posix-functions/sigignore.texi (sigignore): Likewise.
17925         * doc/posix-functions/ungetwc.texi (ungetwc): Likewise.
17926         * doc/posix-functions/vdprintf.texi (vdprintf): Likewise.
17927         * doc/posix-functions/wcpcpy.texi (wcpcpy): Likewise.
17928         * doc/posix-functions/wcpncpy.texi (wcpncpy): Likewise.
17929         * doc/posix-functions/wcstol.texi (wcstol): Likewise.
17930         * doc/posix-functions/wcstoll.texi (wcstoll): Likewise.
17931         * doc/posix-functions/wcstoul.texi (wcstoul): Likewise.
17932         * doc/posix-functions/wcstoull.texi (wcstoull): Likewise.
17933         * doc/posix-functions/wcsxfrm.texi (wcsxfrm): Likewise.
17934
17935 2009-01-19  Daniel P. Berrange  <berrange@redhat.com>
17936
17937         ioctl: avoid warning: no previous prototype for 'rpl_ioctl'
17938         * lib/ioctl.c: Include <sys/ioctl.h>.
17939
17940 2009-01-19  Simon Josefsson  <simon@josefsson.org>
17941
17942         * modules/getdate-tests (Depends-on): Add progname.
17943         * tests/test-getdate.c: Use progname module, to avoid link errors
17944         on non-glibc systems.
17945
17946 2009-01-18  Simon Josefsson  <simon@josefsson.org>
17947
17948         * modules/filenamecat-tests (Depends-on): Add progname.
17949         * modules/fstrcmp-tests (Depends-on): Likewise.
17950
17951         * tests/test-filenamecat.c: Use progname module, to avoid link
17952         errors on non-glibc systems.
17953         * tests/test-fstrcmp.c: Likewise.
17954
17955 2009-01-19  Daniel P. Berrange  <berrange@redhat.com>
17956
17957         gettimeofday: avoid warning: nested extern declaration of 'localtime'
17958         * lib/gettimeofday.c: Move extern declaration out of function.
17959
17960 2009-01-18  Bruno Haible  <bruno@clisp.org>
17961
17962         * m4/strftime.m4 (gl_FUNC_STRFTIME): Don't test for mblen and mbrlen.
17963         * lib/strftime.c (HAVE_MBLEN, HAVE_MBRLEN): Remove macros.
17964         (MULTIBYTE_IS_FORMAT_SAFE): Define to 1 on all platforms except OSF/1.
17965
17966 2009-01-18  Bruno Haible  <bruno@clisp.org>
17967
17968         * lib/strftime.c (MEMPCPY): Remove unused macro.
17969         * m4/strftime.m4 (gl_FUNC_STRFTIME): Don't test for mempcpy.
17970
17971 2009-01-18  Martin Lambers  <marlam@marlam.de>
17972
17973         New module 'link'.
17974         * lib/unistd.in.h (link): New declaration.
17975         * lib/link.c: New file.
17976         * m4/link.m4: New file.
17977         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_LINK,
17978         HAVE_LINK.
17979         * modules/unistd (Makefile.am): Substitute GNULIB_LINK, HAVE_LINK.
17980         * modules/link: New file.
17981         * doc/posix-functions/link.texi: Mention the new module.
17982
17983 2009-01-18  Bruno Haible  <bruno@clisp.org>
17984
17985         * tests/test-avltree_list.c (main): Call set_program_name.
17986         * tests/test-avltree_oset.c (main): Likewise.
17987         * tests/test-obstack-printf.c: Include progname.h.
17988         (main): Call set_program_name.
17989         * tests/test-quotearg.c: Include progname.h.
17990         (main): Call set_program_name.
17991         * tests/test-xmemdup0.c: Include progname.h.
17992         (main): Call set_program_name.
17993
17994 2009-01-18  Bruno Haible  <bruno@clisp.org>
17995
17996         New module 'alphasort'.
17997         * lib/dirent.in.h (alphasort): New declaration.
17998         * lib/alphasort.c: New file, from glibc with modifications.
17999         * m4/alphasort.m4: New file.
18000         * modules/alphasort: New file.
18001         * m4/dirent_h.m4 (gl_DIRENT_H_DEFAULTS): Initialize GNULIB_ALPHASORT,
18002         HAVE_ALPHASORT.
18003         * modules/dirent (Makefile.am): Substitute GNULIB_ALPHASORT,
18004         HAVE_ALPHASORT.
18005         * doc/posix-functions/alphasort.texi: Mention the new module and the
18006         portability problems.
18007
18008 2009-01-18  Bruno Haible  <bruno@clisp.org>
18009
18010         New module 'scandir'.
18011         * lib/dirent.in.h (scandir): New declaration.
18012         * lib/scandir.c: New file, from glibc with modifications.
18013         * m4/scandir.m4: New file.
18014         * modules/scandir: New file.
18015         * m4/dirent_h.m4 (gl_DIRENT_H_DEFAULTS): Initialize GNULIB_SCANDIR,
18016         HAVE_SCANDIR.
18017         * modules/dirent (Makefile.am): Substitute GNULIB_SCANDIR,
18018         HAVE_SCANDIR.
18019         * doc/posix-functions/scandir.texi: Mention the new module and the
18020         portability problems.
18021
18022 2009-01-17  Bruno Haible  <bruno@clisp.org>
18023
18024         * gnulib-tool (func_remove_prefix): Escape all dots in the prefix.
18025         Update documentation.
18026         (func_remove_suffix): Escape all dots in the suffix. Update
18027         documentation.
18028         (func_filter_filelist): Update documentation.
18029         Reported by Ralf Wildenhues.
18030
18031 2009-01-17  Bruno Haible  <bruno@clisp.org>
18032
18033         * modules/dprintf-posix-tests: New file.
18034         * tests/test-dprintf-posix.sh: New file.
18035         * tests/test-dprintf-posix.c: New file.
18036
18037         New modules 'dprintf', 'dprintf-posix'.
18038         * lib/stdio.in.h (dprintf): New declaration.
18039         * lib/dprintf.c: New file.
18040         * m4/dprintf.m4: New file.
18041         * m4/dprintf-posix.m4: New file.
18042         * modules/dprintf: New file.
18043         * modules/dprintf-posix: New file.
18044         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize GNULIB_DPRINTF,
18045         HAVE_DPRINTF, REPLACE_DPRINTF.
18046         * modules/stdio (Makefile.am): Substitute also GNULIB_DPRINTF,
18047         HAVE_DPRINTF, REPLACE_DPRINTF.
18048         * doc/posix-functions/dprintf.texi: Mention the new modules.
18049
18050 2009-01-17  Bruno Haible  <bruno@clisp.org>
18051
18052         * modules/vdprintf-posix-tests: New file.
18053         * tests/test-vdprintf-posix.sh: New file.
18054         * tests/test-vdprintf-posix.c: New file.
18055
18056         New modules 'vdprintf', 'vdprintf-posix'.
18057         * lib/stdio.in.h (vdprintf): New declaration.
18058         * lib/vdprintf.c: New file.
18059         * m4/vdprintf.m4: New file.
18060         * m4/vdprintf-posix.m4: New file.
18061         * modules/vdprintf: New file.
18062         * modules/vdprintf-posix: New file.
18063         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize GNULIB_VDPRINTF,
18064         HAVE_VDPRINTF, REPLACE_VDPRINTF.
18065         * modules/stdio (Makefile.am): Substitute also GNULIB_VDPRINTF,
18066         HAVE_VDPRINTF, REPLACE_VDPRINTF.
18067         * doc/posix-functions/vdprintf.texi: Mention the new modules.
18068
18069 2009-01-17  Bruno Haible  <bruno@clisp.org>
18070
18071         Fix replacement of fopen on mingw.
18072         * m4/fopen.m4 (gl_FUNC_FOPEN): Define FOPEN_TRAILING_SLASH_BUG also on
18073         mingw.
18074
18075 2009-01-17  Bruno Haible  <bruno@clisp.org>
18076
18077         Fix compilation error on HP-UX 11.00, present since 2008-09-24.
18078         * lib/fopen.c: Include <sys/types.h> and <sys/types.h>.
18079
18080 2009-01-17  Bruno Haible  <bruno@clisp.org>
18081
18082         Avoid test-fflush2.sh failure on mingw.
18083         * tests/test-fflush2.c: Include binary-io.h.
18084         (main): Put standard input into binary mode.
18085         * modules/fflush-tests (Depends-on): Add binary-io.
18086
18087 2009-01-17  Bruno Haible  <bruno@clisp.org>
18088
18089         * lib/wchar.in.h: In another particular situation, include only the
18090         system's <wchar.h> file.
18091         (_GL_ALREADY_INCLUDING_WCHAR_H): New macro.
18092         Reported by Albert Chin-A-Young <china@thewrittenword.com>
18093         and Thomas Guyot-Sionnest <dermoth@aei.ca>.
18094
18095 2009-01-17  Bruno Haible  <bruno@clisp.org>
18096
18097         Support for stripping executables in --enable-relocatable.
18098         * build-aux/install-reloc: Expect one more argument, or an environment
18099         variable RELOC_STRIP_PROG. If set, strip the destination program and
18100         its wrapper.
18101         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): In INSTALL_PROGRAM_ENV, set
18102         RELOC_STRIP_PROG.
18103         * doc/relocatable-maint.texi (Supporting Relocation): Mention the need
18104         to set RELOCATABLE_STRIP.
18105         * NEWS: Mention the new Makefile requirement.
18106
18107 2009-01-17  Bruno Haible  <bruno@clisp.org>
18108
18109         * build-aux/install-reloc: Remove debugging information left over by
18110         C compiler on MacOS X.
18111
18112 2009-01-17  Bruno Haible  <bruno@clisp.org>
18113
18114         Update use of _NSGetExecutablePath after API change in MacOS X 10.4.
18115         * lib/progreloc.c (find_executable): Fix type of pointer passed to
18116         _NSGetExecutablePath.
18117
18118 2009-01-16  Jim Meyering  <meyering@redhat.com>
18119
18120         strerror: avoid warnings about discarding "const"
18121         * lib/strerror.c (rpl_strerror): Instead of returning a const
18122         string from each and every "case", use a variable, and add a single
18123         cast after the switch.
18124
18125 2009-01-16  Albert Chin-A-Young <china@thewrittenword.com>
18126
18127         * lib/arpa_inet.in.h: Add extern "C" block for C++.
18128
18129 2009-01-16  Bruno Haible  <bruno@clisp.org>
18130
18131         * m4/printf.m4 (gl_SNPRINTF_SIZE1, gl_VSNPRINTF_ZEROSIZE_C99): Use an
18132         array initializer syntax that also works in C++ mode.
18133         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
18134
18135 2009-01-16  Jim Meyering  <meyering@redhat.com>
18136
18137         poll: suppress a warning
18138         * lib/poll.c: Use #pragma GCC diagnostic ignored "-Wtype-limits"
18139         to ignore "...unsigned expression < 0 is always false" warnings.
18140
18141 2009-01-16  Daniel P. Berrange  <berrange@redhat.com>
18142
18143         poll: remove declarations of unused variables
18144         * lib/poll.c (poll) [WIN32_NATIVE]: Remove declarations of unused
18145         sockbuf and optlen.
18146
18147 2009-01-15  Bruno Haible  <bruno@clisp.org>
18148
18149         Make fflush-after-ungetc POSIX compliant on BSD systems.
18150         * lib/fflush.c (clear_ungetc_buffer_preserving_position): New function.
18151         (clear_ungetc_buffer): Implement also for other systems.
18152         (rpl_fflush): On glibc systems, invoke
18153         clear_ungetc_buffer_preserving_position. Otherwise, invoke
18154         clear_ungetc_buffer after fetching the stream's position, not before.
18155
18156 2009-01-15  Bruno Haible  <bruno@clisp.org>
18157
18158         Make fflush-after-ungetc POSIX compliant on glibc systems.
18159         * m4/fflush.m4 (gl_FUNC_FFLUSH): Test also the behaviour of fflush
18160         after ungetc.
18161         * lib/fflush.c (clear_ungetc_buffer): Implement for glibc systems.
18162         (rpl_fflush): On glibc systems, simply call the system's fflush
18163         function after clearing the ungetc buffer.
18164         * lib/fseeko.c (rpl_fseeko): Don't try to lseek past the end of file.
18165         Instead, lseek only to the end of file, then use the system's fseeko
18166         for the rest. On glibc systems, reset the EOF indicator bit.
18167
18168 2009-01-15  Jim Meyering  <meyering@redhat.com>
18169
18170         openmp.m4: revert quote-adding change, for portability to older autoconf
18171         * m4/openmp.m4: Remove the quotes added on 2009-01-14.
18172         This reverts part of 42d1eda5dcce2d68deab7a642e7f29bcd7144a0d.
18173         Simon Josefsson noticed the problem when using autoconf-2.61.
18174
18175 2009-01-15  Bruno Haible  <bruno@clisp.org>
18176
18177         * tests/test-fflush2.sh: Invoke test-fflush2 twice.
18178         * tests/test-fflush2.c (ASSERT): Always fail.
18179         (main): Add two tests for fflush() after ungetc(), taking into account
18180         the Austin Group's clarification.
18181         Suggested by Eric Blake.
18182
18183 2009-01-15  Albert Chin-A-Young  <china@thewrittenword.com>
18184
18185         mktime.m4: remove K&R-style function prototypes
18186         * m4/mktime.m4 (AC_FUNC_MKTIME): Remove K&R-style function prototypes
18187         for the Sun C++ compiler.
18188
18189 2009-01-14  Bruno Haible  <bruno@clisp.org>
18190
18191         * lib/stdint.in.h (_GL_JUST_INCLUDE_SYSTEM_WCHAR_H): New macro, defined
18192         while including <wchar.h>.
18193         * lib/wchar.in.h: In two particular situations on HP-UX, include only
18194         the system's <wchar.h> file.
18195         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
18196
18197 2009-01-14  Bruno Haible  <bruno@clisp.org>
18198
18199         * m4/csharp.m4: Don't mention gettext on the serial number line.
18200         * m4/csharpexec.m4: Likewise.
18201         * m4/eaccess.m4: Likewise.
18202         * m4/javaexec.m4: Likewise.
18203         * m4/sig_atomic_t.m4: Likewise.
18204         * m4/tmpdir.m4: Likewise.
18205         * m4/intldir.m4: Bump gettext version.
18206         * m4/lib-ld.m4: Likewise.
18207
18208 2009-01-14  Bruno Haible  <bruno@clisp.org>
18209
18210         * lib/progname.c (set_program_name): Add more comments.
18211         Reported by Sergey Poznyakoff <gray@gnu.org.ua>.
18212
18213 2009-01-14  Simon Josefsson  <simon@josefsson.org>
18214
18215         * lib/sys_stat.in.h: Include sys/types.h for nlink_t on systems
18216         were sys/stat.h does not define it.
18217
18218 2009-01-14  Jim Meyering  <meyering@redhat.com>
18219
18220         many *.m4 files: improve m4 quoting
18221         99% of this change was performed by running the following commands:
18222         git ls-files | grep '\.m4$' | xargs perl -pi \
18223           -e 's/(AC_\w+\()([^[()]+?)([,)])/$1\[$2]$3/g;' \
18224           -e 's/(AC_\w+\((?:\[[^,]+?\], ){1})([^,[()]+?)([,)])/$1\[$2]$3/g;' \
18225           -e 's/(AC_\w+\((?:\[[^,]+?\], ){2})([^,[()]+?)([,)])/$1\[$2]$3/g;' \
18226           -e 's/(AC_\w+\((?:\[[^,]+?\], ){3})([^,[()]+?)([,)])/$1\[$2]$3/g'
18227         perl -pi -e 's/\[\.\.\.\]/.../' m4/onceonly.m4
18228         The remainder were to add Copyright dates, increment serial numbers,
18229         undo some changes in comments, exclude m4/intl.m4, and add quotes
18230         around the "1" in ",1" where the unusual spacing prohibited the
18231         above regexps from doing the job.  For more details, see
18232         <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/16175>.
18233         * m4/acl.m4: Modified.
18234         * m4/afs.m4: Likewise.
18235         * m4/alloca.m4: Likewise.
18236         * m4/argp.m4: Likewise.
18237         * m4/argz.m4: Likewise.
18238         * m4/atexit.m4: Likewise.
18239         * m4/bison-i18n.m4: Likewise.
18240         * m4/bison.m4: Likewise.
18241         * m4/byteswap.m4: Likewise.
18242         * m4/c-stack.m4: Likewise.
18243         * m4/c-strtod.m4: Likewise.
18244         * m4/calloc.m4: Likewise.
18245         * m4/canonicalize-lgpl.m4: Likewise.
18246         * m4/chown.m4: Likewise.
18247         * m4/clock_time.m4: Likewise.
18248         * m4/codeset.m4: Likewise.
18249         * m4/copy-file.m4: Likewise.
18250         * m4/csharp.m4: Likewise.
18251         * m4/csharpcomp.m4: Likewise.
18252         * m4/csharpexec.m4: Likewise.
18253         * m4/d-ino.m4: Likewise.
18254         * m4/d-type.m4: Likewise.
18255         * m4/dirfd.m4: Likewise.
18256         * m4/double-slash-root.m4: Likewise.
18257         * m4/eaccess.m4: Likewise.
18258         * m4/eealloc.m4: Likewise.
18259         * m4/environ.m4: Likewise.
18260         * m4/errno_h.m4: Likewise.
18261         * m4/euidaccess.m4: Likewise.
18262         * m4/execute.m4: Likewise.
18263         * m4/fatal-signal.m4: Likewise.
18264         * m4/fchdir.m4: Likewise.
18265         * m4/fcntl_h.m4: Likewise.
18266         * m4/fileblocks.m4: Likewise.
18267         * m4/filenamecat.m4: Likewise.
18268         * m4/findprog.m4: Likewise.
18269         * m4/flexmember.m4: Likewise.
18270         * m4/fnmatch.m4: Likewise.
18271         * m4/fopen.m4: Likewise.
18272         * m4/fpending.m4: Likewise.
18273         * m4/fprintf-posix.m4: Likewise.
18274         * m4/free.m4: Likewise.
18275         * m4/frexp.m4: Likewise.
18276         * m4/frexpl.m4: Likewise.
18277         * m4/fsusage.m4: Likewise.
18278         * m4/ftruncate.m4: Likewise.
18279         * m4/gc-camellia.m4: Likewise.
18280         * m4/gc-random.m4: Likewise.
18281         * m4/gc.m4: Likewise.
18282         * m4/getaddrinfo.m4: Likewise.
18283         * m4/getcwd-abort-bug.m4: Likewise.
18284         * m4/getcwd-path-max.m4: Likewise.
18285         * m4/getdate.m4: Likewise.
18286         * m4/getdomainname.m4: Likewise.
18287         * m4/getgroups.m4: Likewise.
18288         * m4/gethostname.m4: Likewise.
18289         * m4/gethrxtime.m4: Likewise.
18290         * m4/getline.m4: Likewise.
18291         * m4/getloadavg.m4: Likewise.
18292         * m4/getndelim2.m4: Likewise.
18293         * m4/getpass.m4: Likewise.
18294         * m4/gettext.m4: Likewise.
18295         * m4/gettime.m4: Likewise.
18296         * m4/gettimeofday.m4: Likewise.
18297         * m4/gnulib-common.m4: Likewise.
18298         * m4/group-member.m4: Likewise.
18299         * m4/host-os.m4: Likewise.
18300         * m4/iconv.m4: Likewise.
18301         * m4/iconv_open.m4: Likewise.
18302         * m4/inet_ntop.m4: Likewise.
18303         * m4/inet_pton.m4: Likewise.
18304         * m4/inline.m4: Likewise.
18305         * m4/intldir.m4: Likewise.
18306         * m4/intlmacosx.m4: Likewise.
18307         * m4/intmax.m4: Likewise.
18308         * m4/intmax_t.m4: Likewise.
18309         * m4/inttypes.m4: Likewise.
18310         * m4/inttypes_h.m4: Likewise.
18311         * m4/inttypes-pri.m4: Likewise.
18312         * m4/isapipe.m4: Likewise.
18313         * m4/isnand.m4: Likewise.
18314         * m4/isnanf.m4: Likewise.
18315         * m4/isnanl.m4: Likewise.
18316         * m4/javacomp.m4: Likewise.
18317         * m4/javaexec.m4: Likewise.
18318         * m4/jm-winsz1.m4: Likewise.
18319         * m4/jm-winsz2.m4: Likewise.
18320         * m4/lchown.m4: Likewise.
18321         * m4/lcmessage.m4: Likewise.
18322         * m4/ldexpl.m4: Likewise.
18323         * m4/lib-ld.m4: Likewise.
18324         * m4/lib-link.m4: Likewise.
18325         * m4/libsigsegv.m4: Likewise.
18326         * m4/link-follow.m4: Likewise.
18327         * m4/localcharset.m4: Likewise.
18328         * m4/locale-fr.m4: Likewise.
18329         * m4/locale-ja.m4: Likewise.
18330         * m4/locale-tr.m4: Likewise.
18331         * m4/locale-zh.m4: Likewise.
18332         * m4/lock.m4: Likewise.
18333         * m4/longlong.m4: Likewise.
18334         * m4/ls-mntd-fs.m4: Likewise.
18335         * m4/lstat.m4: Likewise.
18336         * m4/malloc.m4: Likewise.
18337         * m4/mathl.m4: Likewise.
18338         * m4/mbrtowc.m4: Likewise.
18339         * m4/mbstate_t.m4: Likewise.
18340         * m4/mbswidth.m4: Likewise.
18341         * m4/memchr.m4: Likewise.
18342         * m4/memcmp.m4: Likewise.
18343         * m4/memcpy.m4: Likewise.
18344         * m4/memmem.m4: Likewise.
18345         * m4/memmove.m4: Likewise.
18346         * m4/mempcpy.m4: Likewise.
18347         * m4/memrchr.m4: Likewise.
18348         * m4/memset.m4: Likewise.
18349         * m4/minmax.m4: Likewise.
18350         * m4/mkdir-slash.m4: Likewise.
18351         * m4/mkdtemp.m4: Likewise.
18352         * m4/mktime.m4: Likewise.
18353         * m4/mmap-anon.m4: Likewise.
18354         * m4/mountlist.m4: Likewise.
18355         * m4/nanosleep.m4: Likewise.
18356         * m4/nls.m4: Likewise.
18357         * m4/nocrash.m4: Likewise.
18358         * m4/open.m4: Likewise.
18359         * m4/openat.m4: Likewise.
18360         * m4/openmp.m4: Likewise.
18361         * m4/pathmax.m4: Likewise.
18362         * m4/perl.m4: Likewise.
18363         * m4/physmem.m4: Likewise.
18364         * m4/pipe.m4: Likewise.
18365         * m4/po.m4: Likewise.
18366         * m4/poll.m4: Likewise.
18367         * m4/posixtm.m4: Likewise.
18368         * m4/posixver.m4: Likewise.
18369         * m4/printf-frexp.m4: Likewise.
18370         * m4/printf-frexpl.m4: Likewise.
18371         * m4/printf-posix.m4: Likewise.
18372         * m4/printf-posix-rpl.m4: Likewise.
18373         * m4/printf.m4: Likewise.
18374         * m4/progtest.m4: Likewise.
18375         * m4/putenv.m4: Likewise.
18376         * m4/readline.m4: Likewise.
18377         * m4/readlink.m4: Likewise.
18378         * m4/readutmp.m4: Likewise.
18379         * m4/realloc.m4: Likewise.
18380         * m4/regex.m4: Likewise.
18381         * m4/relocatable.m4: Likewise.
18382         * m4/relocatable-lib.m4: Likewise.
18383         * m4/rename-dest-slash.m4: Likewise.
18384         * m4/rename.m4: Likewise.
18385         * m4/rmdir-errno.m4: Likewise.
18386         * m4/rmdir.m4: Likewise.
18387         * m4/roundf.m4: Likewise.
18388         * m4/roundl.m4: Likewise.
18389         * m4/rpmatch.m4: Likewise.
18390         * m4/save-cwd.m4: Likewise.
18391         * m4/selinux-selinux-h.m4: Likewise.
18392         * m4/setenv.m4: Likewise.
18393         * m4/settime.m4: Likewise.
18394         * m4/sig2str.m4: Likewise.
18395         * m4/sig_atomic_t.m4: Likewise.
18396         * m4/signalblocking.m4: Likewise.
18397         * m4/signbit.m4: Likewise.
18398         * m4/sigpipe.m4: Likewise.
18399         * m4/sockets.m4: Likewise.
18400         * m4/sockpfaf.m4: Likewise.
18401         * m4/st_dm_mode.m4: Likewise.
18402         * m4/stat-time.m4: Likewise.
18403         * m4/stdbool.m4: Likewise.
18404         * m4/stdint.m4: Likewise.
18405         * m4/stdint_h.m4: Likewise.
18406         * m4/stpcpy.m4: Likewise.
18407         * m4/stpncpy.m4: Likewise.
18408         * m4/strcase.m4: Likewise.
18409         * m4/strchrnul.m4: Likewise.
18410         * m4/strcspn.m4: Likewise.
18411         * m4/strdup.m4: Likewise.
18412         * m4/strftime.m4: Likewise.
18413         * m4/strndup.m4: Likewise.
18414         * m4/strnlen.m4: Likewise.
18415         * m4/strpbrk.m4: Likewise.
18416         * m4/strptime.m4: Likewise.
18417         * m4/strsep.m4: Likewise.
18418         * m4/strtod.m4: Likewise.
18419         * m4/strtoimax.m4: Likewise.
18420         * m4/strtok_r.m4: Likewise.
18421         * m4/strtol.m4: Likewise.
18422         * m4/strtoll.m4: Likewise.
18423         * m4/strtoul.m4: Likewise.
18424         * m4/strtoull.m4: Likewise.
18425         * m4/strtoumax.m4: Likewise.
18426         * m4/strverscmp.m4: Likewise.
18427         * m4/threadlib.m4: Likewise.
18428         * m4/timegm.m4: Likewise.
18429         * m4/tm_gmtoff.m4: Likewise.
18430         * m4/tmpdir.m4: Likewise.
18431         * m4/tmpfile.m4: Likewise.
18432         * m4/tzset.m4: Likewise.
18433         * m4/uintmax_t.m4: Likewise.
18434         * m4/unlinkdir.m4: Likewise.
18435         * m4/unlocked-io.m4: Likewise.
18436         * m4/uptime.m4: Likewise.
18437         * m4/userspec.m4: Likewise.
18438         * m4/utimbuf.m4: Likewise.
18439         * m4/utime.m4: Likewise.
18440         * m4/utimes-null.m4: Likewise.
18441         * m4/utimes.m4: Likewise.
18442         * m4/vararrays.m4: Likewise.
18443         * m4/vasnprintf.m4: Likewise.
18444         * m4/vfprintf-posix.m4: Likewise.
18445         * m4/vprintf-posix.m4: Likewise.
18446         * m4/wait-process.m4: Likewise.
18447         * m4/wchar_t.m4: Likewise.
18448         * m4/wint_t.m4: Likewise.
18449         * m4/write-any-file.m4: Likewise.
18450         * m4/yield.m4: Likewise.
18451
18452 2009-01-13  Bruno Haible  <bruno@clisp.org>
18453
18454         Avoid test-copy-file.sh failures when ACL support insufficient.
18455         * modules/copy-file-tests (Makefile.am): Pass USE_ACL in
18456         TESTS_ENVIRONMENT.
18457         * tests/test-copy-file.sh: Skip the ACL comparisons if USE_ACL is 0.
18458         Reported by Jim Meyering.
18459
18460 2009-01-13  Bruno Haible  <bruno@clisp.org>
18461
18462         * modules/unistdio/u-printf-args (Files): Add m4/stdint_h.m4 and
18463         m4/inttypes_h.m4, needed by m4/intmax_t.m4.
18464         * modules/unistdio/u8-printf-parse (Files): Likewise.
18465         * modules/unistdio/u32-printf-parse (Files): Likewise.
18466         * modules/unistdio/ulc-printf-parse (Files): Likewise.
18467
18468 2009-01-13  Simon Josefsson  <simon@josefsson.org>
18469
18470         * modules/unistdio/u16-printf-parse (Files): Add m4/stdint_h.m4
18471         and m4/inttypes_h.m4 too.
18472
18473 2009-01-12  Eric Blake  <ebb9@byu.net>
18474
18475         tests: IRIX 6.2 cc can't compile -0.0 into .data
18476         * tests/test-ceill.c (minus_zero): Compute -0.0L at runtime,
18477         rather than at compile-time.
18478         * tests/test-floorl.c (minus_zero): Likewise.
18479         * tests/test-frexpl.c (minus_zero): Likewise.
18480         * tests/test-isnan.c (minus_zerol): Likewise.
18481         * tests/test-isnanl.h (minus_zero): Likewise.
18482         * tests/test-ldexpl.c (minus_zero): Likewise.
18483         * tests/test-roundl.c (minus_zero): Likewise.
18484         * tests/test-signbit.c (minus_zerol): Likewise.
18485         * tests/test-snprintf-posix.h (minus_zerol): Likewise.
18486         * tests/test-sprintf-posix.h (minus_zerol): Likewise.
18487         * tests/test-truncl.c (minus_zero): Likewise.
18488         * tests/test-vasnprintf-posix.c (minus_zerol): Likewise.
18489         * tests/test-vasprintf-posix.c (minus_zerol): Likewise.
18490         Reported by Tom G. Christensen and Nelson H. F. Beebe.
18491
18492 2009-01-09  Paolo Bonzini  <bonzini@gnu.org>
18493
18494         regex: fix glibc bug 9697
18495         * lib/regcomp.c (re_compile_fastmap_iter): Rewrite COMPLEX_BRACKET
18496         handling.
18497
18498 2009-01-09  Paolo Bonzini  <bonzini@gnu.org>
18499
18500         regex: fix glibc bug 697
18501         * lib/regexec.c (prune_impossible_nodes): Handle sifted_states[0]
18502         being NULL also if there are no backreferences.
18503
18504 2009-01-09  Paolo Bonzini  <bonzini@gnu.org>
18505
18506         regex: merge glibc changes
18507         * lib/regcomp.c (re_compile_fastmap_iter): Use __mbrtowc.
18508         * lib/regex_internal.c (build_wcs_buffer, build_wcs_upper_buffer,
18509         re_string_skip_chars, re_string_reconstruct): Likewise.
18510         * lib/regex_internal.h [!_LIBC] (__mbrtowc): New #define.
18511
18512 2009-01-07  Jim Meyering  <meyering@redhat.com>
18513
18514         poll: filter through cppi
18515         * lib/poll.c: Indent cpp directives to reflect nesting.
18516
18517 2009-01-07  Daniel P. Berrange  <berrange@redhat.com>
18518
18519         poll: don't return uninitialized
18520         * lib/poll.c (poll) [WIN32_NATIVE]: Initialize "rc".
18521
18522 2009-01-06  Jeremy Olexa <darkside@gentoo.org>  (tiny change)
18523
18524         avoid compile failure on AIX 6.1
18525         * lib/getloadavg.c [HAVE_LIBPERFSTAT]: Include <sys/protosw.h>.
18526         Details in http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/15465
18527
18528 2009-01-04  Jim Meyering  <meyering@redhat.com>
18529
18530         remove duplicate inclusion of <stdio.h>
18531         * tests/test-fprintf-posix.c: Likewise.
18532         * tests/test-printf-posix.c: Likewise.
18533         * tests/test-snprintf-posix.c: Likewise.
18534         * tests/test-sprintf-posix.c: Likewise.
18535         * tests/test-vasprintf-posix.c: Likewise.
18536         * tests/test-vfprintf-posix.c: Likewise.
18537         * tests/test-vprintf-posix.c: Likewise.
18538         * tests/test-vsnprintf-posix.c: Likewise.
18539         * tests/test-vsprintf-posix.c: Likewise.
18540
18541 2009-01-03  Jim Meyering  <meyering@redhat.com>
18542
18543         gnulib-tool: fix sed-based filtering
18544         * gnulib-tool (func_filter_filelist): Remove extra backslash
18545         in sed_fff_filter definition.
18546
18547 2009-01-02  Jim Meyering  <meyering@redhat.com>
18548
18549         strftime: avoid compilation failure on Solaris 2.6
18550         * modules/strftime (Depends-on): Add mbrlen and mbsinit.
18551         * lib/strftime.c [DO_MULTIBYTE]: Include <wchar.h> unconditionally.
18552         Don't #define mbrlen or mbsinit, since now they're guaranteed to
18553         be available.  Reported by Tom G. Christensen.  Details in
18554         <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/16180>.
18555
18556 2009-01-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18557             Bruno Haible  <bruno@clisp.org>
18558
18559         Speed up gnulib-tool by doing more string processing through shell
18560         built-ins.
18561         * gnulib-tool (fast_func_append): New variable.
18562         (func_remove_prefix, func_remove_suffix): New functions.
18563         (fast_func_remove_prefix, fast_func_remove_suffix): New variables.
18564         (func_filter_filelist): New function.
18565         (func_get_dependencies): Use func_remove_suffix instead of sed.
18566         (func_get_automake_snippet): Use func_filter_filelist instead of a
18567         subshell and sed invocation.
18568
18569 2009-01-01  Bruno Haible  <bruno@clisp.org>
18570
18571         Fix a security bug.
18572         * gnulib-tool (func_import, import, update): Don't allow the characters
18573         '"', '$', '`', '\' in macro arguments that become part of commands that
18574         are evaluated.
18575
18576 2009-01-01  Bruno Haible  <bruno@clisp.org>
18577
18578         * gnulib-tool (func_reset_sigpipe): Add more comments.
18579
18580 2009-01-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18581
18582         * gnulib-tool (func_modules_add_dummy, func_emit_lib_Makefile_am,
18583         func_emit_tests_Makefile_am, func_import): Abort loops early if we
18584         already know the answer.
18585
18586 2009-01-01  Jim Meyering  <meyering@redhat.com>
18587
18588         * lib/version-etc.c (version_etc_va): Update copyright year.
18589
18590 2008-12-30  Bruno Haible  <bruno@clisp.org>
18591
18592         * m4/lib-prefix.m4 (AC_LIB_LINKFLAGS_BODY): Don't overwrite
18593         LIB${NAME}_PREFIX when considering the dependencies of lib${name}.
18594         Reported by Charles Wilson <cygwin@cwilson.fastmail.fm>.
18595
18596 2008-12-29  Eric Blake  <ebb9@byu.net>
18597
18598         multiarch: avoid autoconf AC_REQUIRE bug
18599         * m4/multiarch.m4 (gl_MULTIARCH): Split body...
18600         (gl_MULTIARCH_BODY): ...into new macro, to work around bug in Autoconf
18601         2.63 and older.
18602         Reported by Bruno Haible, and analyzed in
18603         http://lists.gnu.org/archive/html/bug-autoconf/2008-12/msg00039.html
18604
18605 2008-12-29  Bruno Haible  <bruno@clisp.org>
18606
18607         * gnulib-tool (func_import): When generating sed-ignore-removed, handle
18608         files in subdirectories correctly.
18609         Reported by Ralf Wildenhues.
18610
18611 2008-12-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
18612
18613         * gnulib-tool (func_update_ignorelist): Use 'join - FILE'
18614         rather than 'join FILE -', for Solaris join.
18615
18616 2008-12-29  Bruno Haible  <bruno@clisp.org>
18617
18618         * m4/codeset.m4 (AM_LANGINFO_CODESET): More systematic m4 argument
18619         quoting.
18620         * m4/gettext.m4 (AM_GNU_GETTEXT): Likewise.
18621         * m4/glibc2.m4 (gt_GLIBC2): Likewise.
18622         * m4/glibc21.m4 (gl_GLIBC21): Likewise.
18623         * m4/iconv.m4 (AM_ICONV_LINK, AM_ICONV): Likewise.
18624         * m4/intdiv0.m4 (gt_INTDIV0): Likewise.
18625         * m4/intlmacosx.m4 (gt_INTL_MACOSX): Likewise.
18626         * m4/intmax.m4 (gt_TYPE_INTMAX_T): Likewise.
18627         * m4/inttypes-pri.m4 (gt_INTTYPES_PRI): Likewise.
18628         * m4/inttypes_h.m4 (gl_AC_HEADER_INTTYPES_H): Likewise.
18629         * m4/lcmessage.m4 (gt_LC_MESSAGES): Likewise.
18630         * m4/nls.m4 (AM_NLS): Likewise.
18631         * m4/po.m4 (AM_PO_SUBDIRS): Likewise.
18632         * m4/printf-posix.m4 (gt_PRINTF_POSIX): Likewise.
18633         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): Likewise.
18634         * m4/size_max.m4 (gl_SIZE_MAX): Likewise.
18635         * m4/stdint_h.m4 (gl_AC_HEADER_STDINT_H): Likewise.
18636         * m4/threadlib.m4 (gl_THREADLIB_BODY): Likewise.
18637         * m4/uintmax_t.m4 (gl_AC_TYPE_UINTMAX_T): Likewise.
18638         * m4/visibility.m4 (gl_VISIBILITY): Likewise.
18639         * m4/wchar_t.m4 (gt_TYPE_WCHAR_T): Likewise.
18640         * m4/wint_t.m4 (gt_TYPE_WINT_T): Likewise.
18641         * m4/xsize.m4 (gl_XSIZE): Likewise.
18642         Suggested by Jim Meyering.
18643
18644 2008-11-17  Bruce Korb  <bkorb@gnu.org>
18645
18646         * lib/parse-duration.h: non-iso form accepts years, months weeks, too
18647         * lib/parse-duration.c: use a switch instead of cascading if's.
18648
18649 2008-12-29  Eric Blake  <ebb9@byu.net>
18650
18651         wchar.h: supply WEOF on Irix 5.3
18652         * lib/wchar.in.h (wint_t): Also supply WEOF.
18653         * lib/wctype.in.h (wint_t): Likewise.
18654         * doc/posix-headers/wchar.texi (wchar.h): Document the bug.
18655         * doc/posix-headers/wctype.texi (wctype.h): Likewise.
18656         Reported by Tom G. Christensen.
18657
18658 2008-12-26  Bruno Haible  <bruno@clisp.org>
18659
18660         * m4/multiarch.m4 (gl_MULTIARCH): Recognize also the architecture names
18661         i486, i586, i686.
18662
18663 2008-12-26  Bruno Haible  <bruno@clisp.org>
18664
18665         * lib/stdlib.in.h (struct random_data): Fix indentation of comments.
18666
18667 2008-12-26  Bruno Haible  <bruno@clisp.org>
18668
18669         * lib/stdint.in.h: Move the include of <wchar.h> down until after all
18670         the types are defined. Also conditionalize it on __STDC_LIMIT_MACROS,
18671         not __STDC_CONSTANT_MACROS.
18672         Reported by Nelson H. F. Beebe <beebe@math.utah.edu> via Eric Blake.
18673
18674 2008-12-25  Bruno Haible  <bruno@clisp.org>
18675
18676         Add support for universal builds to vasnprintf.
18677         * m4/printf.m4 (gl_PRINTF_ENOMEM): Require gl_MULTIARCH. In Apple
18678         universal builds, guess no.
18679         * modules/vasnprintf-posix (Depends-on): Add multiarch.
18680         * modules/vasprintf-posix (Depends-on): Likewise.
18681         * modules/fprintf-posix (Depends-on): Likewise.
18682         * modules/vfprintf-posix (Depends-on): Likewise.
18683         * modules/snprintf-posix (Depends-on): Likewise.
18684         * modules/vsnprintf-posix (Depends-on): Likewise.
18685         * modules/sprintf-posix (Depends-on): Likewise.
18686         * modules/vsprintf-posix (Depends-on): Likewise.
18687         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
18688         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
18689         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
18690         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
18691         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
18692         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
18693         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
18694
18695         Add support for universal builds to <inttypes.h>.
18696         * lib/inttypes.in.h (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX,
18697         _SCNu64_PREFIX): In Apple
18698         universal builds, define directly, using _LP64.
18699         * m4/inttypes.m4 (gl_INTTYPES_H): In Apple universal builds, set
18700         INT64_MAX_EQ_LONG_MAX and UINT64_MAX_EQ_ULONG_MAX to -1.
18701         * modules/inttypes (Depends-on): Add multiarch.
18702         (Makefile.am): Substitute APPLE_UNIVERSAL_BUILD.
18703
18704         Add support for universal builds to <stdint.h>.
18705         * lib/stdint.in.h (PDFDIFF_MIN, PTRDIFF_MAX, SIZE_MAX): In Apple
18706         universal builds, define directly, using _LP64.
18707         * m4/stdint.m4 (gl_STDINT_TYPE_PROPERTIES): Require gl_MULTIARCH. In
18708         Apple universal builds, don't test for the size and suffix of ptrdiff_t
18709         and size_t.
18710         * modules/stdint (Depends-on): Add multiarch.
18711         (Makefile.am): Substitute APPLE_UNIVERSAL_BUILD.
18712
18713         New module 'multiarch'.
18714         * modules/multiarch: New file.
18715         * m4/multiarch.m4: New file.
18716
18717 2008-12-25  Bruno Haible  <bruno@clisp.org>
18718
18719         * gnulib-tool (func_create_testdir): Avoid failure of mv command.
18720
18721 2008-12-25  Bruno Haible  <bruno@clisp.org>
18722
18723         * modules/btowc (License): Relicense under LGPLv2+.
18724         * modules/mbsinit (License): Likewise.
18725         * modules/mbrtowc (License): Likewise.
18726         * modules/wcrtomb (License): Likewise.
18727         * modules/streq (License): Likewise.
18728         Reported by David Lutterkort <lutter@redhat.com>.
18729
18730 2008-12-23  Bruno Haible  <bruno@clisp.org>
18731
18732         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Fix conditional and comment.
18733
18734 2008-12-23  Bruno Haible  <bruno@clisp.org>
18735
18736         Module getaddrinfo requires linking with $(GETADDRINFO_LIB).
18737         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Put link options into
18738         GETADDRINFO_LIB, not in LIBS.
18739         * modules/getaddrinfo (Link): Set to $(GETADDRINFO_LIB).
18740         * modules/canon-host (Link): Likewise.
18741         * NEWS: Mention the change.
18742         * modules/getaddrinfo-tests (test_getaddrinfo_LDADD): Add the
18743         GETADDRINFO_LIB.
18744
18745 2008-12-22  Bruno Haible  <bruno@clisp.org>
18746
18747         * doc/posix-functions/iswalnum_l.texi: Mention limitation of wchar_t.
18748         * doc/posix-functions/iswalpha_l.texi: Likewise.
18749         * doc/posix-functions/iswblank_l.texi: Likewise.
18750         * doc/posix-functions/iswcntrl_l.texi: Likewise.
18751         * doc/posix-functions/iswctype_l.texi: Likewise.
18752         * doc/posix-functions/iswdigit_l.texi: Likewise.
18753         * doc/posix-functions/iswgraph_l.texi: Likewise.
18754         * doc/posix-functions/iswlower_l.texi: Likewise.
18755         * doc/posix-functions/iswprint_l.texi: Likewise.
18756         * doc/posix-functions/iswpunct_l.texi: Likewise.
18757         * doc/posix-functions/iswspace_l.texi: Likewise.
18758         * doc/posix-functions/iswupper_l.texi: Likewise.
18759         * doc/posix-functions/iswxdigit_l.texi: Likewise.
18760         * doc/posix-functions/mbsnrtowcs.texi: Likewise.
18761         * doc/posix-functions/open_wmemstream.texi: Likewise.
18762         * doc/posix-functions/swscanf.texi: Likewise.
18763         * doc/posix-functions/towctrans_l.texi: Likewise.
18764         * doc/posix-functions/towlower.texi: Likewise.
18765         * doc/posix-functions/towlower_l.texi: Likewise.
18766         * doc/posix-functions/towupper.texi: Likewise.
18767         * doc/posix-functions/towupper_l.texi: Likewise.
18768         * doc/posix-functions/vfwprintf.texi: Likewise.
18769         * doc/posix-functions/vfwscanf.texi: Likewise.
18770         * doc/posix-functions/vswscanf.texi: Likewise.
18771         * doc/posix-functions/vwprintf.texi: Likewise.
18772         * doc/posix-functions/vwscanf.texi: Likewise.
18773         * doc/posix-functions/wcpcpy.texi: Likewise.
18774         * doc/posix-functions/wcpncpy.texi: Likewise.
18775         * doc/posix-functions/wcscasecmp.texi: Likewise.
18776         * doc/posix-functions/wcscasecmp_l.texi: Likewise.
18777         * doc/posix-functions/wcscoll_l.texi: Likewise.
18778         * doc/posix-functions/wcsdup.texi: Likewise.
18779         * doc/posix-functions/wcsncasecmp.texi: Likewise.
18780         * doc/posix-functions/wcsncasecmp_l.texi: Likewise.
18781         * doc/posix-functions/wcsnlen.texi: Likewise.
18782         * doc/posix-functions/wcsnrtombs.texi: Likewise.
18783         * doc/posix-functions/wcsxfrm_l.texi: Likewise.
18784         * doc/posix-functions/wctrans_l.texi: Likewise.
18785         * doc/posix-functions/wctype_l.texi: Likewise.
18786         * doc/glibc-functions/fgetwc_unlocked.texi: Likewise.
18787         * doc/glibc-functions/fgetws_unlocked.texi: Likewise.
18788         * doc/glibc-functions/fputwc_unlocked.texi: Likewise.
18789         * doc/glibc-functions/fputws_unlocked.texi: Likewise.
18790         * doc/glibc-functions/getwc_unlocked.texi: Likewise.
18791         * doc/glibc-functions/getwchar_unlocked.texi: Likewise.
18792         * doc/glibc-functions/putwc_unlocked.texi: Likewise.
18793         * doc/glibc-functions/putwchar_unlocked.texi: Likewise.
18794         * doc/glibc-functions/wcschrnul.texi: Likewise.
18795         * doc/glibc-functions/wcsftime_l.texi: Likewise.
18796         * doc/glibc-functions/wcstod_l.texi: Likewise.
18797         * doc/glibc-functions/wcstof_l.texi: Likewise.
18798         * doc/glibc-functions/wcstol_l.texi: Likewise.
18799         * doc/glibc-functions/wcstold_l.texi: Likewise.
18800         * doc/glibc-functions/wcstoll_l.texi: Likewise.
18801         * doc/glibc-functions/wcstoq.texi: Likewise.
18802         * doc/glibc-functions/wcstoul_l.texi: Likewise.
18803         * doc/glibc-functions/wcstoull_l.texi: Likewise.
18804         * doc/glibc-functions/wcstouq.texi: Likewise.
18805         * doc/glibc-functions/wmempcpy.texi: Likewise.
18806
18807 2008-12-22  Ingo Weinhold  <ingo_weinhold@gmx.de>  (tiny change)
18808             Eric Blake  <ebb9@byu.net>
18809             Paolo Bonzini  <bonzini@gnu.org>
18810             Bruno Haible  <bruno@clisp.org>
18811
18812         Make c-stack work on Haiku.
18813         * lib/c-stack.c (SA_ONSTACK): Define fallback.
18814         (c_stack_action): Use SA_ONSTACK flag.
18815
18816 2008-12-22  Bruno Haible  <bruno@clisp.org>
18817
18818         * m4/locale-fr.m4 (gt_LOCALE_FR_UTF8): Treat Haiku like BeOS.
18819
18820 2008-12-22  Bruno Haible  <bruno@clisp.org>
18821
18822         Work around mbrlen() bugs on AIX, HP-UX, OSF/1, Solaris.
18823         * m4/mbrlen.m4 (gl_FUNC_MBRLEN): Set REPLACE_MBRLEN if mbrtowc is
18824         being overridden.
18825         (gl_MBRLEN_INCOMPLETE_STATE, gl_MBRLEN_RETVAL, gl_MBRLEN_NUL_RETVAL):
18826         New macros.
18827         * lib/wchar.in.h (mbrlen): Override if REPLACE_MBRLEN is set.
18828         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_MBRLEN.
18829         * modules/wchar (Makefile.am): Substitute REPLACE_MBRLEN.
18830         * doc/posix-functions/mbrlen.texi: Mention the various platform bugs.
18831
18832 2008-12-22  Bruno Haible  <bruno@clisp.org>
18833
18834         * m4/mbrtowc.m4 (gl_MBRTOWC_INCOMPLETE_STATE): Remove unused variable
18835         from test code.
18836
18837 2008-12-22  Eric Blake  <ebb9@byu.net>
18838
18839         Avoid gcc warnings on cygwin.
18840         * lib/regex_internal.c (re_string_reconstruct) [!RE_ENABLE_I18N]:
18841         Avoid unused variable.
18842         * lib/regexec.c (check_arrival_add_next_nodes) [!RE_ENABLE_I18N]:
18843         Likewise.
18844
18845 2008-12-22  Bruno Haible  <bruno@clisp.org>
18846
18847         Remove HAVE_MBRTOWC conditionals.
18848         * lib/mbscasecmp.c: Include mbuiter.h unconditionally.
18849         (mbscasecmp): Assume mbrtowc function.
18850         * lib/mbscasestr.c: Include mbuiter.h unconditionally.
18851         (knuth_morris_pratt_multibyte, mbscasestr): Assume mbrtowc function.
18852         * lib/mbschr.c: Include mbuiter.h unconditionally.
18853         (mbschr): Assume mbrtowc function.
18854         * lib/mbscspn.c: Include mbuiter.h unconditionally.
18855         (mbscspn): Assume mbrtowc function.
18856         * lib/mbslen.c: Include mbuiter.h unconditionally.
18857         (mbslen): Assume mbrtowc function.
18858         * lib/mbsncasecmp.c: Include mbuiter.h unconditionally.
18859         (mbsncasecmp): Assume mbrtowc function.
18860         * lib/mbsnlen.c: Include mbiter.h unconditionally.
18861         (mbsnlen): Assume mbrtowc function.
18862         * lib/mbspbrk.c: Include mbuiter.h unconditionally.
18863         (mbspbrk): Assume mbrtowc function.
18864         * lib/mbspcasecmp.c: Include mbuiter.h unconditionally.
18865         (mbspcasecmp): Assume mbrtowc function.
18866         * lib/mbsrchr.c: Include mbuiter.h unconditionally.
18867         (mbsrchr): Assume mbrtowc function.
18868         * lib/mbssep.c: Include mbuiter.h unconditionally.
18869         (mbssep): Assume mbrtowc function.
18870         * lib/mbsspn.c: Include mbuiter.h unconditionally.
18871         (mbsspn): Assume mbrtowc function.
18872         * lib/mbsstr.c: Include mbuiter.h unconditionally.
18873         (knuth_morris_pratt_multibyte, mbsstr): Assume mbrtowc function.
18874         * lib/mbstok_r.c: Include mbuiter.h unconditionally.
18875         (mbstok_r): Assume mbrtowc function.
18876         * lib/propername.c: Include mbuiter.h unconditionally.
18877         (mbsstr_trimmed_wordbounded): Assume mbrtowc function.
18878         * lib/trim.c: Include mbchar.h, mbiter.h uncondtionally.
18879         (trim2): Assume mbrtowc function.
18880         * lib/mbswidth.c (mbsinit): Remove fallback definition.
18881         (mbsnwidth): Assume mbrtowc function.
18882         * modules/mbswidth (Depends-on): Add mbrtowc, mbsinit.
18883         * lib/quotearg.c (MB_CUR_MAX, mbstate_t, mbrtowc, iswprint): Remove
18884         fallback definitions.
18885         * modules/quotearg (Depends-on): Add mbrtowc, mbsinit.
18886
18887 2008-12-22  Bruno Haible  <bruno@clisp.org>
18888
18889         * doc/posix-functions/mbtowc.texi: Mention a glibc bug.
18890
18891 2008-12-22  Paolo Bonzini  <bonzini@gnu.org>
18892
18893         * modules/regex: Request emulations for the mb*/wc* functions we need.
18894         * m4/regex.m4: Don't look for those functions here.
18895         * lib/regex_internal.h: Do not check HAVE_WCRTOMB and HAVE_MBRTOWC.
18896
18897 2008-12-22  Bruno Haible  <bruno@clisp.org>
18898
18899         * modules/fnmatch (Depends-on): Remove duplicated dependency.
18900
18901 2008-12-21  Bruno Haible  <bruno@clisp.org>
18902
18903         Make mbiter.h, mbuiter.h, mbfile.h usable unconditionally.
18904         * modules/mbiter (Depends-on): Add mbrtowc, mbsinit.
18905         (Include): Remove conditionalization.
18906         * modules/mbuiter (Depends-on): Add mbrtowc, mbsinit.
18907         (Include): Remove conditionalization.
18908         * modules/mbfile (Depends-on): Add mbrtowc, mbsinit.
18909         (Include): Remove conditionalization.
18910         * m4/mbiter.m4 (gl_MBITER): Deprecate the use of AC_FUNC_MBRTOWC.
18911         * m4/mbfile.m4 (gl_MBFILE): Likewise.
18912         * NEWS: Mention the change.
18913         Reported by Alan Hourihane <alanh@fairlite.co.uk>
18914         via Sergey Poznyakoff <gray@gnu.org.ua>.
18915
18916 2008-12-21  Bruno Haible  <bruno@clisp.org>
18917
18918         * MODULES.html.sh (Extended multibyte and wide character utilities
18919         <wchar.h>): Add btowc, wctob, mbsinit, mbrlen, mbrtowc, mbsrtowcs,
18920         wcrtomb, wcsrtombs.
18921         (Support for systems lacking POSIX:2008): Add accept, bind, close,
18922         connect, fclose, getpeername, getsockname, getsockopt, hostent, listen,
18923         mbsnrtowcs, posix_spawn*, recv, recvfrom, sched, select, send, sendto,
18924         setsockopt, shutdown, socket, spawn, sys_wait, wcsnrtombs, write.
18925
18926 2008-12-21  Bruno Haible  <bruno@clisp.org>
18927
18928         * MODULES.html.sh: Change section titles to refer to POSIX:2008.
18929
18930 2008-12-21  Bruno Haible  <bruno@clisp.org>
18931
18932         * modules/wcsnrtombs-tests: New file.
18933         * tests/test-wcsnrtombs1.sh: New file.
18934         * tests/test-wcsnrtombs2.sh: New file.
18935         * tests/test-wcsnrtombs3.sh: New file.
18936         * tests/test-wcsnrtombs4.sh: New file.
18937         * tests/test-wcsnrtombs.c: New file.
18938
18939         New module 'wcsnrtombs'.
18940         * lib/wchar.in.h (wcsnrtombs): New declaration.
18941         * lib/wcsnrtombs.c: New file.
18942         * lib/wcsrtombs-state.c: New file.
18943         * lib/wcsrtombs.c: Refer to _gl_wcsrtombs_state.
18944         (internal_state): Remove variable.
18945         * m4/wcsnrtombs.m4: New file.
18946         * m4/wcsrtombs.m4 (gl_FUNC_WCSRTOMBS): Add wcsrtombs-state.c to the
18947         compilation units.
18948         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSNRTOMBS,
18949         HAVE_WCSNRTOMBS.
18950         * modules/wchar (Makefile.am): Substitute GNULIB_WCSNRTOMBS,
18951         HAVE_WCSNRTOMBS.
18952         * modules/wcsnrtombs: New file.
18953         * modules/wcsrtombs (Files): Add lib/wcsrtombs-state.c.
18954         * doc/posix-functions/wcsnrtombs.texi: Mention the new module.
18955
18956 2008-12-21  Bruno Haible  <bruno@clisp.org>
18957
18958         * modules/wcsrtombs-tests: New file.
18959         * tests/test-wcsrtombs1.sh: New file.
18960         * tests/test-wcsrtombs2.sh: New file.
18961         * tests/test-wcsrtombs3.sh: New file.
18962         * tests/test-wcsrtombs4.sh: New file.
18963         * tests/test-wcsrtombs.c: New file.
18964
18965         New module 'wcsrtombs'.
18966         * lib/wchar.in.h (wcsrtombs): New declaration.
18967         * lib/wcsrtombs.c: New file.
18968         * m4/wcsrtombs.m4: New file.
18969         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCSRTOMBS,
18970         HAVE_WCSRTOMBS, REPLACE_WCSRTOMBS.
18971         * modules/wchar (Makefile.am): Substitute GNULIB_WCSRTOMBS,
18972         HAVE_WCSRTOMBS, REPLACE_WCSRTOMBS.
18973         * modules/wcsrtombs: New file.
18974         * doc/posix-functions/wcsrtombs.texi: Mention the new module and the
18975         bugs.
18976
18977 2008-12-21  Bruno Haible  <bruno@clisp.org>
18978
18979         Work around a wcrtomb() bug on Solaris 10 and OSF/1 5.1.
18980         * lib/wchar.in.h (wcrtomb): Override if REPLACE_WCRTOMB is set.
18981         * m4/wcrtomb.m4 (gl_FUNC_WCRTOMB): Test the return value of wcrtomb
18982         with NULL destination argument in various locales. Set REPLACE_WCRTOMB
18983         if not correct.
18984         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_WCRTOMB.
18985         * modules/wchar (Makefile.am): Substitute REPLACE_WCRTOMB.
18986         * modules/wcrtomb (Files): Add m4/locale-fr.m4, m4/locale-ja.m4,
18987         m4/locale-zh.m4, m4/codeset.m4.
18988         * doc/posix-functions/wcrtomb.texi: Document the bug.
18989
18990 2008-12-21  Bruno Haible  <bruno@clisp.org>
18991
18992         Work around a btowc() bug on IRIX 6.5.
18993         * lib/wchar.in.h (btowc): Override if REPLACE_BTOWC is set.
18994         * m4/btowc.m4 (gl_FUNC_BTOWC): Test whether btowc(EOF) is correct. Set
18995         REPLACE_WTOBC if not.
18996         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_BTOWC.
18997         * modules/wchar (Makefile.am): Substitute REPLACE_BTOWC.
18998         * doc/posix-functions/btowc.texi: Mention the IRIX bug.
18999
19000 2008-12-21  Bruno Haible  <bruno@clisp.org>
19001
19002         * modules/wcrtomb-tests: New file.
19003         * tests/test-wcrtomb.sh: New file.
19004         * tests/test-wcrtomb.c: New file.
19005
19006         New module 'wcrtomb'.
19007         * lib/wchar.in.h (wcrtomb): New declaration.
19008         * lib/wcrtomb.c: New file.
19009         * m4/wcrtomb.m4: New file.
19010         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCRTOMB,
19011         HAVE_WCRTOMB.
19012         * modules/wchar (Makefile.am): Substitute GNULIB_WCRTOMB,
19013         HAVE_WCRTOMB.
19014         * modules/wcrtomb: New file.
19015         * doc/posix-functions/wcrtomb.texi: Mention the new module.
19016
19017 2008-12-21  Bruno Haible  <bruno@clisp.org>
19018
19019         * modules/mbrtowc (Files): Add m4/codeset.m4, needed by m4/locale-fr.m4.
19020         * modules/mbsrtowcs (Files): Likewise.
19021         * modules/wctob (Files): Likewise.
19022         * modules/c-strcase-tests (Files): Likewise.
19023         * modules/unistdio/u8-vasnprintf-tests (Files): Likewise.
19024         * modules/unistdio/u16-vasnprintf-tests (Files): Likewise.
19025         * modules/unistdio/u32-vasnprintf-tests (Files): Likewise.
19026         * modules/unistdio/ulc-vasnprintf-tests (Files): Likewise.
19027         * modules/vasnprintf-posix-tests (Files): Likewise.
19028
19029 2008-12-21  William Pursell  <bill.pursell@gmail.com>
19030
19031         gitlog-to-changelog: pass all command-line arguments to git-log
19032         * build-aux/gitlog-to-changelog: When producing a ChangeLog,
19033         it is sometimes convenient to filter the commits in various ways.
19034         gitlog-to-changelog only allows --since to specify a start date,
19035         but git-log itself supports many other filtering mechanisms.
19036         At the moment, I want to filter by branch name.  Rather than
19037         adding a --branch option to gitlog-to-changelog, it seems more
19038         flexible to simply pass all options directly to git-log and let
19039         git do the work.  Notice that this effectively makes --since a
19040         redundant option for gitlog-to-changelog, but removing it would
19041         require current usage to change since calls would then require
19042         an additional '--'.
19043
19044 2008-12-21  Bruno Haible  <bruno@clisp.org>
19045
19046         * modules/mbsnrtowcs-tests: New file.
19047         * tests/test-mbsnrtowcs1.sh: New file.
19048         * tests/test-mbsnrtowcs2.sh: New file.
19049         * tests/test-mbsnrtowcs3.sh: New file.
19050         * tests/test-mbsnrtowcs4.sh: New file.
19051         * tests/test-mbsnrtowcs.c: New file.
19052
19053         New module 'mbsnrtowcs'.
19054         * lib/wchar.in.h (mbsnrtowcs): New declaration.
19055         * lib/mbsnrtowcs.c: New file.
19056         * lib/mbsrtowcs-state.c: New file.
19057         * lib/mbsrtowcs.c: Refer to _gl_mbsrtowcs_state.
19058         (internal_state): Remove variable.
19059         * m4/mbsnrtowcs.m4: New file.
19060         * m4/mbsrtowcs.m4 (gl_FUNC_MBSRTOWCS): Add mbsrtowcs-state.c to the
19061         compilation units.
19062         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBSNRTOWCS,
19063         HAVE_MBSNRTOWCS, REPLACE_MBSNRTOWCS.
19064         * modules/wchar (Makefile.am): Substitute GNULIB_MBSNRTOWCS,
19065         HAVE_MBSNRTOWCS, REPLACE_MBSNRTOWCS.
19066         * modules/mbsnrtowcs: New file.
19067         * modules/mbsrtowcs (Files): Add lib/mbsrtowcs-state.c.
19068         * doc/posix-functions/mbsnrtowcs.texi: Mention the new module and a
19069         portability problem.
19070
19071 2008-12-21  Bruno Haible  <bruno@clisp.org>
19072
19073         Work around mbsrtowcs bug.
19074         * m4/mbsrtowcs.m4 (gl_MBSRTOWCS_WORKS): New macro.
19075         (gl_FUNC_MBSRTOWCS): Invoke it.
19076         * modules/mbsrtowcs (Files): Add m4/locale-fr.m4, m4/locale-ja.m4,
19077         m4/locale-zh.m4.
19078         * doc/posix-functions/mbsrtowcs.texi: Document the bug.
19079
19080 2008-12-21  Bruno Haible  <bruno@clisp.org>
19081
19082         * tests/test-mbsrtowcs.c (main): Execute the loop also for unlimited=1.
19083
19084 2008-12-21  Bruno Haible  <bruno@clisp.org>
19085
19086         Update doc for AIX.
19087         * doc/pastposix-functions/wcswcs.texi: Mention that AIX has only a
19088         16-bit wchar_t type.
19089         * doc/posix-functions/btowc.texi: Likewise.
19090         * doc/posix-functions/fgetwc.texi: Likewise.
19091         * doc/posix-functions/fgetws.texi: Likewise.
19092         * doc/posix-functions/fputwc.texi: Likewise.
19093         * doc/posix-functions/fputws.texi: Likewise.
19094         * doc/posix-functions/fwide.texi: Likewise.
19095         * doc/posix-functions/fwprintf.texi: Likewise.
19096         * doc/posix-functions/fwscanf.texi: Likewise.
19097         * doc/posix-functions/getwchar.texi: Likewise.
19098         * doc/posix-functions/getwc.texi: Likewise.
19099         * doc/posix-functions/iswalnum.texi: Likewise.
19100         * doc/posix-functions/iswalpha.texi: Likewise.
19101         * doc/posix-functions/iswblank.texi: Likewise.
19102         * doc/posix-functions/iswcntrl.texi: Likewise.
19103         * doc/posix-functions/iswctype.texi: Likewise.
19104         * doc/posix-functions/iswdigit.texi: Likewise.
19105         * doc/posix-functions/iswgraph.texi: Likewise.
19106         * doc/posix-functions/iswlower.texi: Likewise.
19107         * doc/posix-functions/iswprint.texi: Likewise.
19108         * doc/posix-functions/iswpunct.texi: Likewise.
19109         * doc/posix-functions/iswspace.texi: Likewise.
19110         * doc/posix-functions/iswupper.texi: Likewise.
19111         * doc/posix-functions/iswxdigit.texi: Likewise.
19112         * doc/posix-functions/mbrtowc.texi: Likewise.
19113         * doc/posix-functions/mbsrtowcs.texi: Likewise.
19114         * doc/posix-functions/mbstowcs.texi: Likewise.
19115         * doc/posix-functions/mbtowc.texi: Likewise.
19116         * doc/posix-functions/putwchar.texi: Likewise.
19117         * doc/posix-functions/putwc.texi: Likewise.
19118         * doc/posix-functions/swprintf.texi: Likewise.
19119         * doc/posix-functions/tolower.texi: Likewise.
19120         * doc/posix-functions/toupper.texi: Likewise.
19121         * doc/posix-functions/towctrans.texi: Likewise.
19122         * doc/posix-functions/ungetwc.texi: Likewise.
19123         * doc/posix-functions/vswprintf.texi: Likewise.
19124         * doc/posix-functions/wcrtomb.texi: Likewise.
19125         * doc/posix-functions/wcscat.texi: Likewise.
19126         * doc/posix-functions/wcschr.texi: Likewise.
19127         * doc/posix-functions/wcscmp.texi: Likewise.
19128         * doc/posix-functions/wcscoll.texi: Likewise.
19129         * doc/posix-functions/wcscpy.texi: Likewise.
19130         * doc/posix-functions/wcscspn.texi: Likewise.
19131         * doc/posix-functions/wcsftime.texi: Likewise.
19132         * doc/posix-functions/wcslen.texi: Likewise.
19133         * doc/posix-functions/wcsncat.texi: Likewise.
19134         * doc/posix-functions/wcsncmp.texi: Likewise.
19135         * doc/posix-functions/wcsncpy.texi: Likewise.
19136         * doc/posix-functions/wcspbrk.texi: Likewise.
19137         * doc/posix-functions/wcsrchr.texi: Likewise.
19138         * doc/posix-functions/wcsrtombs.texi: Likewise.
19139         * doc/posix-functions/wcsspn.texi: Likewise.
19140         * doc/posix-functions/wcsstr.texi: Likewise.
19141         * doc/posix-functions/wcstod.texi: Likewise.
19142         * doc/posix-functions/wcstof.texi: Likewise.
19143         * doc/posix-functions/wcstoimax.texi: Likewise.
19144         * doc/posix-functions/wcstok.texi: Likewise.
19145         * doc/posix-functions/wcstold.texi: Likewise.
19146         * doc/posix-functions/wcstoll.texi: Likewise.
19147         * doc/posix-functions/wcstol.texi: Likewise.
19148         * doc/posix-functions/wcstombs.texi: Likewise.
19149         * doc/posix-functions/wcstoull.texi: Likewise.
19150         * doc/posix-functions/wcstoul.texi: Likewise.
19151         * doc/posix-functions/wcstoumax.texi: Likewise.
19152         * doc/posix-functions/wcswidth.texi: Likewise.
19153         * doc/posix-functions/wcsxfrm.texi: Likewise.
19154         * doc/posix-functions/wctob.texi: Likewise.
19155         * doc/posix-functions/wctomb.texi: Likewise.
19156         * doc/posix-functions/wctrans.texi: Likewise.
19157         * doc/posix-functions/wctype.texi: Likewise.
19158         * doc/posix-functions/wcwidth.texi: Likewise.
19159         * doc/posix-functions/wmemchr.texi: Likewise.
19160         * doc/posix-functions/wmemcmp.texi: Likewise.
19161         * doc/posix-functions/wmemcpy.texi: Likewise.
19162         * doc/posix-functions/wmemmove.texi: Likewise.
19163         * doc/posix-functions/wmemset.texi: Likewise.
19164         * doc/posix-functions/wprintf.texi: Likewise.
19165         * doc/posix-functions/wscanf.texi: Likewise.
19166
19167 2008-12-21  Bruno Haible  <bruno@clisp.org>
19168
19169         Update doc for HP-UX 11.11.
19170         * doc/posix-functions/btowc.texi: Clarify that the function is missing
19171         in HP-UX version 11.00, not in all versions of HP-UX 11.
19172         * doc/posix-functions/fwide.texi: Likewise.
19173         * doc/posix-functions/fwprintf.texi: Likewise.
19174         * doc/posix-functions/fwscanf.texi: Likewise.
19175         * doc/posix-functions/inet_ntop.texi: Likewise.
19176         * doc/posix-functions/inet_pton.texi: Likewise.
19177         * doc/posix-functions/mbrlen.texi: Likewise.
19178         * doc/posix-functions/mbrtowc.texi: Likewise.
19179         * doc/posix-functions/mbsinit.texi: Likewise.
19180         * doc/posix-functions/mbsrtowcs.texi: Likewise.
19181         * doc/posix-functions/swprintf.texi: Likewise.
19182         * doc/posix-functions/swscanf.texi: Likewise.
19183         * doc/posix-functions/towctrans.texi: Likewise.
19184         * doc/posix-functions/vfwprintf.texi: Likewise.
19185         * doc/posix-functions/vswprintf.texi: Likewise.
19186         * doc/posix-functions/vwprintf.texi: Likewise.
19187         * doc/posix-functions/wcrtomb.texi: Likewise.
19188         * doc/posix-functions/wcsrtombs.texi: Likewise.
19189         * doc/posix-functions/wcsstr.texi: Likewise.
19190         * doc/posix-functions/wctob.texi: Likewise.
19191         * doc/posix-functions/wctrans.texi: Likewise.
19192         * doc/posix-functions/wmemchr.texi: Likewise.
19193         * doc/posix-functions/wmemcmp.texi: Likewise.
19194         * doc/posix-functions/wmemcpy.texi: Likewise.
19195         * doc/posix-functions/wmemmove.texi: Likewise.
19196         * doc/posix-functions/wmemset.texi: Likewise.
19197         * doc/posix-functions/wprintf.texi: Likewise.
19198         * doc/posix-functions/wscanf.texi: Likewise.
19199
19200 2008-12-21  Bruno Haible  <bruno@clisp.org>
19201
19202         Work around a portability problem.
19203         * tests/test-mbsrtowcs.c (main): Use a temporary conversion state.
19204         * doc/posix-functions/mbsrtowcs.texi: Document the portability problem.
19205
19206 2008-12-20  Bruno Haible  <bruno@clisp.org>
19207
19208         * lib/wchar.in.h (mbsrtowcs): Redefine if REPLACE_MBSRTOWCS is set.
19209         * m4/mbsrtowcs.m4 (gl_FUNC_MBSRTOWCS): Invoke gl_MBSTATE_T_BROKEN. Set
19210         REPLACE_MBSRTOWCS if mbsrtowcs needs to be overridden.
19211         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_MBSRTOWCS.
19212         * modules/wchar (Makefile.am): Substitute REPLACE_MBSRTOWCS.
19213
19214         Work around mbrtowc bugs on AIX, HP-UX, OSF/1, Solaris.
19215         * lib/wchar.in.h (mbstate_t): Redefine also if REPLACE_MBSTATE_T is
19216         set.
19217         (GNULIB_defined_mbstate_t): New macro.
19218         (mbsinit): Redefine if REPLACE_MBSINIT is set.
19219         (mbrtowc): Redefine if REPLACE_MBRTOWC is set.
19220         * lib/mbrtowc.c (rpl_mbrtowc): Add an alternative implementation that
19221         reuses the system's mbrtowc function but works around the bugs.
19222         * m4/mbrtowc.m4 (gl_MBSTATE_T_BROKEN, gl_MBRTOWC_INCOMPLETE_STATE,
19223         gl_MBRTOWC_NULL_ARG, gl_MBRTOWC_RETVAL, gl_MBRTOWC_NUL_RETVAL): New
19224         macros.
19225         (gl_FUNC_MBRTOWC): Invoke them. Set REPLACE_MBRTOWC if mbrtowc needs to
19226         be overridden. Optionally define MBRTOWC_NULL_ARG_BUG,
19227         MBRTOWC_RETVAL_BUG, MBRTOWC_NUL_RETVAL_BUG.
19228         * m4/mbsinit.m4 (gl_FUNC_MBSINIT): Invoke gl_MBSTATE_T_BROKEN. Set
19229         REPLACE_MBSINIT if mbsinit needs to be overridden.
19230         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_MBSTATE_T,
19231         REPLACE_MBSINIT, REPLACE_MBRTOWC.
19232         * modules/wchar (Makefile.am): Substitute REPLACE_MBSTATE_T,
19233         REPLACE_MBSINIT, REPLACE_MBRTOWC.
19234         * modules/mbrtowc (Files): Add m4/locale-fr.m4, m4/locale-ja.m4,
19235         m4/locale-zh.m4.
19236         (Depends): Add mbsinit.
19237         * modules/mbsinit (Depends): Add mbrtowc.
19238         * doc/posix-functions/mbrtowc.texi: Mention the various bugs.
19239
19240 2008-12-20  Bruno Haible  <bruno@clisp.org>
19241
19242         * tests/test-mbrtowc.c (main): Change sample string in EUC-JP encoding
19243         so that there are no conversion errors on AIX.
19244         * tests/test-mbsrtowcs.c (main): LIkewise.
19245
19246 2008-12-20  Bruno Haible  <bruno@clisp.org>
19247
19248         Work around wctob bug on Solaris <= 9.
19249         * lib/wchar.in.h (wctob): Redefine if REPLACE_WCTOB is set.
19250         * m4/wctob.m4 (gl_FUNC_WCTOB): Test whether wctob works.
19251         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize REPLACE_WCTOB.
19252         * modules/wchar (Makefile.am): Substitute REPLACE_WCTOB.
19253         * modules/wctob (Files): Add m4/locale-fr.m4.
19254         * doc/posix-functions/wctob.texi: Mention the Solaris bug.
19255
19256 2008-12-20  Bruno Haible  <bruno@clisp.org>
19257
19258         * doc/posix-functions/select.texi: Mention Solaris 2.6 bug with
19259         /dev/null.
19260         * tests/test-select-in.sh: Likewise.
19261         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
19262
19263 2008-12-20  Bruno Haible  <bruno@clisp.org>
19264
19265         Don't pretend that Cygwin has a ja_JP.EUC-JP locale.
19266         * m4/locale-ja.m4 (gt_LOCALE_JA): Add test for MB_CUR_MAX. Needed on
19267         Cygwin 1.5.x.
19268
19269 2008-12-20  Bruno Haible  <bruno@clisp.org>
19270
19271         Ensure mbstate_t is defined on HP-UX 11.11.
19272         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Require
19273         AC_CANONICAL_HOST. On HP-UX, define _XOPEN_SOURCE to 500.
19274         * m4/mbstate_t.m4 (AC_TYPE_MBSTATE_T): Require
19275         AC_USE_SYSTEM_EXTENSIONS.
19276         * modules/fnmatch (Depends-on): Add extensions.
19277         * modules/mbrlen (Depends-on): Likewise.
19278         * modules/mbrtowc (Depends-on): Likewise.
19279         * modules/mbsinit (Depends-on): Likewise.
19280         * modules/mbsrtowcs (Depends-on): Likewise.
19281         * modules/mbswidth (Depends-on): Likewise.
19282         * modules/quotearg (Depends-on): Likewise.
19283         * modules/strftime (Depends-on): Likewise.
19284
19285 2008-12-20  Bruno Haible  <bruno@clisp.org>
19286
19287         Ensure wctob is declared on IRIX 6.5.
19288         * lib/wchar.in.h (wctob): Declare also when HAVE_DECL_WCTOB is 0.
19289         * m4/wctob.m4 (gl_FUNC_WCTOB): Set HAVE_DECL_WCTOB instead of
19290         HAVE_WCTOB. Also test whether <wchar.h> declares wctob.
19291         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize HAVE_DECL_WCTOB instead
19292         of HAVE_WCTOB.
19293         * modules/wchar (Makefile.am): Substitute HAVE_DECL_WCTOB instead of
19294         HAVE_WCTOB.
19295         * doc/posix-functions/wctob.texi: Mention missing declaration on IRIX.
19296
19297 2008-12-19  Bruno Haible  <bruno@clisp.org>
19298
19299         * modules/mbsrtowcs-tests: New file.
19300         * tests/test-mbsrtowcs1.sh: New file.
19301         * tests/test-mbsrtowcs2.sh: New file.
19302         * tests/test-mbsrtowcs3.sh: New file.
19303         * tests/test-mbsrtowcs4.sh: New file.
19304         * tests/test-mbsrtowcs.c: New file.
19305
19306         New module 'mbsrtowcs'.
19307         * lib/wchar.in.h (mbsrtowcs): New declaration.
19308         * lib/mbsrtowcs.c: New file.
19309         * m4/mbsrtowcs.m4: New file.
19310         * modules/mbsrtowcs: New file.
19311         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBSRTOWCS and
19312         HAVE_MBSRTOWCS.
19313         * modules/wchar (Makefile.am): Substitute GNULIB_MBSRTOWCS and
19314         HAVE_MBSRTOWCS.
19315         * doc/posix-functions/mbsrtowcs.texi: Document the new module.
19316
19317 2008-12-19  Bruno Haible  <bruno@clisp.org>
19318
19319         New module 'mbrlen'.
19320         * lib/wchar.in.h (mbrlen): New declaration.
19321         * lib/mbrlen.c: New file.
19322         * m4/mbrlen.m4: New file.
19323         * modules/mbrlen: New file.
19324         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBRLEN and
19325         HAVE_MBRLEN.
19326         * modules/wchar (Makefile.am): Substitute GNULIB_MBRLEN and
19327         HAVE_MBRLEN.
19328         * doc/posix-functions/mbrlen.texi: Document the new module.
19329
19330 2008-12-19  Bruno Haible  <bruno@clisp.org>
19331
19332         * lib/mbrtowc.c: Include verify.h. Verify an assumption.
19333         * modules/mbrtowc (Depends-on): Add verify.
19334         Suggested by Paul Eggert.
19335
19336 2008-12-18  Bruno Haible  <bruno@clisp.org>
19337
19338         * modules/mbsinit-tests: New file.
19339         * tests/test-mbsinit.sh: New file.
19340         * tests/test-mbsinit.c: New file.
19341
19342 2008-12-18  Bruno Haible  <bruno@clisp.org>
19343
19344         * modules/mbrtowc-tests: New file.
19345         * tests/test-mbrtowc1.sh: New file.
19346         * tests/test-mbrtowc2.sh: New file.
19347         * tests/test-mbrtowc3.sh: New file.
19348         * tests/test-mbrtowc4.sh: New file.
19349         * tests/test-mbrtowc.c: New file.
19350
19351         New module 'mbrtowc'.
19352         * lib/wchar.in.h (mbstate_t): Override when the system does not have
19353         mbsinit and mbrtowc.
19354         (mbrtowc): New declaration.
19355         * lib/mbrtowc.c: New file.
19356         * m4/mbrtowc.m4 (gl_FUNC_MBRTOWC, gl_PREREQ_MBRTOWC): New macros.
19357         * modules/mbrtowc: New file.
19358         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBRTOWC and
19359         HAVE_MBRTOWC.
19360         * modules/wchar (Makefile.am): Substitute GNULIB_MBRTOWC and
19361         HAVE_MBRTOWC.
19362         * doc/posix-functions/mbrtowc.texi: Document the new module.
19363
19364 2008-12-18  Bruno Haible  <bruno@clisp.org>
19365
19366         New module 'wctob'.
19367         * lib/wchar.in.h (wctob): New declaration.
19368         * lib/wctob.c: New file.
19369         * m4/wctob.m4: New file.
19370         * modules/wctob: New file.
19371         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_WCTOB and
19372         HAVE_WCTOB.
19373         * modules/wchar (Makefile.am): Substitute GNULIB_WCTOB and HAVE_WCTOB.
19374         * doc/posix-functions/wctob.texi: Document the new module.
19375
19376 2008-12-18  Bruno Haible  <bruno@clisp.org>
19377
19378         * m4/mbsinit.m4 (gl_FUNC_MBSINIT): Invoke gl_REPLACE_WCHAR_H.
19379         * m4/btowc.m4 (gl_FUNC_BTOWC): Likewise.
19380
19381 2008-12-18  Simon Josefsson  <simon@josefsson.org>
19382
19383         * lib/flock.c: Use proper #if symbol in check.  Reported by "Tom
19384         G. Christensen" <tgc@jupiterrise.com>.
19385
19386         * lib/flock.c: Need to include errno.h.  Reported by "Tom
19387         G. Christensen" <tgc@jupiterrise.com>.
19388
19389         * lib/flock.c: Need to include string.h.  Reported by "Tom
19390         G. Christensen" <tgc@jupiterrise.com> and Eric Blake
19391         <ebb9@byu.net>.
19392
19393 2008-12-18  Bruno Haible  <bruno@clisp.org>
19394
19395         * m4/locale-ja.m4: New file, from GNU gettext.
19396
19397 2008-12-17  Bruno Haible  <bruno@clisp.org>
19398
19399         * m4/mbrtowc.m4 (AC_FUNC_MBRTOWC): Don't override in autoconf >= 2.60.
19400         Suggested by Eric Blake.
19401
19402 2008-12-17  Bruno Haible  <bruno@clisp.org>
19403
19404         * m4/errno_h.m4 (AC_COMPUTE_INT): Provide fallback definition.
19405
19406 2008-12-17  Bruno Haible  <bruno@clisp.org>
19407
19408         * lib/mbsinit.c: Include verify.h. Verify an assumption.
19409         * modules/mbsinit (Depends-on): Add verify.
19410         Suggested by Paul Eggert.
19411
19412 2008-12-17  Bruno Haible  <bruno@clisp.org>
19413
19414         * m4/mbrtowc.m4 (AC_FUNC_MBRTOWC): Renamed from gl_FUNC_MBRTOWC.
19415         * m4/mbfile.m4 (gl_MBFILE): Use AC_FUNC_MBRTOWC instead of
19416         gl_FUNC_MBRTOWC.
19417         * m4/mbiter.m4 (gl_MBITER): LIkewise.
19418         * m4/mbscasecmp.m4 (gl_PREREQ_MBSCASECMP): Likewise.
19419         * m4/mbscasestr.m4 (gl_PREREQ_MBSCASESTR): Likewise.
19420         * m4/mbschr.m4 (gl_PREREQ_MBSCHR): Likewise.
19421         * m4/mbscspn.m4 (gl_PREREQ_MBSCSPN): Likewise.
19422         * m4/mbslen.m4 (gl_PREREQ_MBSLEN): Likewise.
19423         * m4/mbsncasecmp.m4 (gl_PREREQ_MBSNCASECMP): Likewise.
19424         * m4/mbsnlen.m4 (gl_PREREQ_MBSNLEN): Likewise.
19425         * m4/mbspbrk.m4 (gl_PREREQ_MBSPBRK): Likewise.
19426         * m4/mbspcasecmp.m4 (gl_PREREQ_MBSPCASECMP): Likewise.
19427         * m4/mbsrchr.m4 (gl_PREREQ_MBSRCHR): Likewise.
19428         * m4/mbssep.m4 (gl_PREREQ_MBSSEP): Likewise.
19429         * m4/mbsspn.m4 (gl_PREREQ_MBSSPN): Likewise.
19430         * m4/mbsstr.m4 (gl_PREREQ_MBSSTR): Likewise.
19431         * m4/mbstok_r.m4 (gl_PREREQ_MBSTOK_R): Likewise.
19432         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
19433         * m4/quotearg.m4 (gl_QUOTEARG): Likewise.
19434         * modules/trim (configure.ac): Likewise.
19435
19436 2008-12-17  Bruno Haible  <bruno@clisp.org>
19437
19438         * modules/btowc-tests: New file.
19439         * tests/test-btowc1.sh: New file.
19440         * tests/test-btowc2.sh: New file.
19441         * tests/test-btowc.c: New file.
19442
19443         New module 'btowc'.
19444         * lib/wchar.in.h (btowc): New declaration.
19445         * lib/btowc.c: New file.
19446         * m4/btowc.m4: New file.
19447         * modules/btowc: New file.
19448         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_BTOWC and
19449         HAVE_BTOWC.
19450         * modules/wchar (Makefile.am): Substitute GNULIB_BTOWC and HAVE_BTOWC.
19451         * doc/posix-functions/btowc.texi: Document the new module.
19452
19453 2008-12-17  Bruno Haible  <bruno@clisp.org>
19454
19455         New module 'mbsinit'.
19456         * lib/wchar.in.h (mbsinit): New declaration.
19457         * lib/mbsinit.c: New file.
19458         * m4/mbsinit.m4: New file.
19459         * modules/mbsinit: New file.
19460         * m4/wchar.m4 (gl_WCHAR_H_DEFAULTS): Initialize GNULIB_MBSINIT and
19461         HAVE_MBSINIT.
19462         * modules/wchar (Makefile.am): Substitute GNULIB_MBSINIT and
19463         HAVE_MBSINIT.
19464         * doc/posix-functions/mbsinit.texi: Document the new module.
19465
19466 2008-12-16  Bruno Haible  <bruno@clisp.org>
19467
19468         * lib/unistd.in.h: Add comment.
19469         * tests/test-environ.c: Don't include <stdlib.h>.
19470
19471 2008-12-16  Bruno Haible  <bruno@clisp.org>
19472
19473         * lib/parse-duration.h (parse_duration): Document return value
19474         convention.
19475         * lib/parse-duration.c: Include specification header first. Add
19476         comments.
19477         (_): Remove macro.
19478         (parse_year_month_day, parse_hour_minute_second): Move side effects
19479         outside of strchr call.
19480         (parse_non_iso8601): Move side effects outside of isspace call.
19481         (parse_duration): Don't test errno is res != BAD_TIME. Remove fprintf
19482         call.
19483
19484 2008-12-16  Bruno Haible  <bruno@clisp.org>
19485
19486         * tests/test-parse-duration.sh: Produce no output when the test
19487         succeeds.
19488
19489 2008-12-16  Bruno Haible  <bruno@clisp.org>
19490
19491         * tests/test-parse-duration.sh: Fix quoting of $tmp and $tmpf
19492         expressions.
19493
19494 2008-12-15  Bruno Haible  <bruno@clisp.org>
19495
19496         * doc/glibc-functions/fgetxattr.texi: Tweak wording.
19497         * doc/glibc-functions/flistxattr.texi: Likewise.
19498         * doc/glibc-functions/fopencookie.texi: Likewise.
19499         * doc/glibc-functions/fremovexattr.texi: Likewise.
19500         * doc/glibc-functions/fsetxattr.texi: Likewise.
19501         * doc/glibc-functions/getxattr.texi: Likewise.
19502         * doc/glibc-functions/lgetxattr.texi: Likewise.
19503         * doc/glibc-functions/listxattr.texi: Likewise.
19504         * doc/glibc-functions/llistxattr.texi: Likewise.
19505         * doc/glibc-functions/lremovexattr.texi: Likewise.
19506         * doc/glibc-functions/lsetxattr.texi: Likewise.
19507         * doc/glibc-functions/removexattr.texi: Likewise.
19508         * doc/glibc-functions/setxattr.texi: Likewise.
19509         * doc/posix-functions/open_memstream.texi: Likewise.
19510
19511 2008-12-15  Eric Blake  <ebb9@byu.net>
19512
19513         Update doc for cygwin 1.7.
19514         * doc/posix-functions/faccessat.texi: Cygwin 1.7 added several new
19515         functions.
19516         * doc/posix-functions/fchmodat.texi: Likewise.
19517         * doc/posix-functions/fchownat.texi: Likewise.
19518         * doc/posix-functions/fdopendir.texi: Likewise.
19519         * doc/posix-functions/fmemopen.texi: Likewise.
19520         * doc/posix-functions/freeaddrinfo.texi: Likewise.
19521         * doc/posix-functions/fstatat.texi: Likewise.
19522         * doc/posix-functions/futimens.texi: Likewise.
19523         * doc/posix-functions/gai_strerror.texi: Likewise.
19524         * doc/posix-functions/getaddrinfo.texi: Likewise.
19525         * doc/posix-functions/getnameinfo.texi: Likewise.
19526         * doc/posix-functions/if_freenameindex.texi: Likewise.
19527         * doc/posix-functions/if_indextoname.texi: Likewise.
19528         * doc/posix-functions/if_nameindex.texi: Likewise.
19529         * doc/posix-functions/if_nametoindex.texi: Likewise.
19530         * doc/posix-functions/insque.texi: Likewise.
19531         * doc/posix-functions/linkat.texi: Likewise.
19532         * doc/posix-functions/llrint.texi: Likewise.
19533         * doc/posix-functions/llrintf.texi: Likewise.
19534         * doc/posix-functions/llrintl.texi: Likewise.
19535         * doc/posix-functions/lockf.texi: Likewise.
19536         * doc/posix-functions/lrintl.texi: Likewise.
19537         * doc/posix-functions/mkdirat.texi: Likewise.
19538         * doc/posix-functions/mkfifoat.texi: Likewise.
19539         * doc/posix-functions/mknodat.texi: Likewise.
19540         * doc/posix-functions/mq_close.texi: Likewise.
19541         * doc/posix-functions/mq_getattr.texi: Likewise.
19542         * doc/posix-functions/mq_notify.texi: Likewise.
19543         * doc/posix-functions/mq_open.texi: Likewise.
19544         * doc/posix-functions/mq_receive.texi: Likewise.
19545         * doc/posix-functions/mq_send.texi: Likewise.
19546         * doc/posix-functions/mq_setattr.texi: Likewise.
19547         * doc/posix-functions/mq_timedreceive.texi: Likewise.
19548         * doc/posix-functions/mq_timedsend.texi: Likewise.
19549         * doc/posix-functions/mq_unlink.texi: Likewise.
19550         * doc/posix-functions/open_memstream.texi: Likewise.
19551         * doc/posix-functions/openat.texi: Likewise.
19552         * doc/posix-functions/posix_fadvise.texi: Likewise.
19553         * doc/posix-functions/posix_fallocate.texi: Likewise.
19554         * doc/posix-functions/posix_madvise.texi: Likewise.
19555         * doc/posix-functions/posix_memalign.texi: Likewise.
19556         * doc/posix-functions/posix_openpt.texi: Likewise.
19557         * doc/posix-functions/readlinkat.texi: Likewise.
19558         * doc/posix-functions/remque.texi: Likewise.
19559         * doc/posix-functions/renameat.texi: Likewise.
19560         * doc/posix-functions/rintl.texi: Likewise.
19561         * doc/posix-functions/sem_unlink.texi: Likewise.
19562         * doc/posix-functions/shm_open.texi: Likewise.
19563         * doc/posix-functions/shm_unlink.texi: Likewise.
19564         * doc/posix-functions/signgam.texi: Likewise.
19565         * doc/posix-functions/sigset.texi: Likewise.
19566         * doc/posix-functions/stpcpy.texi: Likewise.
19567         * doc/posix-functions/stpncpy.texi: Likewise.
19568         * doc/posix-functions/strerror.texi: Likewise.
19569         * doc/posix-functions/strtod.texi: Likewise.
19570         * doc/posix-functions/symlinkat.texi: Likewise.
19571         * doc/posix-functions/unlinkat.texi: Likewise.
19572         * doc/posix-functions/utimensat.texi: Likewise.
19573         * doc/glibc-functions/bindresvport.texi: Likewise.
19574         * doc/glibc-functions/dn_expand.texi: Likewise.
19575         * doc/glibc-functions/exp10.texi: Likewise.
19576         * doc/glibc-functions/exp10f.texi: Likewise.
19577         * doc/glibc-functions/fgetxattr.texi: Likewise.
19578         * doc/glibc-functions/flistxattr.texi: Likewise.
19579         * doc/glibc-functions/fopencookie.texi: Likewise.
19580         * doc/glibc-functions/freeifaddrs.texi: Likewise.
19581         * doc/glibc-functions/fremovexattr.texi: Likewise.
19582         * doc/glibc-functions/fsetxattr.texi: Likewise.
19583         * doc/glibc-functions/getifaddrs.texi: Likewise.
19584         * doc/glibc-functions/getxattr.texi: Likewise.
19585         * doc/glibc-functions/lgetxattr.texi: Likewise.
19586         * doc/glibc-functions/listxattr.texi: Likewise.
19587         * doc/glibc-functions/llistxattr.texi: Likewise.
19588         * doc/glibc-functions/lremovexattr.texi: Likewise.
19589         * doc/glibc-functions/lsetxattr.texi: Likewise.
19590         * doc/glibc-functions/pow10.texi: Likewise.
19591         * doc/glibc-functions/pow10f.texi: Likewise.
19592         * doc/glibc-functions/rcmd_af.texi: Likewise.
19593         * doc/glibc-functions/removexattr.texi: Likewise.
19594         * doc/glibc-functions/res_init.texi: Likewise.
19595         * doc/glibc-functions/res_mkquery.texi: Likewise.
19596         * doc/glibc-functions/res_query.texi: Likewise.
19597         * doc/glibc-functions/res_querydomain.texi: Likewise.
19598         * doc/glibc-functions/res_send.texi: Likewise.
19599         * doc/glibc-functions/rresvport_af.texi: Likewise.
19600         * doc/glibc-functions/setxattr.texi: Likewise.
19601         * doc/glibc-functions/strcasestr.texi: Likewise.
19602
19603 2008-12-15  Bruno Haible  <bruno@clisp.org>
19604
19605         Fix compilation error on OSF/1 4.0.
19606         * lib/sys_select.in.h: When invoked from OSF/1 <sys/types.h> or
19607         <sys/time.h>, simply delegate to the system header.
19608         Reported by Daniel Richard G. <oss@teragram.com>.
19609
19610 2008-12-15  Bruno Haible  <bruno@clisp.org>
19611
19612         * doc/posix-functions/openat.texi: Mention the 'openat' module.
19613         * doc/posix-functions/fchmodat.texi: Likewise.
19614         * doc/posix-functions/fchownat.texi: Likewise.
19615         * doc/posix-functions/fdopendir.texi: Likewise.
19616         * doc/posix-functions/fstatat.texi: Likewise.
19617         * doc/posix-functions/mkdirat.texi: Likewise.
19618         * doc/posix-functions/unlinkat.texi: Likewise.
19619
19620 2008-12-14  Bruno Haible  <bruno@clisp.org>
19621
19622         Update doc for POSIX:2008.
19623         * doc/posix-functions/faccessat.texi: New file.
19624         * doc/posix-functions/fchmodat.texi: New file.
19625         * doc/posix-functions/fchownat.texi: New file.
19626         * doc/posix-functions/fdopendir.texi: New file.
19627         * doc/posix-functions/fstatat.texi: New file.
19628         * doc/posix-functions/futimens.texi: New file.
19629         * doc/posix-functions/linkat.texi: New file.
19630         * doc/posix-functions/mkdirat.texi: New file.
19631         * doc/posix-functions/mkfifoat.texi: New file.
19632         * doc/posix-functions/mknodat.texi: New file.
19633         * doc/posix-functions/open_wmemstream.texi: New file.
19634         * doc/posix-functions/openat.texi: New file.
19635         * doc/posix-functions/psiginfo.texi: New file.
19636         * doc/posix-functions/pthread_mutex_consistent.texi: New file.
19637         * doc/posix-functions/pthread_mutexattr_getrobust.texi: New file.
19638         * doc/posix-functions/pthread_mutexattr_setrobust.texi: New file.
19639         * doc/posix-functions/readlinkat.texi: New file.
19640         * doc/posix-functions/renameat.texi: New file.
19641         * doc/posix-functions/strerror_l.texi: New file.
19642         * doc/posix-functions/symlinkat.texi: New file.
19643         * doc/posix-functions/unlinkat.texi: New file.
19644         * doc/posix-functions/utimensat.texi: New file.
19645         * doc/gnulib.texi (Function Substitutes): Add these subsections.
19646
19647 2008-12-14  Bruno Haible  <bruno@clisp.org>
19648
19649         Update doc for POSIX:2008.
19650         * doc/posix-functions/alphasort.texi: Renamed from
19651         doc/glibc-functions/alphasort.texi.
19652         * doc/posix-functions/dirfd.texi: Renamed from
19653         doc/glibc-functions/dirfd.texi.
19654         * doc/posix-functions/dprintf.texi: Renamed from
19655         doc/glibc-functions/dprintf.texi.
19656         * doc/posix-functions/duplocale.texi: Renamed from
19657         doc/glibc-functions/duplocale.texi.
19658         * doc/posix-functions/fexecve.texi: Renamed from
19659         doc/glibc-functions/fexecve.texi.
19660         * doc/posix-functions/fmemopen.texi: Renamed from
19661         doc/glibc-functions/fmemopen.texi.
19662         * doc/posix-functions/freelocale.texi: Renamed from
19663         doc/glibc-functions/freelocale.texi.
19664         * doc/posix-functions/getdate_err.texi: Renamed from
19665         doc/glibc-functions/getdate_err.texi.
19666         * doc/posix-functions/isalnum_l.texi: Renamed from
19667         doc/glibc-functions/isalnum_l.texi.
19668         * doc/posix-functions/isalpha_l.texi: Renamed from
19669         doc/glibc-functions/isalpha_l.texi.
19670         * doc/posix-functions/isblank_l.texi: Renamed from
19671         doc/glibc-functions/isblank_l.texi.
19672         * doc/posix-functions/iscntrl_l.texi: Renamed from
19673         doc/glibc-functions/iscntrl_l.texi.
19674         * doc/posix-functions/isdigit_l.texi: Renamed from
19675         doc/glibc-functions/isdigit_l.texi.
19676         * doc/posix-functions/isgraph_l.texi: Renamed from
19677         doc/glibc-functions/isgraph_l.texi.
19678         * doc/posix-functions/islower_l.texi: Renamed from
19679         doc/glibc-functions/islower_l.texi.
19680         * doc/posix-functions/isprint_l.texi: Renamed from
19681         doc/glibc-functions/isprint_l.texi.
19682         * doc/posix-functions/ispunct_l.texi: Renamed from
19683         doc/glibc-functions/ispunct_l.texi.
19684         * doc/posix-functions/isspace_l.texi: Renamed from
19685         doc/glibc-functions/isspace_l.texi.
19686         * doc/posix-functions/isupper_l.texi: Renamed from
19687         doc/glibc-functions/isupper_l.texi.
19688         * doc/posix-functions/iswalnum_l.texi: Renamed from
19689         doc/glibc-functions/iswalnum_l.texi.
19690         * doc/posix-functions/iswalpha_l.texi: Renamed from
19691         doc/glibc-functions/iswalpha_l.texi.
19692         * doc/posix-functions/iswblank_l.texi: Renamed from
19693         doc/glibc-functions/iswblank_l.texi.
19694         * doc/posix-functions/iswcntrl_l.texi: Renamed from
19695         doc/glibc-functions/iswcntrl_l.texi.
19696         * doc/posix-functions/iswctype_l.texi: Renamed from
19697         doc/glibc-functions/iswctype_l.texi.
19698         * doc/posix-functions/iswdigit_l.texi: Renamed from
19699         doc/glibc-functions/iswdigit_l.texi.
19700         * doc/posix-functions/iswgraph_l.texi: Renamed from
19701         doc/glibc-functions/iswgraph_l.texi.
19702         * doc/posix-functions/iswlower_l.texi: Renamed from
19703         doc/glibc-functions/iswlower_l.texi.
19704         * doc/posix-functions/iswprint_l.texi: Renamed from
19705         doc/glibc-functions/iswprint_l.texi.
19706         * doc/posix-functions/iswpunct_l.texi: Renamed from
19707         doc/glibc-functions/iswpunct_l.texi.
19708         * doc/posix-functions/iswspace_l.texi: Renamed from
19709         doc/glibc-functions/iswspace_l.texi.
19710         * doc/posix-functions/iswupper_l.texi: Renamed from
19711         doc/glibc-functions/iswupper_l.texi.
19712         * doc/posix-functions/iswxdigit_l.texi: Renamed from
19713         doc/glibc-functions/iswxdigit_l.texi.
19714         * doc/posix-functions/isxdigit_l.texi: Renamed from
19715         doc/glibc-functions/isxdigit_l.texi.
19716         * doc/posix-functions/mbsnrtowcs.texi: Renamed from
19717         doc/glibc-functions/mbsnrtowcs.texi.
19718         * doc/posix-functions/mkdtemp.texi: Renamed from
19719         doc/glibc-functions/mkdtemp.texi.
19720         * doc/posix-functions/newlocale.texi: Renamed from
19721         doc/glibc-functions/newlocale.texi.
19722         * doc/posix-functions/nl_langinfo_l.texi: Renamed from
19723         doc/glibc-functions/nl_langinfo_l.texi.
19724         * doc/posix-functions/open_memstream.texi: Renamed from
19725         doc/glibc-functions/open_memstream.texi.
19726         * doc/posix-functions/opterr.texi: Renamed from
19727         doc/glibc-functions/opterr.texi.
19728         * doc/posix-functions/optind.texi: Renamed from
19729         doc/glibc-functions/optind.texi.
19730         * doc/posix-functions/optopt.texi: Renamed from
19731         doc/glibc-functions/optopt.texi.
19732         * doc/posix-functions/psignal.texi: Renamed from
19733         doc/glibc-functions/psignal.texi.
19734         * doc/posix-functions/scandir.texi: Renamed from
19735         doc/glibc-functions/scandir.texi.
19736         * doc/posix-functions/sched_get_priority_min.texi: Renamed from
19737         doc/glibc-functions/sched_get_priority_min.texi.
19738         * doc/posix-functions/signgam.texi: Renamed from
19739         doc/glibc-functions/signgam.texi.
19740         * doc/posix-functions/stpcpy.texi: Renamed from
19741         doc/glibc-functions/stpcpy.texi.
19742         * doc/posix-functions/stpncpy.texi: Renamed from
19743         doc/glibc-functions/stpncpy.texi.
19744         * doc/posix-functions/strcasecmp_l.texi: Renamed from
19745         doc/glibc-functions/strcasecmp_l.texi.
19746         * doc/posix-functions/strcoll_l.texi: Renamed from
19747         doc/glibc-functions/strcoll_l.texi.
19748         * doc/posix-functions/strfmon_l.texi: Renamed from
19749         doc/glibc-functions/strfmon_l.texi.
19750         * doc/posix-functions/strftime_l.texi: Renamed from
19751         doc/glibc-functions/strftime_l.texi.
19752         * doc/posix-functions/strncasecmp_l.texi: Renamed from
19753         doc/glibc-functions/strncasecmp_l.texi.
19754         * doc/posix-functions/strndup.texi: Renamed from
19755         doc/glibc-functions/strndup.texi.
19756         * doc/posix-functions/strnlen.texi: Renamed from
19757         doc/glibc-functions/strnlen.texi.
19758         * doc/posix-functions/strsignal.texi: Renamed from
19759         doc/glibc-functions/strsignal.texi.
19760         * doc/posix-functions/strxfrm_l.texi: Renamed from
19761         doc/glibc-functions/strxfrm_l.texi.
19762         * doc/posix-functions/timer_gettime.texi: Renamed from
19763         doc/glibc-functions/timer_gettime.texi.
19764         * doc/posix-functions/tolower_l.texi: Renamed from
19765         doc/glibc-functions/tolower_l.texi.
19766         * doc/posix-functions/toupper_l.texi: Renamed from
19767         doc/glibc-functions/toupper_l.texi.
19768         * doc/posix-functions/towctrans_l.texi: Renamed from
19769         doc/glibc-functions/towctrans_l.texi.
19770         * doc/posix-functions/towlower_l.texi: Renamed from
19771         doc/glibc-functions/towlower_l.texi.
19772         * doc/posix-functions/towupper_l.texi: Renamed from
19773         doc/glibc-functions/towupper_l.texi.
19774         * doc/posix-functions/uselocale.texi: Renamed from
19775         doc/glibc-functions/uselocale.texi.
19776         * doc/posix-functions/vdprintf.texi: Renamed from
19777         doc/glibc-functions/vdprintf.texi.
19778         * doc/posix-functions/wcpcpy.texi:
19779         Renamed from doc/glibc-functions/wcpcpy.texi.
19780         * doc/posix-functions/wcpncpy.texi: Renamed from
19781         doc/glibc-functions/wcpncpy.texi.
19782         * doc/posix-functions/wcscasecmp.texi: Renamed from
19783         doc/glibc-functions/wcscasecmp.texi.
19784         * doc/posix-functions/wcscasecmp_l.texi: Renamed from
19785         doc/glibc-functions/wcscasecmp_l.texi.
19786         * doc/posix-functions/wcscoll_l.texi: Renamed from
19787         doc/glibc-functions/wcscoll_l.texi.
19788         * doc/posix-functions/wcsdup.texi: Renamed from
19789         doc/glibc-functions/wcsdup.texi.
19790         * doc/posix-functions/wcsncasecmp.texi: Renamed from
19791         doc/glibc-functions/wcsncasecmp.texi.
19792         * doc/posix-functions/wcsncasecmp_l.texi: Renamed from
19793         doc/glibc-functions/wcsncasecmp_l.texi.
19794         * doc/posix-functions/wcsnlen.texi: Renamed from
19795         doc/glibc-functions/wcsnlen.texi.
19796         * doc/posix-functions/wcsnrtombs.texi: Renamed from
19797         doc/glibc-functions/wcsnrtombs.texi.
19798         * doc/posix-functions/wcsxfrm_l.texi: Renamed from
19799         doc/glibc-functions/wcsxfrm_l.texi.
19800         * doc/posix-functions/wctrans_l.texi: Renamed from
19801         doc/glibc-functions/wctrans_l.texi.
19802         * doc/posix-functions/wctype_l.texi: Renamed from
19803         doc/glibc-functions/wctype_l.texi.
19804         * doc/gnulib.texi (Function Substitutes): Add these subsections.
19805         (Glibc ctype.h, Glibc dirent.h, Glibc getopt.h, Glibc math.h,
19806         Glibc sched.h, Glibc signal.h, Glibc stdio.h, Glibc stdlib.h,
19807         Glibc string.h, Glibc time.h, Glibc unistd.h, Glibc wchar.h): Remove
19808         these subsections.
19809         (Glibc langinfo.h, Glibc locale.h, Glibc monetary.h, Glibc wctype.h):
19810         Remove sections.
19811
19812 2008-12-14  Bruno Haible  <bruno@clisp.org>
19813
19814         Update doc for POSIX:2008.
19815         * doc/posix-functions/*.texi: Update URL of POSIX specification.
19816
19817 2008-12-14  Bruno Haible  <bruno@clisp.org>
19818
19819         Update doc for POSIX:2008.
19820         * doc/pastposix-functions/bcmp.texi: Renamed from
19821         doc/posix-functions/bcmp.texi.
19822         * doc/pastposix-functions/bcopy.texi: Renamed from
19823         doc/posix-functions/bcopy.texi.
19824         * doc/pastposix-functions/bsd_signal.texi: Renamed from
19825         doc/posix-functions/bsd_signal.texi.
19826         * doc/pastposix-functions/bzero.texi: Renamed from
19827         doc/posix-functions/bzero.texi.
19828         * doc/pastposix-functions/ecvt.texi: Renamed from
19829         doc/posix-functions/ecvt.texi.
19830         * doc/pastposix-functions/fcvt.texi: Renamed from
19831         doc/posix-functions/fcvt.texi.
19832         * doc/pastposix-functions/ftime.texi: Renamed from
19833         doc/posix-functions/ftime.texi.
19834         * doc/pastposix-functions/gcvt.texi: Renamed from
19835         doc/posix-functions/gcvt.texi.
19836         * doc/pastposix-functions/getcontext.texi: Renamed from
19837         doc/posix-functions/getcontext.texi.
19838         * doc/pastposix-functions/gethostbyaddr.texi: Renamed from
19839         doc/posix-functions/gethostbyaddr.texi.
19840         * doc/pastposix-functions/gethostbyname.texi: Renamed from
19841         doc/posix-functions/gethostbyname.texi.
19842         * doc/pastposix-functions/getwd.texi: Renamed from
19843         doc/posix-functions/getwd.texi.
19844         * doc/pastposix-functions/h_errno.texi: Renamed from
19845         doc/posix-functions/h_errno.texi.
19846         * doc/pastposix-functions/index.texi: Renamed from
19847         doc/posix-functions/index.texi.
19848         * doc/pastposix-functions/makecontext.texi: Renamed from
19849         doc/posix-functions/makecontext.texi.
19850         * doc/pastposix-functions/mktemp.texi: Renamed from
19851         doc/posix-functions/mktemp.texi.
19852         * doc/pastposix-functions/pthread_attr_getstackaddr.texi: Renamed from
19853         doc/posix-functions/pthread_attr_getstackaddr.texi.
19854         * doc/pastposix-functions/pthread_attr_setstackaddr.texi: Renamed from
19855         doc/posix-functions/pthread_attr_setstackaddr.texi.
19856         * doc/pastposix-functions/rindex.texi: Renamed from
19857         doc/posix-functions/rindex.texi.
19858         * doc/pastposix-functions/scalb.texi: Renamed from
19859         doc/posix-functions/scalb.texi.
19860         * doc/pastposix-functions/setcontext.texi: Renamed from
19861         doc/posix-functions/setcontext.texi.
19862         * doc/pastposix-functions/swapcontext.texi: Renamed from
19863         doc/posix-functions/swapcontext.texi.
19864         * doc/pastposix-functions/ualarm.texi: Renamed from
19865         doc/posix-functions/ualarm.texi.
19866         * doc/pastposix-functions/usleep.texi: Renamed from
19867         doc/posix-functions/usleep.texi.
19868         * doc/pastposix-functions/vfork.texi: Renamed from
19869         doc/posix-functions/vfork.texi.
19870         * doc/pastposix-functions/wcswcs.texi: Renamed from
19871         doc/posix-functions/wcswcs.texi.
19872         * doc/gnulib.texi (Legacy Function Substitutes): New chapter.
19873         (Function Substitutes): Update.
19874
19875 2008-12-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19876
19877         * modules/relocatable-prog-wrapper (Depends-on): Add errno, needed by
19878         m4/strerror.m4.
19879
19880 2008-12-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19881             Bruno Haible  <bruno@clisp.org>
19882
19883         * modules/unilbrk/tables (Depends-on): Add unilbrk/base.
19884
19885 2008-12-13  Bruno Haible  <bruno@clisp.org>
19886
19887         * modules/strtoull (Depends-on): Remove unistd.
19888
19889 2008-12-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19890
19891         * modules/strtoull (Depends-on): Add stdlib.
19892
19893 2008-12-11  Simon Josefsson  <simon@josefsson.org>
19894
19895         * m4/manywarnings.m4 (gl_MANYWARN_ALL_GCC): Add more warnings.
19896
19897 2008-12-10  Jim Meyering  <meyering@redhat.com>
19898
19899         gl_ASSERT: don't say assertions are disabled when they're not
19900         * m4/assert.m4 (gl_ASSERT): Do not make configure report
19901         "checking whether to enable assertions... no", when they are in
19902         fact enabled.  This is solely a bug in the output of configure.
19903         In spite of saying "no", NDEBUG was not defined in that case.
19904         Also, as noted by Eric Blake, leave assertions enabled upon
19905         --enable-assert=INVALID.
19906
19907 2008-12-10  Bruno Haible  <bruno@clisp.org>
19908
19909         Change MODULES.html to refer to POSIX:2008 where possible.
19910         * MODULES.html.sh (POSIX2008_URL): New variable.
19911         (posix_headers): Remove sys/timeb, ucontext.
19912         (posix2001_headers): New variable.
19913         (posix_functions): Remove bcmp, bcopy, bsd_signal, bzero, ecvt, fcvt,
19914         ftime, gcvt, getcontext, gethostbyaddr, gethostbyname, getwd, h_errno,
19915         index, makecontext, mktemp, pthread_attr_getstackaddr,
19916         pthread_attr_setstackaddr, rindex, scalb, setcontext, swapcontext,
19917         ualarm, usleep, vfork, wcswcs. Add the new POSIX:2008 functions.
19918         (posix2001_functions): New variable.
19919         (func_module): Use URLs to POSIX:2008 where possible and to POSIX:2001
19920         otherwise.
19921
19922 2008-12-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19923
19924         add missing include to parse-duration.c
19925         * lib/parse-duration.c: #include "xalloc.h", for xstrdup.
19926         * modules/parse-duration (Depends-on): Add xalloc.
19927
19928         fix sed script reading maint.mk
19929         * top/maint.mk (MYSELF): New macro, define as $(srcdir)/$(ME).
19930         (syntax-check-rules): Use it.
19931
19932 2008-12-09  Bruno Haible  <bruno@clisp.org>
19933
19934         * m4/ldexpl.m4 (gl_FUNC_LDEXPL_WORKS): Add another check, that fails on
19935         MacOS X 10.4/PowerPC.
19936         Reported by Simon Josefsson.
19937
19938 2008-12-08  Jim Meyering  <meyering@redhat.com>
19939
19940         work around mingw's lack of some S_IF definitions
19941         * lib/fts.c (S_IFLNK, S_IFSOCK): Define if not already defined.
19942         Reported by Simon Josefsson.
19943
19944 2008-12-08  Bruno Haible  <bruno@clisp.org>
19945
19946         * m4/signbitl.m4 (gl_SIGNBIT_TEST_PROGRAM): Add a link check of signbit
19947         applied to variables. Needed on MacOS X 10.4/PowerPC.
19948         Reported by Simon Josefsson.
19949
19950 2008-12-08  William Pursell  <bill.pursell@gmail.com>  (tiny change)
19951         and Eric Blake  <ebb9@byu.net>
19952
19953         assert: honor --enable-assert
19954         * m4/assert.m4 (gl_ASSERT): Synchronize with autoconf 2.64, in
19955         order to honor --enable-assert, rather than treating it as a
19956         synonym for --disable-assert.
19957
19958 2008-12-08  Jim Meyering  <meyering@redhat.com>
19959
19960         * lib/posixtm.c: Remove now-useless declaration of mktime.
19961
19962         * build-aux/announce-gen (get_tool_versions): Accept .xz tarballs.
19963
19964 2008-12-07  Bruno Haible  <bruno@clisp.org>
19965
19966         * tests/test-lock.c (test_lock, test_rwlock, test_recursive_lock,
19967         test_once): Mark functions as static.
19968         * tests/test-tls.c (test_tls): Likewise.
19969
19970 2008-12-07  Bruno Haible  <bruno@clisp.org>
19971
19972         * lib/striconveha.h (uniconv_register_autodetect): Renamed from
19973         iconv_register_autodetect.
19974
19975 2008-12-07  Jim Meyering  <meyering@redhat.com>
19976
19977         posixtm.c: avoid a warning
19978         * lib/posixtm.c (posixtime): Don't initialize tm0.
19979         It's no longer needed to placate gcc4's -Wuninitialized,
19980         and the attempt to placate would elicit a new warning.
19981
19982         unicodeio.c: mark unused parameters
19983         * lib/unicodeio.c (exit_failure_callback): Mark unused parameter.
19984         (fallback_failure_callback): Likewise.
19985
19986 2008-12-07  Bruno Haible  <bruno@clisp.org>
19987
19988         * gnulib-tool (func_create_testdir): When building the tests
19989         subdirectory, ignore the modules gnumakefile and maintainer-makefile.
19990         Reported by Simon Josefsson.
19991
19992 2008-12-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
19993
19994         * doc/manywarnings.texi, doc/gnulib-intro.texi: Fix typos.
19995
19996 2008-12-06  Bruno Haible  <bruno@clisp.org>
19997
19998         * lib/c-stack.h (c_stack_action): Clarify possible side effects.
19999         Suggested by Eric Blake.
20000
20001 2008-12-06  Bruno Haible  <bruno@clisp.org>
20002
20003         Fix a c-stack test failure on MacOS X.
20004         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Require
20005         AC_CANONICAL_HOST. Define FAULT_YIELDS_SIGBUS. If set, install a signal
20006         handler for SIGBUS as well.
20007         * lib/c-stack.c (c_stack_action): If FAULT_YIELDS_SIGBUS is set,
20008         install a signal handler for SIGBUS as well.
20009         Reported by Bruce Dugan <bld0401@gmail.com> via Eric Blake.
20010
20011 2008-12-06  Bruno Haible  <bruno@clisp.org>
20012
20013         Advocacy documentation.
20014         * doc/gnulib-intro.texi (Benefits): New section.
20015         * doc/gnulib.texi: Update.
20016
20017 2008-12-06  Bruno Haible  <bruno@clisp.org>
20018
20019         Document the 'manywarnings' module.
20020         * doc/manywarnings.texi: New file.
20021         * doc/gnulib.texi: Include it.
20022
20023 2008-12-05  Eric Blake  <ebb9@byu.net>
20024
20025         tests: silence some gcc warnings
20026         * tests/test-getdate.c (LOG) [!DEBUG]: Mark no-op void.
20027         * tests/uniwidth/test-uc_width2.c (finish_interval): Avoid printf
20028         type mismatches.
20029
20030 2008-12-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
20031             Bruno Haible  <bruno@clisp.org>
20032
20033         * m4/openmp.m4 (AC_OPENMP): Do not define with Autoconf 2.62 or newer.
20034
20035 2008-11-29  Jim Meyering  <meyering@redhat.com>
20036
20037         unicodeio.c: mark unused parameters
20038         * lib/unicodeio.c (exit_failure_callback): Mark unused parameter.
20039         (fallback_failure_callback): Likewise.
20040
20041         fts: fix a thinko
20042         * lib/fts.c (s_ifmt_shift_bits): Remove function.  Not needed after all.
20043         (set_stat_type): Return S_IF*-valued "type" directly.
20044         Prompted by James Youngman's spotting a related bug.
20045         Confirmed by further testing through find.
20046
20047         fts: provide dirent.d_type via FTSENT.fts_statp, when possible
20048         * lib/fts.c (D_TYPE): Define.
20049         (DT_UNKNOWN, DT_BLK, DT_CHR) [HAVE_STRUCT_DIRENT_D_TYPE]: Define.
20050         (DT_DIR, DT_FIFO, DT_LNK, DT_REG, DT_SOCK): Likewise.
20051         (s_ifmt_shift_bits): New function.
20052         (set_stat_type): New function.
20053         (fts_build): When not calling fts_stat, call set_stat_type
20054         to propagate dirent.d_type info to fts_read caller.
20055         * lib/fts_.h (FTSENT) [FTS_DEFER_STAT]: Mention that
20056         fts_statp->st_mode type information may be valid.
20057
20058 2008-11-28  Simon Josefsson  <simon@josefsson.org>
20059
20060         * lib/sys_time.in.h: Add extern "C" block for C++.  Suggested by
20061         Brian Dessent <brian@dessent.net>.  Reported by Sam Steingold
20062         <sds@gnu.org>.
20063
20064 2008-11-20  Bruno Haible  <bruno@clisp.org>
20065
20066         Attempt to work around an AIX 5.3, 6.1 compiler bug with include_next.
20067         * lib/math.in.h: Use INCLUDE_NEXT_AS_FIRST_DIRECTIVE instead of
20068         INCLUDE_NEXT.
20069         * m4/include_next.m4 (gl_INCLUDE_NEXT): Set also
20070         INCLUDE_NEXT_AS_FIRST_DIRECTIVE.
20071         * modules/math (Makefile.am): Substitute
20072         INCLUDE_NEXT_AS_FIRST_DIRECTIVE instead of INCLUDE_NEXT.
20073         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
20074
20075 2008-11-18  Alexandre Duret-Lutz  <adl@lrde.epita.fr>
20076             Bruno Haible  <bruno@clisp.org>
20077
20078         * lib/stdint.in.h: Define all type macros so that their expansion is
20079         a single typedef'ed token. Fixes a compilation failure in Boost which
20080         does "using ::int8_t;".
20081
20082 2008-11-18  Simon Josefsson  <simon@josefsson.org>
20083
20084         * m4/manywarnings.m4: New file with gl_MANYWARN_COMPLEMENT and
20085         gl_MANYWARN_ALL_GCC.
20086         * m4/warnings.m4: Removed gl_WARN_SUPPORTED and
20087         gl_WARN_COMPLEMENT.  Suggested by Bruno Haible <bruno@clisp.org>.
20088         * modules/manywarnings: New file.
20089         * MODULES.html.sh: Mention manywarnings module.
20090
20091 2008-11-18  Bruno Haible  <bruno@clisp.org>
20092
20093         * doc/gnulib-tool.texi (Unit tests): New section.
20094
20095 2008-11-18  Simon Josefsson  <simon@josefsson.org>
20096
20097         * top/maint.mk (refresh-po): Fix sed regexp to avoid problems with
20098         paths like 'lib/po/foo.po'.
20099
20100 2008-11-17  Simon Josefsson  <simon@josefsson.org>
20101
20102         * m4/warnings.m4: Improve code.  Reported by Ralf Wildenhues
20103         <Ralf.Wildenhues@gmx.de> and Paolo Bonzini <bonzini@gnu.org>.
20104
20105 2008-11-17  Simon Josefsson  <simon@josefsson.org>
20106
20107         * m4/warnings.m4: Use CPPFLAGS to really check whether the
20108         parameter works.
20109
20110 2008-11-17  Simon Josefsson  <simon@josefsson.org>
20111
20112         * m4/warnings.m4: Add gl_WARN_COMPLEMENT and gl_WARN_SUPPORTED.
20113
20114 2008-11-17  Bruce Korb  <bkorb@gnu.org>
20115
20116         * modules/parse-duration-tests: New file.
20117         * tests/test-parse-duration.sh: New file.
20118         * tests/test-parse-duration.c: New file.
20119
20120         New module 'parse-duration'.
20121         * lib/parse-duration.h: New file.
20122         * lib/parse-duration.c: New file.
20123         * modules/parse-duration: New file.
20124
20125 2008-11-17  Bruno Haible  <bruno@clisp.org>
20126
20127         * tests/test-select-out.sh: Comment out the first pipe test.
20128         Reported by Simon Josefsson.
20129
20130 2008-11-17  Bruno Haible  <bruno@clisp.org>
20131
20132         * modules/getaddrinfo (Depends-on): Add servent, hostent.
20133         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Use gl_SERVENT and
20134         gl_HOSTENT.
20135
20136 2008-11-17  Bruno Haible  <bruno@clisp.org>
20137
20138         * m4/sockets.m4 (gl_SOCKETS): After trying -lsocket, try also
20139         -lnetwork and -lnet. Needed for Haiku and BeOS.
20140
20141 2008-11-16  Bruno Haible  <bruno@clisp.org>
20142
20143         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Fix indentation.
20144
20145 2008-11-16  Bruno Haible  <bruno@clisp.org>
20146
20147         Avoid test failure on Haiku.
20148         * tests/test-fsync.c: Include <errno.h>.
20149         (main): Don't require that fsync (0) fails.
20150
20151 2008-11-15  Bruno Haible  <bruno@clisp.org>
20152
20153         New module 'hostent'.
20154         * modules/hostent: New file.
20155         * m4/hostent.m4: New file, based on code in m4/getaddrinfo.m4.
20156
20157 2008-11-15  Bruno Haible  <bruno@clisp.org>
20158
20159         New module 'servent'.
20160         * modules/servent: New file.
20161         * m4/servent.m4: New file, based on code in m4/getaddrinfo.m4.
20162
20163 2008-11-15  Bruno Haible  <bruno@clisp.org>
20164
20165         Avoid generating same test program with two different rules.
20166         * modules/frexp-nolibm-tests (Makefile.am): Rename test program from
20167         test-frexp to test-frexp-nolibm.
20168         * modules/frexpl-nolibm-tests (Makefile.am): Rename test program from
20169         test-frexpl to test-frexpl-nolibm.
20170
20171 2008-11-15  Bruno Haible  <bruno@clisp.org>
20172
20173         * modules/frexpl-tests (Makefile.am): Link test-frexpl with
20174         $(FREXPL_LIBM).
20175
20176 2008-11-15  Bruno Haible  <bruno@clisp.org>
20177
20178         * lib/netdb.in.h: Activate the definitions also when the system's
20179         <netdb.h> has 'struct addrinfo'.
20180         * m4/netdb_h.m4 (gl_HEADER_NETDB): Replace netdb.h also when it lacks
20181         EAI_OVERFLOW or AI_NUMERICSERV.
20182         * doc/posix-headers/netdb.texi: Document the problem.
20183
20184 2008-11-15  Bruno Haible  <bruno@clisp.org>
20185
20186         * tests/test-sched.c: Test also the existence of the SCHED_* macros.
20187
20188         Make the 'sched' module work on platforms where <sched.h> exists but
20189         is incomplete (such as Haiku).
20190         * lib/sched.in.h; Include the system's <sched.h> if it exists.
20191         (SCHED_FIFO, SCHED_RR, SCHED_OTHER): New macros.
20192         * m4/sched_h.m4 (gl_SCHED_H): Test whether <sched.h> exists and also
20193         defines SCHED_FIFO, SCHED_RR, SCHED_OTHER. Set HAVE_SCHED_H,
20194         HAVE_STRUCT_SCHED_PARAM.
20195         * modules/sched (Depends-on): Add include_next.
20196         (Makefile.am): Substitute HAVE_SCHED_H, INCLUDE_NEXT,
20197         PRAGMA_SYSTEM_HEADER, NEXT_SCHED_H, HAVE_STRUCT_SCHED_PARAM.
20198         * doc/posix-headers/sched.texi: Document the issue.
20199
20200 2008-11-13  Jim Meyering  <meyering@redhat.com>
20201
20202         test-argp-2: avoid test failure when PACKAGE_BUGREPORT is defined
20203         * tests/test-argp-2.sh: When PACKAGE_BUGREPORT was defined, this
20204         test would fail due to the difference in the Report bugs to ...
20205         line.  The expected address is empty, "<>", while the actual
20206         would contain e.g., "<bug-tar@gnu.org>".  Filter out any address.
20207
20208 2008-11-12  Bruno Haible  <bruno@clisp.org>
20209
20210         lstat: don't compile lstat.c on systems lacking lstat
20211         * m4/lstat.m4 (gl_FUNC_LSTAT): Don't compile lstat.c on systems
20212         which don't have lstat; this is handled by lib/sys_stat.in.h already.
20213         Reported by Daniel P. Berrange via Jim Meyering.
20214
20215 2008-11-12  Jim Meyering  <meyering@redhat.com>
20216
20217         * lib/unicodeio.c (unicode_to_mb): Correct spelling of u8_uctomb.
20218
20219 2008-11-12  Simon Josefsson  <simon@josefsson.org>
20220
20221         * modules/warnings (configure.ac): Do AC_SUBST([WARN_CFLAGS]) here
20222         instead.
20223
20224 2008-11-12  Bruno Haible  <bruno@clisp.org>
20225
20226         * lib/unicodeio.c: Include unistr.h.
20227         (utf8_wctomb): Remove function.
20228         (unicode_to_mb): Use utf8_uctomb instead of utf8_wctomb.
20229
20230 2008-11-12  Simon Josefsson  <simon@josefsson.org>
20231
20232         * m4/warnings.m4 (gl_WARN_INIT): Remove, suggested by Ralf
20233         Wildenhues <Ralf.Wildenhues@gmx.de> and Bruno Haible
20234         <bruno@clisp.org>.
20235         * modules/warnings (configure.ac): Don't call gl_WARN_INIT.
20236
20237 2008-11-12  Simon Josefsson  <simon@josefsson.org>
20238
20239         * doc/warnings.texi: New file, from Bruno Haible <bruno@clisp.org>.
20240         * doc/gnulib.texi: Add section for warnings.
20241
20242 2008-11-11  Bruno Haible  <bruno@clisp.org>
20243
20244         * lib/sockets.h: Add a comment.
20245
20246 2008-11-11  Karl Berry  <karl@gnu.org>
20247
20248         * config/srclist.txt (fdl.texi): add, syncing from gnustandards.
20249
20250 2008-11-11  Eric Blake  <ebb9@byu.net>
20251
20252         fdl.texi: avoid git symlinks
20253         * doc/fdl.texi: Copy, rather than link, fdl-1.3.texi.
20254
20255 2008-11-11  Paolo Bonzini  <bonzini@gnu.org>
20256
20257         * m4/warnings.m4 (gl_WARN_ADD): Don't AC_SUBST the empty string.
20258
20259 2008-11-11  Paolo Bonzini  <bonzini@gnu.org>
20260
20261         * m4/warnings.m4 (gl_WARN_INIT): Substitute WARN_CFLAGS.
20262         (gl_WARN_ADD): Substitute $2 if literal.
20263
20264 2008-11-11  Paolo Bonzini  <bonzini@gnu.org>
20265
20266         * m4/warning.m4: Remove.
20267
20268 2008-11-11  Paolo Bonzini  <bonzini@gnu.org>
20269
20270         * m4/warnings.m4: Almost complete rewrite. :-)
20271
20272 2008-11-10  Simon Josefsson  <simon@josefsson.org>
20273
20274         * modules/warnings: New module.
20275         * m4/warnings.m4: New file.
20276         * MODULES.html.sh: Mention warnings module.
20277         With review improvements from Paolo Bonzini <bonzini@gnu.org> and
20278         Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
20279
20280 2008-11-10  Eric Blake  <ebb9@byu.net>
20281
20282         fdl.texi: make a symlink to the latest version
20283         * doc/standards.texi: Revert today's earlier change.
20284         * doc/fdl-1.2.texi: Rename from old fdl.texi...
20285         * doc/fdl.texi: ...and replace this with a symlink to the newer
20286         fdl-1.3.texi.
20287
20288 2008-11-10  Bruno Haible  <bruno@clisp.org>
20289
20290         * tests/test-select-fd.c (main): Accept the result file name as fourth
20291         argument.
20292         * tests/test-select-in.sh: Pass t-select-in.tmp as fourth argument.
20293         * tests/test-select-out.sh: Pass t-select-out.tmp as fourth argument.
20294
20295 2008-11-10  Bruno Haible  <bruno@clisp.org>
20296
20297         * lib/netdb.in.h: Use HAVE_STRUCT_ADDRINFO, HAVE_DECL_GETADDRINFO,
20298         HAVE_DECL_FREEADDRINFO, HAVE_DECL_GAI_STRERROR, HAVE_DECL_GETNAMEINFO
20299         as autoconf-substituted macros.
20300         * m4/netdb_h.m4 (gl_NETDB_H_DEFAULTS): Initialize these variables to 1.
20301         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Require
20302         gl_NETDB_H_DEFAULTS. Set these variables.
20303         * modules/netdb (Makefile.am): Substitute these variables.
20304
20305 2008-11-10  Eric Blake  <ebb9@byu.net>
20306
20307         standards.texi: include correct file for FDL 1.3
20308         * doc/standards.texi (GNU Free Documentation License): Change
20309         include file to pull in FDL 1.3, not 1.2.
20310
20311         fdl.texi: revert accidental change to license
20312         * doc/fdl.texi: This is FDL 1.2, not 1.3.
20313
20314 2008-11-10  Bruno Haible  <bruno@clisp.org>
20315
20316         * m4/printf.m4 (gl_PRINTF_ENOMEM): Guess yes on Haiku. Use the
20317         cross-compiling guesses also when the native compile gives no result.
20318
20319 2008-11-10  Bruno Haible  <bruno@clisp.org>
20320
20321         * lib/spawni.c (__spawni): Force variable into the stack.
20322
20323 2008-11-10  Bruno Haible  <bruno@clisp.org>
20324
20325         Add support for Haiku.
20326         * lib/fbufmode.c (fbufmode): Test a symbol that is not only defined on
20327         glibc and BeOS, but also on Haiku.
20328         * lib/fpurge.c (fpurge): Likewise.
20329         * lib/freadable.c (freadable): Likewise.
20330         * lib/freadahead.c (freadahead): Likewise.
20331         * lib/freading.c (freading): Likewise.
20332         * lib/freadptr.c (freadptr): Likewise.
20333         * lib/freadseek.c (freadptrinc): Likewise.
20334         * lib/fseeko.c (rpl_fseeko): Likewise.
20335         * lib/fseterr.c (fseterr): Likewise.
20336         * lib/fwritable.c (fwritable): Likewise.
20337         * lib/fwriting.c (fwriting): Likewise.
20338         Reported by Ingo Weinhold <ingo_weinhold@gmx.de>.
20339
20340 2008-11-10  Ingo Weinhold  <ingo_weinhold@gmx.de>
20341
20342         * lib/config.charset: Treat Haiku like BeOS.
20343
20344 2008-11-10  Ingo Weinhold  <ingo_weinhold@gmx.de>
20345
20346         * lib/binary-io.h (O_BINARY, O_TEXT): Treat Haiku like BeOS.
20347         * lib/fcntl.in.h (O_BINARY, O_TEXT): Likewise.
20348
20349 2008-11-08  Bruno Haible  <bruno@clisp.org>
20350
20351         * m4/sys_ioctl_h.m4 (gl_SYS_IOCTL_H): Avoid using AC_CHECK_DECL inside
20352         AC_CACHE_CHECK.
20353
20354 2008-11-08  Bruno Haible  <bruno@clisp.org>
20355
20356         * modules/select-tests (configure.ac): Check for unistd.h, sys/wait.h.
20357
20358 2008-11-08  Bruno Haible  <bruno@clisp.org>
20359
20360         * tests/test-select-fd.c: New file.
20361         * tests/test-select-in.sh: New file.
20362         * tests/test-select-out.sh: New file.
20363         * tests/test-select-stdin.c: New file.
20364         * modules/select-tests (Files): Add the new files.
20365         (Depends-on): Add gettimeofday.
20366         (Makefile.am): Add test-select-in.sh, test-select-out.sh to TESTS.
20367         Set TESTS_ENVIRONMENT. Add test-select-fd, test-select-stdin to
20368         check_PROGRAMS. Define test_select_fd_LDADD, test_select_stdin_LDADD.
20369
20370 2008-11-06  Alexander V. Lukyanov  <lav@netis.ru>
20371             Bruno Haible  <bruno@clisp.org>
20372
20373         * lib/sys_stat.in.h: Enclose function definitions in extern "C".
20374
20375 2008-10-12  Giuseppe Scrivano  <gscrivano@gnu.org>
20376
20377         * build-aux/pmccabe2html: Added support for C++ source files.
20378
20379 2008-11-05  Ben Pfaff  <blp@gnu.org>
20380
20381         Fix lib/close.c build on Windows.
20382         * modules/close (Files): Add lib/w32sock.h.
20383
20384 2008-11-05  Joel E. Denny  <jdenny@ces.clemson.edu>
20385
20386         Accept Bison's NEWS format.
20387         * build-aux/announce-gen (print_news_deltas): Tweak
20388         $re_prefix.
20389
20390 2008-11-04  Bruno Haible  <bruno@clisp.org>
20391
20392         * modules/random_r (Maintainer): Add glibc.
20393
20394 2008-11-04  Simon Josefsson  <simon@josefsson.org>
20395
20396         * doc/alloca-opt.texi: Change license to GFDLv1.3+, as suggested
20397         by karl@freefriends.org (Karl Berry).
20398         * doc/alloca.texi: Likewise.
20399         * doc/c-ctype.texi: Likewise.
20400         * doc/c-strcase.texi: Likewise.
20401         * doc/c-strcaseeq.texi: Likewise.
20402         * doc/c-strcasestr.texi: Likewise.
20403         * doc/c-strstr.texi: Likewise.
20404         * doc/c-strtod.texi: Likewise.
20405         * doc/c-strtold.texi: Likewise.
20406         * doc/ctime.texi: Likewise.
20407         * doc/error.texi: Likewise.
20408         * doc/fdl.texi: Likewise.
20409         * doc/gcd.texi: Likewise.
20410         * doc/getdate.texi: Likewise.
20411         * doc/gnulib-intro.texi: Likewise.
20412         * doc/gnulib-tool.texi: Likewise.
20413         * doc/gnulib.texi: Likewise.
20414         * doc/inet_ntoa.texi: Likewise.
20415         * doc/maintain.texi: Likewise.
20416         * doc/make-stds.texi: Likewise.
20417         * doc/quote.texi: Likewise.
20418         * doc/regexprops-generic.texi: Likewise.
20419         * doc/standards.texi: Likewise.
20420         * doc/verify.texi: Likewise.
20421         * doc/visibility.texi: Likewise.
20422         * doc/gnulib.texi (GNU Free Documentation License): Include
20423         fdl-1.3.texi instead of fdl.texi.
20424
20425 2008-11-04  Simon Josefsson  <simon@josefsson.org>
20426
20427         * doc/fdl-1.3.texi: New file, from
20428         <http://www.gnu.org/licenses/fdl-1.3.texi>.
20429         * modules/fdl-1.3: Add.
20430         * MODULES.html.sh: Add fdl-1.3.
20431
20432 2008-11-03  Bruno Haible  <bruno@clisp.org>
20433
20434         Make determination of absolute name of header file work with AIX xlc.
20435         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Require
20436         AC_CANONICAL_HOST. On AIX, use "$CPP -C" rather than "$CPP" for
20437         preprocessing.
20438         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
20439         Reported by Gary V. Vaughan <gary@thewrittenword.com>.
20440
20441 2008-11-03  Simon Josefsson  <simon@josefsson.org>
20442
20443         * top/maint.mk (COVERAGE_CCOPTS): Use --coverage instead of
20444         -fprofile-arcs -ftest-coverage.  Suggested by Ludovic Courtès
20445         <ludo@gnu.org>.
20446
20447 2008-11-02  Bruno Haible  <bruno@clisp.org>
20448
20449         Mark 'strpbrk' obsolete.
20450         * modules/strpbrk (Status, Notice): New sections.
20451         * modules/strtok_r (Depends-on): Add strpbrk.
20452
20453 2008-11-02  Bruno Haible  <bruno@clisp.org>
20454
20455         Mark 'strdup' obsolete.
20456         * modules/strdup (Status, Notice): New sections.
20457         * modules/findprog (Depends-on): Add strdup.
20458         * modules/getaddrinfo (Depends-on): Likewise.
20459         * modules/localename (Depends-on): Likewise.
20460         * modules/relocatable-lib (Depends-on): Likewise.
20461         * modules/relocatable-lib-lgpl (Depends-on): Likewise.
20462         * modules/relocatable-prog (Depends-on): Likewise.
20463         * modules/trim (Depends-on): Likewise.
20464         * modules/unictype/gen-ctype (Depends-on): Likewise.
20465         * modules/unilbrk/gen-lbrk (Depends-on): Likewise.
20466
20467 2008-11-02  Bruno Haible  <bruno@clisp.org>
20468
20469         Mark 'strcspn' obsolete.
20470         * modules/strcspn (Status, Notice): New sections.
20471
20472 2008-11-02  Bruno Haible  <bruno@clisp.org>
20473
20474         Mark 'rmdir' obsolete.
20475         * modules/rmdir (Status, Notice): New sections.
20476         * modules/clean-temp (Depends-on): Add rmdir.
20477         * modules/openat (Depends-on): Likewise.
20478
20479 2008-11-02  Bruno Haible  <bruno@clisp.org>
20480
20481         Mark 'raise' obsolete.
20482         * modules/raise (Status, Notice): New sections.
20483         (Include): Specify <signal.h>.
20484         * modules/stdio (Depends-on): Add raise.
20485         * modules/write (Depends-on): Likewise.
20486
20487 2008-11-02  Bruno Haible  <bruno@clisp.org>
20488
20489         Mark 'memset' obsolete.
20490         * modules/memset (Status, Notice): New sections.
20491
20492 2008-11-02  Bruno Haible  <bruno@clisp.org>
20493
20494         Mark 'memmove' obsolete.
20495         * modules/memmove (Status, Notice): New sections.
20496         * modules/argp (Depends-on): Add memmove.
20497         * modules/argz (Depends-on): Likewise.
20498         * modules/canonicalize (Depends-on): Likewise.
20499         * modules/canonicalize-lgpl (Depends-on): Likewise.
20500         * modules/fts (Depends-on): Likewise.
20501         * modules/getcwd (Depends-on): Likewise.
20502         * modules/human (Depends-on): Likewise.
20503         * modules/regex (Depends-on): Likewise.
20504         * modules/striconveh (Depends-on): Likewise.
20505         * modules/trim (Depends-on): Likewise.
20506         * modules/unistr/u8-move (Depends-on): Likewise.
20507         * modules/unistr/u16-move (Depends-on): Likewise.
20508         * modules/unistr/u32-move (Depends-on): Likewise.
20509
20510 2008-11-02  Bruno Haible  <bruno@clisp.org>
20511
20512         Mark 'memcpy' obsolete.
20513         * modules/memcpy (Status, Notice): New sections.
20514
20515 2008-11-02  Bruno Haible  <bruno@clisp.org>
20516
20517         Mark 'memcmp' obsolete.
20518         * modules/memcmp (Status, Notice): New sections.
20519         * modules/argmatch (Depends-on): Add memchr.
20520         * modules/backupfile (Depends-on): Likewise.
20521         * modules/c-strcasestr (Depends-on): Likewise.
20522         * modules/crypto/des (Depends-on): Likewise.
20523         * modules/csharpcomp (Depends-on): Likewise.
20524         * modules/fnmatch (Depends-on): Likewise.
20525         * modules/git-merge-changelog (Depends-on): Likewise.
20526         * modules/isnand (Depends-on): Likewise.
20527         * modules/isnand-nolibm (Depends-on): Likewise.
20528         * modules/isnanf (Depends-on): Likewise.
20529         * modules/isnanf-nolibm (Depends-on): Likewise.
20530         * modules/isnanl (Depends-on): Likewise.
20531         * modules/isnanl-nolibm (Depends-on): Likewise.
20532         * modules/mbchar (Depends-on): Likewise.
20533         * modules/memcoll (Depends-on): Likewise.
20534         * modules/quotearg (Depends-on): Likewise.
20535         * modules/regex (Depends-on): Likewise.
20536         * modules/relocatable-prog (Depends-on): Likewise.
20537         * modules/same (Depends-on): Likewise.
20538         * modules/signbit (Depends-on): Likewise.
20539         * modules/strcasestr-simple (Depends-on): Likewise.
20540         * modules/unictype/gen-ctype (Depends-on): Likewise.
20541         * modules/unilbrk/gen-lbrk (Depends-on): Likewise.
20542         * modules/uniname/uniname (Depends-on): Likewise.
20543         * modules/unistr/u8-cmp (Depends-on): Likewise.
20544
20545 2008-11-02  Bruno Haible  <bruno@clisp.org>
20546
20547         Mark 'memchr' obsolete.
20548         * modules/memchr (Status, Notice): New sections.
20549         * modules/argp (Depends-on): Add memchr.
20550         * modules/base64 (Depends-on): Likewise.
20551         * modules/c-strcasestr (Depends-on): Likewise.
20552         * modules/chdir-long (Depends-on): Likewise.
20553         * modules/fnmatch (Depends-on): Likewise.
20554         * modules/getsubopt (Depends-on): Likewise.
20555         * modules/git-merge-changelog (Depends-on): Likewise.
20556         * modules/glob (Depends-on): Likewise.
20557         * modules/strcasestr-simple (Depends-on): Likewise.
20558         * modules/strnlen (Depends-on): Likewise.
20559
20560 2008-11-02  Bruno Haible  <bruno@clisp.org>
20561
20562         Mark 'atexit' obsolete.
20563         * modules/atexit (Status, Notice): New sections.
20564         * modules/chdir-long (Depends-on): Add atexit.
20565         * modules/wait-process (Depends-on): Likewise.
20566
20567 2008-11-02  Bruno Haible  <bruno@clisp.org>
20568
20569         * gnulib-tool: New option --with-obsolete.
20570         (func_usage): Document it.
20571         (func_modules_transitive_closure): Drop obsolete dependencies if
20572         incobsolete is not true.
20573         (func_import): Read and save the incobsolete variable to the cache.
20574
20575 2008-11-02  Bruno Haible  <bruno@clisp.org>
20576
20577         * modules/TEMPLATE-EXTENDED: New field 'Status'.
20578         * gnulib-tool: New option --extract-status.
20579         (func_usage): Document it.
20580         (sed_extract_prog): Recognize it.
20581         (func_get_status): New function.
20582
20583 2008-10-30  Simon Josefsson  <simon@josefsson.org>
20584
20585         * modules/sockets (License): Change from LGPL to LGPLv2+.
20586
20587 2008-10-28  Simon Josefsson  <simon@josefsson.org>
20588
20589         * top/maint.mk: Add coverage rules, inspired by scripts in gnupdf.
20590
20591 2008-10-28  Simon Josefsson  <simon@josefsson.org>
20592
20593         * MODULES.html.sh (Support for systems lacking POSIX:2001):
20594         Mention times and sys_times.
20595         * modules/sys_times, modules/sys_times-tests: New modules.
20596         * modules/times, modules/times-tests: Likewise
20597         * m4/sys_times_h.m4: New file.
20598         * lib/sys_times.in.h: Likewise
20599         * lib/times.c: Likewise.
20600         * tests/test-sys_times.c: Likewise.
20601         * tests/test-times.c: Likewise.
20602         * doc/posix-headers/sys_times.texi: Update.
20603         * doc/posix-functions/times.texi: Update.
20604
20605 2008-10-28  Jim Meyering  <meyering@redhat.com>
20606
20607         * modules/tempname (Depends-on): Add lstat.
20608
20609         * modules/lstat (License): Relicense: LGPL -> LGPLv2+.
20610
20611 2008-10-28  Simon Josefsson  <simon@josefsson.org>
20612
20613         * gnulib-tool (func_emit_tests_Makefile_am): Revert last commit.
20614         * modules/argp-tests (test_argp_LDADD): Set EXEEXT here instead,
20615         using idiom used elsewhere in gnulib.
20616
20617 2008-10-27  Jim Meyering  <meyering@redhat.com>
20618
20619         * modules/gethostname (License): Relicense: LGPL -> LGPLv2+.
20620
20621 2008-10-27  Simon Josefsson  <simon@josefsson.org>
20622
20623         * gnulib-tool (func_emit_tests_Makefile_am): Set EXEEXT in
20624         TESTS_ENVIRONMENT, for shell scripts that needs to call built
20625         programs.
20626         * tests/test-argp-2.sh: Use $EXEEXT when needed.
20627
20628 2008-10-27  Simon Josefsson  <simon@josefsson.org>
20629
20630         * lib/sys_stat.in.h (lstat): Fix declaration for mingw.
20631
20632 2008-10-27  Bruno Haible  <bruno@clisp.org>
20633
20634         * tests/test-lstat.c: Include <stdio.h>.
20635
20636 2008-10-27  Simon Josefsson  <simon@josefsson.org>
20637
20638         * modules/lstat-tests: New module.
20639         * tests/test-lstat.c: New file.
20640
20641 2008-10-26  Jim Meyering  <meyering@redhat.com>
20642
20643         * lib/mkdir.c (rpl_mkdir) [_WIN32...]: Mark mode as an unused parameter.
20644
20645 2008-10-26  Simon Josefsson  <simon@josefsson.org>
20646             Bruno Haible  <bruno@clisp.org>
20647
20648         Fix a clash between the type DATADIR on Windows and the macro DATADIR.
20649         * modules/configmake (Include): Add a note that the include must come
20650         after all system headers.
20651         * lib/javaversion.c: Include configmake.h after all other includes.
20652
20653 2008-10-26  Bruno Haible  <bruno@clisp.org>
20654
20655         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Set default of
20656         HAVE_STRUCT_RANDOM_DATA to 1.
20657         (gl_STDLIB_H): Simplify.
20658
20659 2008-10-26  Simon Josefsson  <simon@josefsson.org>
20660
20661         * m4/stdlib_h.m4: Check for struct random_data.  Initialize and
20662         substitute HAVE_STRUCT_RANDOM_DATA.
20663         * lib/stdlib.in.h [!HAVE_STRUCT_RANDOM_DATA]: Provide struct
20664         random_data.
20665         * modules/stdlib (Makefile.am): Substitute
20666         HAVE_STRUCT_RANDOM_DATA.
20667
20668 2008-10-26  Simon Josefsson  <simon@josefsson.org>
20669
20670         * doc/gnulib.texi (@copying): Use GFDLv1.2+.
20671         * doc/gnulib-intro.texi (Copyright): Likewise.
20672
20673 2008-10-26  Simon Josefsson  <simon@josefsson.org>
20674
20675         * doc/gnulib.texi (Header files): C++ fixes, based on Bruno's
20676         findings.
20677
20678 2008-10-25  Ben Pfaff  <blp@cs.stanford.edu>
20679             Bruno Haible  <bruno@clisp.org>
20680
20681         * lib/unistd.in.h: Include <winsock2.h>.
20682         (socket, connect,accept, bind, getpeername, getsockname, getsockopt,
20683         listen, recv, send, recvfrom, sendto, setsockopt, shutdown, select):
20684         Provide dummy declarations.
20685         (gethostname): Override.
20686         * lib/sys_socket.in.h (gethostname): Provide dummy declaration.
20687         * m4/gethostname.m4 (gl_FUNC_GETHOSTNAME): Invoke
20688         gl_PREREQ_SYS_H_WINSOCK2.
20689         * modules/gethostname (Files): Add m4/sys_socket_h.m4.
20690         * doc/posix-functions/gethostname.texi: More details.
20691
20692 2008-10-25  Bruno Haible  <bruno@clisp.org>
20693
20694         * m4/sys_socket_h.m4 (gl_PREREQ_SYS_H_WINSOCK2): Require
20695         gl_UNISTD_H_DEFAULTS, gl_SYS_IOCTL_H_DEFAULTS only if they exist.
20696         * modules/sys_socket (Files): Remove m4/unistd_h.m4, m4/sys_ioctl_h.m4.
20697
20698         * lib/sys_socket.in.h (HAVE__GL_CLOSE_FD_MAYBE_SOCKET); Move macro from
20699         here ...
20700         * lib/unistd.in.h (HAVE__GL_CLOSE_FD_MAYBE_SOCKET); ... to here.
20701         * m4/sys_socket_h.m4 (gl_SYS_SOCKET_H_DEFAULTS): Remove invocation of
20702         gl_UNISTD_H_DEFAULTS.
20703
20704 2008-10-25  Eric Blake  <ebb9@byu.net>
20705
20706         signbit: avoid spurious compiler failure
20707         * m4/signbit.m4 (gl_SIGNBIT_TEST_PROGRAM): Move non-constant
20708         declarations inside function.
20709
20710 2008-10-24  Simon Josefsson  <simon@josefsson.org>
20711             Bruno Haible  <bruno@clisp.org>
20712
20713         * lib/stdlib.in.h (@GNULIB_RANDOM_R@): Include stdint.h.
20714         * modules/random_r (Depends-on): Add stdint.
20715
20716 2008-10-24  Bruno Haible  <bruno@clisp.org>
20717
20718         * modules/intprops (License): Change to LGPLv2+, with approval by Paul
20719         Eggert.
20720         * modules/strerror (License): Likewise.
20721
20722 2008-10-24  Jim Meyering  <meyering@redhat.com>
20723
20724         sys_socket: fix typo that inhibited expansion of @GNULIB_SEND@
20725         * modules/sys_socket (Depends-on) [Depends-on]: Fix typo.
20726
20727 2008-10-24  Eric Blake  <ebb9@byu.net>
20728
20729         getgroups: fix compilation when getgroups is available
20730         * lib/getgroups.c (includes): Include <unistd.h> for getgroups,
20731         but with <config.h> override of getgroups disabled.
20732
20733 2008-10-24  Simon Josefsson  <simon@josefsson.org>
20734
20735         * doc/gnulib.texi (Header files): Add note about C++ problems.
20736         Explained by Bruno Haible <bruno@clisp.org>.
20737
20738 2008-10-23  Bruno Haible  <bruno@clisp.org>
20739
20740         Define a dummy SA_NODEFER macro on Interix.
20741         * lib/signal.in.h (SA_NODEFER): Define fallback.
20742         Reported by Aleksey Cheusov <cheusov@tut.by> via
20743         Thomas Klausner <wiz@netbsd.org> and Eric Blake.
20744
20745 2008-10-23  Bruno Haible  <bruno@clisp.org>
20746
20747         * modules/freadahead (License): Change to LGPLv2+.
20748         Suggested by Simon Josefsson.
20749
20750 2008-10-23  Jim Meyering  <meyering@redhat.com>
20751
20752         random_r: new module
20753         * modules/random_r: New file.
20754         * m4/random_r.m4: New file.
20755         * lib/random_r.c: New file, from glibc.
20756         * modules/random_r-tests: New file.
20757         * tests/test-random_r.c: New file.
20758         * lib/stdlib.in.h (srandom_r, initstate_r, setstate_r, random_r):
20759          Declare.
20760         (RAND_MAX): Define.
20761         * m4/stdlib_h.m4: Define and AC_SUBST GNULIB_RANDOM_R and HAVE_RANDOM_R.
20762         * modules/stdlib: Substitute them, too.
20763         * MODULES.html.sh (Extra functions based on POSIX:2001) [Misc]: Add it.
20764         * doc/glibc-functions/initstate_r.texi: Mention the new module.
20765         * doc/glibc-functions/random_r.texi: Likewise.
20766         * doc/glibc-functions/setstate_r.texi: Likewise.
20767         * doc/glibc-functions/srandom_r.texi: Likewise.
20768         * config/srclist.txt: Mention it.
20769
20770 2008-10-23  David Lutterkort  <lutter@redhat.com>
20771
20772         * modules/selinux-h: Search for LIB_SELINUX and mark it as a
20773         link requirement
20774
20775 2008-10-23  Jim Meyering  <meyering@redhat.com>
20776
20777         selinux-h: mark parameters of stub functions as intentionally unused
20778         * lib/se-selinux.in.h: Mark parameters as _UNUSED_PARAMETER_.
20779         * lib/se-context.in.h: Likewise.
20780
20781 2008-10-22  Simon Josefsson  <simon@josefsson.org>
20782
20783         * lib/sys_socket.in.h (FD_ISSET): Fix warnings under mingw.
20784
20785 2008-10-22  Simon Josefsson  <simon@josefsson.org>
20786
20787         * m4/getgroups.m4: Avoid invoking test with wrong parameters.
20788
20789 2008-10-22  Eric Blake  <ebb9@byu.net>
20790
20791         glthread/thread: avoid compiler warning
20792         * lib/glthread/thread.c (gl_thread_exit_func) [USE_WIN32_THREADS]:
20793         Add unreachable abort to silence compiler.
20794
20795 2008-10-22  Eric Blake  <ebb9@byu.net>
20796
20797         netdb: also supply struct addrinfo for cygwin 1.5.x
20798         * m4/netdb_h.m4 (gl_HEADER_NETDB): Check for incomplete header on
20799         older cygwin.
20800         * lib/netdb.in.h [!HAVE_STRUCT_ADDRINFO]: Also supply contents for
20801         cygwin.
20802         * doc/posix-headers/netdb.texi (netdb.h): Document this.
20803
20804 2008-10-22  Bruno Haible  <bruno@clisp.org>
20805
20806         * users.txt: Update entry about pspp.
20807
20808 2008-10-21  Bruno Haible  <bruno@clisp.org>
20809
20810         Simplification.
20811         * lib/sys_socket.in.h (_gl_close_fd_maybe_socket): Remove declaration.
20812         * lib/close.c (_gl_close_fd_maybe_socket): Make static.
20813
20814         Simplification.
20815         * lib/ioctl.c (ioctl): Don't undefine.
20816         * lib/socket.c (socket): Don't undefine.
20817
20818         Remove unused module indicator macros.
20819         * m4/sys_socket_h.m4 (gl_SYS_SOCKET_MODULE_INDICATOR): Don't define
20820         GNULIB_$1 as a C macro.
20821
20822         * doc/posix-functions/close.texi: Undo last change.
20823         * doc/posix-functions/ioctl.texi: Merge the two paragraphs about
20824         Windows platforms.
20825
20826 2008-10-21  Bruno Haible  <bruno@clisp.org>
20827
20828         Add gethostname() declaration to <unistd.h>.
20829         * lib/unistd.in.h (gethostname): New declaration.
20830         * lib/gethostname.c: Include <unistd.h>.
20831         * m4/gethostname.m4 (gl_FUNC_GETHOSTNAME): Require
20832         gl_UNISTD_H_DEFAULTS. Set HAVE_GETHOSTNAME.
20833         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_GETHOSTNAME
20834         and HAVE_GETHOSTNAME.
20835         * modules/gethostname (Depends-on): Add unistd.
20836         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
20837         (Include): Specify <unistd.h>.
20838         * modules/unistd (Makefile.am): Substitute GNULIB_GETHOSTNAME and
20839         HAVE_GETHOSTNAME.
20840         * tests/test-gethostname.c: Include <unistd.h> first.
20841
20842 2008-10-21  Bruno Haible  <bruno@clisp.org>
20843
20844         * modules/poll-tests (Depends-on): Add sys_ioctl, ioctl.
20845         * modules/select-tests (Depends-on): Likewise.
20846         Reported by Simon Josefsson.
20847
20848 2008-10-21  Simon Josefsson  <simon@josefsson.org>
20849
20850         * lib/close.c: Add _gl_close_fd_maybe_socket from winsock.c.
20851         * lib/accept.c: New file, based on winsock.c.
20852         * lib/bind.c: New file, based on winsock.c.
20853         * lib/connect.c: New file, based on winsock.c.
20854         * lib/getpeername.c: New file, based on winsock.c.
20855         * lib/getsockname.c: New file, based on winsock.c.
20856         * lib/getsockopt.c: New file, based on winsock.c.
20857         * lib/ioctl.c: New file, based on winsock.c.
20858         * lib/listen.c: New file, based on winsock.c.
20859         * lib/recv.c: New file, based on winsock.c.
20860         * lib/recvfrom.c: New file, based on winsock.c.
20861         * lib/send.c: New file, based on winsock.c.
20862         * lib/sendto.c: New file, based on winsock.c.
20863         * lib/setsockopt.c: New file, based on winsock.c.
20864         * lib/shutdown.c: New file, based on winsock.c.
20865         * lib/socket.c: New file, based on winsock.c.
20866         * lib/w32sock.h: New file, based on winsock.c.
20867         * lib/winsock.c: Remove file.
20868         * modules/accept: Likewise.
20869         * modules/bind: Likewise.
20870         * modules/connect: Likewise.
20871         * modules/getpeername: Likewise.
20872         * modules/getsockname: Likewise.
20873         * modules/getsockopt: Likewise.
20874         * modules/ioctl: Likewise.
20875         * modules/listen: Likewise.
20876         * modules/recv: Likewise.
20877         * modules/recvfrom: Likewise.
20878         * modules/send: Likewise.
20879         * modules/sendto: Likewise.
20880         * modules/setsockopt: Likewise.
20881         * modules/shutdown: Likewise.
20882         * modules/socket: Use socket.c instead of winsock.c.
20883         * modules/sys_socket: Remove (unneeded?) dependency on winsock.c.
20884         * doc/posix-functions/accept.texi: Doc fix.
20885         * doc/posix-functions/bind.texi: Doc fix.
20886         * doc/posix-functions/close.texi: Doc fix.
20887         * doc/posix-functions/connect.texi: Doc fix.
20888         * doc/posix-functions/getpeername.texi: Doc fix.
20889         * doc/posix-functions/getsockname.texi: Doc fix.
20890         * doc/posix-functions/getsockopt.texi: Doc fix.
20891         * doc/posix-functions/ioctl.texi: Doc fix.
20892         * doc/posix-functions/listen.texi: Doc fix.
20893         * doc/posix-functions/recv.texi: Doc fix.
20894         * doc/posix-functions/recvfrom.texi: Doc fix.
20895         * doc/posix-functions/send.texi: Doc fix.
20896         * doc/posix-functions/sendto.texi: Doc fix.
20897         * doc/posix-functions/setsockopt.texi: Doc fix.
20898         * doc/posix-functions/shutdown.texi: Doc fix.
20899         * doc/posix-functions/socket.texi: Doc fix.
20900
20901 2008-10-20  Bruno Haible  <bruno@clisp.org>
20902
20903         Take into account the role of SIGABRT_COMPAT on Windows 2008.
20904         * lib/sigprocmask.c (SIGABRT_COMPAT, SIGABRT_COMPAT_MASK): New macros.
20905         (sigismember, sigaddset, sigdelset, sigfillset, rpl_signal): Handle it
20906         as an alias for SIGABRT.
20907         * lib/sigaction.c (SIGABRT_COMPAT): New macro.
20908         (sigaction): Map it to SIGABRT.
20909         Reported by Ramiro Polla <ramiro.polla@gmail.com> via Eric Blake.
20910
20911 2008-10-20  Bruno Haible  <bruno@clisp.org>
20912
20913         * lib/fts.c: Don't include lstat.h.
20914         * lib/openat.c: Include <sys/stat.h> instead of lstat.h.
20915
20916         Move the lstat() declaration to <sys/stat.h>.
20917         * lib/lstat.h: Remove file.
20918         * lib/sys_stat.in.h: Add special invocation convention.
20919         (lstat): New declaration.
20920         * lib/lstat.c (orig_lstat): New function.
20921         (rpl_lstat): Use orig_lstat instead of lstat.
20922         * m4/lstat.m4 (gl_FUNC_LSTAT): Require gl_SYS_STAT_H_DEFAULTS and
20923         AC_C_INLINE. Set REPLACE_LSTAT.
20924         * m4/sys_stat_h.m4 (gl_SYS_STAT_H_DEFAULTS): Initialize GNULIB_LSTAT
20925         and REPLACE_LSTAT.
20926         * modules/lstat (Files): Remove lib/lstat.h.
20927         (configure.ac): Invoke gl_SYS_STAT_MODULE_INDICATOR.
20928         (Include): Specify <sys/stat.h> instead of lstat.h.
20929         * modules/sys_stat (Makefile.am): Substitute GNULIB_LSTAT and
20930         REPLACE_LSTAT.
20931         * NEWS: Mention the change.
20932
20933 2008-10-20  Bruno Haible  <bruno@clisp.org>
20934
20935         * modules/posix_spawn-tests: New file.
20936         * tests/test-posix_spawn3.c: New file.
20937
20938 2008-10-20  Bruno Haible  <bruno@clisp.org>
20939
20940         * modules/posix_spawnp-tests (Depends-on): Add sys_wait.
20941         * tests/test-posix_spawn1.c (WTERMSIG, WCOREDUMP, WEXITSTATUS,
20942         WIFSIGNALED, WIFEXITED, WIFSTOPPED): Remove fallback definitions.
20943         * tests/test-posix_spawn2.c (WTERMSIG, WCOREDUMP, WEXITSTATUS,
20944         WIFSIGNALED, WIFEXITED, WIFSTOPPED): Likewise.
20945
20946 2008-10-20  Bruno Haible  <bruno@clisp.org>
20947
20948         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): Test against another bug
20949         of posix_spawn on AIX 5.3.
20950
20951 2008-10-20  Bruno Haible  <bruno@clisp.org>
20952
20953         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): Make the check on MacOS X.
20954
20955 2008-10-20  Bruno Haible  <bruno@clisp.org>
20956
20957         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): Use AC_LANG_SOURCE instead
20958         of AC_LANG_PROGRAM.
20959
20960 2008-10-20  Simon Josefsson  <simon@josefsson.org>
20961
20962         * lib/netdb.in.h: Don't define GNU specific constants until they
20963         are supported or needed.  Reported by Bruno Haible
20964         <bruno@clisp.org>.
20965
20966 2008-10-20  Simon Josefsson  <simon@josefsson.org>
20967
20968         * lib/canon-host.c: Include netdb.h instead of getaddrinfo.h.
20969
20970 2008-10-20  Simon Josefsson  <simon@josefsson.org>
20971
20972         * lib/getaddrinfo.h: Remove file.
20973         * modules/getaddrinfo: Reflect move from getaddrinfo.h to netdb.h.
20974         * m4/getaddrinfo.m4: Call gl_HEADER_NETDB.  Don't check for netdb.h.
20975         * lib/netdb.in.h: Add declarations from getaddrinfo.h.
20976         * m4/netdb_h.m4: Initialize GNULIB_GETADDRINFO to 0.
20977         * modules/netdb: Substitute GNULIB_GETADDRINFO.
20978         * lib/getaddrinfo.c: Include netdb.h instead of getaddrinfo.h.
20979         * tests/test-getaddrinfo.c: Likewise.
20980         * lib/gai_strerror.c: Likewise.  Also drop HAVE_NETDB_H check.
20981         * NEWS: Mention change.
20982
20983 2008-10-19  Bruno Haible  <bruno@clisp.org>
20984
20985         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): Remove unneeded code.
20986
20987 2008-10-19  Bruno Haible  <bruno@clisp.org>
20988
20989         * lib/wait-process.c: Include simply <sys/wait.h>.
20990         (waitpid, WTERMSIG, WCOREDUMP, WEXITSTATUS, WIFSIGNALED, WIFEXITED,
20991         WIFSTOPPED): Remove fallback definitions.
20992         * modules/wait-process (Depends-on): Add sys_wait.
20993
20994         New module 'sys_wait'.
20995         * modules/sys_wait: New file.
20996         * lib/sys_wait.in.h: New file, partially copied from
20997         lib/wait-process.c.
20998         * m4/sys_wait_h.m4: New file.
20999         * doc/posix-headers/sys_wait.texi: Mention the new module.
21000
21001 2008-10-19  Bruno Haible  <bruno@clisp.org>
21002
21003         * m4/wait-process.m4 (gl_WAIT_PROCESS): Remove test for unistd.h.
21004
21005 2008-10-19  Bruno Haible  <bruno@clisp.org>
21006
21007         Assume that waitpid() fills an 'int' status, not a 'union wait'.
21008         * lib/wait-process.c (WAIT_T): Remove type.
21009         (WTERMSIG, WCOREDUMP, WEXITSTATUS): Define fallbacks using bit masks.
21010         (wait_subprocess): Update.
21011
21012 2008-10-19  Bruno Haible  <bruno@clisp.org>
21013
21014         New module 'atoll'.
21015         * modules/atoll: New file.
21016         * lib/stdlib.in.h (atoll): New declaration.
21017         * lib/atoll.c: New file, from glibc with modifications.
21018         * m4/atoll.m4: New file.
21019         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_ATOLL,
21020         HAVE_ATOLL.
21021         * modules/stdlib (Makefile.am): Substitute GNULIB_ATOLL, HAVE_ATOLL.
21022         * doc/posix-functions/atoll.texi: Mention the new module.
21023
21024 2008-10-19  Bruno Haible  <bruno@clisp.org>
21025
21026         Add strtoull() declaration to <stdlib.h>.
21027         * lib/stdlib.in.h (strtoull): New declaration.
21028         * m4/strtoull.m4 (gl_FUNC_STRTOLL): Require gl_STDLIB_H_DEFAULTS.
21029         Set HAVE_STRTOULL.
21030         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_STRTOULL,
21031         HAVE_STRTOULL.
21032         * modules/strtoull (Depends-on): Add stdlib.
21033         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
21034         * modules/stdlib (Makefile.am): Substitute GNULIB_STRTOULL,
21035         HAVE_STRTOULL.
21036
21037 2008-10-19  Bruno Haible  <bruno@clisp.org>
21038
21039         Add strtoll() declaration to <stdlib.h>.
21040         * lib/stdlib.in.h (strtoll): New declaration.
21041         * m4/strtoll.m4 (gl_FUNC_STRTOLL): Require gl_STDLIB_H_DEFAULTS.
21042         Set HAVE_STRTOLL.
21043         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_STRTOLL,
21044         HAVE_STRTOLL.
21045         * modules/strtoll (Depends-on): Add stdlib.
21046         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
21047         * modules/stdlib (Makefile.am): Substitute GNULIB_STRTOLL, HAVE_STRTOLL.
21048
21049 2008-10-19  Bruno Haible  <bruno@clisp.org>
21050
21051         * modules/bcopy (Depends-on): Add strings.
21052         (Include): Specify <strings.h>.
21053
21054 2008-10-19  Bruno Haible  <bruno@clisp.org>
21055
21056         * doc/posix-functions/atexit.texi: Update doc regarding mingw.
21057
21058 2008-10-19  Bruno Haible  <bruno@clisp.org>
21059
21060         * lib/openat-die.c (openat_save_fail, openat_restore_fail): Rename
21061         the parameter from 'errno' to 'errnum'. Fixes a compilation error on
21062         mingw.
21063
21064 2008-10-19  Bruno Haible  <bruno@clisp.org>
21065
21066         * lib/atanl.c: Don't include isnanl.h.
21067         * lib/cosl.c: Likewise.
21068         * lib/ldexpl.c: Likewise.
21069         * lib/logl.c: Likewise.
21070         * lib/sinl.c: Likewise.
21071         * lib/sqrtl.c: Likewise.
21072         * lib/tanl.c: Likewise.
21073
21074         Move the isnanf(), isnand(), isnanl() declarations to <math.h>.
21075         * lib/isnanf.h: Remove file.
21076         * lib/isnand.h: Remove file.
21077         * lib/isnanl.h: Remove file.
21078         * lib/math.in.h: Include the contents of lib/isnanf.h, lib/isnand.h,
21079         lib/isnanl.h. Use HAVE_ISNANF, HAVE_ISNAND, HAVE_ISNANL as substituted
21080         macros.
21081         * m4/isnanf.m4 (gl_FUNC_ISNANF): Require gl_MATH_H_DEFAULTS. Set
21082         HAVE_ISNANF, don't define it as a C macro.
21083         * m4/isnand.m4 (gl_FUNC_ISNAND): Require gl_MATH_H_DEFAULTS. Set
21084         HAVE_ISNAND, don't define it as a C macro.
21085         * m4/isnanl.m4 (gl_FUNC_ISNANL): Require gl_MATH_H_DEFAULTS. Set
21086         HAVE_ISNANL, don't define it as a C macro.
21087         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_ISNAN[FDL] and
21088         HAVE_ISNAN[FDL].
21089         * modules/isnanf (Files): Remove lib/isnanf.h.
21090         (Depends-on): Add math.
21091         (configure.ac): Invoke gl_MATH_MODULE_INDICATOR.
21092         (Include): Specify <math.h> instead of isnanf.h.
21093         * modules/isnand (Files): Remove lib/isnand.h.
21094         (Depends-on): Add math.
21095         (configure.ac): Invoke gl_MATH_MODULE_INDICATOR.
21096         (Include): Specify <math.h> instead of isnand.h.
21097         * modules/isnanl (Files): Remove lib/isnanl.h.
21098         (Depends-on): Add math.
21099         (configure.ac): Invoke gl_MATH_MODULE_INDICATOR.
21100         (Include): Specify <math.h> instead of isnanl.h.
21101         * modules/math (Makefile.am): Substitute GNULIB_ISNAN[FDL] and
21102         HAVE_ISNAN[FDL].
21103         * tests/test-isnanf.c: Include <math.h> instead of isnanf.h.
21104         * tests/test-isnand.c: Include <math.h> instead of isnand.h.
21105         * tests/test-isnanl.c: Include <math.h> instead of isnanl.h.
21106         * NEWS: Mention the change.
21107
21108 2008-10-18  Bruno Haible  <bruno@clisp.org>
21109
21110         Add getusershell(), setusershell(), endusershell() declarations to
21111         <unistd.h>.
21112         * lib/unistd.in.h (getusershell, setusershell, endusershell): New
21113         declarations.
21114         * lib/getusershell.c: Include unistd.h.
21115         * m4/getusershell.m4 (gl_FUNC_GETUSERSHELL): Require
21116         gl_UNISTD_H_DEFAULTS and AC_USE_SYSTEM_EXTENSIONS. Set
21117         HAVE_GETUSERSHELL.
21118         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_GETUSERSHELL
21119         and HAVE_GETUSERSHELL.
21120         * modules/getusershell (Depends-on): Add unistd, extensions.
21121         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
21122         (Include): Specify <unistd.h>.
21123         * modules/unistd (Makefile.am): Substitute GNULIB_GETUSERSHELL and
21124         HAVE_GETUSERSHELL.
21125
21126 2008-10-18  Bruno Haible  <bruno@clisp.org>
21127
21128         Add a getloadavg() declaration to <stdlib.h>.
21129         * lib/stdlib.in.h; Include <sys/loadavg.h> when needed for the
21130         getloadavg declaration.
21131         (getloadavg): New declaration.
21132         * lib/getloadavg.c: Include <stdlib.h> first.
21133         * m4/getloadavg.m4 (gl_GETLOADAVG): Require gl_STDLIB_H_DEFAULTS and
21134         AC_USE_SYSTEM_EXTENSIONS. Test whether sys/loadavg.h exists. Set
21135         HAVE_SYS_LOADAVG_H and HAVE_DECL_GETLOADAVG.
21136         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_GETLOADAVG,
21137         HAVE_SYS_LOADAVG_H, HAVE_DECL_GETLOADAVG.
21138         * modules/getloadavg (Depends-on): Add stdlib, extensions.
21139         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
21140         (Include): Specify <stdlib.h>.
21141         * modules/stdlib (Makefile.am): Substitute GNULIB_GETLOADAVG,
21142         HAVE_SYS_LOADAVG_H, HAVE_DECL_GETLOADAVG.
21143
21144 2008-10-18  Bruno Haible  <bruno@clisp.org>
21145
21146         * lib/dirchownmod.c: Don't include lchmod.h.
21147
21148         Move the lchmod() declaration to <sys/stat.h>.
21149         * lib/lchmod.h: Remove file.
21150         * lib/sys_stat.in.h: Add placeholder for GL_LINK_WARNING.
21151         (lchmod): New declaration, moved here from lib/lchown.h.
21152         * m4/lchmod.m4 (gl_FUNC_LCHMOD): Require gl_SYS_STAT_H_DEFAULTS and
21153         AC_USE_SYSTEM_EXTENSIONS. Set HAVE_LCHMOD.
21154         * m4/sys_stat_h.m4 (gl_SYS_STAT_H_DEFAULTS): Initialize GNULIB_LCHMOD
21155         and HAVE_LCHMOD.
21156         * modules/lchmod (Files): Remove lib/lchmod.h.
21157         (Depends-on): Add sys_stat, extensions.
21158         (configure.ac): Invoke gl_SYS_STAT_MODULE_INDICATOR.
21159         (Include): Specify <sys/stat.h> instead of lchmod.h.
21160         * modules/sys_stat (Depends-on): Add link-warning.
21161         (Makefile.am): Substitute GNULIB_LCHMOD, HAVE_LCHMOD, and the
21162         definition of GL_LINK_WARNING.
21163         * NEWS: Mention the change.
21164
21165 2008-10-18  Bruno Haible  <bruno@clisp.org>
21166
21167         * lib/fchdir.c: Don't include dirfd.h.
21168         * lib/fts.c: Likewise.
21169         * lib/getcwd.c: Likewise.
21170         * lib/glob.c: Likewise.
21171
21172         Move the dirfd() declaration to <dirent.h>.
21173         * lib/dirfd.h: Remove file.
21174         * lib/dirent.in.h: Add placeholder for GL_LINK_WARNING.
21175         (dirfd): New declaration.
21176         * lib/dirfd.c: Include <dirent.h> instead of dirfd.h.
21177         * m4/dirfd.m4 (gl_FUNC_DIRFD): Require gl_DIRENT_H_DEFAULTS and
21178         AC_USE_SYSTEM_EXTENSIONS. Invoke gl_REPLACE_DIRENT_H. Set
21179         HAVE_DECL_DIRFD.
21180         * m4/dirent_h.m4 (gl_DIRENT_H_DEFAULTS): Initialize GNULIB_DIRFD and
21181         HAVE_DECL_DIRFD.
21182         * modules/dirfd (Files): Remove lib/dirfd.h.
21183         (Depends-on): Add dirent, extensions.
21184         (configure.ac): Invoke gl_DIRENT_MODULE_INDICATOR.
21185         (Include): Specify <dirent.h> instead of dirfd.h.
21186         * modules/dirent (Depends-on): Add link-warning.
21187         (Makefile.am): Substitute GNULIB_DIRFD, HAVE_DECL_DIRFD, and
21188         definition of GL_LINK_WARNING.
21189         * NEWS: Mention the change.
21190
21191 2008-10-18  Bruno Haible  <bruno@clisp.org>
21192
21193         Move the euidaccess() declaration to <unistd.h>.
21194         * lib/euidaccess.h: Remove file.
21195         * lib/unistd.in.h (euidaccess): New declaration.
21196         * lib/euidaccess.c: Don't include euidaccess.h.
21197         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): Require gl_UNISTD_H_DEFAULTS.
21198         Don't check whether euidaccess is declared. Set HAVE_EUIDACCESS.
21199         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_EUIDACCESS
21200         and HAVE_EUIDACCESS.
21201         * modules/euidaccess (Files): Remove lib/euidaccess.h.
21202         (Depends-on): Add unistd.
21203         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
21204         (Include): Specify <unistd.h> instead of euidaccess.h.
21205         * modules/unistd (Makefile.am): Substitute GNULIB_EUIDACCESS and
21206         HAVE_EUIDACCESS.
21207         * NEWS: Mention the change.
21208
21209 2008-10-18  Bruno Haible  <bruno@clisp.org>
21210
21211         * lib/xgetdomainname.c: Include <unistd.h> instead of getdomainname.h.
21212
21213         Move the getdomainname() declaration to <unistd.h>.
21214         * lib/getdomainname.h: Remove file.
21215         * lib/unistd.in.h (getdomainname): New declaration.
21216         * lib/getdomainname.c: Include <unistd.h> instead of getdomainname.h.
21217         * m4/getdomainname.m4 (gl_FUNC_GETDOMAINNAME): Require
21218         gl_UNISTD_H_DEFAULTS and AC_USE_SYSTEM_EXTENSIONS. Set
21219         HAVE_GETDOMAINNAME.
21220         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
21221         GNULIB_GETDOMAINNAME and HAVE_GETDOMAINNAME.
21222         * modules/getdomainname (Files): Remove lib/getdomainname.h.
21223         (Depends-on): Add unistd, extensions.
21224         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
21225         (Includes): Specify <unistd.h> instead of getdomainname.h.
21226         * modules/unistd (Makefile.am): Substitute GNULIB_GETDOMAINNAME and
21227         HAVE_GETDOMAINNAME.
21228         * NEWS: Mention the change.
21229
21230 2008-10-18  Bruno Haible  <bruno@clisp.org>
21231
21232         * modules/dirent: New file.
21233         * m4/dirent_h.m4: New file.
21234         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_DIRENT_H_DEFAULTS.
21235         Invoke gl_REPLACE_DIRENT_H. Don't assign DIRENT_H directly.
21236         * modules/fchdir (Files): Remove lib/dirent.in.h.
21237         (Depends-on): Add dirent.
21238         (Makefile.am): Move rules to modules/dirent.
21239         * doc/posix-headers/dirent.texi: Mention the new module.
21240
21241 2008-10-18  Bruno Haible  <bruno@clisp.org>
21242
21243         Avoid -Wunused-parameter warnings in public gnulib header files.
21244         * m4/gnulib-common.m4 (gl_COMMON_BODY): Define _UNUSED_PARAMETER_ as a
21245         macro.
21246         * lib/unistr.h (u32_mbtouc_unsafe, u32_mbtouc): Use it.
21247
21248 2008-10-18  Bruno Haible  <bruno@clisp.org>
21249
21250         * doc/glibc-functions/dirfd.texi: Mention the module 'dirfd'.
21251         * doc/glibc-functions/error.texi: Mention the module 'error'.
21252         * doc/glibc-functions/euidaccess.texi: Mention the module 'euidaccess'.
21253         * doc/glibc-functions/getdomainname.texi: Mention the module
21254         'getdomainname'.
21255         * doc/glibc-functions/getloadavg.texi: Mention the module 'getloadavg'.
21256         * doc/glibc-functions/getpagesize.texi: Mention the module
21257         'getpagesize'.
21258         * doc/glibc-functions/getusershell.texi: Mention the module
21259         'getusershell'.
21260         * doc/glibc-functions/isnanl.texi: Mention the module 'isnanl'.
21261         * doc/glibc-functions/lchmod.texi: Mention the module 'lchmod'.
21262         * doc/glibc-functions/mempcpy.texi: Mention the module 'mempcpy'.
21263         * doc/glibc-functions/memrchr.texi: Mention the module 'memrchr'.
21264         * doc/glibc-functions/mkdtemp.texi: Mention the module 'mkdtemp'.
21265         * doc/glibc-functions/rpmatch.texi: Mention the module 'rpmatch'.
21266         * doc/glibc-functions/stpcpy.texi: Mention the module 'stpcpy'.
21267         * doc/glibc-functions/stpncpy.texi: Mention the module 'stpncpy'.
21268         * doc/glibc-functions/strchrnul.texi: Mention the module 'strchrnul'.
21269         * doc/glibc-functions/strndup.texi: Mention the module 'strndup'.
21270         * doc/glibc-functions/strnlen.texi: Mention the module 'strnlen'.
21271         * doc/glibc-functions/strsep.texi: Mention the module 'strsep'.
21272         * doc/glibc-functions/timegm.texi: Mention the module 'timegm'.
21273         * doc/glibc-functions/vasprintf.texi: Mention the module 'vasprintf'.
21274
21275 2008-10-17  Bruno Haible  <bruno@clisp.org>
21276
21277         * m4/signbit.m4 (gl_SIGNBIT_TEST_PROGRAM): On platforms other than
21278         HP-UX and IRIX, use -0.0L.
21279         * tests/test-ceill.c (minus_zero): Likewise.
21280         * tests/test-floorl.c (minus_zero): Likewise.
21281         * tests/test-frexpl.c (minus_zero): Likewise.
21282         * tests/test-isnan.c (minus_zerol): Likewise.
21283         * tests/test-isnanl.h (minus_zero): Likewise.
21284         * tests/test-ldexpl.c (minus_zero): Likewise.
21285         * tests/test-roundl.c (minus_zero): Likewise.
21286         * tests/test-signbit.c (minus_zerol): Likewise.
21287         * tests/test-snprintf-posix.h (minus_zerol): Likewise.
21288         * tests/test-sprintf-posix.h (minus_zerol): Likewise.
21289         * tests/test-truncl.c (minus_zero): Likewise.
21290         * tests/test-vasnprintf-posix.c (minus_zerol): Likewise.
21291         * tests/test-vasprintf-posix.c (minus_zerol): Likewise.
21292         Reported by Markus Armbruster <armbru@redhat.com> via Jim Meyering
21293         and by Nelson H. F. Beebe <beebe@math.utah.edu> via Eric Blake.
21294
21295 2008-10-17  Bruno Haible  <bruno@clisp.org>
21296
21297         Avoid gcc warnings because of #pragma GCC system_header on older gcc.
21298         * lib/arpa_inet.in.h: Encloses reference to PRAGMA_SYSTEM_HEADER so
21299         that it gets activated only for gcc >= 3.0.
21300         * lib/dirent.in.h: Likewise.
21301         * lib/errno.in.h: Likewise.
21302         * lib/fcntl.in.h: Likewise.
21303         * lib/float.in.h: Likewise.
21304         * lib/iconv.in.h: Likewise.
21305         * lib/inttypes.in.h: Likewise.
21306         * lib/locale.in.h: Likewise.
21307         * lib/math.in.h: Likewise.
21308         * lib/netdb.in.h: Likewise.
21309         * lib/netinet_in.in.h: Likewise.
21310         * lib/search.in.h: Likewise.
21311         * lib/signal.in.h: Likewise.
21312         * lib/spawn.in.h: Likewise.
21313         * lib/stdarg.in.h: Likewise.
21314         * lib/stdint.in.h: Likewise.
21315         * lib/stdio.in.h: Likewise.
21316         * lib/stdlib.in.h: Likewise.
21317         * lib/string.in.h: Likewise.
21318         * lib/strings.in.h: Likewise.
21319         * lib/sys_file.in.h: Likewise.
21320         * lib/sys_ioctl.in.h: Likewise.
21321         * lib/sys_select.in.h: Likewise.
21322         * lib/sys_socket.in.h: Likewise.
21323         * lib/sys_stat.in.h: Likewise.
21324         * lib/sys_time.in.h: Likewise.
21325         * lib/sysexits.in.h: Likewise.
21326         * lib/time.in.h: Likewise.
21327         * lib/unistd.in.h: Likewise.
21328         * lib/wchar.in.h: Likewise.
21329         * lib/wctype.in.h: Likewise.
21330         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
21331
21332 2008-10-17  Jim Meyering  <meyering@redhat.com>
21333
21334         ignore-value: don't depend on inline module
21335         * modules/ignore-value (Depends-on): Remove 'inline'.
21336         (configure.ac): Instead, add AC_REQUIRE([AC_C_INLINE]) here.
21337         Suggestion from Bruno Haible.
21338
21339 2008-10-17  Bruno Haible  <bruno@clisp.org>
21340
21341         New implementation of condition variables for Win32.
21342         * lib/glthread/cond.h (struct gl_waitqueue_link): New type.
21343         (gl_linked_waitqueue_t): New type.
21344         (gl_cond_t): Use it.
21345         * lib/glthread/cond.c (struct gl_waitqueue_element): New type.
21346         (gl_waitqueue_init, gl_waitqueue_add, gl_waitqueue_remove,
21347         gl_waitqueue_notify_first, gl_waitqueue_notify_all): New functions.
21348         (glthread_cond_init_func, glthread_cond_wait_func,
21349         glthread_cond_timedwait_func, glthread_cond_signal_func,
21350         glthread_cond_broadcast_func, glthread_cond_destroy_func):
21351         Reimplemented on the basis of gl_linked_waitqueue_t.
21352         * lib/glthread/lock.h (gl_carray_waitqueue_t): Renamed from
21353         gl_waitqueue_t.
21354         (gl_rwlock_t): Update.
21355         * lib/glthread/lock.c (gl_waitqueue_t): Alias to gl_carray_waitqueue_t.
21356
21357 2008-10-17  Simon Josefsson  <simon@josefsson.org>
21358
21359         * modules/recvfrom (Depends-on): Add dependency on getpeername.
21360         Reported by Yoann Vandoorselaere <yoann@prelude-ids.org>.
21361
21362 2008-10-17  Jim Meyering  <meyering@redhat.com>
21363
21364         ignore-value: new module
21365         * modules/ignore-value: New file.
21366         * lib/ignore-value.h: New file.
21367         * MODULES.html.sh (Compiler warning management): New section,
21368         just for this module.  More to come.
21369
21370 2008-10-16  Paul Eggert  <eggert@cs.ucla.edu>
21371
21372         open-safer.c: avoid 'signed and unsigned in conditional...' warning
21373         * lib/open-safer.c (open_safer): Use an "if/else" statement in place
21374         of the ternary operator.  Reported by Reuben Thomas <rrt@sc3d.org>.
21375
21376 2008-10-16  Jim Meyering  <meyering@redhat.com>
21377
21378         openat-die.c: avoid 'no previous prototype' warning
21379         * lib/openat-die.c: Include "openat.h".
21380         Reported by Reuben Thomas <rrt@sc3d.org>.
21381
21382 2008-10-16  Simon Josefsson  <simon@josefsson.org>
21383
21384         * m4/netdb_h.m4: Assume that if netdb.h exists, it works.
21385         * lib/netdb.in.h: Fix typo.
21386         Reported by Bruno Haible  <bruno@clisp.org>
21387
21388         * lib/netdb.in.h: Include sys/socket.h for platforms without
21389         netdb.h, to get structures like hostent on MinGW.
21390         * modules/netdb (Depends-on): Add sys_socket.
21391
21392 2008-10-15  Simon Josefsson  <simon@josefsson.org>
21393
21394         * modules/netdb, modules/netdb-tests: New file.
21395         * m4/netdb_h.m4: New file.
21396         * lib/netdb.in.h: Add, currently just an empty file pending
21397         definitions.
21398         * tests/test-netdb.c: New file.
21399         * doc/posix-headers/netdb.texi: Mention that we replace it if
21400         needed.
21401         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
21402         netdb.
21403
21404 2008-10-15  Simon Josefsson  <simon@josefsson.org>
21405
21406         * doc/gnulib.texi (Getaddrinfo and WINVER): Sync documentation
21407         with code.
21408
21409 2008-10-13  Bruno Haible  <bruno@clisp.org>
21410
21411         * lib/glthread/cond.c (glthread_cond_wait_func,
21412         glthread_cond_timedwait_func): Add a comment.
21413
21414 2008-10-13  Yoann Vandoorselaere  <yoann@prelude-ids.org>
21415
21416         * tests/test-poll.c: Include <sys/ioctl.h>, for ioctl().
21417         * tests/test-select.c: Likewise,
21418
21419 2008-10-13  Bruno Haible  <bruno@clisp.org>
21420
21421         * lib/glthread/cond.c (glthread_cond_wait_func,
21422         glthread_cond_timedwait_func): Fix variable name.
21423         Reported by Yoann Vandoorselaere <yoann@prelude-ids.org>.
21424
21425 2008-10-13  Paolo Bonzini  <bonzini@gnu.org>
21426
21427         fix getaddrinfo emulation for systems with struct sockaddr.sa_len
21428         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Detect
21429         struct sockaddr.sa_len.
21430         * lib/getaddrinfo.c (getaddrinfo): Set it if appropriate.
21431
21432 2008-10-13  Simon Josefsson  <simon@josefsson.org>
21433
21434         * build-aux/pmccabe2html: Add css and css_url parameters.
21435
21436 2008-10-12  Bruno Haible  <bruno@clisp.org>
21437
21438         * tests/test-sameacls.c (main) [AIX]: Clear type argument before
21439         calling aclx_get.
21440         Reported by Rainer Tammer <tammer@tammer.net>.
21441
21442 2008-10-12  Bruno Haible  <bruno@clisp.org>
21443
21444         Use msvcrt aware primitives for creation/termination of Win32 threads.
21445         * lib/glthread/thread.c: Include <process.h>.
21446         (glthread_create_func): Use _beginthreadex instead of CreateThread.
21447         (wrapper_func): Update signature.
21448         (gl_thread_exit_func): Use _endthreadex instead of EndThread.
21449
21450 2008-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
21451             Bruno Haible  <bruno@clisp.org>
21452
21453         Provide a Win32 implementation of the 'cond' module.
21454         * lib/glthread/cond.h [USE_WIN32]: New implementation.
21455         * lib/glthread/cond.c (glthread_cond_init_func,
21456         glthread_cond_wait_func, glthread_cond_timedwait_func,
21457         glthread_cond_signal_func, glthread_cond_broadcast_func,
21458         glthread_cond_destroy_func) [USE_WIN32]: New functions.
21459         * modules/cond (Dependencies): Add gettimeofday.
21460
21461 2008-10-11  Bruno Haible  <bruno@clisp.org>
21462
21463         Make sleep work on older versions of mingw.
21464         * m4/sleep.m4 (gl_FUNC_SLEEP): Test whether 'sleep' is declared, not
21465         only whether it exists.
21466         * doc/posix-functions/sleep.texi: Mention the problem with older
21467         versions of mingw.
21468
21469 2008-10-11  Bruno Haible  <bruno@clisp.org>
21470
21471         New module 'shutdown'.
21472         * modules/shutdown: New file.
21473         * lib/sys_socket.in.h (shutdown): New declaration.
21474         * lib/winsock.c (shutdown): New function.
21475         * m4/sys_socket_h.m4 (gl_SYS_SOCKET_H_DEFAULTS): Initialize
21476         GNULIB_SHUTDOWN.
21477         * modules/sys_socket (Makefile.am): Substitute GNULIB_SHUTDOWN.
21478         * doc/posix-functions/shutdown.texi: Document the new module.
21479
21480 2008-10-11  Jim Meyering  <meyering@redhat.com>
21481
21482         * lib/fclose.c: Fix typo in comment: s/close/fclose/.
21483
21484 2008-10-11  Bruno Haible  <bruno@clisp.org>
21485
21486         New module 'fclose'.
21487         * modules/fclose: New file.
21488         * lib/stdio.in.h (fclose): New declaration.
21489         * lib/fclose.c: New file.
21490         * m4/fclose.m4: New file.
21491         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize GNULIB_FCLOSE,
21492         REPLACE_FCLOSE.
21493         * m4/close.m4 (gl_REPLACE_CLOSE): Invoke gl_REPLACE_FCLOSE.
21494         * modules/stdio (Makefile.am): Substitute GNULIB_FCLOSE,
21495         REPLACE_FCLOSE.
21496         * modules/close (Depends-on): fclose.
21497         * doc/posix-functions/fclose.texi: Mention the problem on Windows.
21498
21499 2008-10-11  Bruno Haible  <bruno@clisp.org>
21500
21501         * lib/winsock.c (_gl_close_fd_maybe_socket): If closesocket fails,
21502         set errno and don't call _close.
21503
21504 2008-10-10  Bruno Haible  <bruno@clisp.org>
21505
21506         * lib/copy-acl.c (qcopy_acl) [CYGWIN]: Call chmod before setting the
21507         ACL, not afterwards. Fixes test failure on Cygwin.
21508
21509 2008-10-09  Ben Pfaff  <blp@gnu.org>
21510
21511         * build-aux/announce-gen: Fix gnulib version related part of usage
21512         message.  Die with a useful error message if no tarballs are
21513         found.
21514
21515 2008-10-10  Jim Meyering  <meyering@redhat.com>
21516
21517         bootstrap: use git's --depth=N option only if it's supported
21518         * build-aux/bootstrap: Work with git-1.4.4.4, which does not
21519         recognize the --depth option.  Reported by Pádraig Brady.
21520
21521 2008-10-09  Bruno Haible  <bruno@clisp.org>
21522
21523         New module 'ioctl'.
21524         * modules/ioctl: New file.
21525         * lib/sys_socket.in.h (ioctl): Remove declaration.
21526         * lib/winsock.c: Include <sys/ioctl.h>.
21527         (rpl_ioctl): Define only of the gnulib module 'ioctl' is present.
21528         * m4/sys_socket_h.m4 (gl_PREREQ_SYS_H_WINSOCK2): Require
21529         gl_SYS_IOCTL_H_DEFAULTS. Set also SYS_IOCTL_H_HAVE_WINSOCK2_H.
21530         * modules/sys_socket (Files): Add m4/sys_ioctl_h.m4.
21531         * doc/posix-functions/ioctl.texi: Mention the new module.
21532
21533 2008-10-09  Bruno Haible  <bruno@clisp.org>
21534
21535         New module 'sys_ioctl'.
21536         * lib/sys_ioctl.in.h: New file.
21537         * m4/sys_ioctl_h.m4: New file.
21538         * modules/sys_ioctl: New file.
21539         * doc/glibc-headers/sys_ioctl.texi: Mention the new module.
21540
21541 2008-10-09  Bruno Haible  <bruno@clisp.org>
21542
21543         * lib/sys_socket.in.h (ioctl): Make signature POSIX compliant.
21544         * lib/winsock.c: Include <stdarg.h>.
21545         (rpl_ioctl): Change to second argument 'int' and then varargs.
21546
21547 2008-10-09  Bruno Haible  <bruno@clisp.org>
21548
21549         * m4/close.m4 (gl_FUNC_CLOSE): Arrange to replace the close() function
21550         when the sys_socket module is present and the system has <winsock2.h>.
21551
21552 2008-10-09  Bruno Haible  <bruno@clisp.org>
21553
21554         * doc/posix-functions/close.texi: Mention module 'close' instead of
21555         module 'sys_socket'.
21556
21557 2008-10-09  Bruno Haible  <bruno@clisp.org>
21558
21559         * doc/glibc-headers/sys_ioctl.texi: New file.
21560         * doc/gnulib.texi: Include it.
21561
21562 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
21563             Bruno Haible  <bruno@clisp.org>
21564
21565         Combine the two replacements of 'close'.
21566         * lib/sys_socket.in.h (close): Define to a reminder to include
21567         <unistd.h>.
21568         (_gl_close_fd_maybe_socket): New declaration.
21569         (HAVE__GL_CLOSE_FD_MAYBE_SOCKET): New macro.
21570         * lib/winsock.c (close): Remove undefinition.
21571         (_gl_close_fd_maybe_socket): Renamed from rpl_close. Define only when
21572         needed for the gnulib module 'close'.
21573         * lib/unistd.in.h (close): If the gnulib module 'close' is not used,
21574         define to an error symbol or to a warning, if suitable.
21575         * lib/close.c: Include <sys/socket.h>.
21576         (rpl_close): Invoke _gl_close_fd_maybe_socket when gnulib defines it.
21577         * m4/sys_socket_h.m4 (gl_PREREQ_SYS_H_WINSOCK2): Set also
21578         UNISTD_H_HAVE_WINSOCK2_H.
21579         (gl_SYS_SOCKET_H_DEFAULTS): Require gl_UNISTD_H_DEFAULTS.
21580         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
21581         UNISTD_H_HAVE_WINSOCK2_H.
21582         * modules/sys_socket (Files): Add m4/unistd_h.m4.
21583         (configure.ac): Set a module indicator.
21584         (Makefile.am): Substitute GNULIB_CLOSE.
21585         * modules/unistd (Makefile.am): Substitute UNISTD_H_HAVE_WINSOCK2_H.
21586         * modules/poll-tests (Depends-on): Add close.
21587         * modules/select-tests (Depends-on): Likewise.
21588
21589 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
21590             Bruno Haible  <bruno@clisp.org>
21591
21592         New module 'close'.
21593         * modules/close: New file.
21594         * lib/unistd.in.h (close): Move declaration out of the
21595         FCHDIR_REPLACEMENT scope.
21596         (_gl_unregister_fd): New declaration.
21597         * lib/close.c: New file.
21598         * lib/fchdir.c (rpl_close): Remove function.
21599         * m4/close.m4: New file.
21600         * m4/fchdir.m4 (gl_FUNC_FCHDIR): When replacing fchdir, also replace
21601         close.
21602         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_CLOSE and
21603         REPLACE_CLOSE.
21604         * modules/unistd (Makefile.am): Substitute GNULIB_CLOSE and
21605         REPLACE_CLOSE.
21606         * modules/fchdir (Depends-on): Add close.
21607
21608 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
21609             Bruno Haible  <bruno@clisp.org>
21610
21611         * lib/fcntl.in.h (open): Simplify conditionals.
21612         (_gl_register_fd): New declaration.
21613         * lib/fchdir.c (rpl_open): Remove function.
21614         * lib/open.c: When FCHDIR_REPLACEMENT is defined, compile the file
21615         also.
21616         (open): When FCHDIR_REPLACEMENT is defined, invoke _gl_register_fd.
21617         * m4/fchdir.m4 (gl_FUNC_FCHDIR): When replacing fchdir, also replace
21618         open.
21619
21620 2008-10-09  Jim Meyering  <meyering@redhat.com>
21621
21622         GNUmakefile: use the more name-space-friendly "_version"
21623         * top/GNUmakefile (_dummy): Update.
21624         (_version): Rename from "version".
21625
21626 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
21627             Bruno Haible  <bruno@clisp.org>
21628
21629         * lib/fchdir.c (_gl_unregister_fd): New functions, extracted from
21630         rpl_close.
21631         (_gl_register_fd): New function, extracted from rpl_open.
21632         (rpl_close, rpl_closedir): Use _gl_unregister_fd.
21633         (rpl_open, rpl_opendir): Use _gl_register_fd.
21634
21635 2008-10-09  Paolo Bonzini  <bonzini@gnu.org>
21636
21637         Fix organization of 'open' replacement.
21638         * m4/open.m4 (gl_REPLACE_OPEN): New macro.
21639         (gl_FUNC_OPEN): Use it.
21640         (gl_PREREQ_OPEN): Add a : to make the body non-empty.
21641
21642 2008-10-08  Bruno Haible  <bruno@clisp.org>
21643
21644         * modules/getdate-tests (test_getdata_LDADD): Add LIBINTL.
21645
21646 2008-10-08  Simon Josefsson  <simon@josefsson.org>
21647
21648         * m4/sys_socket_h.m4: Don't AC_LIBOBJ(winsock).  The file is
21649         AC_LIBOBJ'ed by each gnulib module that needs it (e.g., socket,
21650         listen).
21651
21652 2008-10-08  Eric Blake  <ebb9@byu.net>
21653
21654         GNUmakefile: add 'make version' target
21655         * top/GNUmakefile (_curr-ver): Split version update rules...
21656         (version): ...into a target.
21657
21658 2008-10-07  Bruno Haible  <bruno@clisp.org>
21659
21660         Use a more portable replacement expression for -0.0L.
21661         * m4/signbit.m4 (gl_SIGNBIT_TEST_PROGRAM): Use -LDBL_MIN * LDBL_MIN
21662         instead of -0.0L. Fix m4 quotation.
21663
21664         * tests/test-signbit.c: Include <float.h>.
21665         (minus_zero): New variable.
21666         (test_signbitl): Use minus_zero instead of -zero.
21667         * modules/signbit-tests (Depends-on): Add float.
21668
21669         * tests/test-ceill.c: Include <float.h>.
21670         (zero): Remove variable.
21671         (minus_zero): New variable.
21672         (main): Use minus_zero instead of -zero.
21673         * modules/ceill-tests (Depends-on): Add float.
21674
21675         * tests/test-floorl.c: Include <float.h>.
21676         (zero): Remove variable.
21677         (minus_zero): New variable.
21678         (main): Use minus_zero instead of -zero.
21679         * modules/floorl-tests (Depends-on): Add float.
21680
21681         * tests/test-roundl.c: Include <float.h>.
21682         (zero): Remove variable.
21683         (minus_zero): New variable.
21684         (main): Use minus_zero instead of -zero.
21685         * modules/roundl-tests (Depends-on): Add float.
21686
21687         * tests/test-truncl.c: Include <float.h>.
21688         (zero): Remove variable.
21689         (minus_zero): New variable.
21690         (main): Use minus_zero instead of -zero.
21691         * modules/truncl-tests (Depends-on): Add float.
21692
21693         * tests/test-frexpl.c (zero): Remove variable.
21694         (minus_zero): New variable.
21695         (main): Use minus_zero instead of -zero.
21696         * modules/frexpl-tests (Depends-on): Add float.
21697
21698         * tests/test-isnan.c (zerol): Remove variable.
21699         (minus_zerol): New variable.
21700         (test_long_double): Use minus_zerol instead of -zerol.
21701         * modules/isnan-tests (Depends-on): Add float.
21702
21703         * tests/test-isnanl.h (zero): Remove variable.
21704         (minus_zero): New variable.
21705         (main): Use minus_zero instead of -zero.
21706         * modules/isnanl-nolibm-tests (Depends-on): Add float.
21707         * modules/isnanl-tests (Depends-on): Add float.
21708
21709         * tests/test-ldexpl.c (zero): Remove variable.
21710         (minus_zero): New variable.
21711         (main): Use minus_zero instead of -zero.
21712         * modules/ldexpl-tests (Depends-on): Add float.
21713
21714         * tests/test-snprintf-posix.h (zerol): Remove variable.
21715         (minus_zerol): New variable.
21716         (test_function): Use minus_zerol instead of -zerol.
21717         * modules/snprintf-posix-tests (Depends-on): Add float.
21718         * modules/vsnprintf-posix-tests (Depends-on): Add float.
21719
21720         * tests/test-sprintf-posix.h (zerol): Remove variable.
21721         (minus_zerol): New variable.
21722         (test_function): Use minus_zerol instead of -zerol.
21723         * modules/sprintf-posix-tests (Depends-on): Add float.
21724         * modules/vsprintf-posix-tests (Depends-on): Add float.
21725
21726         * tests/test-vasnprintf-posix.c (zerol): Remove variable.
21727         (minus_zerol): New variable.
21728         (test_function): Use minus_zerol instead of -zerol.
21729         * modules/vasnprintf-posix-tests (Depends-on): Add float.
21730
21731         * tests/test-vasprintf-posix.c (zerol): Remove variable.
21732         (minus_zerol): New variable.
21733         (test_function): Use minus_zerol instead of -zerol.
21734         * modules/vasprintf-posix-tests (Depends-on): Add float.
21735
21736 2008-10-07  Simon Josefsson  <simon@josefsson.org>
21737
21738         * MODULES.html.sh (Support for building documentation): Mention
21739         pmccabe2html.  Sort entries.
21740
21741         Add pmccabe2html module, from gnupdf.
21742         * build-aux/pmccabe.css: New file.
21743         * build-aux/pmccabe2html: New file.
21744         * m4/pmccabe2html.m4: New file.
21745         * modules/pmccabe2html: New file.
21746
21747 2008-10-07  Richard W.M. Jones <rjones@redhat.com>
21748
21749         flock: new module
21750         * MODULES.html.sh: Add to list of modules.
21751         * lib/flock.c: flock implementation for Windows and Unix systems
21752         which have fcntl.
21753         * doc/glibc-functions/flock.texi: Update documentation.
21754         * lib/sys_file.in.h: <sys/file.h> header file.
21755         * m4/flock.m4: M4 macros.
21756         * m4/sys_file_h.m4: M4 macros for replacement sys/file.h.
21757         * modules/flock: flock module.
21758         * modules/flock-tests: flock tests module.
21759         * modules/sys_file: sys/file.h module.
21760         * tests/test-flock.c: test suite for flock.
21761
21762 2008-10-06  Jim Meyering  <meyering@redhat.com>
21763
21764         bootstrap: check for LT_INIT more portably still ;-)
21765         * build-aux/bootstrap: Don't rely on \>, since it's not portable.
21766         Spotted by Bruno Haible.
21767
21768 2008-10-06  Eric Blake  <ebb9@byu.net>
21769
21770         test-signbit: avoid tripping Irix cc bug on -0.0L
21771         * tests/test-signbit.c (minus_zerol): Delete, and replace with
21772         '-zerol'.  This may break on HP-UX/hppa, but at least makes the
21773         entire testsuite consistent and avoids an Irix 6.2 bug.
21774
21775 2008-10-05  Bruno Haible  <bruno@clisp.org>
21776             Jim Meyering  <jim@meyering.net>
21777
21778         Add an option for ignoring EPIPE during close_stdout.
21779         * lib/closeout.h: Include <stdbool.h>.
21780         (close_stdout_set_ignore_EPIPE): New declaration.
21781         * lib/closeout.c: Include <stdbool.h>.
21782         (ignore_EPIPE): New variable.
21783         (close_stdout_set_ignore_EPIPE): New function.
21784         (close_stdout): Ignore EPIPE error if ignore_EPIPE is set.
21785         * lib/close-stream.c (close_stream): Mention the possible EPIPE
21786         failure.
21787         * modules/closeout (Depends-on): Add stdbool.
21788
21789 2008-10-05  Bruno Haible  <bruno@clisp.org>
21790
21791         * modules/accept: New file.
21792         * modules/bind: New file.
21793         * modules/connect: New file.
21794         * modules/getpeername: New file.
21795         * modules/getsockname: New file.
21796         * modules/getsockopt: New file.
21797         * modules/listen: New file.
21798         * modules/recv: New file.
21799         * modules/recvfrom: New file.
21800         * modules/send: New file.
21801         * modules/sendto: New file.
21802         * modules/setsockopt: New file.
21803         * modules/socket: New file.
21804         * lib/sys_socket.in.h: Include the GL_LINK_WARNING definition.
21805         (socket, connect, accept, bind, getpeername, getsockname, getsockopt,
21806         listen, recv, send, recvfrom, sendto, setsockopt): Declare only when
21807         the particular module is requested. Add a link warning when the
21808         particular module is not requested.
21809         * lib/winsock.c (rpl_socket, rpl_connect, rpl_accept, rpl_bind,
21810         rpl_getpeername, rpl_getsockname, rpl_getsockopt, rpl_listen, rpl_recv,
21811         rpl_send, rpl_recvfrom, rpl_sendto, rpl_setsockopt): Define only when
21812         the particular module is requested.
21813         * m4/sys_socket_h.m4 (gl_SYS_SOCKET_MODULE_INDICATOR,
21814         gl_SYS_SOCKET_H_DEFAULTS): New macros.
21815         (gl_HEADER_SYS_SOCKET): Require gl_SYS_SOCKET_H_DEFAULTS.
21816         * modules/sys_socket (Depends-on): Add link-warning.
21817         (Makeifle.am): Substitute GNULIB_SOCKET, GNULIB_CONNECT, GNULIB_ACCEPT,
21818         GNULIB_BIND, GNULIB_GETPEERNAME, GNULIB_GETSOCKNAME, GNULIB_GETSOCKOPT,
21819         GNULIB_LISTEN, GNULIB_RECV, GNULIB_SEND, GNULIB_RECVFROM,
21820         GNULIB_SENDTO, GNULIB_SETSOCKOPT, and the definition of
21821         GL_LINK_WARNING.
21822         * doc/posix-functions/accept.texi: Mention the new module 'accept'.
21823         * doc/posix-functions/bind.texi: Mention the new module 'bind'.
21824         * doc/posix-functions/connect.texi: Mention the new module 'connect'.
21825         * doc/posix-functions/getpeername.texi: Mention the new module
21826         'getpeername'.
21827         * doc/posix-functions/getsockname.texi: Mention the new module
21828         'getsockname'.
21829         * doc/posix-functions/getsockopt.texi: Mention the new module
21830         'getsockopt'.
21831         * doc/posix-functions/listen.texi: Mention the new module 'listen'.
21832         * doc/posix-functions/recv.texi: Mention the new module 'recv'.
21833         * doc/posix-functions/recvfrom.texi: Mention the new module 'recvfrom'.
21834         * doc/posix-functions/send.texi: Mention the new module 'send'.
21835         * doc/posix-functions/sendto.texi: Mention the new module 'sendto'.
21836         * doc/posix-functions/setsockopt.texi: Mention the new module
21837         'setsockopt'.
21838         * doc/posix-functions/socket.texi: Mention the new module 'socket'.
21839         * modules/poll-tests (Depends-on): Add socket, bind, getsockopt,
21840         listen, connect, accept.
21841         * modules/select-tests (Depends-on): Likewise.
21842
21843 2008-10-05  Bruno Haible  <bruno@clisp.org>
21844
21845         * lib/winsock.c (strerror): Remove unused #undef.
21846         (rpl_close): Remove unused local variable.
21847
21848         * modules/sys_socket (Depends-on); Add errno.
21849
21850 2008-10-05  Bruno Haible  <bruno@clisp.org>
21851
21852         * lib/sys_select.in.h: Include the GL_LINK_WARNING definition.
21853         (select): Add a link warning when the 'select' module is not used.
21854         * modules/sys_select (Depends-on): Add link-warning.
21855         (Makefile.am): Substitute the definition of GL_LINK_WARNING.
21856         Suggested by Paolo Bonzini.
21857
21858 2008-10-05  Jim Meyering  <meyering@redhat.com>
21859
21860         bootstrap: check for LT_INIT more portably
21861         * build-aux/bootstrap: Avoid using grep -E, since it's not
21862         portable enough.  Suggestion from Bruno Haible.
21863
21864 2008-10-05  Bruno Haible  <bruno@clisp.org>
21865
21866         * doc/posix-headers/sys_select.texi: Mention 'struct timeval' problem
21867         as being fixed by gnulib.
21868
21869 2008-10-05  Bruno Haible  <bruno@clisp.org>
21870
21871         * modules/select-tests: New file, mostly copied from
21872         modules/sys_select-tests.
21873         * tests/test-select.c: New file, mostly copied from
21874         tests/test-sys_select.c.
21875         * tests/test-sys_select.c: Move most of the code to tests/test-select.c.
21876         * modules/sys_select-tests (Depends-on): Remove all dependencies.
21877         (Makefile.am): Remove test_sys_select_LDADD.
21878
21879         * lib/sys_select.in.h (select): If GNULIB_SELECT is not set, define it
21880         to an undefined symbol, for an error message.
21881         * m4/sys_select_h.m4 (gl_SYS_SELECT_MODULE_INDICATOR): New macro.
21882         (gl_SYS_SELECT_H_DEFAULTS): New macro.
21883         (gl_HEADER_SYS_SELECT): Require it. Don't require compilation of
21884         winsock-select.c here.
21885         * modules/sys_select (Files): Remove lib/winsock-select.c.
21886         (Depends-on): Remove alloca.
21887         (Makefile.am): Substitute GNULIB_SELECT.
21888         * modules/select: New file.
21889         * doc/posix-functions/select.texi: Update.
21890
21891 2008-10-05  Bruno Haible  <bruno@clisp.org>
21892
21893         * lib/spawn_faction_addclose.c (__sysconf): Use getdtablesize always.
21894         * lib/spawn_faction_adddup2.c (__sysconf): Likewise.
21895         * lib/spawn_faction_addopen.c (__sysconf): Likewise.
21896         * modules/posix_spawn_file_actions_addclose (Depends-on): Add
21897         getdtablesize.
21898         * modules/posix_spawn_file_actions_adddup2 (Depends-on): Likewise.
21899         * modules/posix_spawn_file_actions_addopen (Depends-on): Likewise.
21900
21901 2008-10-05  Bruno Haible  <bruno@clisp.org>
21902
21903         * modules/getdtablesize-tests: New file.
21904         * tests/test-getdtablesize.c: New file.
21905
21906         New module 'getdtablesize'.
21907         * lib/unistd.in.h (getdtablesize): New declaration.
21908         * lib/getdtablesize.c: New file.
21909         * m4/getdtablesize.m4: New file.
21910         * modules/getdtablesize: New file.
21911         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
21912         GNULIB_GETDTABLESIZE, HAVE_GETDTABLESIZE.
21913         * modules/unistd (Makefile.am): Substitute GNULIB_GETDTABLESIZE,
21914         HAVE_GETDTABLESIZE.
21915         * doc/glibc-functions/getdtablesize.texi: Mention the new module.
21916
21917 2008-10-05  Bruno Haible  <bruno@clisp.org>
21918
21919         * modules/sched (Makefile.am): Fix typo.
21920         Reported by Simon Josefsson.
21921
21922 2008-10-05  Jim Meyering  <meyering@redhat.com>
21923
21924         bootstrap: check for LT_INIT, too
21925         * build-aux/bootstrap: Both AC_PROG_LIBTOOL and AM_PROG_LIBTOOL
21926         are deprecated.  Suggestion from Ralf Wildenhues.
21927
21928 2008-10-05  Bruno Haible  <bruno@clisp.org>
21929
21930         * lib/spawn.in.h (POSIX_SPAWN_*): Use the system's values, rather than
21931         overriding them by ours.
21932         (POSIX_SPAWN_USEVFORK): Use the next free bit position.
21933
21934 2008-10-05  Jim Meyering  <meyering@redhat.com>
21935
21936         bootstrap: check for AC_PROG_LIBTOOL as well as AM_PROG_LIBTOOL
21937         * build-aux/bootstrap: Check for AC_PROG_LIBTOOL, as well as the
21938         obsolete AM_PROG_LIBTOOL.  Spotted by Debarshi Ray <rishi@gnu.org>.
21939
21940 2008-10-04  Bruno Haible  <bruno@clisp.org>
21941
21942         * modules/dup2 (License): Change to LGPLv2+.
21943         * modules/sleep (License): Likewise.
21944         * modules/perror (License): Likewise.
21945         * modules/fopen (License): Change to LGPLv2+, with approval by Eric
21946         Blake.
21947         * modules/signal (License): Likewise.
21948         * modules/sigprocmask (License): Likewise.
21949         * modules/raise (License): Change to LGPLv2+, with approval by Jim
21950         Meyering.
21951
21952 2008-10-04  Bruno Haible  <bruno@clisp.org>
21953
21954         * lib/spawn.in.h (POSIX_SPAWN_*): Undefine before redefining.
21955         Reported by Rainer Tammer <tammer@tammer.net>.
21956
21957 2008-10-03  Paolo Bonzini  <bonzini@gnu.org>
21958             Bruno Haible  <bruno@clisp.org>
21959
21960         * lib/errno.in.h (EWOULDBLOCK) [win32]: Define to EAGAIN.
21961         * lib/winsock.c (set_winsock_errno): Map WSAEWOULDBLOCK to EWOULDBLOCK.
21962         * lib/strerror.c (rpl_strerror): Remove error string for EWOULDBLOCK.
21963
21964 2008-10-03  Kamil Dudka  <kdudka@redhat.com>
21965
21966         filevercmp: new module
21967         * lib/filevercmp.h: New function filevercmp comparing version strings.
21968         * lib/filevercmp.c: Implementation of filevercmp function.
21969         * modules/filevercmp: Module metadata.
21970         * tests/test-filevercmp.c: Unit test for new module.
21971         * modules/filevercmp-tests: Unit test metadata.
21972         * MODULES.html.sh: Add filevercmp module.
21973
21974 2008-10-03  Bruno Haible  <bruno@clisp.org>
21975
21976         * lib/c-ctype.h: Add comment.
21977         Reported by Jim Meyering.
21978
21979 2008-10-02  Bruno Haible  <bruno@clisp.org>
21980
21981         * modules/posix_spawn-internal (Depends-on): Add 'open'.
21982
21983 2008-10-02  Paolo Bonzini  <bonzini@gnu.org>
21984
21985         * build-aux/bootstrap: Allow renaming bootstrap, and change the
21986         name of bootstrap.conf accordingly.
21987
21988 2008-10-02  Paolo Bonzini  <bonzini@gnu.org>
21989
21990         * build-aux/bootstrap: Install git-merge-changelog configuration
21991         items into .gitconfig if needed.
21992
21993 2008-10-02  Paolo Bonzini  <bonzini@gnu.org>
21994
21995         * build-aux/bootstrap: Recognize `gnulib' being a submodule in a
21996         git repository, and initialize/update it accordingly.
21997
21998 2008-10-02  Richard W.M. Jones  <rjones@redhat.com>
21999
22000         * modules/fsync-tests: New file.
22001         * tests/test-fsync.c: New file.
22002
22003         New module 'fsync'.
22004         * lib/fsync.c: New file.
22005         * m4/fsync.m4: New file.
22006         * modules/fsync: New file.
22007         * lib/unistd.in.h (fsync): New declaration.
22008         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Define and AC_SUBST both
22009         GNULIB_FSYNC and HAVE_FSYNC.
22010         * modules/unistd: Substitute GNULIB_FSYNC and HAVE_FSYNC.
22011         * MODULES.html.sh (posix_functions): Add fsync.
22012         * doc/posix-functions/fsync.texi: Mention the new module.
22013
22014 2008-10-02  Jim Meyering  <meyering@redhat.com>
22015
22016         fts.c: sync with similar code from coreutils' remove.c
22017         * lib/fts.c (dirent_inode_sort_may_be_useful): Merge from coreutils.
22018         Guard also with "#if defined __linux__", since for now at least,
22019         this code is Linux-kernel-specific.
22020
22021 2008-10-02  Jim Meyering  <meyering@redhat.com>
22022
22023         fts: bug fixes
22024         * lib/fts.c: Remove unnecessary "defined" in cpp directive.
22025         Include <sys/vfs.h>, not <sys/statfs.h>.
22026
22027         * m4/fts.m4 (gl_FUNC_FTS_CORE): Fix typo s/vfs/vfs.h/.
22028         Include <sys/vfs.h>, not <sys/statfs.h>.
22029
22030 2008-10-01  Bruno Haible  <bruno@clisp.org>
22031
22032         Avoid the broken posix_spawn function on AIX 5.3 and 6.1.
22033         * m4/posix_spawn.m4 (gl_POSIX_SPAWN_WORKS): New macro.
22034         (gl_POSIX_SPAWN_BODY): Invoke it. Set REPLACE_POSIX_SPAWN if needed.
22035         * doc/posix-functions/posix_spawn.texi: Mention the AIX bugs.
22036         * doc/posix-functions/posix_spawnp.texi: Likewise.
22037         * m4/execute.m4 (gl_EXECUTE): Invoke gl_POSIX_SPAWN_WORKS, to check
22038         whether posix_spawn actually works.
22039         * m4/pipe.m4 (gl_PIPE): Likewise.
22040         * modules/execute (Files): Add m4/posix_spawn.m4.
22041         * modules/pipe (Files): Add m4/posix_spawn.m4.
22042         Reported and analyzed by Rainer Tammer <tammer@tammer.net>.
22043
22044 2008-10-01  Jim Meyering  <meyering@redhat.com>
22045
22046         remove trailing spaces
22047         * NEWS: Likewise.
22048         * lib/poll.c (poll): Likewise.
22049         * lib/sys_socket.in.h (SHUT_RDWR): Likewise.
22050         * lib/winsock.c (rpl_close): Likewise.
22051         * m4/memcmp.m4 (gl_FUNC_MEMCMP): Likewise.
22052         * modules/yield: Likewise.
22053         * tests/test-poll.c (connect_to_socket, poll1): Likewise.
22054         * tests/test-sys_select.c (connect_to_socket): Likewise.
22055
22056         fts.c: adjust a new interface to be more generally useful
22057         * lib/fts.c (dirent_inode_sort_may_be_useful): Take an FD parameter.
22058         (fts_build): Adjust caller.
22059
22060 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
22061
22062         * modules/cond-tests: New file.
22063         * tests/test-cond.c: New file.
22064
22065 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
22066             Bruno Haible  <bruno@clisp.org>
22067
22068         * modules/cond (Dependencies): Add errno, time.
22069         * lib/glthread/cond.h: Include <time.h>.
22070         (gl_cond_define, gl_cond_define_initialized): Use the same definition
22071         across platforms.
22072
22073 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
22074             Bruno Haible  <bruno@clisp.org>
22075
22076         * m4/thread.m4 (gl_THREAD): Fix detection of pthread_atfork function.
22077
22078 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
22079             Bruno Haible  <bruno@clisp.org>
22080
22081         * modules/tls-tests (Depends-on): Add thread, yield.
22082         (configure.ac): Remove all checks.
22083         (test_tls_LDADD): Use YIELD_LIB instead of LIBSCHED.
22084         * tests/test-tls.c (gl_thread_t, gl_thread_join, gl_thread_yield,
22085         gl_thread_self): Remove definitions. Include glthread/thread.h and
22086         glthread/yield.h instead.
22087         (test_tls): Pass an additional NULL argument to gl_thread_join.
22088
22089 2008-09-30  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
22090             Bruno Haible  <bruno@clisp.org>
22091
22092         * modules/lock-tests (Depends-on): Add thread, yield.
22093         (configure.ac): Remove all checks.
22094         (test_lock_LDADD): Use YIELD_LIB instead of LIBSCHED.
22095         * tests/test-lock.c (gl_thread_t, gl_thread_join, gl_thread_yield,
22096         gl_thread_self): Remove definitions. Include glthread/thread.h and
22097         glthread/yield.h instead.
22098         (test_lock, test_rwlock, test_recursive_lock, test_once): Pass an
22099         additional NULL argument to gl_thread_join.
22100
22101 2008-09-30  Bruno Haible  <bruno@clisp.org>
22102
22103         Fix the Win32 implementation of the 'thread' module.
22104         * lib/glthread/thread.h [USE_WIN32_THREADS] (gl_thread_t): Change to a
22105         pointer type.
22106         (gl_thread_self): Invoke gl_thread_self_func.
22107         (gl_thread_self_func): New declaration.
22108         * lib/glthread/thread.c [USE_WIN32_THREADS] (self_key): New variable.
22109         (do_init_self_key, init_self_key): New functions.
22110         (struct gl_thread_struct): Renamed from 'struct thread_extra'.
22111         Remove some fields.
22112         (running_threads, running_lock): Remove variables.
22113         (get_current_thread_handle): New function.
22114         (gl_thread_self_func, wrapper_func, glthread_create_func,
22115         glthread_join_func, gl_thread_exit_func): Largely rewritten and
22116         simplified.
22117
22118 2008-09-30  Bruno Haible  <bruno@clisp.org>
22119
22120         * lib/winsock-select.c (win32_poll_handle): Add shortcut for regular
22121         files.
22122
22123 2008-09-30  Jim Meyering  <meyering@redhat.com>
22124
22125         fts.m4: correct the test for statfs.f_type
22126         * m4/fts.m4 (gl_FUNC_FTS_CORE): Include <sys/statfs.h>
22127         when checking for statfs.f_type.
22128
22129 2008-09-15  Simon Josefsson  <simon@josefsson.org>
22130
22131         tests: avoid some compiler warnings
22132         * tests/test-memchr.c (main): Pass NULL indirectly.
22133         * tests/test-getdate.c (main): Remove unused variable 'ret'.
22134
22135 2008-09-29  Ondřej Vašík  <ovasik@redhat.com>
22136
22137         getdate.y: disallow countable dayshifts like "4 yesterday ago"
22138         * lib/getdate.y (relative_time_table) [tDAY_SHIFT]: New type for
22139         exactly specified dayshifts.
22140         (dayshift): New rule.
22141         (rel): Add dayshift.
22142         (relative_time_table) [tomorrow, yesterday, today, now]:
22143         Use tDAY_SHIFT in place of tDAY_UNIT.
22144         * tests/test-getdate.c: Add tests for now-disallowed countable
22145         dayshifts, e.g., "4 yesterday ago".
22146
22147 2008-09-29  Bruno Haible  <bruno@clisp.org>
22148
22149         * tests/test-posix_spawn1.c: Renamed from tests/test-posix_spawn.c.
22150         * tests/test-posix_spawn1.in.sh: Renamed from
22151         tests/test-posix_spawn.in.sh.
22152         * tests/test-posix_spawn2.c: New file.
22153         * tests/test-posix_spawn2.in.sh: New file.
22154         * modules/posix_spawnp-tests (Files): Update.
22155         (Makefile.am): Update. Add test-posix_spawn2 to the tests.
22156
22157 2008-09-29  Bruno Haible  <bruno@clisp.org>
22158
22159         Propagate effects of putenv/setenv/unsetenv to child processes.
22160         * lib/execute.c (execute): Use spawnvpe instead of spawnvp.
22161         * lib/pipe.c (create_pipe): Likewise.
22162
22163 2008-09-29  Bruno Haible  <bruno@clisp.org>
22164
22165         Enable use of shell scripts as executables in mingw.
22166         * lib/execute.c (execute): When spawnv fails with error ENOEXEC,
22167         run the program as a shell script.
22168         * lib/pipe.c (create_pipe): Likewise.
22169         * lib/w32spawn.h (prepare_spawn): Add a hidden element in front of the
22170         resulting array.
22171
22172 2008-09-29  Eric Blake  <ebb9@byu.net>
22173
22174         * m4/arpa_inet_h.m4 (gl_REPLACE_ARPA_INET_H): Fix typo.
22175
22176 2008-08-24  Paolo Bonzini  <bonzini@gnu.org>
22177
22178         * doc/posix-functions/accept.texi: Update mingw problems.
22179         * doc/posix-functions/bind.texi: Update mingw problems.
22180         * doc/posix-functions/close.texi: Update mingw problems.
22181         * doc/posix-functions/connect.texi: Update mingw problems.
22182         * doc/posix-functions/getpeername.texi: Update mingw problems.
22183         * doc/posix-functions/getsockname.texi: Update mingw problems.
22184         * doc/posix-functions/getsockopt.texi: Update mingw problems.
22185         * doc/posix-functions/ioctl.texi: Update mingw problems.
22186         * doc/posix-functions/listen.texi: Update mingw problems.
22187         * doc/posix-functions/recv.texi: Update mingw problems.
22188         * doc/posix-functions/recvfrom.texi: Update mingw problems.
22189         * doc/posix-functions/select.texi: Update mingw problems.
22190         * doc/posix-functions/send.texi: Update mingw problems.
22191         * doc/posix-functions/sendto.texi: Update mingw problems.
22192         * doc/posix-functions/setsockopt.texi: Update mingw problems.
22193         * doc/posix-functions/socket.texi: Update mingw problems.
22194
22195 2008-09-29  Paolo Bonzini  <bonzini@gnu.org>
22196             Bruno Haible  <bruno@clisp.org>
22197
22198         * lib/sys_select.in.h: Include sys/time.h.
22199         * m4/sys_select.h.m4: Test that struct timeval is fully defined.
22200         * modules/sys_select: Depend on sys_time.
22201         * tests/test-sys_select.c: Test that sys/select.h defines struct
22202         timeval fully.
22203
22204 2008-09-29  Bruno Haible  <bruno@clisp.org>
22205
22206         * lib/sys_socket.in.h: Wrap the definitions in 'extern "C"'.
22207         * lib/sys_select.in.h: Likewise.
22208
22209 2008-09-29  Bruno Haible  <bruno@clisp.org>
22210
22211         * lib/winsock.c (rpl_close, rpl_socket): Remove unused variables.
22212
22213 2008-09-29  Bruno Haible  <bruno@clisp.org>
22214
22215         * m4/sockets.m4 (gl_SOCKETS): Check also for the need to use -lsocket.
22216         Set LIBSOCKET instead of augmenting LIBS.
22217         * modules/sockets (Link): New section.
22218         * modules/sockets-tests (test_sockets_LDADD): New variable.
22219         * modules/sys_select-tests (test_sys_select_LDADD): New variable.
22220         * modules/poll-tests (test_poll_LDADD): New variable.
22221         * NEWS: Document the change.
22222
22223 2008-09-29  Bruno Haible  <bruno@clisp.org>
22224
22225         * m4/arpa_inet_h.m4 (gl_REPLACE_ARPA_INET_H): New macro.
22226         * m4/inet_ntop.m4 (gl_INET_NTOP): Invoke it instead of assigning
22227         ARPA_INET_H directly.
22228         * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
22229
22230 2008-09-28  Bruno Haible  <bruno@clisp.org>
22231
22232         * m4/sys_socket_h.m4 (gl_PREREQ_SYS_H_WINSOCK2): New macro, extracted
22233         from gl_HEADER_SYS_SOCKET.
22234         (gl_HEADER_SYS_SOCKET): Invoke it.
22235         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
22236
22237 2008-09-28  Bruno Haible  <bruno@clisp.org>
22238
22239         * doc/posix-headers/sys_select.texi: Mention 'struct timeval' problem.
22240         * tests/test-sys_select.c: Include <sys/time.h>, for struct timeval.
22241         Needed on OSF/1 4.0.
22242
22243 2008-09-28  Bruno Haible  <bruno@clisp.org>
22244
22245         Override open more carefully.
22246         * lib/open.c (orig_open): New function.
22247         (rpl_open): Use orig_open instead of open.
22248         * lib/fcntl.in.h: Add special invocation convention.
22249         * m4/open.m4 (gl_PREREQ_OPEN): New macro.
22250         (gl_FUNC_OPEN): Invoke it.
22251
22252         Override freopen more carefully.
22253         * lib/freopen.c (orig_freopen): New function.
22254         (rpl_freopen): Use orig_freopen instead of freopen.
22255         * m4/freopen.m4 (gl_PREREQ_FREOPEN): New macro.
22256         (gl_FUNC_FREOPEN): Invoke it.
22257
22258         Override fopen more carefully.
22259         * lib/fopen.c (orig_fopen): New function.
22260         (rpl_fopen): Use orig_fopen instead of fopen.
22261         * m4/fopen.m4 (gl_PREREQ_FOPEN): New macro.
22262         (gl_FUNC_FOPEN): Invoke it.
22263         Needed on AIX. Reported by Rainer Tammer <tammer@tammer.net>.
22264
22265 2008-09-28  Bruno Haible  <bruno@clisp.org>
22266
22267         * lib/pipe.h (create_pipe_out, create_pipe_bidi): Add comment about
22268         SIGPIPE.
22269
22270 2008-09-28  Bruno Haible  <bruno@clisp.org>
22271
22272         * tests/test-sigaction.c (handler, main): Disable the check whether
22273         SA_RESETHAND has reverted the installed handler to SIG_DFL. Needed on
22274         glibc systems with LinuxThreads.
22275
22276 2008-09-28  Bruno Haible  <bruno@clisp.org>
22277
22278         * doc/posix-functions/freopen.texi: Mention the trailing slash problem.
22279
22280         * lib/stdio.in.h (fopen, freopen): Undefine before redefining. Needed
22281         with AIX xlc.
22282         * lib/fcntl.in.h (open): Likewise.
22283         Reported by Rainer Tammer <tammer@tammer.net>.
22284
22285 2008-09-28  Bruno Haible  <bruno@clisp.org>
22286
22287         * modules/posix_spawnp-tests: New file.
22288         * tests/test-posix_spawn.c: New file.
22289         * tests/test-posix_spawn.in.sh: New file.
22290
22291         New module 'posix_spawnp'.
22292         * modules/posix_spawnp: New file.
22293         * lib/spawnp.c: New file, from GNU libc with modifications.
22294         * doc/posix-functions/posix_spawnp.texi: Mention the new module.
22295
22296         New module 'posix_spawn'.
22297         * modules/posix_spawn: New file.
22298         * lib/spawn.c: New file, from GNU libc with modifications.
22299         * doc/posix-functions/posix_spawn.texi: Mention the new module.
22300
22301         New module 'posix_spawnattr_destroy'.
22302         * modules/posix_spawnattr_destroy: New file.
22303         * lib/spawnattr_destroy.c: New file, from GNU libc with modifications.
22304         * doc/posix-functions/posix_spawnattr_destroy.texi: Mention the new
22305         module.
22306
22307         New module 'posix_spawnattr_setsigmask'.
22308         * modules/posix_spawnattr_setsigmask: New file.
22309         * lib/spawnattr_setsigmask.c: New file, from GNU libc with
22310         modifications.
22311         * doc/posix-functions/posix_spawnattr_setsigmask.texi: Mention the
22312         new module.
22313
22314         New module 'posix_spawnattr_getsigmask'.
22315         * modules/posix_spawnattr_getsigmask: New file.
22316         * lib/spawnattr_getsigmask.c: New file, from GNU libc with
22317         modifications.
22318         * doc/posix-functions/posix_spawnattr_getsigmask.texi: Mention the
22319         new module.
22320
22321         New module 'posix_spawnattr_setsigdefault'.
22322         * modules/posix_spawnattr_setsigdefault: New file.
22323         * lib/spawnattr_setdefault.c: New file, from GNU libc with
22324         modifications.
22325         * doc/posix-functions/posix_spawnattr_setsigdefault.texi: Mention the
22326         new module.
22327
22328         New module 'posix_spawnattr_getsigdefault'.
22329         * modules/posix_spawnattr_getsigdefault: New file.
22330         * lib/spawnattr_getdefault.c: New file, from GNU libc with
22331         modifications.
22332         * doc/posix-functions/posix_spawnattr_getsigdefault.texi: Mention the
22333         new module.
22334
22335         New module 'posix_spawnattr_setschedpolicy'.
22336         * modules/posix_spawnattr_setschedpolicy: New file.
22337         * lib/spawnattr_setschedpolicy.c: New file, from GNU libc with
22338         modifications.
22339         * doc/posix-functions/posix_spawnattr_setschedpolicy.texi: Mention the
22340         new module.
22341
22342         New module 'posix_spawnattr_getschedpolicy'.
22343         * modules/posix_spawnattr_getschedpolicy: New file.
22344         * lib/spawnattr_getschedpolicy.c: New file, from GNU libc with
22345         modifications.
22346         * doc/posix-functions/posix_spawnattr_getschedpolicy.texi: Mention the
22347         new module.
22348
22349         New module 'posix_spawnattr_setschedparam'.
22350         * modules/posix_spawnattr_setschedparam: New file.
22351         * lib/spawnattr_setschedparam.c: New file, from GNU libc with
22352         modifications.
22353         * doc/posix-functions/posix_spawnattr_setschedparam.texi: Mention the
22354         new module.
22355
22356         New module 'posix_spawnattr_getschedparam'.
22357         * modules/posix_spawnattr_getschedparam: New file.
22358         * lib/spawnattr_getschedparam.c: New file, from GNU libc with
22359         modifications.
22360         * doc/posix-functions/posix_spawnattr_getschedparam.texi: Mention the
22361         new module.
22362
22363         New module 'posix_spawnattr_setpgroup'.
22364         * modules/posix_spawnattr_setpgroup: New file.
22365         * lib/spawnattr_setpgroup.c: New file, from GNU libc with
22366         modifications.
22367         * doc/posix-functions/posix_spawnattr_setpgroup.texi: Mention the new
22368         module.
22369
22370         New module 'posix_spawnattr_getpgroup'.
22371         * modules/posix_spawnattr_getpgroup: New file.
22372         * lib/spawnattr_getpgroup.c: New file, from GNU libc with
22373         modifications.
22374         * doc/posix-functions/posix_spawnattr_getpgroup.texi: Mention the new
22375         module.
22376
22377         New module 'posix_spawnattr_setflags'.
22378         * modules/posix_spawnattr_setflags: New file.
22379         * lib/spawnattr_setflags.c: New file, from GNU libc with modifications.
22380         * doc/posix-functions/posix_spawnattr_setflags.texi: Mention the new
22381         module.
22382
22383         New module 'posix_spawnattr_getflags'.
22384         * modules/posix_spawnattr_getflags: New file.
22385         * lib/spawnattr_getflags.c: New file, from GNU libc with modifications.
22386         * doc/posix-functions/posix_spawnattr_getflags.texi: Mention the new
22387         module.
22388
22389         New module 'posix_spawnattr_init'.
22390         * modules/posix_spawnattr_init: New file.
22391         * lib/spawnattr_init.c: New file, from GNU libc with modifications.
22392         * doc/posix-functions/posix_spawnattr_init.texi: Mention the new
22393         module.
22394
22395         New module 'posix_spawn_file_actions_destroy'.
22396         * modules/posix_spawn_file_actions_destroy: New file.
22397         * lib/spawn_faction_destroy.c: New file, from GNU libc with
22398         modifications.
22399         * doc/posix-functions/posix_spawn_file_actions_destroy.texi: Mention
22400         the new module.
22401
22402         New module 'posix_spawn_file_actions_addopen'.
22403         * modules/posix_spawn_file_actions_addopen: New file.
22404         * lib/spawn_faction_addopen.c: New file, from GNU libc with
22405         modifications.
22406         * doc/posix-functions/posix_spawn_file_actions_addopen.texi: Mention
22407         the new module.
22408
22409         New module 'posix_spawn_file_actions_adddup2'.
22410         * modules/posix_spawn_file_actions_adddup2: New file.
22411         * lib/spawn_faction_adddup2.c: New file, from GNU libc with
22412         modifications.
22413         * doc/posix-functions/posix_spawn_file_actions_adddup2.texi: Mention
22414         the new module.
22415
22416         New module 'posix_spawn_file_actions_addclose'.
22417         * modules/posix_spawn_file_actions_addclose: New file.
22418         * lib/spawn_faction_addclose.c: New file, from GNU libc with
22419         modifications.
22420         * doc/posix-functions/posix_spawn_file_actions_addclose.texi: Mention
22421         the new module.
22422
22423         New module 'posix_spawn_file_actions_init'.
22424         * modules/posix_spawn_file_actions_init: New file.
22425         * lib/spawn_faction_init.c: New file, from GNU libc with modifications.
22426         * doc/posix-functions/posix_spawn_file_actions_init.texi: Mention the
22427         new module.
22428
22429         New module 'posix_spawn-internal'.
22430         * modules/posix_spawn-internal: New file.
22431         * lib/spawn_int.h: New file, from GNU libc with modifications.
22432         * lib/spawni.c: New file, from GNU libc with modifications.
22433         * m4/posix_spawn.m4: New file.
22434
22435         New module 'spawn'.
22436         * modules/spawn: New file.
22437         * lib/spawn.in.h: New file, from GNU libc with modifications.
22438         * m4/spawn_h.m4: New file.
22439         * doc/posix-headers/spawn.texi: Mention the new module.
22440
22441 2008-09-28  Bruno Haible  <bruno@clisp.org>
22442
22443         * modules/sched-tests: New file.
22444         * tests/test-sched.c: New file.
22445
22446         New module 'sched'.
22447         * modules/sched: New file.
22448         * lib/sched.in.h: New file.
22449         * m4/sched_h.m4: New file.
22450         * doc/posix-headers/sched.texi: Mention the new module.
22451
22452 2008-09-27  Eric Blake  <ebb9@byu.net>
22453
22454         Fix previous patch, and tweak references to $0.
22455         * posix-modules: Call func_gnulib_dir before using $gnulib_dir.
22456         (func_version, func_gnulib_dir): Don't call this program
22457         gnulib-tool.
22458         (func_gnulib_dir, func_tmpdir, func_fatal_error): Avoid shell bugs
22459         with using $0 in function.
22460         * gnulib-tool (func_gnulib_dir, func_tmpdir): Likewise.
22461         (func_fatal_error): Reuse the name the user invoked us with.
22462
22463 2008-09-27  Bruno Haible  <bruno@clisp.org>
22464
22465         * m4/iconv_h.m4 (gl_REPLACE_ICONV_H): New macro.
22466         (gl_ICONV_H_DEFAULTS): Initialize ICONV_H here...
22467         (gl_ICONV_H): Not here.
22468         * m4/iconv_open.m4 (gl_REPLACE_ICONV_OPEN): Invoke gl_REPLACE_ICONV_H
22469         instead of assigning ICONV_H directly.
22470
22471         * m4/wchar.m4 (gl_REPLACE_WCHAR_H): New macro.
22472         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Invoke it instead of assigning
22473         WCHAR_H directly.
22474
22475 2008-09-27  Bruno Haible  <bruno@clisp.org>
22476
22477         * lib/arpa_inet.in.h: Include the GL_LINK_WARNING anchor.
22478         * modules/arpa_inet (Depends-on): Add link-warning.
22479         (Makefile.am): Insert the definition of GL_LINK-WARNING.
22480         * modules/unistd (Makefile.am): Likewise.
22481
22482 2008-09-26  Bruno Haible  <bruno@clisp.org>
22483
22484         * posix-modules (cvsdatestamp, last_checkin_date, version): Remove
22485         variables.
22486         (func_version): Essentially copied from gnulib-tool.
22487         (func_exit, func_gnulib_dir, func_tmpdir, func_fatal_error,
22488         func_readlink): Copied from gnulib-tool.
22489
22490 2008-09-26  Bruno Haible  <bruno@clisp.org>
22491
22492         * gnulib-tool (func_version): Change directory to $gnulib_dir before
22493         invoking git-version-gen.
22494
22495 2008-09-26  Bruno Haible  <bruno@clisp.org>
22496
22497         * posix-modules: Update to directory names changed on 2008-01-19.
22498         Remove commas in output before splitting into words. No more need to
22499         avoid 'ftruncate' since 2007-02-19.
22500
22501 2008-09-26  Bruno Haible  <bruno@clisp.org>
22502
22503         * doc/posix-headers/errno.texi: Remove mention of module 'EOVERFLOW'.
22504
22505 2008-09-26  Bruno Haible  <bruno@clisp.org>
22506
22507         * lib/fwriteerror.c (do_fwriteerror): Ignore error EPIPE.
22508         * modules/fwriteerror (Depends-on): Add errno.
22509
22510 2008-09-26  Bruno Haible  <bruno@clisp.org>
22511
22512         * tests/test-vc-list-files-git.sh: Explain reason for skipping test.
22513         * tests/test-vc-list-files-cvs.sh: Likewise.
22514
22515 2008-09-26  Bruno Haible  <bruno@clisp.org>
22516
22517         * doc/posix-headers/sys_resource.texi: Reorder items.
22518
22519 2008-09-26  Jim Meyering  <meyering@redhat.com>
22520
22521         fts: tweak inode comparison function
22522         * lib/fts.c (fts_compare_ino): Sort on increasing, not decreasing
22523         inode numbers, as documented.
22524
22525         fts: sort dirent entries on inode number before traversing
22526         This avoids a quadratic, seek-related performance penalty when
22527         operating on a directory containing many entries (measurable at 10k;
22528         3.5 hours at 2 million entries with a cold cache) on certain types
22529         of file systems, including ext3 and ext4, but not tmpfs.
22530         * lib/fts.c (DT_MUST_BE, NOT_AN_INODE_NUMBER, D_INO): Define.
22531         (FTS_INODE_SORT_DIR_ENTRIES_THRESHOLD): Define if not defined.
22532         (S_MAGIC_TMPFS, S_MAGIC_NFS): Define.
22533         (fs_handles_readdir_ordered_dirents_efficiently): New function.
22534         (dirent_inode_sort_may_be_useful, fts_compare_ino): Likewise.
22535         (fts_build): Set the stat.st_ino member from D_INO.
22536         If it is likely to be useful, sort dirent entries on inode number.
22537
22538         * m4/fts.m4 (gl_FUNC_FTS_CORE): Check for fstatfs, sys/vfs.h,
22539         and the struct statfs.f_type member.
22540         * modules/fts (Depends-on): Add d-ino.
22541
22542 2008-09-26  Bruno Haible  <bruno@clisp.org>
22543
22544         * modules/sigpipe-die (Depends-on): Add sigpipe.
22545
22546         * lib/stdio.in.h (fprintf, vfprintf, printf, vprintf, fputc, putc,
22547         putchar, fputs, puts, fwrite): Replace when REPLACE_STDIO_WRITE_FUNCS
22548         and GNULIB_STDIO_H_SIGPIPE are set.
22549         * lib/stdio-write.c: New file.
22550         * m4/stdio_h.m4 (gl_STDIO_H): Set GNULIB_FPRINTF, GNULIB_PRINTF,
22551         GNULIB_VFPRINTF, GNULIB_VPRINTF, GNULIB_FPUTC, GNULIB_PUTC,
22552         GNULIB_PUTCHAR, GNULIB_FPUTS, GNULIB_PUTS, GNULIB_FWRITE,
22553         REPLACE_STDIO_WRITE_FUNCS.
22554         (gl_STDIO_H_DEFAULTS): Initialize GNULIB_FPRINTF, GNULIB_PRINTF,
22555         GNULIB_VFPRINTF, GNULIB_VPRINTF, GNULIB_FPUTC, GNULIB_PUTC,
22556         GNULIB_PUTCHAR, GNULIB_FPUTS, GNULIB_PUTS, GNULIB_FWRITE,
22557         GNULIB_STDIO_H_SIGPIPE, REPLACE_STDIO_WRITE_FUNCS.
22558         * modules/stdio (Files): Add lib/stdio-write.c.
22559         (Makefile.am): Substitute GNULIB_FPRINTF, GNULIB_PRINTF,
22560         GNULIB_VFPRINTF, GNULIB_VPRINTF, GNULIB_FPUTC, GNULIB_PUTC,
22561         GNULIB_PUTCHAR, GNULIB_FPUTS, GNULIB_PUTS, GNULIB_FWRITE,
22562         GNULIB_STDIO_H_SIGPIPE, REPLACE_STDIO_WRITE_FUNCS.
22563         * m4/fprintf-posix.m4 (gl_REPLACE_FPRINTF): Define
22564         REPLACE_FPRINTF_POSIX.
22565         * m4/printf-posix-rpl.m4 (gl_REPLACE_PRINTF): Define
22566         REPLACE_PRINTF_POSIX.
22567         * m4/vfprintf-posix.m4 (gl_REPLACE_VFPRINTF): Define
22568         REPLACE_VFPRINTF_POSIX.
22569         * m4/vprintf-posix.m4 (gl_REPLACE_VPRINTF): Define
22570         REPLACE_VPRINTF_POSIX.
22571         * doc/posix-functions/fprintf.texi: Mention the sigpipe module and the
22572         SIGPIPE issue.
22573         * doc/posix-functions/fputc.texi: Likewise.
22574         * doc/posix-functions/fputs.texi: Likewise.
22575         * doc/posix-functions/fwrite.texi: Likewise.
22576         * doc/posix-functions/printf.texi: Likewise.
22577         * doc/posix-functions/putc.texi: Likewise.
22578         * doc/posix-functions/putchar.texi: Likewise.
22579         * doc/posix-functions/puts.texi: Likewise.
22580         * doc/posix-functions/vfprintf.texi: Likewise.
22581         * doc/posix-functions/vprintf.texi: Likewise.
22582
22583         * modules/safe-write (Depends-on): Add write.
22584
22585         * modules/sigpipe-tests: New file.
22586         * tests/test-sigpipe.c: New file.
22587         * tests/test-sigpipe.sh: New file.
22588
22589         * modules/write: New file.
22590         * lib/unistd.in.h: Include <sys/types.h>.
22591         (write): New declaration.
22592         * lib/write.c: New file.
22593         * m4/write.m4: New file.
22594         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
22595         GNULIB_UNISTD_H_SIGPIPE, GNULIB_WRITE, REPLACE_WRITE.
22596         * modules/unistd (Makefile.am): Substitute GNULIB_UNISTD_H_SIGPIPE,
22597         GNULIB_WRITE, REPLACE_WRITE.
22598         * doc/posix-functions/write.texi: Mention the write, sigpipe modules
22599         and the SIGPIPE issue.
22600
22601         * lib/signal.in.h (SIGPIPE): Define to a replacement value.
22602         (raise): New declaration.
22603         * lib/sigprocmask.c (SIGPIPE_handler): New variable.
22604         (ext_signal): New function.
22605         (rpl_raise): New function.
22606         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Initialize
22607         GNULIB_SIGNAL_H_SIGPIPE.
22608         * modules/signal (Makefile.am): Substitute GNULIB_SIGNAL_H_SIGPIPE.
22609         * doc/posix-headers/signal.texi: Mention the SIGPIPE issue.
22610
22611         * modules/sigpipe: New file.
22612         * m4/sigpipe.m4: New file.
22613
22614 2008-09-25  Derek Price  <derek@ximbiot.com>
22615             Bruno Haible  <bruno@clisp.org>
22616
22617         * gnulib-tool (func_import): Report all license incompatibilities, not
22618         just the first one.
22619
22620 2008-09-25  Bruno Haible  <bruno@clisp.org>
22621
22622         * gnulib-tool (func_import): When computing the edits, consider not
22623         only the Makefile.ams that exist but also those that will be generated.
22624
22625 2008-09-25  Simon Josefsson  <simon@josefsson.org>
22626
22627         * modules/sys_select-tests (Depends-on): Remove sys_select itself,
22628         fixes gnulib-tool --test warning about duplicate dependency.
22629
22630 2008-09-25  Bruno Haible  <bruno@clisp.org>
22631
22632         * gnulib-tool: Don't ask the user to perform edits in the generated
22633         Makefile.ams.
22634         (func_emit_lib_Makefile_am): Emit empty SUBDIRS. Execute edits that
22635         apply to the Makefile.am being generated.
22636         (func_emit_tests_Makefile_am): Execute edits that apply to the
22637         Makefile.am being generated.
22638         (func_import): Setup list of Makefile.am edits before emitting the
22639         Makefile.ams, not at the end.
22640         (func_create_testdir): Update.
22641         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
22642
22643 2008-09-25  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
22644
22645         * gnulib-tool (func_import): Store the --tests-base option in the
22646         comment in gnulib-cache.m4.
22647
22648 2008-09-24  Paolo Bonzini  <bonzini@gnu.org>
22649
22650         * NEWS: Document increased portability that sys_select now provides.
22651
22652         * lib/sys_select.in.h: Install select wrapper.
22653         * lib/sys_socket.in.h: Use more descriptive name when there is no
22654         select wrapper.
22655         * lib/winsock-select.c: New.
22656         * m4/sys_select_h.m4: Compile lib/winsock-select.c if WinSock is used.
22657         Require gl_HEADER_SYS_SOCKET.
22658         * modules/sys_select: Depend on alloca, add lib/winsock-select.c.
22659         * modules/sys_select-tests: Copy dependencies from modules/poll-tests.
22660         * tests/test-sys_select.c: Add functional tests.
22661
22662 2008-09-24  Eric Blake  <ebb9@byu.net>
22663
22664         open, fopen: close fd leak in last patch
22665         * lib/open.c (rpl_open): Close fd before returning error.
22666         * lib/fopen.c (rpl_fopen): Close fd before returning error.
22667         * doc/posix-functions/open.texi (open): Document that Irix also
22668         has the bug.
22669         * doc/posix-functions/fopen.texi (fopen): Likewise.
22670         Reported by Paolo Bonzini.
22671
22672 2008-09-24  Bruno Haible  <bruno@clisp.org>
22673
22674         Ensure that a filename ending in a slash cannot be used to access a
22675         non-directory.
22676         * lib/open.c (rpl_open): When the filename ends in a slash, use fstat()
22677         to check whether it's really a directory.
22678         * lib/fopen.c: Include fcntl.h, unistd.h.
22679         (rpl_fopen): When the filename ends in a slash, use open(), fstat(),
22680         and fdopen().
22681         * modules/fopen (Depends-on): Add unistd.
22682         * tests/test-open.c (main): Try to open "/dev/null/" as a directory.
22683         * tests/test-fopen.c (main): Likewise.
22684         * doc/posix-functions/open.texi: Mention the HP-UX, Solaris bug.
22685         * doc/posix-functions/fopen.texi: Likewise.
22686         Reported by Eric Blake.
22687
22688 2008-09-23  Eric Blake  <ebb9@byu.net>
22689
22690         c-stack: avoid compiler optimizations when provoking overflow
22691         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Make
22692         recursion harder to optimize, to ensure a stack overflow occurs.
22693         * tests/test-c-stack.c (recurse): Likewise.
22694         Borrowed from libsigsegv.
22695
22696         c-stack: work around Irix sigaltstack bug
22697         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Check
22698         whether sigaltstack uses wrong end of stack_t (copied in part from
22699         libsigsegv).
22700         * lib/c-stack.c (c_stack_action) [!HAVE_LIBSIGSEGV]: Work around
22701         Irix bug, without requiring an over-allocation.
22702         * doc/posix-functions/sigaltstack.texi (sigaltstack): Document the
22703         bug.
22704
22705         fopen: document mingw bug on directories
22706         * doc/posix-functions/fopen.texi (fopen): Mention mingw bug for
22707         not allowing a stream visiting a directory, even though reading
22708         from such a stream is not portable.
22709
22710 2008-09-23  Paolo Bonzini  <bonzini@gnu.org>
22711
22712         * lib/poll.c: Rewrite.
22713         * modules/poll: Depend on alloca.
22714
22715 2008-09-23  Paolo Bonzini  <bonzini@gnu.org>
22716
22717         * lib/sys_socket.in.h: Do not implement rpl_setsockopt here,
22718         instead define prototypes for a full set of wrappers.  Ensure
22719         that Cygwin does not use the compatibility code, which is only
22720         for MinGW.
22721         * lib/winsock.c: New.
22722         * m4/sys_socket_h.m4: Compile lib/winsock.c if WinSock is being used.
22723         * modules/sys_socket: Add lib/winsock.c.
22724
22725         * modules/poll-tests: Add errno and perror.
22726         * tests/test-poll.c: Use ioctl, not ioctlsocket.
22727
22728 2008-09-23  Paolo Bonzini  <bonzini@gnu.org>
22729
22730         * tests/test-poll.c: Downgrade minimum needed Winsock version.
22731
22732 2008-09-23  Bruno Haible  <bruno@clisp.org>
22733
22734         * doc/posix-functions/*: Add info about functions missing on IRIX 5.3.
22735         * doc/glibc-functions/*: Likewise.
22736
22737 2008-09-23  Simon Josefsson  <simon@josefsson.org>
22738
22739         * tests/test-perror.sh (tmpfiles): Cleanup temporary files on
22740         success.
22741
22742 2008-09-22  Eric Blake  <ebb9@byu.net>
22743             Bruno Haible  <bruno@clisp.org>
22744
22745         vasnprintf: fix x86/glibc regression on printf("%La", 0.0L)
22746         * lib/vasnprintf.c (VASNPRINTF): Support 0.0 on platforms that
22747         supply %A but mishandle pseudo-NaN.
22748         Reported by Simon Josefsson.
22749
22750 2008-09-21  Bruno Haible  <bruno@clisp.org>
22751
22752         * tests/test-lock.c (main): Tweak skip message.
22753         * tests/test-tls.c (main): Likewise.
22754
22755 2008-09-21  Bruno Haible  <bruno@clisp.org>
22756
22757         * m4/sigaction.m4 (gl_SIGACTION): Remove unnecessary AC_SUBST. Check
22758         whether 'struct sigaction' has sa_sigaction here...
22759         (gl_PREREQ_SIG_HANDLER_H): ... not here.
22760         (gl_PREREQ_SIGACTION): Remove unnecessary AC_SUBST.
22761
22762 2008-09-21  Bruno Haible  <bruno@clisp.org>
22763
22764         * MODULES.html.sh (Support for obsolete systems lacking ANSI C 89): New
22765         section.
22766         (Support for systems lacking ANSI C 89): Move stdlib, exit, strtol,
22767         strtoul, memchr, memcmp, memcpy, memmove, memset, strcspn, strpbrk to
22768         the new section.
22769         (Support for obsolete systems lacking POSIX:2001): New section.
22770         (String handling <string.h>): Move strdup to the new section.
22771         Suggested by Simon Josefsson and Paolo Bonzini.
22772
22773 2008-09-21  Bruno Haible  <bruno@clisp.org>
22774
22775         * tests/test-vasnprintf-posix.c (test_function): Allow 3-digit
22776         exponents in %e and %g results on 'long double'. Needed for mingw's
22777         improved *printf functions.
22778         * tests/test-vasprintf-posix.c (test_function): Likewise.
22779         * tests/test-snprintf-posix.h (test_function): Likewise.
22780         * tests/test-sprintf-posix.h (test_function): Likewise.
22781         Reported by Eric Blake.
22782
22783 2008-09-21  Bruno Haible  <bruno@clisp.org>
22784
22785         * tests/test-snprintf-posix.h (test_function): Remove useless ASSERTs.
22786         * tests/test-sprintf-posix.h (test_function): Likewise.
22787
22788 2008-09-21  Bruno Haible  <bruno@clisp.org>
22789
22790         * modules/getpass (Depends-on): Add strdup-posix.
22791
22792         New module 'strdup-posix'.
22793         * modules/strdup-posix: New file.
22794         * m4/strdup.m4 (gl_FUNC_STRDUP_POSIX): New macro.
22795         * lib/string.in.h (strdup): Replace if REPLACE_STRDUP is 1.
22796         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
22797         REPLACE_STRDUP.
22798         * modules/string (Makefile.am): Substitute REPLACE_STRDUP.
22799         * doc/posix-functions/strdup.texi: Mention module strdup-posix.
22800         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
22801         strdup-posix.
22802
22803         * modules/strdup (Depends-on): Remove malloc-posix.
22804
22805 2008-09-20  Bruno Haible  <bruno@clisp.org>
22806
22807         * lib/fstrcmp.c: Add data about branch probabilities, from Ralf
22808         Wildenhues.
22809
22810 2008-09-20  Bruno Haible  <bruno@clisp.org>
22811
22812         Ensure that wint_t gets defined on IRIX 5.3.
22813         * lib/wchar.in.h (wint_t): Define if not defined by the system.
22814         * lib/wctype.in.h (wint_t): Likewise.
22815         (__wctype_wint_t): Remove type.
22816         (isw*): Use wint_t instead of __wctype_wint_t.
22817         * m4/wchar.m4 (gl_WCHAR_H): Invoke gt_TYPE_WINT_T and set HAVE_WINT_T.
22818         * modules/wchar (Files): Add m4/wint_t.m4.
22819         (Makefile.am): Substitute HAVE_WINT_T.
22820         * tests/test-wchar.c: Check that wchar_t and wint_t are defined.
22821         * tests/test-wctype.c: Check that wint_t is defined.
22822         * doc/posix-headers/wchar.texi: Mention the IRIX 5 problem.
22823         * doc/posix-headers/wctype.texi: Likewise.
22824         Reported by Tom G. Christensen <tgc@jupiterrise.com>.
22825
22826 2008-09-18  Bruno Haible  <bruno@clisp.org>
22827
22828         * gnulib-tool (func_exit): Update comment.
22829
22830 2008-09-18  Simon Josefsson  <simon@josefsson.org>
22831
22832         * modules/getaddrinfo (Depends-on): Remove strdup, this module
22833         assumes strdup exists and does not depend on strdup to return
22834         ENOMEM on out of memory conditions.
22835
22836 2008-09-18  Bruno Haible  <bruno@clisp.org>
22837
22838         * lib/vasnprintf.c (VASNPRINTF): When printing ±0.0L in
22839         NEED_PRINTF_INFINITE_LONG_DOUBLE case with 'e' format, always use two
22840         digits for the exponent.
22841
22842 2008-09-18  Jim Meyering  <meyering@redhat.com>
22843             Bruno Haible  <bruno@clisp.org>
22844
22845         * lib/vasnprintf.c (decimal_point_char): Define also if
22846         NEED_PRINTF_INFINITE_LONG_DOUBLE.
22847
22848 2008-09-16  Bruno Haible  <bruno@clisp.org>
22849         and Eric Blake  <ebb9@byu.net>
22850
22851         vasnprintf: support Irix 5.3
22852         * lib/vasnprintf.c (VASNPRINTF): Also handle -0.0L on platforms
22853         that mishandle long double infinity.
22854         Reported by Tom G. Christensen.
22855
22856 2008-09-16  Bruno Haible  <bruno@clisp.org>
22857
22858         * doc/glibc-functions/scandir.texi: Mention the function is missing on
22859         Solaris 9.
22860         * doc/glibc-functions/alphasort.texi: Likewise.
22861         Reported by Michael Haubenwallner <michael.haubenwallner@salomon.at>.
22862
22863 2008-09-16  Jim Meyering  <meyering@redhat.com>
22864
22865         posix-shell.m4: reject opensolaris's "sh (AT&T Research) 1993-12-28 s+"
22866         * m4/posix-shell.m4 (gl_POSIX_SHELL): Reject a shell that lets
22867         a umask modification leak out of a subshell.  Otherwise, the
22868         opensolaris /bin/sh would be accepted and thus cause unwarranted
22869         failures in the coreutils test suite.
22870
22871 2008-09-16  Paolo Bonzini  <bonzini@gnu.org>
22872
22873         * tests/test-poll.c (connect_to_socket): Allow non-blocking connect
22874         to succeed.
22875
22876 2008-09-16  Jim Meyering  <meyering@redhat.com>
22877
22878         avoid spurious test failure when library is built without ACL support
22879         * m4/acl.m4 (USE_ACL): Define as a shell variable, too, for...
22880         * modules/acl-tests (Makefile.am) [TESTS_ENVIRONMENT]: Add USE_ACL.
22881         * tests/test-file-has-acl.sh: Skip if USE_ACL == 0.
22882         * tests/test-copy-acl.sh: Likewise.
22883
22884 2008-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22885
22886         * lib/fstrcmp.c (fstrcmp_bounded): Use a second, less quick upper bound
22887         based on character occurrence counts.
22888
22889 2008-09-15  Eric Blake  <ebb9@byu.net>
22890
22891         tests: avoid some compiler warnings
22892         * tests/test-memchr.c (main): Pass NULL indirectly.
22893         * tests/test-closein.c (main): Avoid unused variable.
22894
22895 2008-09-15  Bruno Haible  <bruno@clisp.org>
22896
22897         * m4/errno_h.m4 (gl_HEADER_ERRNO_H_BODY): Test for all the macros that
22898         are missing on OpenBSD 4.0 individually.
22899         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
22900
22901 2008-09-15  Bruno Haible  <bruno@clisp.org>
22902
22903         * doc/posix-headers/errno.texi: Mention the Cygwin problem.
22904         * doc/posix-functions/strerror.texi: Mention also Cygwin.
22905         * doc/posix-functions/perror.texi: Likewise.
22906         * m4/errno_h.m4 (gl_HEADER_ERRNO_H_BODY): Test also whether ECANCELED
22907         is missing.
22908         Reported by Eric Blake.
22909
22910         * lib/errno.in.h: Use replacement values >= 2000.
22911         Reported by Eric Blake.
22912
22913 2008-09-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22914
22915         * lib/fstrcmp.c (EXTRA_CONTEXT_FIELDS): Add field 'edit_count_limit'.
22916         (EARLY_ABORT): Return true when the edit_count has grown too beyond the
22917         limit.
22918         (fstrcmp_bounded): Initialize the edit_count_limit. Return 0 when
22919         compareseq was aborted.
22920
22921 2008-09-14  Bruno Haible  <bruno@clisp.org>
22922
22923         * lib/fstrcmp.c (EXTRA_CONTEXT_FIELDS): Combine xvec_edit_count and
22924         yvec_edit_count.
22925         (NOTE_DELETE, NOTE_INSERT): Increment the combined edit count.
22926         (fstrcmp_bounded): Simplify result computation accordingly.
22927
22928 2008-09-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22929
22930         * lib/fstrcmp.h (fstrcmp_bounded): New declaration.
22931         (fstrcmp): Define in terms of fstrcmp_bounded.
22932         * lib/fstrcmp.c (fstrcmp_bounded): Renamed from fstrcmp. Add
22933         lower_bound argument.
22934         Return quickly if the result is certainly < lower_bound.
22935         * tests/test-fstrcmp.c (check_fstrcmp): Test also fstrcmp_bounded.
22936
22937 2008-09-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
22938
22939         * lib/diffseq.h (EARLY_ABORT): New macro.
22940         (compareseq): Change return type to bool. Return true when EARLY_ABORT
22941         evaluates to true.
22942
22943 2008-09-14  Bruno Haible  <bruno@clisp.org>
22944
22945         * modules/perror-tests: New file.
22946         * tests/test-perror.sh: New file.
22947         * tests/test-perror.c: New file.
22948
22949         New module 'perror'.
22950         * lib/stdio.in.h (perror): New declaration.
22951         * lib/perror.c: New file.
22952         * m4/perror.m4: New file.
22953         * modules/perror: New file.
22954         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add perror.
22955         * doc/posix-functions/perror.texi: Mention the perror module.
22956         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize GNULIB_PERROR,
22957         REPLACE_PERROR.
22958         * modules/stdio (Makefile.am): Substitute GNULIB_PERROR,
22959         REPLACE_PERROR.
22960
22961 2008-09-14  Bruno Haible  <bruno@clisp.org>
22962
22963         * modules/stdio (Makefile.am): Reorder to match the order in
22964         lib/stdio.in.h.
22965         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
22966
22967 2008-09-13  Bruno Haible  <bruno@clisp.org>
22968
22969         * lib/sys_socket.in.h (EINPROGRESS, ...): Remove definitions.
22970
22971 2008-09-13  Bruno Haible  <bruno@clisp.org>
22972
22973         Extend strerror to cover the added errno values.
22974         * lib/strerror.c: Include errno.h and winsock2.h if it exists.
22975         (rpl_strerror): Provide error messages for the added errno values and
22976         for the WSA* values.
22977         * m4/strerror.m4 (gl_FUNC_STRERROR): Test REPLACE_STRERROR.
22978         (gl_FUNC_STRERROR_SEPARATE): If errno.h is replaced, always replace
22979         strerror.
22980         (gl_PREREQ_STRERROR): Test whether winsock2.h exists.
22981         * modules/strerror (Depends-on): Add errno.
22982         * doc/posix-functions/strerror.texi: Document the change.
22983         * tests/test-strerror.c (main): Check also the string for ETIMEDOUT
22984         and EOVERFLOW.
22985
22986 2008-09-13  Bruno Haible  <bruno@clisp.org>
22987
22988         * modules/EOVERFLOW: Remove file.
22989         * m4/eoverflow.m4: Remove file.
22990         * modules/EOVERFLOW-tests: Remove file.
22991         * tests/test-EOVERFLOW.c: Remove file.
22992         * modules/fprintf-posix (Depends-on): Replace EOVERFLOW with errno.
22993         * modules/ftell (Depends-on): Likewise.
22994         * modules/getdelim (Depends-on): Likewise.
22995         * modules/getugroups (Depends-on): Likewise.
22996         * modules/poll (Depends-on): Likewise.
22997         * modules/snprintf (Depends-on): Likewise.
22998         * modules/sprintf-posix (Depends-on): Likewise.
22999         * modules/vasnprintf (Depends-on): Likewise.
23000         * modules/vasprintf (Depends-on): Likewise.
23001         * modules/vfprintf-posix (Depends-on): Likewise.
23002         * modules/vsnprintf (Depends-on): Likewise.
23003         * modules/vsprintf-posix (Depends-on): Likewise.
23004         * modules/xvasprintf (Depends-on): Likewise.
23005         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
23006         * modules/unistdio/u8-vasprintf (Depends-on): Likewise.
23007         * modules/unistdio/u8-vsnprintf (Depends-on): Likewise.
23008         * modules/unistdio/u8-vsprintf (Depends-on): Likewise.
23009         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
23010         * modules/unistdio/u8-u8-vasprintf (Depends-on): Likewise.
23011         * modules/unistdio/u8-u8-vsnprintf (Depends-on): Likewise.
23012         * modules/unistdio/u8-u8-vsprintf (Depends-on): Likewise.
23013         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
23014         * modules/unistdio/u16-u16-vasprintf (Depends-on): Likewise.
23015         * modules/unistdio/u16-u16-vsnprintf (Depends-on): Likewise.
23016         * modules/unistdio/u16-u16-vsprintf (Depends-on): Likewise.
23017         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
23018         * modules/unistdio/u16-vasprintf (Depends-on): Likewise.
23019         * modules/unistdio/u16-vsnprintf (Depends-on): Likewise.
23020         * modules/unistdio/u16-vsprintf (Depends-on): Likewise.
23021         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
23022         * modules/unistdio/u32-vasprintf (Depends-on): Likewise.
23023         * modules/unistdio/u32-vsnprintf (Depends-on): Likewise.
23024         * modules/unistdio/u32-vsprintf (Depends-on): Likewise.
23025         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
23026         * modules/unistdio/u32-u32-vasprintf (Depends-on): Likewise.
23027         * modules/unistdio/u32-u32-vsnprintf (Depends-on): Likewise.
23028         * modules/unistdio/u32-u32-vsprintf (Depends-on): Likewise.
23029         * modules/unistdio/ulc-fprintf (Depends-on): Likewise.
23030         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
23031         * modules/unistdio/ulc-vasprintf (Depends-on): Likewise.
23032         * modules/unistdio/ulc-vfprintf (Depends-on): Likewise.
23033         * modules/unistdio/ulc-vsnprintf (Depends-on): Likewise.
23034         * modules/unistdio/ulc-vsprintf (Depends-on): Likewise.
23035         * MODULES.html.sh: Remove EOVERFLOW.
23036         * NEWS: Mention the change.
23037
23038 2008-09-13  Bruno Haible  <bruno@clisp.org>
23039
23040         * modules/errno-tests: New file.
23041         * tests/test-errno.c: New file, incorporating tests/test-EOVERFLOW.c.
23042
23043         * lib/errno.in.h: New file.
23044         * m4/errno_h.m4: New file, borrowing from m4/eoverflow.m4.
23045         * modules/errno: New file.
23046         * doc/posix-headers/errno.texi: Update documentation.
23047         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add errno.
23048
23049 2008-09-13  Bruno Haible  <bruno@clisp.org>
23050
23051         * tests/test-poll.c: Use #if for native Windows, rather than testing
23052         __MSVCRT__.
23053
23054 2008-09-13  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
23055             Bruno Haible  <bruno@clisp.org>
23056
23057         * lib/glob.c: Don't include <pwd.h> on native Windows.
23058         (WINDOWS32): New macro.
23059         (glob) [WINDOW32]: Provide a reasonable replacement for getenv("HOME").
23060
23061 2008-09-13  Bruno Haible  <bruno@clisp.org>
23062
23063         * lib/glthread/cond.h [USE_SOLARIS_THREADS]
23064         (ETIMEDOUT): Remove macro.
23065         (glthread_cond_timedwait_multithreaded): New declaration.
23066         (glthread_cond_timedwait): Use it.
23067         * lib/glthread/cond.c [USE_SOLARIS_THREADS]
23068         (glthread_cond_timedwait_multithreaded): New function.
23069
23070 2008-09-12  Paolo Bonzini  <bonzini@gnu.org>
23071
23072         * modules/poll-tests: Do not check for io.h.
23073         * tests/test-poll.c: Check for __MSVCRT__ instead.
23074
23075 2008-09-12  Paolo Bonzini  <bonzini@gnu.org>
23076
23077         * lib/sys_socket.in.h (EINPROGRESS): Define for Winsock case.
23078         * modules/poll-tests: Add inet_pton, stdbool, sockets.
23079         * tests/test-poll.c: Use them.  Use _pipe on Windows.
23080
23081 2008-09-12  Paolo Bonzini  <bonzini@gnu.org>
23082
23083         * modules/poll-tests: New.
23084         * tests/test-poll.c: New.
23085
23086 2008-09-12  Eric Blake  <ebb9@byu.net>
23087
23088         frexp: test for NetBSD failure on -0.0
23089         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Enhance test, since some, but
23090         not all, bugs from NetBSD 3.0 have been fixed.
23091         * doc/posix-functions/frexp.texi (frexp): Document bug.
23092         Reported by Thomas Klausner.
23093
23094         signbit: work around bug of HP-UX 10.20 cc with -0.0 literal
23095         * m4/signbit.m4 (gl_SIGNBIT_TEST_PROGRAM): Rewrite test to avoid
23096         literal -0.0.
23097         Reported by Jonathan C. Patschke <jp@centtech.com>.
23098
23099 2008-09-11  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
23100
23101         * lib/glthread/cond.h: Use dummy implementation also if
23102         USE_WIN32_THREADS.
23103
23104 2008-09-11  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
23105
23106         * modules/fnmatch-posix (License): Change to LGPLv2+.
23107         * modules/fnmatch-gnu (License): Likewise.
23108
23109 2008-09-11  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
23110
23111         * lib/poll.c (poll): Fix polling unconnected server sockets on WIN32.
23112
23113 2008-09-11  Jim Meyering  <meyering@redhat.com>
23114
23115         * users.txt: Add gtk-vnc.
23116
23117 2008-09-08  Simon Josefsson  <simon@josefsson.org>
23118
23119         * tests/test-bitrotate.c: Test 8/16-bit rotates with 0 and maximum
23120         rotate amounts.
23121
23122         * lib/bitrotate.h: Doc fix, mention that N can be wider than minimally
23123         required for 16-bit and 8-bit rotates.
23124         * lib/bitrotate.h (rotl64, rotr64, rotl32, rotl32, rotl16, rotr16,
23125         rotl8, rotr8): Use UINT64_MAX, UINT32_MAX, UINT16_MAX, and
23126         UINT8_MAX instead of hard-coded constants.
23127         Suggested by Paul Eggert.
23128
23129 2008-09-07  Bruno Haible  <bruno@clisp.org>
23130
23131         * tests/test-striconveh.c (main): Check behaviour when converting from
23132         UTF-7.
23133
23134         Make striconveh work better with stateful encodings.
23135         * lib/striconveh.c (iconv_carefully, iconv_carefully_1): Don't assume
23136         that iconv does not increment the inptr when returning -1/EINVAL.
23137
23138 2008-09-07  Bruno Haible  <bruno@clisp.org>
23139
23140         * build-aux/config.rpath: Update according to libtool-2.2.6.
23141         * build-aux/config.libpath: Likewise.
23142
23143 2008-09-06  Bruno Haible  <bruno@clisp.org>
23144
23145         * lib/freadahead.c (freadahead): Add conditional for SLOW_BUT_NO_HACKS.
23146         * lib/freadptr.c (freadptr): Likewise.
23147         * lib/freadseek.c (freadptrinc): Likewise.
23148         Reported by Simon Josefsson.
23149
23150 2008-09-06  Bruno Haible  <bruno@clisp.org>
23151
23152         * modules/freadptr (License): Change to LGPLv2+.
23153         * modules/freadseek (License): Likewise.
23154         Suggested by Eric Blake.
23155
23156         * modules/memchr2 (License): Change to LGPLv2+.
23157         Approved by Eric Blake.
23158
23159 2008-09-04  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23160             Bruno Haible  <bruno@clisp.org>
23161
23162         Make gnulib-tool work with native 'sed' on AIX.
23163         * gnulib-tool (sed_noop): New variable.
23164         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am, func_import,
23165         func_add_or_update, func_create_testdir): Use it to initialize sed
23166         script variables.
23167         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
23168
23169 2008-09-04  Albert Chin  <bug-gnulib@mlists.thewrittenword.com>
23170             Bruno Haible  <bruno@clisp.org>
23171
23172         * m4/include_next.m4 (gl_INCLUDE_NEXT): Add check whether #include_next
23173         also works after #include directives.
23174
23175 2008-09-04  Ondřej Vašík  <ovasik@redhat.com>
23176
23177         getdate.y: reject an out-of-range timezone value
23178         * lib/getdate.y (time_zone_hhmm): Reject any TZ offset that is outside
23179         the range [-24...+24].  When specified with only one or two digits,
23180         * tests/test-getdate.c: Tests for the fix.
23181         * doc/getdate.texi: Document this change.
23182
23183 2008-09-03  Bruno Haible  <bruno@clisp.org>
23184
23185         * doc/glibc-functions/strverscmp.texi: Mention the strverscmp module.
23186
23187 2008-09-02  Simon Josefsson  <simon@josefsson.org>
23188
23189         * lib/bitrotate.h (rotl64, rotr64): Add.  Suggested by Bruce Korb
23190         <bruce.korb@gmail.com> with ideas from Ben Pfaff
23191         <blp@cs.stanford.edu>, Bruno Haible <bruno@clisp.org> and Eric
23192         Blake <ebb9@byu.net>.
23193
23194         * tests/test-bitrotate.c: Add more test vectors.
23195
23196 2008-09-02  Eric Blake  <ebb9@byu.net>
23197
23198         vasnprintf-posix: handle large precision via %.*d
23199         * lib/vasnprintf.c (VASNPRINTF): Don't pass precision to snprintf
23200         when handling it ourselves.
23201         * tests/test-vasnprintf-posix.c (test_function): Add test.
23202         * tests/test-snprintf-posix.h (test_function): Likewise.
23203         * tests/test-sprintf-posix.h (test_function): Likewise.
23204         * tests/test-vasprintf-posix.c (test_function): Likewise.
23205         Reported by Alain Guibert.
23206
23207 2008-09-01  Eric Blake  <ebb9@byu.net>
23208
23209         c-stack: make configure-time check more robust
23210         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Check for
23211         successful sigaction call.
23212         Reported by Tom G. Christensen.
23213
23214 2008-09-01  Bruno Haible  <bruno@clisp.org>
23215
23216         New module 'findprog-lgpl'.
23217         * modules/findprog-lgpl: New file.
23218         * lib/findprog-lgpl.c: New file.
23219         * lib/findprog.c: Compile nothing in findprog.c if findprog-lgpl.c is
23220         also compiled. Consider the possibly defined symbol IN_FINDPROG_LGPL
23221         to decide whether to use strdup or xstrdup, concatenated_filename or
23222         xconcatenated_filename.
23223
23224 2008-09-01  Bruno Haible  <bruno@clisp.org>
23225
23226         Split module 'concat-filename' into 'concat-filename' (LGPL) and
23227         'xconcat-filename' (GPL).
23228         * modules/concat-filename (Depends-on): Add malloc-posix, remove xalloc.
23229         (License): Change to LGPLv2+.
23230         * modules/xconcat-filename: New file.
23231         * lib/concat-filename.h (concatenated_filename): Change specification.
23232         (xconcatenated_filename): New declaration.
23233         * lib/concat-filename.c: Include errno.h, stdlib.h, not xalloc.h.
23234         (concatenated_filename): Use malloc instead of xalloc. Handle out-of-
23235         memory situations.
23236         * lib/xconcat-filename.c: New file.
23237         * NEWS: Mention the change.
23238         * lib/findprog.c: Include concat-filename.h, not filename.h.
23239         (find_in_path): Use xconcatenated_filename instead of
23240         concatenated_filename.
23241         * lib/javacomp.c: Include concat-filename.h, not filename.h.
23242         (is_envjavac_gcj43_usable, is_envjavac_oldgcj_14_14_usable,
23243         is_envjavac_oldgcj_14_13_usable, is_envjavac_nongcj_usable,
23244         is_gcj_present, is_gcj43_usable, is_oldgcj_14_14_usable,
23245         is_oldgcj_14_13_usable, is_javac_usable): Use xconcatenated_filename
23246         instead of concatenated_filename.
23247         * lib/javaexec.c: Include concat-filename.h, not filename.h.
23248         (execute_java_class): Use xconcatenated_filename instead of
23249         concatenated_filename.
23250         * modules/findprog (Depends-on): Add xconcat-filename, remove filename.
23251         * modules/javacomp (Depends-on): Likewise.
23252         * modules/javaexec (Depends-on): Likewise.
23253
23254 2008-09-01  Bruno Haible  <bruno@clisp.org>
23255
23256         Split module 'filename' into 'filename' and 'concat-filename'.
23257         * modules/filename: Keep only lib/filename.h.
23258         (License): Change to LGPLv2+.
23259         * modules/concat-filename: New file, extracted from modules/filename.
23260         * lib/filename.h (concatenated_filename): Remove declaration.
23261         * lib/concat-filename.h: New file, extracted from lib/filename.h.
23262         * lib/concat-filename.c: Include concat-filename.h.
23263         * NEWS: Mention the change.
23264
23265 2008-09-01  Simon Josefsson  <simon@josefsson.org>
23266
23267         * lib/bitrotate.h (rotl8, rotr8): Add.
23268
23269         * modules/bitrotate (configure.ac): Need
23270         AC_REQUIRE([AC_C_INLINE]).
23271         (Description): Mention stdint.h.  Reported by Bruno Haible
23272         <bruno@clisp.org>.
23273
23274         * lib/bitrotate.h (rotr16, rotl16): Fix mask value.  Reported by
23275         Paolo Bonzini <bonzini@gnu.org>.
23276
23277 2008-08-31  Bruno Haible  <bruno@clisp.org>
23278
23279         Assume Solaris specific bi-arch conventions on Solaris systems.
23280         * m4/lib-prefix.m4 (AC_LIB_PREPARE_MULTILIB): On Solaris in 64-bit
23281         mode, set acl_libdirstem to lib/64. Also set acl_libdirstem2.
23282         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): If acl_libdirstem does not
23283         work, try acl_libdirstem2 as fallback. Otherwise treat acl_libdirstem2
23284         like acl_libdirstem.
23285         (AC_LIB_LINKFLAGS_FROM_LIBS): Treat acl_libdirstem2 like
23286         acl_libdirstem.
23287         * NEWS: Mention the change.
23288         Reported by Ben Taylor <bentaylor.solx86@gmail.com>.
23289
23290 2008-08-31  Jim Meyering  <meyering@redhat.com>
23291
23292         * lib/strftime.h: Add comments describing the two added arguments.
23293
23294         remove duplicate #include directives
23295         * lib/chdir-long.c [TEST_CHDIR]: Remove duplicate #include <stdio.h>.
23296         * lib/putenv.c: Remove duplicate #include <stdlib.h>.
23297
23298 2008-08-31  Bruno Haible  <bruno@clisp.org>
23299
23300         New module 'sigpipe-die'.
23301         * modules/sigpipe-die: New file.
23302         * lib/sigpipe-die.h: New file.
23303         * lib/sigpipe-die.c: New file.
23304         * MODULES.html.sh (Signal handling): Add sigpipe-die.
23305
23306 2008-08-31  Bruno Haible  <bruno@clisp.org>
23307
23308         Don't override previously installed signal handlers.
23309         * lib/fatal-signal.c (saved_sigactions): New variable.
23310         (uninstall_handlers): Reset the signal to the saved handler, not
23311         to SIG_DFL (except when ignored).
23312         (install_handlers): Save the previous handlers.
23313
23314 2008-08-30  Bruno Haible  <bruno@clisp.org>
23315
23316         * gnulib-tool (func_reset_sigpipe): New function.
23317         (func_get_automake_snippet, func_modules_transitive_closure,
23318         func_import): Invoke it before a join command that reads from stdin,
23319         to avoid "echo: write error: Broken pipe" error messages on stderr.
23320         Reported by Sam Steingold <sds@gnu.org>.
23321
23322 2008-08-30  Bruno Haible  <bruno@clisp.org>
23323
23324         * m4/fopen.m4 (gl_FUNC_FOPEN): Test against bug with trailing slash.
23325         Code copied from m4/open.m4.
23326         * lib/fopen.c (rpl_fopen): Return NULL if the mode specifies write
23327         access and the filename ends in a slash. Code copied from lib/open.c.
23328         * doc/posix-functions/fopen.texi: Document bug with trailing slash.
23329         * tests/test-fopen.c (main): Check against bug with trailing slash.
23330
23331 2008-08-29  Bruno Haible  <bruno@clisp.org>
23332
23333         Avoid some "gcc -pedantic" warnings.
23334         * m4/include_next.m4 (gl_INCLUDE_NEXT): Set also PRAGMA_SYSTEM_HEADER.
23335         * lib/arpa_inet.in.h: Use PRAGMA_SYSTEM_HEADER.
23336         * lib/dirent.in.h: Likewise.
23337         * lib/fcntl.in.h: Likewise.
23338         * lib/float.in.h: Likewise.
23339         * lib/iconv.in.h: Likewise.
23340         * lib/inttypes.in.h: Likewise.
23341         * lib/locale.in.h: Likewise.
23342         * lib/math.in.h: Likewise.
23343         * lib/netinet_in.in.h: Likewise.
23344         * lib/search.in.h: Likewise.
23345         * lib/signal.in.h: Likewise.
23346         * lib/stdarg.in.h: Likewise.
23347         * lib/stdint.in.h: Likewise.
23348         * lib/stdio.in.h: Likewise.
23349         * lib/stdlib.in.h: Likewise.
23350         * lib/string.in.h: Likewise.
23351         * lib/strings.in.h: Likewise.
23352         * lib/sys_select.in.h: Likewise.
23353         * lib/sys_socket.in.h: Likewise.
23354         * lib/sys_stat.in.h: Likewise.
23355         * lib/sys_time.in.h: Likewise.
23356         * lib/sysexits.in.h: Likewise.
23357         * lib/time.in.h: Likewise.
23358         * lib/unistd.in.h: Likewise.
23359         * lib/wchar.in.h: Likewise.
23360         * lib/wctype.in.h: Likewise.
23361         * modules/arpa_inet (Makefile.am): Also substitute PRAGMA_SYSTEM_HEADER.
23362         * modules/fchdir (Makefile.am): Likewise.
23363         * modules/fcntl (Makefile.am): Likewise.
23364         * modules/float (Makefile.am): Likewise.
23365         * modules/iconv_open (Makefile.am): Likewise.
23366         * modules/inttypes (Makefile.am): Likewise.
23367         * modules/locale (Makefile.am): Likewise.
23368         * modules/math (Makefile.am): Likewise.
23369         * modules/netinet_in (Makefile.am): Likewise.
23370         * modules/search (Makefile.am): Likewise.
23371         * modules/signal (Makefile.am): Likewise.
23372         * modules/stdarg (Makefile.am): Likewise.
23373         * modules/stdint (Makefile.am): Likewise.
23374         * modules/stdio (Makefile.am): Likewise.
23375         * modules/stdlib (Makefile.am): Likewise.
23376         * modules/string (Makefile.am): Likewise.
23377         * modules/strings (Makefile.am): Likewise.
23378         * modules/sys_select (Makefile.am): Likewise.
23379         * modules/sys_socket (Makefile.am): Likewise.
23380         * modules/sys_stat (Makefile.am): Likewise.
23381         * modules/sys_time (Makefile.am): Likewise.
23382         * modules/sysexits (Makefile.am): Likewise.
23383         * modules/time (Makefile.am): Likewise.
23384         * modules/unistd (Makefile.am): Likewise.
23385         * modules/wchar (Makefile.am): Likewise.
23386         * modules/wctype (Makefile.am): Likewise.
23387         Reported by Reuben Thomas <rrt@sc3d.org>.
23388
23389 2008-08-29  Bruno Haible  <bruno@clisp.org>
23390
23391         * m4/include_next.m4 (gl_INCLUDE_NEXT): Don't define HAVE_INCLUDE_NEXT
23392         any more.
23393
23394 2008-08-29  Simon Josefsson  <simon@josefsson.org>
23395
23396         * MODULES.html.sh (Misc): Add bitrotate.
23397
23398         * modules/bitrotate: New file.
23399
23400         * lib/bitrotate.h: New file.
23401
23402         * modules/bitrotate-tests: New file.
23403
23404         * tests/test-bitrotate.c: New file.
23405
23406         * modules/crypto/gc-arctwo, modules/crypto/arctwo: Add dependency
23407         on the bitrotate module.
23408
23409         * lib/arctwo.c: Use new bitrotate module.
23410
23411 2008-08-29  Jim Meyering  <meyering@redhat.com>
23412
23413         bootstrap: merge changes from coreutils
23414         * build-aux/bootstrap (cp_mark_as_generated): Preserve perms
23415         of copied files.  Remove a kludge, now that this is fixed.
23416         * build-aux/bootstrap: Fix unportable expr usage. (by Ralf Wildenhues)
23417         * build-aux/bootstrap: Remove $bt and $bt2 also when not using gettext.
23418         * build-aux/bootstrap: Remove coreutils-specific SUBDIRS-related code.
23419
23420 2008-08-29  Bruno Haible  <bruno@clisp.org>
23421
23422         * MODULES.html.sh: Remove --cvs-urls option.
23423
23424 2008-08-28  Jose E. Marchesi  <jemarch@gnu.org>  (tiny change)
23425
23426         maint.mk: adjust to file name change
23427         * top/maint.mk: s/Makefile.cfg/cfg.mk/.
23428
23429 2008-08-28  Jim Meyering  <meyering@redhat.com>
23430
23431         * modules/getndelim2 (License): Relicense to LGPLv2+.
23432         Approved by Richard Stallman for the version of 1995, and by
23433         Paul Eggert, Bruno Haible, Eric Blake for their contributions.
23434
23435 2008-08-27  Paolo Bonzini  <bonzini@gnu.org>
23436
23437         * lib/getdelim.c (flockfile, funlockfile): Make all of them
23438         dummy if one is not available.  Do not touch them if
23439         USE_UNLOCKED_IO, instead letting unlocked-io.h do that.
23440         (getc_maybe_unlocked): New.
23441         * m4/getdelim.m4 (gl_PREREQ_GETDELIM): Check for getc_unlocked.
23442
23443 2008-08-26  Eric Blake  <ebb9@byu.net>
23444
23445         doc/INSTALL: resync from autoconf
23446         * doc/Makefile (INSTALL, INSTALL.ISO, INSTALL.UTF-8): Simplify.
23447         (INSTALL_PRELUDE): Delete; this is done more efficiently by
23448         moving...
23449         * install.texi [!autoconf]: ...here.  Resync from autoconf.
23450         * INSTALL: Regenerate.
23451         * INSTALL.ISO: New file.
23452         * INSTALL.UTF-8: Likewise.
23453
23454 2008-08-26  Jim Meyering  <meyering@redhat.com>
23455
23456         GNUmakefile: cfg.mk definitions override default autoreconf-rerun policy
23457         * top/GNUmakefile (_is-dist-target, _is-install-target): Make
23458         these definitions conditional, so that they may be overridden, too.
23459
23460 2008-08-26  Bruno Haible  <bruno@clisp.org>
23461
23462         Generate INSTALL file variants with prettier quotes.
23463         * doc/Makefile (INSTALL_PRELUDE): New macro.
23464         (INSTALL): Use it.
23465         (INSTALL.ISO, INSTALL.UTF-8): New rules.
23466
23467 2008-08-26  Bruno Haible  <bruno@clisp.org>
23468
23469         Run makeinfo in an English locale.
23470         * doc/Makefile (MAKEINFO): New variable.
23471
23472 2008-08-26  Bruno Haible  <bruno@clisp.org>
23473
23474         * doc/Makefile (INSTALL): Use --no-validate instead of --no-warn.
23475         Suggested by Eric Blake.
23476
23477 2008-08-25  Bruno Haible  <bruno@clisp.org>
23478
23479         * doc/Makefile (INSTALL): Generate with @firstparagraphindent set.
23480
23481 2008-08-25  Eric Blake  <ebb9@byu.net>
23482
23483         c-stack: test that stack overflow can be caught
23484         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Also check
23485         that platform allows handling stack overflow; at least OS/2 EMX
23486         has sigaltstack, but crashes before transferring control to
23487         handler on stack overflow.
23488         * lib/c-stack.c [HAVE_SIGALTSTACK]: Adjust conditions to also
23489         check for HAVE_STACK_OVERFLOW_HANDLING.
23490         Reported by Elbert Pol.
23491
23492 2008-08-25  Bruno Haible  <bruno@clisp.org>
23493
23494         * doc/posix-functions/strftime.texi: Fix description of strftime
23495         module.
23496
23497 2008-08-24  Bruno Haible  <bruno@clisp.org>
23498
23499         * tests/uniwidth/test-uc_width2.c: New file.
23500         * tests/uniwidth/test-uc_width2.sh: New file.
23501         * modules/uniwidth/width-tests (Files): Add the new files.
23502         (TESTS): Add uniwidth/test-uc_width2.sh.
23503         (TESTS_ENVIRONMENT): New variable.
23504         (check_PROGRAMS): Add test-uc_width2.
23505         (test_uc_width2_SOURCES): New variable.
23506
23507         Fix uc_width(0x00AB) bug, introduced on 2007-07-08.
23508         * lib/uniwidth/width.c (nonspacing_table_data): Set bit for 0x00AD,
23509         not 0x00AB.
23510         Reported by Alexander V. Lukyanov <lav@netis.ru>.
23511
23512 2008-08-22  Eric Blake  <ebb9@byu.net>
23513
23514         test-lock, test-tls: mention why a test is skipped
23515         * tests/test-lock.c (main) [!USE_*_THREADS]: Print why test is
23516         skipped.
23517         * tests/test-tls.c (main) [!USE_*_THREADS]: Likewise.
23518
23519         count-one-bits: relax license
23520         * modules/count-one-bits (License): Relicense to LGPLv2+.
23521         Suggested by Ludovic Courtès, approved by Ben Pfaff.
23522
23523 2008-08-22  Andreas Schwab  <schwab@suse.de>
23524
23525         * m4/obstack-printf-posix.m4 (gl_FUNC_OBSTACK_PRINTF_POSIX):
23526         Remove spurious space in assignment.
23527
23528 2008-08-21  Simon Josefsson  <simon@josefsson.org>
23529
23530         * m4/autobuild.m4: Use TZ=UTC0 instead of TZ=UTC.  Reported by
23531         Paul Eggert <eggert@CS.UCLA.EDU>.
23532
23533 2008-08-20  Paolo Bonzini  <bonzini@gnu.org>
23534
23535         * modules/gettext: Add m4/threadlib.m4.
23536
23537 2008-08-19  Eric Blake  <ebb9@byu.net>
23538
23539         test-c-stack: fix compilation failure on FreeBSD 5.0
23540         * tests/test-c-stack.c [HAVE_SETRLIMIT]: Include prerequisite
23541         headers before <sys/resource.h>.
23542         * doc/posix-headers/sys_resource.texi (sys/resource.h): Document
23543         the bug.
23544         Reported by Nelson H. F. Beebe.
23545
23546         strverscmp: migrate from "strverscmp.h" to <string.h>
23547         * modules/string (Makefile.am): Add new hooks.
23548         * modules/strverscmp (Files): Remove strverscmp.h.
23549         (Depends-on): Add string.
23550         (configure.ac): Add indicator.
23551         (Include): Mention new header.
23552         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Provide new
23553         defaults.
23554         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP): Inform string module of
23555         results.
23556         * lib/strverscmp.h: Delete.
23557         * lib/string.in.h (strverscmp): Provide declaration, when needed.
23558         * tests/test-strverscmp.c (includes): Adjust client.
23559         * lib/check-version.c (includes): Likewise.
23560         * NEWS: Document the change.
23561
23562         strverscmp: add unit test
23563         * modules/strverscmp-tests: New file.
23564         * tests/test-strverscmp.c: Likewise.
23565
23566 2008-08-19  Simon Josefsson  <simon@josefsson.org>
23567
23568         * lib/gc-gnulib.c: Indentation cleanup.  Add some comments
23569         regarding Windows crypto stuff, from Mono.
23570
23571 2008-08-19  Adam Strzelecki <ono@java.pl>  (tiny change)
23572
23573         * lib/gc-gnulib.c: Use CRYPT_VERIFY_CONTEXT.  Try to use Intel CSP
23574         if present, for intel RND.  Return error on failures.
23575
23576 2008-08-18  Ben Pfaff  <blp@gnu.org>
23577
23578         gitlog-to-changelog: give better diagnostic for failed pipe-open
23579         * build-aux/gitlog-to-changelog: Improve error message: suggest
23580         that the version of Git may be too old.
23581
23582 2008-08-18  Simon Josefsson  <simon@josefsson.org>
23583
23584         * m4/autobuild.m4: Use TZ=UTC to avoid time zone complexity.  Use
23585         ISO 8601 format.  Suggested by Greg Troxel <gdt@ir.bbn.com>.
23586
23587 2008-08-18  Bruno Haible  <bruno@clisp.org>
23588
23589         * lib/glthread/thread.h [USE_SOLARIS_THREADS]: Use thread_in_use(), not
23590         pthread_in_use().
23591
23592 2008-08-18  Bruno Haible  <bruno@clisp.org>
23593
23594         * lib/glthread/threadlib.c: Include <pthread.h>.
23595
23596 2008-08-18  Bruno Haible  <bruno@clisp.org>
23597
23598         * lib/glthread/lock.h [USE_SOLARIS_THREADS]: Fix
23599         glthread_recursive_lock_* macros.
23600         * lib/glthread/lock.c (glthread_recursive_lock_destroy_multithreaded):
23601         Fix syntax error.
23602
23603 2008-08-18  Bruno Haible  <bruno@clisp.org>
23604
23605         * lib/glthread/thread.c: Avoid forcing a context switch right after
23606         thread creation.
23607
23608 2008-08-17  Bruno Haible  <bruno@clisp.org>
23609
23610         * lib/glthread/thread.c: New file, based on code from tests/test-lock.c.
23611         * lib/glthread/thread.h: Provide Win32 specific implementation.
23612         * modules/thread (Files): Add lib/glthread/thread.c.
23613         (Depends-on): Add lock.
23614         (Makefile.am): Add glthread/thread.c to lib_SOURCES.
23615
23616 2008-08-17  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
23617
23618         New module 'yield'.
23619         * modules/yield: New file.
23620         * lib/glthread/yield.h: New file.
23621         * m4/yield.m4: New file.
23622         * MODULES.html.sh (Multithreading): Add yield.
23623
23624 2008-08-17  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
23625
23626         New module 'thread'.
23627         * modules/thread: New file.
23628         * lib/glthread/thread.h: New file.
23629         * m4/thread.m4: New file.
23630         * MODULES.html.sh (Multithreading): Add thread.
23631
23632 2008-08-17  Bruno Haible  <bruno@clisp.org>
23633
23634         * lib/glthread/lock.h: Include <stdlib.h> always.
23635         * lib/glthread/tls.h: Likewise.
23636         * lib/glthread/cond.h: Likewise.
23637
23638 2008-08-17  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
23639
23640         New module 'cond'.
23641         * modules/cond: New file.
23642         * lib/glthread/cond.h: New file.
23643         * lib/glthread/cond.c: New file.
23644         * m4/cond.m4: New file.
23645         * MODULES.html.sh (Multithreading): Add cond.
23646
23647 2008-08-16  Eric Blake  <ebb9@byu.net>
23648
23649         c-stack: fix regression on Irix 5.3 from 2008-06-21
23650         * m4/c-stack.m4 (gl_PREREQ_C_STACK): Move check for
23651         sa_sigaction...
23652         * m4/sigaction.m4 (gl_PREREQ_SIG_HANDLER_H): ...here.
23653         (gl_PREREQ_SIGACTION): Depend on sig-handler.h prereq's.
23654         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Set the default.
23655         * modules/signal (Makefile.am): Use the value.
23656         * lib/signal.in.h (sa_sigaction) [HAVE_SIGACTION
23657         && !HAVE_STRUCT_SIGACTION_SA_SIGACTION]: Define.
23658         * doc/posix-headers/signal.texi (signal.h): Document this
23659         portability issue.
23660         * doc/posix-functions/sigaction.texi (sigaction): Likewise.
23661         Reported by Tom G. Christensen.
23662
23663 2008-08-17  Bruno Haible  <bruno@clisp.org>
23664
23665         New module 'threadlib'.
23666         * modules/threadlib: New file.
23667         * lib/glthread/threadlib.c: New file, extracted from
23668         lib/glthread/lock.c.
23669         * lib/glthread/lock.c (dummy_thread_func, glthread_in_use): Remove
23670         functions.
23671         * m4/threadlib.m4: New file, from m4/lock.m4, renaming gl_LOCK to
23672         gl_THREADLIB and gl_LOCK_EARLY to gl_THREADLIB_EARLY.
23673         * m4/lock.m4 (gl_LOCK_EARLY, gl_LOCK_EARLY_BODY, gl_LOCK_BODY): Remove
23674         macros.
23675         (gl_LOCK): Just require gl_THREADLIB and perform checks for lock.h.
23676         (gl_DISABLE_THREADS): Remove macro.
23677         * modules/lock (Files): Remove build-aux/config.rpath.
23678         (Depends-on): Remove havelib. Add threadlib.
23679         (configure.ac-early): Remove section.
23680         * m4/tls.m4 (gl_TLS): Require gl_THREADLIB instead of gl_LOCK.
23681         * modules/tls (Depends-on): Remove lock. Add threadlib.
23682         (Link): New section, copied from threadlib.
23683         * MODULES.html.sh (Multithreading): Add threadlib.
23684
23685 2008-08-14  Bruno Haible  <bruno@clisp.org>
23686
23687         * lib/glthread/lock.h (glthread_lock_lock, glthread_lock_unlock,
23688         glthread_lock_destroy, glthread_rwlock_rdlock, glthread_rwlock_wrlock,
23689         glthread_rwlock_unlock, glthread_rwlock_destroy,
23690         glthread_recursive_lock_lock, glthread_recursive_lock_unlock,
23691         glthread_recursive_lock_destroy): Define as macros always.
23692         * lib/glthread/lock.c (glthread_lock_lock_func): Renamed from
23693         glthread_lock_lock.
23694         (glthread_lock_unlock_func): Renamed from glthread_lock_unlock.
23695         (glthread_lock_destroy_func): Renamed from glthread_lock_destroy.
23696         (glthread_rwlock_rdlock_func): Renamed from glthread_rwlock_rdlock.
23697         (glthread_rwlock_wrlock_func): Renamed from glthread_rwlock_wrlock.
23698         (glthread_rwlock_unlock_func): Renamed from glthread_rwlock_unlock.
23699         (glthread_rwlock_destroy_func): Renamed from glthread_rwlock_destroy.
23700         (glthread_recursive_lock_lock_func): Renamed from
23701         glthread_recursive_lock_lock.
23702         (glthread_recursive_lock_unlock_func): Renamed from
23703         glthread_recursive_lock_unlock.
23704         (glthread_recursive_lock_destroy_func): Renamed from
23705         glthread_recursive_lock_destroy.
23706
23707 2008-08-14  Bruno Haible  <bruno@clisp.org>
23708
23709         * lib/glthread/lock.h: Renamed from lib/lock.h.
23710         * lib/glthread/lock.c: Renamed from lib/lock.c. Update includes.
23711         * lib/glthread/tls.h: Renamed from lib/tls.h.
23712         * lib/glthread/tls.c: Renamed from lib/tls.c. Update includes.
23713         * lib/fstrcmp.c: Update includes.
23714         * lib/strsignal.c: Update includes.
23715         * modules/lock (Files, Makefile.am): Update.
23716         (Include): Change to "glthread/lock.h".
23717         * modules/tls (Files, Makefile.am): Update.
23718         (Include): Change to "glthread/tls.h".
23719         * tests/test-lock.c: Update includes.
23720         * tests/test-tls.c: Update includes.
23721         * NEWS: Mention the renamed header files.
23722
23723 2008-08-11  Jim Meyering  <meyering@redhat.com>
23724
23725         * lib/fts_.h: Fix grammar (insert a missing "is") in a comment.
23726
23727 2008-08-11  Eric Blake  <ebb9@byu.net>
23728
23729         test-c-stack: avoid C99-ism
23730         * tests/test-c-stack.c (main): Fix whitespace, move declaration
23731         before statement.
23732         Reported by Alain Guibert.
23733
23734 2008-08-10  Jim Meyering  <meyering@redhat.com>
23735
23736         ensure that return value of uinttostr et al are not ignored
23737         * lib/inttostr.h (__GNUC_PREREQ): Define.
23738         (__attribute_warn_unused_result__): Define.
23739         (offtostr, imaxtostr, umaxtostr, uinttostr): Apply the attribute.
23740
23741 2008-08-07  Paolo Bonzini  <bonzini@gnu.org>
23742
23743         * lib/lock.c (glthread_recursive_lock_init_multithreaded)
23744         [!PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: Fix typo.
23745
23746 2008-08-07  Jim Meyering  <meyering@redhat.com>
23747
23748         * m4/inet_pton.m4: Fix typo in comment: s/inet_ntop/inet_pton/.
23749
23750         * modules/mkstemp (License): Relicense under LGPLv2+.
23751         * modules/tempname (License): Likewise.
23752
23753 2008-08-06  Bruno Haible  <bruno@clisp.org>
23754
23755         * lib/poll.c (poll): Further micro-optimization.
23756
23757 2008-08-06  Jim Meyering  <meyering@redhat.com>
23758
23759         inet_pton.c: use locale-independent tolower
23760         * lib/inet_pton.c: Include <c-ctype.h> rather than <ctype.h>.
23761         (inet_pton6): Use c_tolower rather than tolower.
23762         * modules/inet_pton (Depends-on): Add c-ctype.
23763
23764 2008-08-06  Paolo Bonzini  <bonzini@gnu.org>
23765
23766         * lib/poll.c (poll): Avoid division when timeout is 0, cache
23767         _SC_OPEN_MAX, avoid repeated access to errno.  Check for nfd < 0.
23768
23769 2008-08-06  Jim Meyering  <meyering@redhat.com>
23770
23771         * modules/inet_pton (License): Relicense under LGPLv2+.
23772
23773 2008-08-03  Bruno Haible  <bruno@clisp.org>
23774
23775         Additional non-aborting API for lock and tls.
23776         * lib/lock.h: Include <errno.h>.
23777         (glthread_lock_init): New macro/function.
23778         (gl_lock_init): Define as wrapper around glthread_lock_init.
23779         (glthread_lock_lock): New macro/function.
23780         (gl_lock_lock): Define as wrapper around glthread_lock_lock.
23781         (glthread_lock_unlock): New macro/function.
23782         (gl_lock_unlock): Define as wrapper around glthread_lock_unlock.
23783         (glthread_lock_destroy): New macro/function.
23784         (gl_lock_destroy): Define as wrapper around glthread_lock_destroy.
23785         (glthread_rwlock_init): New macro/function.
23786         (gl_rwlock_init): Define as wrapper around glthread_rwlock_init.
23787         (glthread_rwlock_rdlock): New macro/function.
23788         (gl_rwlock_rdlock): Define as wrapper around glthread_rwlock_rdlock.
23789         (glthread_rwlock_wrlock): New macro/function.
23790         (gl_rwlock_wrlock): Define as wrapper around glthread_rwlock_wrlock.
23791         (glthread_rwlock_unlock): New macro/function.
23792         (gl_rwlock_unlock): Define as wrapper around glthread_rwlock_unlock.
23793         (glthread_rwlock_destroy): New macro/function.
23794         (gl_rwlock_destroy): Define as wrapper around glthread_rwlock_destroy.
23795         (glthread_recursive_lock_init): New macro/function.
23796         (gl_recursive_lock_init): Define as wrapper around
23797         glthread_recursive_lock_init.
23798         (glthread_recursive_lock_lock): New macro/function.
23799         (gl_recursive_lock_lock): Define as wrapper around
23800         glthread_recursive_lock_lock.
23801         (glthread_recursive_lock_unlock): New macro/function.
23802         (gl_recursive_lock_unlock): Define as wrapper around
23803         glthread_recursive_lock_unlock.
23804         (glthread_recursive_lock_destroy): New macro/function.
23805         (gl_recursive_lock_destroy): Define as wrapper around
23806         glthread_recursive_lock_destroy.
23807         (glthread_once): New macro/function.
23808         (gl_once): Define as wrapper around glthread_once.
23809         Update function declarations.
23810         * lib/lock.c (glthread_rwlock_init_multithreaded): Renamed from
23811         glthread_rwlock_init. Return error code.
23812         (glthread_rwlock_rdlock_multithreaded): Renamed from
23813         glthread_rwlock_rdlock. Return error code.
23814         (glthread_rwlock_wrlock_multithreaded): Renamed from
23815         glthread_rwlock_wrlock. Return error code.
23816         (glthread_rwlock_unlock_multithreaded): Renamed from
23817         glthread_rwlock_unlock. Return error code.
23818         (glthread_rwlock_destroy_multithreaded): Renamed from
23819         glthread_rwlock_destroy. Return error code.
23820         (glthread_recursive_lock_init_multithreaded): Renamed from
23821         glthread_recursive_lock_init. Return error code.
23822         (glthread_recursive_lock_lock_multithreaded): Renamed from
23823         glthread_recursive_lock_lock. Return error code.
23824         (glthread_recursive_lock_unlock_multithreaded): Renamed from
23825         glthread_recursive_lock_unlock. Return error code.
23826         (glthread_recursive_lock_destroy_multithreaded): Renamed from
23827         glthread_recursive_lock_destroy. Return error code.
23828         (glthread_once_call): Make static.
23829         (glthread_once_multithreaded): Renamed from glthread_once.
23830         * lib/tls.h: Include <errno.h>.
23831         (glthread_tls_key_init): New macro/function.
23832         (gl_tls_key_init): Define as wrapper around glthread_tls_key_init.
23833         (glthread_tls_set): New macro/function.
23834         (gl_tls_set): Define as wrapper around glthread_tls_set.
23835         (glthread_tls_key_destroy): New macro/function.
23836         (gl_tls_key_destroy): Define as wrapper around glthread_tls_key_destroy.
23837         Update function declarations.
23838         * lib/tls.c (glthread_tls_get_multithreaded): Renamed from
23839         glthread_tls_get.
23840         Suggested by Yoann Vandoorselaere <yoann@prelude-ids.org>.
23841
23842 2008-08-04  Eric Blake  <ebb9@byu.net>
23843
23844         gnumakefile: use space, not TAB, outside of targets
23845         * top/GNUmakefile (_dummy): Fix whitespace error in prior edit.
23846
23847 2008-08-02  Jim Meyering  <meyering@redhat.com>
23848
23849         getdate.y: avoid locale-dependent date parsing failure
23850         In Turkish locales, getdate would fail to recognize keywords
23851         containing a lowercase "i".  The solution is not to rely on
23852         locale-sensitive case-conversion.
23853         * lib/getdate.y: Include <c-ctype.h> rather than <ctype.h>.
23854         (lookup_word): Use c_toupper in place of toupper.
23855         (yylex, get_date): Use c_ prefixed variants of isspace and isalpha, too.
23856         Reported by Vefa Bicakci <bicave@superonline.com> in
23857         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/14184>.
23858         * modules/getdate (Depends-on): Add c-ctype.
23859
23860 2008-08-02  Bruno Haible  <bruno@clisp.org>
23861
23862         * gnulib-tool (func_import): When updating or creating a .gitignore
23863         file, prepend each added line with a slash, and ignore leading slashes
23864         from the existing lines.
23865         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
23866
23867 2008-08-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
23868
23869         Portability fix for GNU make 3.79.1.
23870         * top/GNUmakefile: Avoid 'else COND', which older GNU make
23871         versions do not understand.
23872
23873 2008-08-01  Bruno Haible  <bruno@clisp.org>
23874
23875         Work around bug of HP-UX 10.20 cc with -0.0 literal.
23876         * tests/test-isnanf.h (zero): New variable.
23877         (main): Avoid literal -0.0f.
23878         * tests/test-isnand.h (zero): New variable.
23879         (main): Avoid literal -0.0.
23880         * tests/test-isnanl.h (zero): New variable.
23881         (main): Avoid literal -0.0L.
23882         * tests/test-isnan.c (zerof, zerod, zerol): New variables.
23883         (test_float, test_double, test_long_double): Avoid literals -0.0f,
23884         -0.0, -0.0L.
23885         * tests/test-signbit.c (test_signbitf): Avoid literal -0.0f.
23886         (test_signbitd): Avoid literal -0.0.
23887         (test_signbitl): Avoid literal -0.0L.
23888         * tests/test-ceilf1.c (zero): New variable.
23889         (main): Avoid literal -0.0f.
23890         * tests/test-ceill.c (zero): New variable.
23891         (main): Avoid literal -0.0L.
23892         * tests/test-floorf1.c (zero): New variable.
23893         (main): Avoid literal -0.0f.
23894         * tests/test-floorl.c (zero): New variable.
23895         (main): Avoid literal -0.0L.
23896         * tests/test-roundf1.c (zero): New variable.
23897         (main): Avoid literal -0.0f.
23898         * tests/test-round1.c (zero): New variable.
23899         (main): Avoid literal -0.0.
23900         * tests/test-roundl.c (zero): New variable.
23901         (main): Avoid literal -0.0L.
23902         * tests/test-truncf1.c (zero): New variable.
23903         (main): Avoid literal -0.0f.
23904         * tests/test-trunc1.c (zero): New variable.
23905         (main): Avoid literal -0.0.
23906         * tests/test-truncl.c (zero): New variable.
23907         (main): Avoid literal -0.0L.
23908         * tests/test-frexp.c (zero): New variable.
23909         (main): Avoid literal -0.0.
23910         * tests/test-frexpl.c (zero): New variable.
23911         (main): Avoid literal -0.0L.
23912         * tests/test-ldexpl.c (zero): New variable.
23913         (main): Avoid literal -0.0L.
23914         * tests/test-snprintf-posix.h (have_minus_zero): Avoid literal -0.0.
23915         (zerod, zerol): New variables.
23916         (test_function): Avoid literals -0.0, -0.0L.
23917         * tests/test-sprintf-posix.h (have_minus_zero): Avoid literal -0.0.
23918         (zerod, zerol): New variables.
23919         (test_function): Avoid literals -0.0, -0.0L.
23920         * tests/test-vasnprintf-posix.c (have_minus_zero): Avoid literal -0.0.
23921         (zerod, zerol): New variables.
23922         (test_function): Avoid literals -0.0, -0.0L.
23923         * tests/test-vasprintf-posix.c (have_minus_zero): Avoid literal -0.0.
23924         (zerod, zerol): New variables.
23925         (test_function): Avoid literals -0.0, -0.0L.
23926         * tests/test-strtod.c (zero): New variable.
23927         (main): Avoid literal -0.0.
23928         Reported by Jonathan C. Patschke <jp@centtech.com>.
23929
23930 2008-07-31  Jim Meyering  <meyering@redhat.com>
23931
23932         sha256.h: correct definition of SHA224_DIGEST_SIZE
23933         * lib/sha256.h (SHA224_DIGEST_SIZE): Define to 28, not 24.
23934         Reported by Paulie Pena IV <paulie4@gmail.com>.
23935         Define as 224 / 8, rather than as a literal.
23936         (SHA256_DIGEST_SIZE): Define as 256/8 rather than equivalent literal.
23937         * lib/sha512.h (SHA384_DIGEST_SIZE): Likewise, define as equiv: 384/8.
23938         (SHA512_DIGEST_SIZE): Likewise, define as equivalent quotient: 512/8.
23939
23940 2008-07-31  Bruno Haible  <bruno@clisp.org>
23941
23942         * lib/regex_internal.h (BITSET_WORD_BITS): Make first conditional work
23943         on HP-UX 10.20 with "cc -Ae". Fix second conditional.
23944         Reported by Jonathan Patschke <jp@centtech.com>.
23945
23946 2008-07-31  Bruno Haible  <bruno@clisp.org>
23947
23948         * gnulib-tool (func_import): Make change from 2008-06-23 more robust.
23949         Reported by Paolo Bonzini <bonzini@gnu.org>.
23950
23951 2008-07-30  Eric Blake  <ebb9@byu.net>
23952
23953         test-strtod: allow compilation without -lm
23954         * tests/test-strtod.c (main): Avoid link dependence on fabs.
23955         Reported by Dennis Clarke <blastwave@gmail.com>.
23956
23957 2008-07-28  Jim Meyering  <meyering@redhat.com>
23958
23959         bootstrap: work also when there are no .po files in po/
23960         * build-aux/bootstrap (update_po_files): Complete the change
23961         that I began in bc960df8c789c878f1c1c54a28a3c2648dead8d9.
23962
23963 2008-07-27  Jim Meyering  <meyering@redhat.com>
23964
23965         * users.txt: Add zile.
23966
23967 2008-07-26  Ben Pfaff  <blp@gnu.org>
23968
23969         Add missing dependencies on new m4/exponent[fdl].m4 files.
23970         * modules/isnanf-nolibm: Add m4/exponentf.m4.
23971         * modules/isnand-nolibm: Add m4/exponentd.m4.
23972         * modules/isnanl-nolibm: Add m4/exponentl.m4.
23973         * modules/signbit-tests: Use m4/exponent[fdl].m4 instead of
23974         m4/isnan[fdl].m4, because the macros actually used moved.
23975         Reported by Jim Meyering.
23976
23977 2008-07-14  Ben Pfaff  <blp@gnu.org>
23978
23979         Add isinf module.
23980         * lib/isinf.c: New file.
23981         * lib/math.in.h: Define isinf macro if we have decided to replace
23982         it.
23983         * m4/isinf.m4: New file.
23984         * m4/math_h.m4: Initialize and substitute variables for isinf
23985         module.
23986         * modules/isinf: New file.
23987         * modules/isinf-tests: New file.
23988         * modules/math: Add substitutions for new module.
23989         * tests/test-isinf.c: New file.
23990         * doc/posix-functions/isinf.texi: Mention new module.
23991         * MODULES.html.sh: Mention new module.
23992
23993 2008-07-14  Ben Pfaff  <blp@gnu.org>
23994
23995         Factor out some macros for use by additional modules.
23996         * m4/isnanf.m4 (gl_FLOAT_EXPONENT_LOCATION): Move into new file
23997         exponentf.m4.
23998         * m4/isnand.m4 (gl_DOUBLE_EXPONENT_LOCATION): Move into new file
23999         exponentd.m4.
24000         * m4/isnanl.m4 (gl_LONG_DOUBLE_EXPONENT_LOCATION): Move into new
24001         file exponentl.m4.
24002         * m4/exponentf.m4: New file.
24003         * m4/exponentd.m4: New file.
24004         * m4/exponentl.m4: New file.
24005         * modules/isnanf: Use new file m4/exponentf.m4.
24006         * modules/isnand: Use new file m4/exponentd.m4.
24007         * modules/isnanl: Use new file m4/exponentl.m4.
24008
24009 2008-07-23  Ulrich Drepper  <drepper@redhat.com>
24010
24011         mktime.c: normalize tp->tm_isdst value to -1/0/1.
24012         * lib/mktime.c (__mktime_internal): Normalize tp->tm_isdst value.
24013         Reported by Michael Ringe <Michael.Ringe@gmx.de> in
24014         <http://sourceware.org/bugzilla/show_bug.cgi?id=6723>.
24015
24016         * lib/canonicalize-lgpl.c (__realpath): Avoid buffer overflow after
24017         readlink on platforms without PATH_MAX.
24018
24019 2008-07-21  Eric Blake  <ebb9@byu.net>
24020
24021         Warn, not fail, on stale version.
24022         * top/GNUmakefile (_curr-ver): Tone down previous patch.
24023
24024         Don't allow installation with stale devel version number.
24025         * top/GNUmakefile (_is-install-target): New macro.
24026         (_curr-ver): Forbid installation with stale version number.
24027
24028 2008-07-20  Bruno Haible  <bruno@clisp.org>
24029
24030         * modules/c-stack-tests (Makefile.am): Add LIBSIGSEGV to
24031         TESTS_ENVIRONMENT.
24032         * tests/test-c-stack2.sh: React differently if LIBSIGSEGV is in use.
24033
24034 2008-07-20  Bruno Haible  <bruno@clisp.org>
24035
24036         * lib/c-stack.h (c_stack_action): Add documentation.
24037         * lib/c-stack.c (c_stack_action): Remove incomplete documentation.
24038
24039 2008-07-20  Bruno Haible  <bruno@clisp.org>
24040
24041         * modules/canonicalize-lgpl (License): Relicense under LGPLv2+.
24042         * modules/readlink (License): Likewise.
24043
24044 2008-07-17  Eric Blake  <ebb9@byu.net>
24045
24046         * modules/c-stack (Link): Fix typo.
24047
24048         Make c-stack use libsigsegv, when available.
24049         * modules/c-stack (Depends-on): Add libsigsegv.
24050         * modules/c-stack-tests (Makefile.am): Link with libsigsegv, if
24051         needed.
24052         * lib/c-stack.c (SIGSTKSZ): Define fallback.
24053         (segv_handler, overflow_handler, c_stack_action)
24054         [HAVE_LIBSIGSEGV && !HAVE_XSI_STACK_OVERFLOW_HEURISTIC]: Add new
24055         implementation when libsigsegv is available, but only when using
24056         the library is necessary.
24057         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Add
24058         comment, explaining why XSI check fails on Linux.
24059         (gl_PREREQ_C_STACK): Supply LIBCSTACK, LTLIBCSTACK.
24060         * tests/test-c-stack2.sh: Tweak skip message.
24061         * NEWS: Document new link-time requirements.
24062
24063 2008-07-16  Eric Blake  <ebb9@byu.net>
24064
24065         c-stack: Expose false positives when not using libsigsegv.
24066         * modules/c-stack-tests (Files): Expand test.
24067         * tests/test-c-stack.c (main): Add means to conditionally trigger
24068         non-overflow SIGSEGV.
24069         * tests/test-c-stack2.sh: New file.
24070
24071 2008-07-14  Bruno Haible  <bruno@clisp.org>
24072
24073         * m4/libsigsegv.m4: Remove unneeded AC_PREREQ.
24074         Reported by Eric Blake.
24075
24076 2008-07-14  Sam Steingold  <sds@gnu.org>
24077             Bruno Haible  <bruno@clisp.org>
24078
24079         New module libsigsegv.
24080         * modules/libsigsegv: New file.
24081         * m4/libsigsegv.m4: New file, from GNU clisp sigsegv.m4 with
24082         modifications.
24083         * MODULES.html.sh (Signal handling): New section.
24084
24085 2008-07-14  Bruno Haible  <bruno@clisp.org>
24086
24087         * modules/unictype/ctype-* (Description): Add the word "function".
24088         Improves the resulting doc in MODULES.html.
24089
24090 2008-07-12  Ben Pfaff  <blp@gnu.org>
24091
24092         Add longlong module.
24093         * modules/longlong: New file.
24094
24095 2008-07-12  Bruno Haible  <bruno@clisp.org>
24096
24097         * m4/isnan.m4 (gl_ISNAN): When the replacement is used, set ISNAN_LIBM
24098         to empty.
24099
24100 2008-07-10  Ben Pfaff  <blp@gnu.org>
24101
24102         Add isnan module.
24103         * doc/posix-functions/isnan.texi: Mention new module.
24104         * lib/math.in.h: Define isnan macro if we have decided to replace
24105         it.
24106         * m4/isnan.m4: New file.
24107         * m4/isnanl.m4 (gl_FUNC_ISNANL): Factor out some code into new
24108         macro gl_BUILD_ISNANL so that isnan.m4 can use that functionality
24109         also.
24110         (gl_FUNC_ISNANL_NO_LIBM): Factor out same code, to reduce
24111         redundancy.
24112         * m4/math_h.m4: Initialize and substitute variables for isnan
24113         module.
24114         * modules/isnan: New file.
24115         * modules/isnan-tests: New file.
24116         * modules/math: Add substitutions for new module.
24117         * tests/test-isnan.c: New file.
24118         * MODULES.html.sh: Mention new module.
24119
24120 2008-07-10  Ben Pfaff  <blp@gnu.org>
24121
24122         Add isnanf module.
24123         * lib/isnanf.m4: New file.
24124         * m4/isnanf.m4 (gl_FUNC_ISNANF): New macro.
24125         (gl_HAVE_ISNANF_IN_LIBM): New macro.
24126         (gl_BUILD_ISNANF): New macro used by gl_FUNC_ISNANF,
24127         gl_FUNC_ISNANF_NO_LIBM, and gl_FUNC_ISNAN.
24128         * modules/isnanf: New file.
24129         * modules/isnanf-tests: New file.
24130         * modules/isnanf-nolibm-tests: Add tests/test-isnanf.h to list of
24131         files.
24132         * tests/test-isnanf-nolibm.c: factored most of its contents into
24133         new file tests/test-isnanf.h.
24134         * tests/test-isnanf.h: New file.
24135         * tests/test-isnanf.c: New file.
24136         * MODULES.html.sh: Mention new module.
24137         * doc/glibc-functions/isnanf.texi: Mention new module.
24138
24139 2008-07-10  Ben Pfaff  <blp@gnu.org>
24140
24141         Add isnand module.
24142         * lib/isnand.h: New file.
24143         * m4/isnand.m4 (gl_FUNC_ISNAND): New macro.
24144         (gl_FUNC_ISNAND_NO_LIBM): Split partially into new macro
24145         gl_HAVE_ISNAND_NO_LIBM so that gl_FUNC_ISNAND can use that
24146         functionality also.
24147         (gl_BUILD_ISNAND): New macro used by gl_FUNC_ISNAND,
24148         gl_FUNC_ISNAND_NO_LIBM, and gl_FUNC_ISNAN.
24149         (gl_HAVE_ISNAND_IN_LIBM): New macro.
24150         * modules/isnand: New file.
24151         * modules/isnand-tests: New file.
24152         * modules/isnand-nolibm-tests: Add tests/test-isnand.h to list of
24153         files.
24154         * tests/test-isnand-nolibm.c: factored most of its contents into
24155         new file tests/test-isnand.h.
24156         * tests/test-isnand.h: New file.
24157         * tests/test-isnand.c: New file.
24158         * MODULES.html.sh: Mention new module.
24159
24160 2008-07-10  Ben Pfaff  <blp@gnu.org>
24161
24162         * lib/isnanf.h: Rename lib/isnanf-nolibm.h.
24163         * lib/isnand.h: Rename lib/isnand-nolibm.h.
24164         * tests/test-isnanf.c: Rename tests/test-isnanf-nolibm.c.
24165         * tests/test-isnand.c: Rename tests/test-isnand-nolibm.c.
24166         * modules/isnanf-nolibm: Update references to renamed files.
24167         * modules/isnand-nolibm: Likewise.
24168         * modules/isnanf-nolibm-tests: Likewise.
24169         * modules/isnand-nolibm-tests: Likewise.
24170         * lib/frexp.c: Likewise.
24171         * lib/isfinite.c: Likewise.
24172         * lib/signbitd.c: Likewise.
24173         * lib/signbitf.c: Likewise.
24174         * lib/vasnprintf.c: Likewise.
24175         * tests/test-ceilf1.c: Likewise.
24176         * tests/test-ceilf2.c: Likewise.
24177         * tests/test-floorf1.c: Likewise.
24178         * tests/test-floorf2.c: Likewise.
24179         * tests/test-frexp.c: Likewise.
24180         * tests/test-round1.c: Likewise.
24181         * tests/test-round2.c: Likewise.
24182         * tests/test-roundf1.c: Likewise.
24183         * tests/test-strtod.c: Likewise.
24184         * tests/test-trunc1.c: Likewise.
24185         * tests/test-trunc2.c: Likewise.
24186         * tests/test-truncf1.c: Likewise.
24187         * tests/test-truncf2.c: Likewise.
24188         * NEWS: Mention the renamed header files.
24189
24190 2008-07-11  Jim Meyering  <meyering@redhat.com>
24191
24192         vc-list-files: make the last-resort awk code more portable
24193         * build-aux/vc-list-files: Don't rely on awk's "sub" command.
24194         /bin/awk from OpenSolaris 11's SUNWesu version 2008.03.22.10.56
24195         does not support it.
24196
24197 2008-07-10  Eric Blake  <ebb9@byu.net>
24198
24199         Work with tar's bootstrap.
24200         * gnulib-tool (func_emit_initmacro_end): Use m4_defn in the case
24201         where LIBSOURCES_DIR contains .#bootmp but must not be treated as
24202         an m4 comment.
24203
24204 2008-07-09  Jim Meyering  <meyering@redhat.com>
24205
24206         posix-shell.m4: fix typo that made this test malfunction
24207         * m4/posix-shell.m4: Remove capitalization in variable name.
24208
24209 2008-07-08  Bruno Haible  <bruno@clisp.org>
24210
24211         * m4/onceonly.m4: Update comments.
24212         Reported by Ben Pfaff <blp@cs.stanford.edu>.
24213
24214 2008-07-04  Jim Meyering  <meyering@redhat.com>
24215
24216         * users.txt: Add vc-dwim.
24217         (bison, coreutils): Use the gitweb URL.
24218
24219 2008-07-03  Jim Meyering  <meyering@redhat.com>
24220
24221         * users.txt: Add libffcall.  From Sam Steingold.
24222
24223 2008-07-03  Ondřej Vašík  <ovasik@redhat.com>
24224
24225         getdate.y: do not ignore TZ with relative day, month or year offset
24226         * lib/getdate.y (get_date): Move the tz-handling block to follow the
24227         relative-date-handling, since otherwise, the latter would clobber the
24228         sole output (an updated Start value) of the tz-handling block.
24229         * tests/test-getdate.c: Tests for the fix
24230
24231 2008-07-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
24232
24233         Recognize 'foo_LIBRARIES += libgnu.a'.
24234         * gnulib-tool (func_emit_lib_Makefile_am): Recognize if a
24235         makefile snippet has already specified an installation location,
24236         also using '+='.
24237
24238 2008-07-02  Ondřej Vašík  <ovasik@redhat.com>
24239
24240         getdate.y: factor out common actions
24241         * lib/getdate.y (apply_relative_time, set_hhmmss): New functions.
24242         Use them in place of open-coded actions.
24243
24244 2008-07-01  Simon Josefsson  <simon@josefsson.org>
24245
24246         Add self-test for getdate module.
24247         * modules/getdate-tests: New file.
24248         * tests/test-getdate.c: New file.
24249
24250 2008-06-29  Bruno Haible  <bruno@clisp.org>
24251
24252         * gnulib-tool (func_import): Put gnulib-comp.m4 into .cvsignore or
24253         .gitignore.
24254         Reported by Sylvain Beucler <beuc@beuc.net>.
24255
24256 2008-06-29  Bruno Haible  <bruno@clisp.org>
24257
24258         * doc/gnulib-tool.texi (VCS Issues): Mention --no-vc-files option.
24259         * m4/gnulib-tool.m4: Update to match current gnulib-tool.
24260
24261 2008-06-29  Bruno Haible  <bruno@clisp.org>
24262
24263         * gnulib-tool (func_import): Recommend to put gnulib-cache.m4 into
24264         EXTRA_DIST.
24265         Reported by Sylvain Beucler <beuc@beuc.net>.
24266
24267 2008-06-26  Jim Meyering  <meyering@redhat.com>
24268
24269         make several modules depend on the "open" module
24270         This provides slightly increased consistency when opening-for-write
24271         the name of a non-directory spelled with a trailing slash.
24272         * modules/chdir-safer: Likewise.
24273         * modules/chown: Likewise.
24274         * modules/clean-temp: Likewise.
24275         * modules/copy-file: Likewise.
24276         * modules/fchdir: Likewise.
24277         * modules/fcntl-safer: Likewise.
24278         * modules/pipe: Likewise.
24279         * modules/utime: Likewise.
24280         Prompted by Eric Blake and Bruno Haible.
24281
24282 2008-06-24  Andreas Schwab  <schwab@suse.de>
24283
24284         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): Don't test whether compound
24285         literals can be used as initializers for global variables.
24286
24287 2008-06-23  Eric Blake  <ebb9@byu.net>
24288
24289         Make gnulib-cache.m4 easier to diff.
24290         * gnulib-tool (func_import): Allow newlines when reading cached
24291         gl_MODULES, and generate newlines when creating gnulib-cache.m4.
24292
24293 2008-06-23  Bruno Haible  <bruno@clisp.org>
24294
24295         * m4/signalblocking.m4 (gl_PREREQ_SIG_HANDLER_H): Remove macro.
24296         (gl_PREREQ_SIGPROCMASK): Don't invoke it.
24297         * m4/sigaction.m4 (gl_PREREQ_SIG_HANDLER_H): New macro, moved here from
24298         m4/signalblocking.m4.
24299         (gl_PREREQ_SIGACTION): Don't invoke it.
24300         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Invoke
24301         gl_PREREQ_SIG_HANDLER_H.
24302         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Likewise.
24303         Don't check for sigaction here.
24304
24305 2008-06-23  Bruno Haible  <bruno@clisp.org>
24306
24307         * lib/fatal-signal.c (fatal_signal_handler): Update comment.
24308         (install_handlers): Don't set the SA_RESETHAND flag.
24309
24310 2008-06-23  Bruno Haible  <bruno@clisp.org>
24311
24312         * m4/sigaction.m4: Comment fixes.
24313         * lib/signal.in.h: Likewise.
24314
24315 2008-06-23  Eric Blake  <ebb9@byu.net>
24316
24317         Fix typo.
24318         * tests/test-sigaction.c (MASK_SA_FLAGS): Add missing operator.
24319
24320         Avoid SA_ namespace.
24321         * tests/test-sigaction.c (MASK_SA_FLAGS): Rename from SA_MASK.
24322         Reported by Ralf Wildenhues.
24323
24324         Avoid test failure due to SA_RESTORER.
24325         * tests/test-sigaction.c (SA_MASK): New macro.
24326         (main): Avoid failing due to extension flags being set.
24327         Reported by Jim Meyering.
24328
24329         Revert use of sig-handler.h in sigprocmask.c.
24330         * modules/sigprocmask (Files): Don't rely on sig-handler.h, since
24331         it requires the existence of struct sigaction.
24332         * lib/sigprocmask.c (handler_t): Restore typedef.
24333         (rpl_signal, old_handlers): Use local type.
24334
24335 2008-06-22  Bruno Haible  <bruno@clisp.org>
24336
24337         * tests/test-stdint.c: Disable the INTMAX_MAX preprocessor test
24338         conditionally.
24339         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
24340
24341 2008-06-22  Bruno Haible  <bruno@clisp.org>
24342
24343         * doc/posix-functions/siginterrupt.texi: Move note.
24344
24345         * lib/signal.in.h (SA_RESTART): New macro.
24346         * lib/sigaction.c: Update comment.
24347
24348         * m4/sigaction.m4 (gl_SIGACTION): Require gl_SIGNAL_H_DEFAULTS.
24349
24350         * m4/signalblocking.m4 (gl_PREREQ_SIG_HANDLER_H): New macro.
24351         (gl_PREREQ_SIGPROCMASK): Invoke it.
24352         * m4/sigaction.m4 (gl_PREREQ_SIGACTION): Likewise.
24353
24354         * lib/nanosleep.c (rpl_nanosleep): Setup newact only when it is needed.
24355
24356         * lib/sigprocmask.c: Update a comment.
24357
24358 2008-06-21  Eric Blake  <ebb9@byu.net>
24359
24360         Use sigaction module rather than signal().
24361         * modules/c-stack (Depends-on): Add sigaction.
24362         * modules/fatal-signal (Depends-on): Likewise.
24363         * modules/nanosleep (Depends-on): Likewise.
24364         * modules/sigprocmask (Files): Add sig-handler.h.
24365         * modules/sigaction (Files): Likewise.
24366         * lib/sig-handler.h (get_handler): New file, suggested by Paul
24367         Eggert.
24368         * lib/c-stack.c (SIGACTION_WORKS): Simplify conditions.
24369         (c_stack_action) [!SIGACTION_WORKS]: Use sigaction, not signal.
24370         * lib/fatal-signal.c (uninstall_handlers, install_handlers)
24371         (init_fatal_signals): Likewise.
24372         * lib/nanosleep.c (rpl_nanosleep): Likewise.
24373         (siginterrupt): Delete fallback.
24374         * lib/sigprocmask.c (handler_t, old_handlers): Use sa_handler_t
24375         instead.
24376         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Drop check for
24377         siginterrupt.
24378
24379         New module sigaction, for mingw.
24380         * modules/sigaction: New module...
24381         * modules/sigaction-tests: ...and its test.
24382         * m4/sigaction.m4: New file.
24383         * lib/sigaction.c: Likewise.
24384         * tests/test-sigaction.c: Likewise.
24385         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Add sigaction variables.
24386         * modules/signal (Makefile.am): Likewise.
24387         * lib/signal.in.h (!@HAVE_SIGACTION@): Define replacements when
24388         needed.
24389         * doc/posix-headers/signal.texi (signal.h): Mention provided
24390         types.
24391         * doc/posix-functions/siginterrupt.texi (siginterrupt): Mention
24392         that sigaction is preferable.
24393         * doc/posix-functions/sigaction.texi (sigaction): Mention new
24394         module.
24395         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
24396         sigaction.
24397
24398         Improve robustness of sigprocmask by overriding signal.
24399         * lib/signal.in.h (rpl_signal): Override signal when sigprocmask
24400         is in use.
24401         * lib/sigprocmask.c (blocked_handler): Reinstall block handler.
24402         (SIGKILL, SIGSTOP): Provide fallbacks.
24403         (rpl_signal): Implement.
24404         (old_handlers, blocked_set): Mark volatile, since sigprocmask and
24405         signal can be called inside handlers.
24406
24407         Fix nanosleep module on mingw.
24408         * modules/nanosleep (Depends-on): Add sys_select.
24409         * lib/nanosleep.c (HAVE_SYS_SELECT_H): Rely on gnulib module.
24410
24411         Fix licensing of sigprocmask.
24412         * modules/raise (License): Relicense as LGPL.
24413
24414 2008-06-21  Bruno Haible  <bruno@clisp.org>
24415
24416         * lib/propername.c (proper_name_utf8): Don't use the transliterated
24417         result if it contains question marks.
24418         Reported by Michael Geng <linux@michaelgeng.de>.
24419
24420 2008-06-19  Bruno Haible  <bruno@clisp.org>
24421
24422         Fix CVS-ism.
24423         * doc/gnulib.texi: Include updated-stamp.texi.
24424         * doc/Makefile (GNULIB_TEXI_FILES): New variable.
24425         (updated-stamp.texi): New rule.
24426         (gnulib.info): Depend on it.
24427         * doc/.gitignore: Add updated-stamp.texi.
24428         Based on a patch by Thien-Thi Nguyen <ttn@gnuvola.org>.
24429
24430 2008-06-19  Bruno Haible  <bruno@clisp.org>
24431
24432         * doc/Makefile (gnulib.info): Update and simplify dependencies.
24433         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
24434
24435 2008-06-19  Eric Blake  <ebb9@byu.net>
24436
24437         Fix VPATH 'make dist' with GNU make and non-VCS tarball.
24438         * top/GNUmakefile (_curr-ver): Don't use $(srcdir) unnecessarily.
24439         Reported by Stepan Kasal.
24440
24441 2008-06-18  Bruno Haible  <bruno@clisp.org>
24442
24443         * lib/fatal-signal.c (init_fatal_signals): Add comment.
24444         Reported by Eric Blake.
24445
24446 2008-06-18  Eric Blake  <ebb9@byu.net>
24447
24448         Work around cygwin 1.5.25 strsignal bug.
24449         * tests/test-strsignal.c: Allow for const char *.
24450         * doc/glibc-functions/strsignal.texi (strsignal): Document the bug.
24451
24452 2008-06-18  Simon Josefsson  <simon@josefsson.org>
24453
24454         * users.txt: Update URL to article and add author/date
24455         information.
24456
24457 2008-06-17  Bruno Haible  <bruno@clisp.org>
24458
24459         New macro gl_DISABLE_THREADS.
24460         * m4/lock.m4 (gl_LOCK_EARLY_BODY): Use value gl_use_threads_default
24461         if the user did not pass --enable-threads or --disable-threads option.
24462         (gl_DISABLE_THREADS): New macro.
24463         Reported by Eric Blake <ebb9@byu.net>.
24464
24465 2008-06-17  Bruno Haible  <bruno@clisp.org>
24466
24467         * lib/tls.h (gl_tls_key_init): Evaluate the destructor argument also
24468         when the macro ignores it.
24469         Based on a patch by Eric Blake <ebb9@byu.net>.
24470
24471 2008-06-17  Bruno Haible  <bruno@clisp.org>
24472
24473         * modules/tls (License): Change to LGPLv2+.
24474         Reported by Eric Blake.
24475
24476 2008-06-17  Eric Blake  <ebb9@byu.net>
24477
24478         Simplify c-stack prerequisites.
24479         * lib/c-stack.c (includes): Remove unused <sys/resource.h>.
24480         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Posix 200x
24481         no longer requires <ucontext.h> to exist.  Optimize setrlimit
24482         check.
24483         (gl_PREREQ_C_STACK): Remove check for unused getcontext and
24484         <sys/resource.h>.
24485
24486         Move c-stack test into testsuite.
24487         * modules/c-stack-tests: New file.
24488         * lib/c-stack.c [DEBUG]: Move test program...
24489         * tests/test-c-stack.c: ...into this new file.  Skip rather than
24490         fail test if sigaltstack is lacking.
24491         * tests/test-c-stack.sh: New driver file.
24492
24493 2008-06-16  Eric Blake  <ebb9@byu.net>
24494
24495         Use raise module consistently.
24496         * modules/fatal-signal (Depends-on): Add raise.
24497         * modules/sigprocmask (Depends-on): Likewise.
24498         * lib/fatal-signal.c (fatal_signal_handler): Rely on raise.
24499         * lib/sigprocmask.c (sigprocmask): Likewise.
24500         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Likewise.
24501         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Likewise.
24502
24503         Fix compliance bug in sigpending.
24504         * lib/sigprocmask.c (sigpending): Return pending array via
24505         parameter, not return value.
24506
24507 2008-06-14  Eric Blake  <ebb9@byu.net>
24508
24509         Improve obstack-printf test code.
24510         * tests/test-obstack-printf.c (test_function): Fix comment, and
24511         simplify usage of obstack_* in macros.  Add a test for coverage.
24512         Reported by Bruno Haible.
24513
24514 2008-06-14  Bruno Haible  <bruno@clisp.org>
24515
24516         * lib/obstack_printf.c (obstack_vprintf): Define the stack-allocated
24517         array size as a constant, not as a const variable.
24518         * m4/obstack-printf.m4 (gl_FUNC_OBSTACK_PRINTF): Require
24519         AC_USE_SYSTEM_EXTENSIONS.
24520         * m4/obstack-printf-posix.m4 (gl_FUNC_OBSTACK_PRINTF_POSIX): Likewise.
24521         Test whether the obstack_printf function actually exists.
24522         * modules/obstack-printf (Depends-on): Add extensions.
24523         (Include): Remove obstack.h.
24524         * modules/obstack-printf-posix (Depends-on): Add extensions.
24525         (Include): Remove obstack.h.
24526
24527 2008-06-13  Eric Blake  <ebb9@byu.net>
24528
24529         Add obstack-printf and obstack-printf-posix modules.
24530         * modules/obstack-printf: New file.
24531         * modules/obstack-printf-posix: Likewise.
24532         * MODULES.html.sh (Misc): Mention them.
24533         * doc/glibc-functions/obstack_printf.texi (obstack_printf):
24534         Likewise.
24535         * doc/glibc-functions/obstack_vprintf.texi (obstack_vprintf):
24536         Likewise.
24537         * modules/stdio (Makefile.am): Accomodate new modules.
24538         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
24539         * lib/stdio.in.h (rpl_obstack_printf, rpl_obstack_vprintf):
24540         Declare.
24541         * lib/obstack_printf.c (obstack_printf, obstack_vprintf): New
24542         functions.
24543         * m4/obstack-printf.m4 (gl_OBSTACK_PRINTF)
24544         (gl_REPLACE_OBSTACK_PRINTF): New macros
24545         * m4/obstack-printf-posix.m4 (gl_OBSTACK_PRINTF_POSIX): Likewise.
24546         * tests/test-obstack-printf.c: New file.
24547         * modules/obstack-printf-tests: Likewise.
24548         * modules/obstack-printf-posix-tests: Likewise.
24549
24550 2008-06-11  Bruno Haible  <bruno@clisp.org>
24551
24552         * m4/open.m4 (gl_FUNC_OPEN): Add test against trailing slash bug.
24553         * lib/open.c: Include errno.h.
24554         (open): Fail when attempting to write to a file that has a trailing
24555         slash.
24556         * tests/test-open.c (main): Test against trailing slash bug.
24557         * doc/posix-functions/open.texi: Mention the trailing slash bug.
24558
24559 2008-06-10  Bruno Haible  <bruno@clisp.org>
24560
24561         * tests/test-vc-list-files-git.sh: Make double use of 'exit'. Needed
24562         for $? to work inside the trap command, with various /bin/sh-s.
24563         * tests/test-vc-list-files-cvs.sh: Likewise.
24564
24565 2008-06-10  Bruno Haible  <bruno@clisp.org>
24566
24567         * lib/acl-internal.h: Don't include gettext.h here.
24568         * lib/set-mode-acl.c: Include gettext.h here.
24569         * lib/copy-acl.c: Likewise.
24570
24571 2008-06-10  Bruno Haible  <bruno@clisp.org>
24572
24573         * lib/wait-process.h (wait_subprocess): Add termsigp argument.
24574         * lib/wait-process.c (wait_subprocess): Likewise.
24575         * lib/execute.h (execute): Add termsigp argument.
24576         * lib/execute.c (execute): Likewise.
24577         * lib/csharpcomp.c (compile_csharp_using_pnet,
24578         compile_csharp_using_mono, compile_csharp_using_sscli): Update.
24579         * lib/csharpexec.c (execute_csharp_using_pnet,
24580         execute_csharp_using_mono, execute_csharp_using_sscli): Update.
24581         * lib/javacomp.c (compile_using_envjavac, compile_using_gcj,
24582         compile_using_javac, compile_using_jikes, is_envjavac_gcj,
24583         is_envjavac_gcj43, is_gcj_present, is_gcj_43, is_javac_present,
24584         is_jikes_present): Update.
24585         * lib/javaexec.c (execute_java_class): Update.
24586         * lib/javaversion.c (execute_and_read_line): Update.
24587         * NEWS: Document the changes.
24588         Reported by Eric Blake.
24589
24590 2008-06-10  Eric Blake  <ebb9@byu.net>
24591
24592         Add missing include.
24593         * tests/test-strstr.c (includes): Add <signal.h>.
24594         * tests/test-strcasestr.c (includes): Likewise.
24595         * tests/test-memmem.c (includes): Likewise.
24596
24597 2008-06-10  Bruno Haible  <bruno@clisp.org>
24598
24599         * lib/wait-process.c (wait_subprocess): Add an assertion.
24600
24601 2008-06-10  Bruno Haible  <bruno@clisp.org>
24602
24603         * lib/wait-process.c (wait_subprocess): Try to fix waitid() based code.
24604
24605 2008-06-10  Bruno Haible  <bruno@clisp.org>
24606
24607         * tests/test-memmem.c (main): Reset SIGALRM to default handling before
24608         using alarm().
24609         * tests/test-strcasestr.c (main): Likewise.
24610         * tests/test-strstr.c (main): Likewise.
24611
24612 2008-06-09  Bruno Haible  <bruno@clisp.org>
24613
24614         Work around the Solaris 10 ACE ACLs ABI change.
24615         * lib/acl-internal.h (acl_nontrivial, acl_ace_nontrivial): Don't
24616         declare if ACL_NO_TRIVIAL is present.
24617         (ACE_ACCESS_ALLOWED_ACE_TYPE, ACE_ACCESS_DENIED_ACE_TYPE,
24618         NEW_ACE_OWNER, NEW_ACE_GROUP, NEW_ACE_IDENTIFIER_GROUP, ACE_EVERYONE,
24619         NEW_ACE_READ_DATA, NEW_ACE_WRITE_DATA, NEW_ACE_EXECUTE): New macros.
24620         * lib/file-has-acl.c (acl_nontrivial, acl_ace_nontrivial): Don't
24621         define if ACL_NO_TRIVIAL is present.
24622         (acl_ace_nontrivial): Detect whether the old or new ABI is in use,
24623         and use the current ABI.
24624         (file_has_acl): Use same #if condition as elsewhere.
24625         * lib/set-mode-acl.c (qset_acl): Detect whether the old or new ABI is
24626         in use, and use the current ABI.
24627         * doc/acl-resources.txt: More doc about newer Solaris 10 versions.
24628         Reported by Jim Meyering.
24629
24630 2008-06-09  Eric Blake  <ebb9@byu.net>
24631
24632         Work around environments that (stupidly) ignore SIGALRM.
24633         * m4/strstr.m4 (gl_FUNC_STRSTR): Reset SIGALRM to default handling
24634         before using alarm().
24635         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
24636         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
24637         Reported by Ian Beckwith <ianb@erislabs.net>.
24638
24639         Produce autobuild blurb earlier in log.
24640         * modules/autobuild (configure.ac-early): Move AB_INIT here.
24641
24642 2008-06-09  Jim Meyering  <meyering@redhat.com>
24643         and Ondřej Vašík  <ovasik@redhat.com>
24644
24645         utimens.c: correct kernel bug work-around
24646         Ondřej Vašík found that the invalid return value of 280 indicates
24647         failure, not success, and the kernel bug we're trying to work
24648         around affects not just the utimensat call, but also the fallback
24649         futimens call.
24650         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT]: Simulate failure,
24651         not success.
24652         [HAVE_FUTIMENS]: Use the same work-around, here.
24653
24654 2008-06-09  Jim Meyering  <meyering@redhat.com>
24655
24656         add more guards around definition of ACE_-related code
24657         * lib/file-has-acl.c (acl_ace_nontrivial): Define only if
24658         ALLOW and ACE_OWNER are also defined.
24659
24660 2008-06-08  Bruno Haible  <bruno@clisp.org>
24661
24662         * lib/acl-internal.h: Add me as co-author.
24663         * lib/file-has-acl.c: Likewise.
24664         * lib/set-mode-acl.c: Likewise.
24665         * lib/copy-acl.c: Likewise.
24666
24667 2008-06-08  Bruno Haible  <bruno@clisp.org>
24668
24669         Add support for AIX ACLs.
24670         * lib/acl-internal.h (acl_nontrivial): New declaration.
24671         * lib/file-has-acl.c (acl_nontrivial): New function.
24672         (file_has_acl): Add implementation using AIX 4 ACL API.
24673         * lib/set-mode-acl.c (qset_acl): Likewise.
24674         * lib/copy-acl.c (qcopy_acl): Likewise.
24675
24676 2008-06-08  Bruno Haible  <bruno@clisp.org>
24677
24678         Add support for HP-UX ACLs.
24679         * lib/acl-internal.h (acl_nontrivial): New declaration.
24680         * lib/file-has-acl.c (acl_nontrivial): New function.
24681         (file_has_acl): Add implementation using HP-UX 11 ACL API.
24682         * lib/set-mode-acl.c (qset_acl): Likewise.
24683         * lib/copy-acl.c (qcopy_acl): Likewise.
24684
24685 2008-06-08  Bruno Haible  <bruno@clisp.org>
24686
24687         Add support for Cygwin ACLs.
24688         * lib/acl-internal.h (MODE_INSIDE_ACL): New macro for Solaris-like API.
24689         * lib/set-mode-acl.c (qset_acl) [!MODE_INSIDE_ACL]: Don't optimize away
24690         the chmod_or_fchmod call.
24691         * lib/copy-acl.c (qcopy_acl) [!MODE_INSIDE_ACL]: Likewise.
24692
24693 2008-06-08  Bruno Haible  <bruno@clisp.org>
24694
24695         Fix bug with setuid modes in Solaris 10+ code.
24696         * lib/set-mode-acl.c (qset_acl): Call chmod_or_fchmod when acl_set
24697         succeeded, when the mode contains some special bits.
24698
24699 2008-06-08  Bruno Haible  <bruno@clisp.org>
24700
24701         Add support for Solaris 7..10 ACLs.
24702         * lib/acl-internal.h (acl_nontrivial, acl_ace_nontrivial): New
24703         declarations.
24704         * lib/file-has-acl.c (acl_nontrivial, acl_ace_nontrivial): New
24705         functions.
24706         (file_has_acl): Add implementation using Solaris 7..10 ACL API.
24707         * lib/set-mode-acl.c (qset_acl): Likewise.
24708         * lib/copy-acl.c (qcopy_acl): Likewise.
24709
24710 2008-06-08  Bruno Haible  <bruno@clisp.org>
24711
24712         * lib/acl-internal.h (acl_extended_nontrivial) [MacOS X]: New
24713         declaration.
24714         * lib/file-has-acl.c (acl_extended_nontrivial) [MacOS X]: New function.
24715         (acl_access_nontrivial): Remove MacOS X case.
24716         (file_has_acl): Use acl_extended_nontrivial.
24717         * lib/copy-acl.c (qcopy_acl): Likewise.
24718
24719 2008-06-08  Bruno Haible  <bruno@clisp.org>
24720
24721         * lib/set-mode-acl.c (qset_acl): Trivial code simplifications.
24722
24723 2008-06-08  Jim Meyering  <meyering@redhat.com>
24724
24725         * modules/acl (Maintainer): Add Bruno Haible.
24726
24727 2008-06-07  Bruno Haible  <bruno@clisp.org>
24728
24729         Improve support for Tru64 ACLs.
24730         * lib/file-has-acl.c (file_has_acl): Don't test the ACL_TYPE_DEFAULT
24731         ACL on OSF/1.
24732
24733 2008-06-07  Bruno Haible  <bruno@clisp.org>
24734
24735         Add support for MacOS X ACLs.
24736         * lib/file-has-acl.c (file_has_acl): Use ACL_TYPE_EXTENDED instead of
24737         ACL_TYPE_ACCESS and ACL_TYPE_DEFAULT.
24738         * lib/set-mode-acl.c (qset_acl): Likewise.
24739         * lib/copy-acl.c (qcopy_acl): Likewise.
24740
24741 2008-06-07  Bruno Haible  <bruno@clisp.org>
24742
24743         Fix memory leak introduced on 2008-05-22.
24744         * lib/set-mode-acl.c (qset_acl) [!MODE_INSIDE_ACL]: Free ACLs after
24745         use.
24746
24747 2008-06-07  Bruno Haible  <bruno@clisp.org>
24748
24749         * lib/set-mode-acl.c (qset_acl): Use acl_init(), not acl_from_text(),
24750         to construct an empty ACL.
24751
24752 2008-06-07  Bruno Haible  <bruno@clisp.org>
24753
24754         * lib/set-mode-acl.c (chmod_or_fchmod): Document return value
24755         precisely.
24756         * lib/copy-acl.c (qcopy_acl): Trivial code simplifications.
24757
24758 2008-06-07  Bruno Haible  <bruno@clisp.org>
24759
24760         * lib/copy-acl.c (qcopy_acl): Make the #if branches independent.
24761         * lib/set-mode-acl.c (qset_acl): Choose better local variable names.
24762
24763 2008-06-07  Bruno Haible  <bruno@clisp.org>
24764
24765         * doc/posix-functions/_setjmp.texi: Explain the use of this function
24766         regardless of POSIX.
24767         * doc/posix-functions/_longjmp.texi: Likewise.
24768         * doc/posix-functions/setjmp.texi: Mention HP-UX as not counting as a
24769         SystemV platform in this case.
24770
24771 2008-06-06  Eric Blake  <ebb9@byu.net>
24772
24773         Document abort() bugs.
24774         * doc/posix-functions/abort.texi (abort): Mention anomalies.
24775
24776         * doc/posix-functions/setjmp.texi (setjmp): Mingw has setjmp.
24777         * doc/posix-functions/sigsetjmp.texi (sigsetjmp): Cygwin has
24778         sigsetjmp.
24779         * doc/posix-functions/siglongjmp.texi (siglongjmp): Cygwin has
24780         siglongjmp, but only as a macro.
24781         * doc/posix-functions/_longjmp.texi (_longjmp): Mention that this
24782         is obsolete.
24783         * doc/posix-functions/_setjmp.texi (_setjmp): Likewise.
24784
24785         Tweak documentation to cover cygwin argz bugs.
24786         * m4/argz.m4 (gl_FUNC_ARGZ): Mention date of last known cygwin
24787         argz bug fix; no code change needed since no cygwin releases
24788         occurred between the last fix and the bug being tested.
24789         * doc/glibc-functions/argz_add.texi (argz_add): Document the argz
24790         module and recently fixed cygwin bugs.
24791         * doc/glibc-functions/argz_add_sep.texi (argz_add_sep): Likewise.
24792         * doc/glibc-functions/argz_append.texi (argz_append): Likewise.
24793         * doc/glibc-functions/argz_count.texi (argz_count): Likewise.
24794         * doc/glibc-functions/argz_create.texi (argz_create): Likewise.
24795         * doc/glibc-functions/argz_create_sep.texi (argz_create_sep):
24796         Likewise.
24797         * doc/glibc-functions/argz_delete.texi (argz_delete): Likewise.
24798         * doc/glibc-functions/argz_extract.texi (argz_extract): Likewise.
24799         * doc/glibc-functions/argz_insert.texi (argz_insert): Likewise.
24800         * doc/glibc-functions/argz_next.texi (argz_next): Likewise.
24801         * doc/glibc-functions/argz_replace.texi (argz_replace): Likewise.
24802         * doc/glibc-functions/argz_stringify.texi (argz_stringify):
24803         Likewise.
24804
24805         Avoid gcc warning on cygwin.
24806         * lib/copy-acl.c (qcopy_acl) [!HAVE_ACL_GET_FILE &&
24807         !ACL_NO_TRIVIAL]: Avoid unused variable.
24808
24809 2008-06-05  Eric Blake  <ebb9@byu.net>
24810
24811         Be tolerant of UNKNOWN version in gnulib-tool test dir.
24812         * top/GNUmakefile (_dummy): Warn rather than reconfigure if
24813         git-version-gen fails to come up with a version.
24814         Reported by Simon Josefsson.
24815
24816 2008-06-05  Jim Meyering  <meyering@redhat.com>
24817             Paul Eggert  <eggert@cs.ucla.edu>
24818
24819         utimens.c: work around a probable Linux kernel bug
24820         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT]: Work around what
24821         appears to be a kernel bug that causes utimensat to return 280
24822         instead of 0, indicating success.
24823
24824 2008-06-04  Bruno Haible  <bruno@clisp.org>
24825
24826         * lib/copy-acl.c (qcopy_acl): Call qset_acl, not set_acl. Fixes
24827         2008-06-01 commit.
24828
24829 2008-06-04  Bruno Haible  <bruno@clisp.org>
24830
24831         * lib/acl-internal.h (acl_access_nontrivial): New declaration.
24832         * lib/file-has-acl.c (acl_access_nontrivial): New function.
24833         (file_has_acl): Use it. Save errno afterwards.
24834         * lib/copy-acl.c (qcopy_acl): Use acl_access_nontrivial.
24835
24836 2008-06-03  Bruno Haible  <bruno@clisp.org>
24837
24838         * lib/file-has-acl.c (file_has_acl): Put Solaris 10 code after POSIX-
24839         draft code. Simplify #ifs.
24840         * lib/set-mode-acl.c (qset_acl): Don't test for symlink if !USE_ACL.
24841         Put Solaris code after POSIX-draft code. Fix comments regarding
24842         Solaris 10, HP-UX. Mention Cygwin.
24843         * lib/copy-acl.c (qcopy_acl): Simplify #ifs.
24844
24845 2008-06-03  Eric Blake  <ebb9@byu.net>
24846
24847         Provide fallback for older kernels.
24848         * lib/utimens.c (gl_futimens) [HAVE_UTIMENSAT, HAVE_FUTIMENS]:
24849         Provide runtime fallback if kernel lacks support.
24850         Reported by Mike Frysinger.
24851
24852 2008-06-02  Bruno Haible  <bruno@clisp.org>
24853
24854         * lib/acl-internal.h (ACL_NOT_WELL_SUPPORTED): Include EOPNOTSUPP if
24855         it exists.
24856
24857 2008-06-02  Bruno Haible  <bruno@clisp.org>
24858
24859         * lib/acl_entries.c (acl_entries): Rewrite to use acl_get_entry.
24860         * lib/copy-acl.c (qcopy_acl): Update comment.
24861
24862 2008-06-02  Bruno Haible  <bruno@clisp.org>
24863
24864         * lib/acl-entries.h: Enclose most definitions in #ifs for POSIX-draft
24865         like ACL APIs.
24866
24867 2008-06-02  Bruno Haible  <bruno@clisp.org>
24868
24869         * tests/test-file-has-acl.sh: Use different code for Cygwin.
24870         * tests/test-set-mode-acl.sh: Likewise.
24871         * tests/test-copy-acl.sh: Likewise.
24872         * tests/test-copy-file.sh: Likewise.
24873
24874 2008-06-02  Bruno Haible  <bruno@clisp.org>
24875
24876         * tests/test-file-has-acl.sh: Remove unused code.
24877
24878 2008-06-01  Bruno Haible  <bruno@clisp.org>
24879
24880         * lib/copy-acl.c (qcopy_acl): New function, extracted from copy_acl.
24881         (copy_acl): Just a wrapper around qcopy_acl that emits the error
24882         messages.
24883         * lib/set-mode-acl.c (qset_acl): Document return value precisely.
24884
24885 2008-06-01  Bruno Haible  <bruno@clisp.org>
24886
24887         * m4/acl.m4 (gl_FUNC_ACL): Separate the POSIX-like and the Solaris
24888         tests. Test for libpacl, needed for OSF/1. Test for extended ACLs,
24889         needed for MacOS X. Test for HP-UX API. Test for newer and older AIX
24890         APIs.
24891         * modules/acl-tests (configure.ac): Remove tests now contained in
24892         m4/acl.m4.
24893
24894 2008-06-02  Jim Meyering  <meyering@redhat.com>
24895
24896         announce-gen: use a better key-server host name
24897         * build-aux/announce-gen (main): Recommend keys.gnupg.net, since
24898         it may be more consistently reliable.  Suggested by Werner Koch
24899         in <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/13717>.
24900
24901 2008-06-01  Bruno Haible  <bruno@clisp.org>
24902
24903         * lib/stdio-impl.h (fp_ub): Use fp_. Needed for DragonFly BSD.
24904         Reported by Voroskoi Andras <voroskoi@gmail.com>.
24905
24906 2008-06-01  Voroskoi Andras  <voroskoi@gmail.com>  (tiny change)
24907
24908         * lib/stdio-impl.h [__DragonFly__]: Fix typo.
24909
24910 2008-06-01  Bruno Haible  <bruno@clisp.org>
24911
24912         New ACL tests.
24913         * tests/test-file-has-acl.sh: New file.
24914         * tests/test-file-has-acl.c: New file.
24915         * tests/test-set-mode-acl.sh: New file.
24916         * tests/test-set-mode-acl.c: New file.
24917         * tests/test-copy-acl.sh: New file, based on tests/test-copy-file.sh.
24918         * tests/test-copy-acl.c: New file.
24919         * modules/acl-tests: New file, based on modules/copy-file-tests.
24920         * modules/copy-file-tests (Files): Remove tests/test-sameacls.c.
24921         (Depends-on): Add acl-tests.
24922         (configure.ac): Remove checks.
24923         (Makefile.am): Don't create test-sameacls program here any more.
24924
24925 2008-06-01  Bruno Haible  <bruno@clisp.org>
24926
24927         * tests/test-copy-file.sh: Portability fixes for Solaris, HP-UX, IRIX.
24928         * tests/test-sameacls.c: Include progname.h.
24929         (main): Invoke set_program_name. Portability fixes for MacOS X,
24930         Solaris, HP-UX.
24931
24932 2008-06-01  Bruno Haible  <bruno@clisp.org>
24933
24934         * lib/freadahead.c (freadahead) [__DragonFly__]: Use the __sreadahead
24935         function.
24936         Reported by VOROSKOI Andras <voroskoi@gmail.com>.
24937
24938 2008-06-01  Bruno Haible  <bruno@clisp.org>
24939
24940         * modules/rpmatch (Depends-on): Add strdup.
24941
24942 2008-06-01  Bruno Haible  <bruno@clisp.org>
24943
24944         * lib/pipe.c: Include unistd-safer.h.
24945         (create_pipe): Ensure the returned file descriptors are not in {0,1,2}.
24946         * modules/pipe (Depends-on): Add unistd-safer.
24947
24948 2008-05-30  Simon Josefsson  <simon@josefsson.org>
24949
24950         * modules/autobuild (configure.ac): Call AB_INIT.
24951
24952 2008-05-30  Simon Josefsson  <simon@josefsson.org>
24953
24954         * tests/test-getaddrinfo.c: Don't print debug messages by default.
24955         Suggested by Bruno Haible <bruno@clisp.org>.
24956
24957 2008-05-30  Simon Josefsson  <simon@josefsson.org>
24958
24959         * tests/test-base64.c: Cast size_t to unsigned long when invoking
24960         printf.  Use %lu instead of %d.  Reported by Bruno Haible
24961         <bruno@clisp.org>.
24962
24963 2008-05-29  Eric Blake  <ebb9@byu.net>
24964
24965         Prefer new POSIX 200x interfaces over futimesat.
24966         * m4/utimens.m4 (gl_UTIMENS): Check for futimens, utimensat.
24967         * lib/utimens.c (gl_futimens): Use them for nanosecond resolution
24968         when available.
24969         [HAVE_BUGGY_NFS_TIME_STAMPS]: Allow C89 compilation.
24970
24971 2008-05-28  Bruno Haible  <bruno@clisp.org>
24972
24973         * modules/stpcpy (License): Change to LGPLv2+.
24974         Requested by David Lutterkort <dlutter@redhat.com>.
24975
24976 2008-05-27  Bruno Haible  <bruno@clisp.org>
24977
24978         * lib/localename.c (SUBLANG_TIBETAN_BHUTAN): Force value 2. Needed for
24979         current mingw.
24980         Reported by Jose E. Marchesi <jemarch@gnu.org>.
24981
24982 2008-05-27  Bruno Haible  <bruno@clisp.org>
24983
24984         * modules/iconv_open (Link): New section, from module 'iconv'.
24985         * modules/striconv (Link): Likewise.
24986         * modules/striconveh (Link): Likewise.
24987         * modules/xstriconv (Link): Likewise.
24988         * modules/unicodeio (Link): Likewise.
24989         * modules/propername (Link): Likewise.
24990         Reported by Jim Meyering.
24991
24992 2008-05-26  Jim Meyering  <meyering@redhat.com>
24993
24994         sha256: do not artificially restrict buffer length to be < 2^32
24995         * lib/sha256.h (struct sha256_ctx) [buflen]: Change type from
24996         uint32_t to size_t.
24997         * lib/sha256.c (sha256_conclude_ctx): Change type of a local
24998         to match.
24999
25000         avoid unaligned access errors, e.g., on sparc
25001         * lib/sha512.c (sha512_conclude_ctx): Use set_uint64 rather than
25002         direct access through a possibly-unaligned uint64* pointer.
25003         * lib/sha256.c (sha256_conclude_ctx): Use set_uint32 rather than
25004         direct access through a possibly-unaligned uint32* pointer.
25005         Prompted by this patch from Tom "spot" Callaway:
25006         http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/13638
25007
25008         sha512.c: fix typo in comment
25009         * lib/sha512.c (sha512_conclude_ctx): Length is 128-bit, not 64-bit.
25010
25011 2008-05-25  Bruno Haible  <bruno@clisp.org>
25012
25013         * lib/set-mode-acl.c: Renamed from lib/acl.c.
25014         * modules/acl (Files): Add lib/set-mode-acl.c, remove lib/acl.c.
25015         (Makefile.am): Update lib_SOURCES.
25016
25017 2008-05-25  Bruno Haible  <bruno@clisp.org>
25018
25019         * m4/acl.m4 (gl_FUNC_ACL): Don't set LIB_ACL_TRIVIAL.
25020
25021 2008-05-25  Jim Meyering  <meyering@redhat.com>
25022
25023         useless-if-before-free: freed expr may have white-space differences
25024         * build-aux/useless-if-before-free: Recognize cases in which the
25025         freed expression differs from the tested one in embedded white
25026         space, e.g., if (p[i + 1]) free(p[i+1]).  Correct thinko in prev:
25027         $1 was used, so we can't make any regexp shy.  Improved tests now
25028         detect this.
25029
25030         useless-if-before-free: accept white space in the expression.
25031         * build-aux/useless-if-before-free: For now, any white space
25032         in the expression must be identical in the free argument.
25033
25034         useless-if-before-free: efficiency tweak
25035         * build-aux/useless-if-before-free: Make the expression-matching
25036         regexp "shy".
25037         Make the *outer* regexp shy, not the expr-matching one.
25038
25039         update code-in-comment to accept cast of free arg
25040         * build-aux/useless-if-before-free: Update regexp.
25041
25042 2008-05-25  Bruno Haible  <bruno@clisp.org>
25043
25044         * tests/test-sameacls.c: Renamed from tests/test-copy-file-sameacls.c.
25045         * modules/copy-file-tests (Files, Makefile.am): Update.
25046         * tests/test-copy-file.c (func_test_copy): Update.
25047
25048 2008-05-24  Andreas Färber  <andreas.faerber@web.de>  (tiny change)
25049
25050         * lib/stdbool.in.h [__HAIKU__]: Disable __BEOS__ workarounds.
25051
25052 2008-05-23  Bruno Haible  <bruno@clisp.org>
25053
25054         Improve support for ACLs on OSF/1.
25055         * lib/acl.c (qset_acl): For OSF/1, use a string that ends in a comma.
25056         Remove fallback for unknown flavors of ACLs.
25057
25058 2008-05-22  Bruno Haible  <bruno@clisp.org>
25059
25060         Add support for ACLs on OSF/1.
25061         * lib/acl-internal.h (acl_get_fd, acl_set_fd): New inline function
25062         replacements.
25063         (acl_free_text): New macro fallback.
25064         * lib/acl_entries.c (acl_entries): Use acl_free_text instead of
25065         acl_free.
25066         * m4/acl.m4 (gl_FUNC_ACL): Look also in libpacl library. Test for
25067         acl_free_text function. Require AC_C_INLINE.
25068
25069 2008-05-22  Bruno Haible  <bruno@clisp.org>
25070
25071         Make copy_acl work on MacOS X 10.5.
25072         * lib/acl-internal.h (MODE_INSIDE_ACL): New macro.
25073         (ACL_NOT_WELL_SUPPORTED): On MacOS X, also handle ENOENT.
25074         * lib/acl.c (qset_acl): Add different code branch for !MODE_INSIDE_ACL.
25075         If MODE_INSIDE_ACL, don't assume that every system has the same text
25076         representation for ACLs as FreeBSD.
25077         * lib/copy-acl.c (copy_acl): Add support for platforms with
25078         !MODE_INSIDE_ACL.
25079         * lib/file-has-acl.c (file_has_acl): Likewise.
25080         * m4/acl.m4 (gl_FUNC_ACL): Test for some functions that are witness of
25081         FreeBSD, MacOS X, or IRIX, respectively.
25082
25083 2008-05-22  Bruno Haible  <bruno@clisp.org>
25084
25085         * lib/acl.h: Don't include <sys/acl.h>.
25086         (GETACLCNT): Move fallback to lib/acl-internal.h.
25087         * lib/acl-internal.h: Include <sys/acl.h> here.
25088         (GETACLCNT): New macro fallback, moved here from lib/acl.h.
25089
25090 2008-05-22  Bruno Haible  <bruno@clisp.org>
25091
25092         Split off copy_acl function to separate file.
25093         * lib/copy-acl.c: New file, extracted from lib/acl.c.
25094         * lib/acl.c (copy_acl): Moved function to separate file.
25095         * m4/acl.m4 (gl_FUNC_ACL): Remove unconditional AC_LIBOBJs.
25096         * modules/acl (Files): Add lib/copy-acl.c.
25097         (Makefiles.am): Augment lib_SOURCES.
25098
25099 2008-05-22  Bruno Haible  <bruno@clisp.org>
25100
25101         * modules/copy-file-tests: New file.
25102         * tests/test-copy-file.sh: New file.
25103         * tests/test-copy-file.c: New file.
25104         * tests/test-copy-file-sameacls.c: New file.
25105
25106 2008-05-22  Eric Blake  <ebb9@byu.net>
25107
25108         Avoid gcc warning.
25109         * tests/test-memcmp.c (main): Pass NULL indirectly.
25110
25111 2008-05-21  Bruno Haible  <bruno@clisp.org>
25112
25113         Add reference doc about ACLs.
25114         * doc/acl-resources.txt: New file.
25115         * doc/acl-cygwin.txt: New file.
25116
25117 2008-05-21  Bruno Haible  <bruno@clisp.org>
25118
25119         Avoid one more warning from gcc.
25120         * lib/vasnprintf.c (IF_LINT): Update comments.
25121         (VASNPRINTF): Use it also for the 'prefix' array initializer.
25122
25123 2008-05-21  Jim Meyering  <meyering@redhat.com>
25124
25125         avoid a warning from gcc
25126         * lib/vasnprintf.c (IF_LINT): Define.
25127         (scale10_round_decimal_long_double):
25128         Use it to avoid a "may be used uninitialized" warning.
25129         (scale10_round_decimal_double): Likewise.
25130
25131 2008-05-21  Simon Josefsson  <simon@josefsson.org>
25132
25133         * m4/memcmp.m4: When cross-compiling, assume memcmp works if it is
25134         declared.
25135
25136 2008-05-20  Bruno Haible  <bruno@clisp.org>
25137
25138         * tests/test-memcmp.c (main): Test also the sign of the result. Test
25139         against two known bugs; code taken from autoconf's AC_FUNC_MEMCMP.
25140
25141 2008-05-20  Simon Josefsson  <simon@josefsson.org>
25142
25143         * modules/memcmp-tests: New file.
25144         * tests/test-memcmp.c: New file.
25145
25146 2008-05-19  Bruno Haible  <bruno@clisp.org>
25147
25148         * modules/propername (Notice, configure.ac): Put quoted "..." into
25149         --keyword option.
25150         * lib/propername.h: Update comments accordingly.
25151         Reported by Eric Blake.
25152
25153 2008-05-19  Martin Lambers  <marlam@marlam.de>  (tiny change)
25154
25155         * modules/getpass-gnu (Depends-on): Add fseeko.
25156
25157 2008-05-19  Simon Josefsson  <simon@josefsson.org>
25158
25159         * modules/base64-tests: New file.
25160
25161 2008-05-19  Bo Borgerson <gigabo@gmail.com>
25162
25163         * lib/base64.c (base64_decode_ctx): If a decode context structure
25164         was passed in use it to ignore newlines.  If a context structure
25165         was _not_ passed in, continue to treat newlines as garbage (this
25166         is the historical behavior).  Formerly base64_decode.
25167         (base64_decode_alloc_ctx): Formerly base64_decode_alloc.  Now
25168         takes a decode context structure.
25169         * lib/base64.h (base64_decode): Macro for four-argument calls.
25170         (base64_decode_alloc): Likewise.
25171         * lib/base64.c (base64_decode_ctx): If a decode context structure
25172         was passed in use it to ignore newlines.  If a context structure
25173         was _not_ passed in, continue to treat newlines as garbage (this
25174         is the historical behavior).  Formerly base64_decode.
25175         (base64_decode_alloc_ctx): Formerly base64_decode_alloc.  Now
25176         takes a decode context structure.
25177         * lib/base64.h (base64_decode): Macro for four-argument calls.
25178         (base64_decode_alloc): Likewise.
25179
25180 2008-05-19  Jim Meyering  <meyering@redhat.com>
25181
25182         avoid a warning from gcc
25183         * lib/trim.c (IF_LINT): Define.
25184         (trim2): Use it to avoid a "may be used uninitialized" warning.
25185
25186         Fix doc typo.
25187         * doc/glibc-functions/getpass.texi (getpass): s/PATH_MAX/PASS_MAX/.
25188
25189 2008-05-19  Bruno Haible  <bruno@clisp.org>
25190
25191         * doc/glibc-functions/getpass.texi: Document limits of other
25192         implementations.
25193
25194 2008-05-19  Simon Josefsson  <simon@josefsson.org>
25195             Bruno Haible <bruno@clisp.org>
25196
25197         * doc/glibc-functions/getpass.texi: Document gnulib implementation.
25198
25199 2008-05-18  Bruno Haible  <bruno@clisp.org>
25200
25201         * modules/propername: New file, from GNU gettext.
25202         * lib/propername.h: New file, from GNU gettext.
25203         * lib/propername.c: New file, from GNU gettext.
25204         * MODULES.html.sh (Internationalization functions): Add propername.
25205
25206 2008-05-16  Jim Meyering  <meyering@redhat.com>
25207             Bruno Haible  <bruno@clisp.org>
25208
25209         Avoid some warnings from "gcc -Wshadow".
25210         * lib/vasnprintf.c (exp, remainder): Define to different identifiers.
25211
25212 2008-05-15  Eric Blake  <ebb9@byu.net>
25213
25214         Extend previous patch to cygwin 1.7.0.
25215         * m4/memmem.m4 (gl_FUNC_MEMMEM): When cross-compiling, assume a
25216         fast implementation in cygwin >= 1.7.0.
25217         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
25218         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
25219
25220 2008-05-15  Bruno Haible  <bruno@clisp.org>
25221
25222         * m4/memmem.m4 (gl_FUNC_MEMMEM): When cross-compiling, assume a fast
25223         implementation in glibc >= 2.9.
25224         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
25225         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
25226
25227 2008-05-15  Bruno Haible  <bruno@clisp.org>
25228
25229         * MODULES.html.sh (Internationalization functions): Remove linebreak.
25230         (Unicode string functions): Add unilbrk/*.
25231         Reported by Karl Berry.
25232
25233 2008-05-15  Eric Blake  <ebb9@byu.net>
25234
25235         Fix violation of <stdbool.h> replacement in regex.
25236         * lib/regcomp.c (re_compile_internal): Avoid implicit cast to bool.
25237         * lib/regexec.c (re_search_internal): Likewise.
25238         Reported by Heinrich Mislik <Heinrich.Mislik@univie.ac.at>.
25239
25240 2008-05-15  Jim Meyering  <meyering@redhat.com>
25241
25242         avoid distracting test output when git or cvs is not found
25243         * tests/test-vc-list-files-cvs.sh: Suppress 'init' error output.
25244         * tests/test-vc-list-files-git.sh: Likewise.
25245
25246 2008-05-15  Eric Blake  <ebb9@byu.net>
25247
25248         Glibc finally accepted the memmem speedup code, bugzilla #5514.
25249         * doc/glibc-functions/memmem.texi (memmem): Mention last broken
25250         glibc version.
25251         * doc/glibc-functions/strcasestr.texi (strcasestr): Likewise.
25252         * doc/posix-functions/strstr.texi (strstr): Likewise.
25253         * lib/str-two-way.h (MAX): Sychronize with glibc.
25254
25255 2008-05-15  Paolo Bonzini  <bonzini@gnu.org>
25256
25257         * lib/regcomp.c (optimize_utf8): Add a note on why we test
25258         opr.ctx_type.
25259         (calc_first): Initialize constraint field.
25260         (duplicate_node_closure): Use it instead of special casing ANCHORS.
25261         Fix grammar.
25262         (duplicate_node): Merge constraint field for all node types.
25263         (calc_eclosure_iter): Look at constraint field for all node types.
25264         * lib/regex_internal.c (create_cd_newstate): Don't look at
25265         opr.ctx_type.
25266
25267 2008-05-14  Bruno Haible  <bruno@clisp.org>
25268
25269         Help GCC to do better code generation.
25270         * lib/eealloc.h (eemalloc) [GCC >= 3]: Declare with attribute 'malloc'.
25271         * lib/pagealign_alloc.h (pagealign_alloc, pagealign_xalloc): Likewise.
25272         * lib/xalloc.h (ATTRIBUTE_MALLOC): New macro.
25273         (xmalloc, xzalloc, xcalloc, xmemdup, xstrdup, xnmalloc, xcharalloc):
25274         Declare with attribute 'malloc' if supported.
25275
25276 2008-05-14  Lasse Collin  <lasse.collin@tukaani.org>
25277
25278         use "echo STR|wc -c" rather than unportable "expr length STR"
25279         * build-aux/mktempd (mktempd): Vendor-supplied expr from at least
25280         OpenBSD 4.3 and Solaris 10 do not honor expr's "length" function.
25281
25282 2008-05-14  Jim Meyering  <meyering@redhat.com>
25283
25284         use dd ibs=$n count=1 ... rather than less-portable head -c$n
25285         * build-aux/mktempd (rand_bytes): head's -cN option is not accepted
25286         by Solaris 10's /bin/head or by the one from HP-UX 11.x.
25287         Reported in http://sourceforge.net/forum/message.php?msg_id=4960334
25288         via Collin Lasse.
25289
25290 2008-05-14  Eric Blake  <ebb9@byu.net>
25291
25292         Avoid quadratic growth in gl_LIBSOURCES.
25293         * gnulib-tool (func_emit_initmacro_done): s/\(m4_append\)_uniq/\1/.
25294         Suggested by Bruno Haible.
25295
25296         Test xmemdup0.
25297         * modules/xmemdup0-tests: New file.
25298         * tests/test-xmemdup0.c: Likewise.
25299
25300 2008-05-13  Eric Blake  <ebb9@byu.net>
25301
25302         Split xmemdup0 into its own module.
25303         * modules/xmemdup0: New file.
25304         * lib/xmemdup0.h: Likewise.
25305         * lib/xmemdup0.c: Likewise.
25306         * MODULES.html.sh (Memory management functions): Add xmemdup0.
25307         * lib/xalloc.h (xmemdup0): Remove.
25308         * lib/xmalloc.c (xmemdup0): Likewise.
25309
25310 2008-05-13  Eric Blake  <ebb9@byu.net>
25311             Bruno Haible  <bruno@clisp.org>
25312
25313         Reduce number of forks required during autoconf.
25314         * gnulib-tool (func_emit_initmacro_start): Prepare gl_LIBSOURCES_LIST
25315         and gl_LIBSOURCES_DIR.
25316         (func_emit_initmacro_end): Use them here in a single m4_syscmd...
25317         (func_emit_initmacro_done) <gl_LIBSOURCES>: ...rather than in one
25318         m4_syscmd per file.
25319         <m4_foreach_w>: Move...
25320         * m4/gnulib-common.m4 (m4_foreach_w): ...here.
25321
25322 2008-05-13  Eric Blake  <ebb9@byu.net>
25323
25324         * gnulib-tool: Fix various comment typos.
25325
25326 2008-05-12  Bruno Haible  <bruno@clisp.org>
25327
25328         Tailor the linebreaking algorithm.
25329         * lib/unilbrk/tables.c (unilbrk_table): Change (IS,AL) entry.
25330
25331 2008-05-12  Bruno Haible  <bruno@clisp.org>
25332
25333         Update to Unicode 5.0.0.
25334         * lib/unilbrk/tables.h (LBP_*): Add LBP_WJ, LBP_H2, LBP_H3, LBP_JL,
25335         LBP_JV, LBP_JT. Redistribute values.
25336         (unilbrk_table): Change size.
25337         * lib/unilbrk/tables.c (unilbrk_table): Change size. Update to match
25338         Unicode TR#14 rev. 22.
25339         * lib/unilbrk/gen-lbrk.c (LBP_*): Add LBP_WJ, LBP_H2, LBP_H3, LBP_JL,
25340         LBP_JV, LBP_JT. Redistribute values.
25341         (get_lbp): Update to match Unicode TR#14 rev. 21/22 and Unicode 5.0.0.
25342         (debug_output_lbp, fill_org_lbp, debug_output_org_lbp, output_lbp):
25343         Update.
25344         * lib/unilbrk/lbrkprop1.h: Regenerated.
25345         * lib/unilbrk/lbrkprop2.h: Regenerated.
25346         * lib/unilbrk/u8-possible-linebreaks.c (u8_possible_linebreaks):
25347         Change handling of LBP_CM after LBP_ZW. Update for new value of LBP_BK.
25348         * lib/unilbrk/u16-possible-linebreaks.c (u16_possible_linebreaks):
25349         Likewise.
25350         * lib/unilbrk/u32-possible-linebreaks.c (u32_possible_linebreaks):
25351         Likewise.
25352         * tests/unilbrk/test-u8-possible-linebreaks.c (main): Update expected
25353         result.
25354         * tests/unilbrk/test-u16-possible-linebreaks.c (main): Likewise.
25355         * tests/unilbrk/test-u32-possible-linebreaks.c (main): Likewise.
25356         * tests/unilbrk/test-ulc-possible-linebreaks.c (main): Likewise.
25357         * tests/unilbrk/test-u8-width-linebreaks.c (main): Likewise.
25358         * tests/unilbrk/test-u16-width-linebreaks.c (main): Likewise.
25359         * tests/unilbrk/test-u32-width-linebreaks.c (main): Likewise.
25360
25361 2008-05-11  Bruno Haible  <bruno@clisp.org>
25362
25363         * lib/unilbrk/gen-lbrk.c (output_lbp): Fix whitespace.
25364
25365 2008-05-11  Bruno Haible  <bruno@clisp.org>
25366
25367         * lib/unilbrk/gen-lbrk.c: New file, from GNU gettext (gen-lbrkprop.c).
25368         * modules/unilbrk/gen-lbrk: New file.
25369
25370 2008-05-11  Bruno Haible  <bruno@clisp.org>
25371
25372         * m4/sha256.m4 (gl_SHA256): Require AC_C_INLINE.
25373         * m4/sha512.m4 (gl_SHA512): Likewise.
25374
25375 2008-05-11  Jim Meyering  <meyering@redhat.com>
25376
25377         New modules: crypto/sha256, crypto/sha512 (from coreutils)
25378         * modules/crypto/sha256: New file.
25379         * modules/crypto/sha512: Likewise.
25380         * lib/sha256.c: Likewise.
25381         * lib/sha256.h: Likewise.
25382         * lib/sha512.c: Likewise.
25383         * lib/sha512.h: Likewise.
25384         * lib/u64.h: Likewise.
25385         * m4/sha256.m4: Likewise.
25386         * m4/sha512.m4: Likewise.
25387         * MODULES.html.sh (Cryptographic computations (low-level)): List them.
25388
25389 2008-05-10  Bruno Haible  <bruno@clisp.org>
25390
25391         * MODULES.html.sh (Environment variables <stdlib.h>): Add unsetenv.
25392         (Input/Output <stdio.h>): Add xprintf.
25393         (Signal handling <signal.h>): Add strsignal.
25394         (Cryptographic computations (high-level)): Add crypto/gc-camellia.
25395         (Core language properties): Add func.
25396         (Mathematics <math.h>): Add ceil, floor, frexp-nolibm.
25397         (Support for systems lacking POSIX:2001): Add environ, EOVERFLOW,
25398         strings.
25399         (Enhancements for POSIX:2001 functions): Add iconv_open-utf.
25400         (Input/output): New section.
25401         (File system functions): Add openat-die, stat-macros.
25402         (Networking functions): Add sockets.
25403         (Unicode string functions): Add unictype/*.
25404         (Support for building libraries and executables): Add gperf.
25405         (Support for building documentation): Add agpl-3.0.
25406         (Misc): Add nocrash.
25407
25408 2008-05-10  Bruno Haible  <bruno@clisp.org>
25409
25410         * modules/unictype/gen-ctype: New file.
25411
25412 2008-05-10  Jim Meyering  <meyering@redhat.com>
25413
25414         Make chdir-safer.c more efficient on a system with no symlinks.
25415         * lib/chdir-safer.c (chdir_no_follow): Skip lstat and fstat calls
25416         also if ELOOP is zero.  Suggested by Bruno Haible.
25417
25418         Make chdir-safer.c slightly safer.
25419         * lib/chdir-safer.c (chdir_no_follow): Test HAVE_WORKING_O_NOFOLLOW,
25420         not O_NOFOLLOW, in case the latter is nonzero and open ignores it.
25421
25422         Avoid compile failure on systems without ELOOP (like mingw).
25423         * lib/chdir-safer.c (ELOOP): Define if not already defined.
25424         Reported by Bruno Haible.
25425
25426 2008-05-10  Bruno Haible  <bruno@clisp.org>
25427
25428         * lib/unilbrk/ulc-common.c: Include c-strcaseeq.h instead of streq.h.
25429         (is_utf8_encoding): Use a case-insensitive comparison.
25430         * modules/unilbrk/ulc-common (Depends-on): Add c-strcaseeq. Remove
25431         streq.
25432
25433 2008-05-10  Bruno Haible  <bruno@clisp.org>
25434
25435         * lib/unilbrk/ulc-common.c: Don't include <stdlib.h>.
25436         (iconv_string_length, iconv_string_keeping_offsets): Remove functions.
25437         * lib/unilbrk/ulc-common.h (iconv_string_length,
25438         iconv_string_keeping_offsets): Remove declarations.
25439         * lib/unilbrk/ulc-possible-linebreaks.c: Include <string.h>, uniconv.h.
25440         Don't include <iconv.h>, streq.h, xsize.h.
25441         (ulc_possible_linebreaks): Use u8_conv_from_encoding for doing the
25442         conversion.
25443         * lib/unilbrk/ulc-width-linebreaks.c: Include uniconv.h. Don't include
25444         <iconv.h>, streq.h, xsize.h.
25445         (ulc_width_linebreaks): Use u8_conv_from_encoding for doing the
25446         conversion.
25447         * modules/unilbrk/ulc-common (Depends-on): Remove iconv.
25448         * modules/unilbrk/ulc-possible-linebreaks (Depends-on): Add
25449         uniconv/u8-conv-from-enc. Remove iconv_open, streq, xsize.
25450         * modules/unilbrk/ulc-width-linebreaks (Depends-on): Likewise.
25451
25452 2008-05-10  Bruno Haible  <bruno@clisp.org>
25453
25454         * modules/unilbrk/ulc-width-linebreaks-tests: New file.
25455         * tests/unilbrk/test-ulc-width-linebreaks.c: New file.
25456
25457         * modules/unilbrk/u32-width-linebreaks-tests: New file.
25458         * tests/unilbrk/test-u32-width-linebreaks.c: New file.
25459
25460         * modules/unilbrk/u16-width-linebreaks-tests: New file.
25461         * tests/unilbrk/test-u16-width-linebreaks.c: New file.
25462
25463         * modules/unilbrk/u8-width-linebreaks-tests: New file.
25464         * tests/unilbrk/test-u8-width-linebreaks.c: New file.
25465
25466         * modules/unilbrk/ulc-possible-linebreaks-tests: New file.
25467         * tests/unilbrk/test-ulc-possible-linebreaks.c: New file.
25468
25469         * modules/unilbrk/u32-possible-linebreaks-tests: New file.
25470         * tests/unilbrk/test-u32-possible-linebreaks.c: New file.
25471
25472         * modules/unilbrk/u16-possible-linebreaks-tests: New file.
25473         * tests/unilbrk/test-u16-possible-linebreaks.c: New file.
25474
25475         * modules/unilbrk/u8-possible-linebreaks-tests: New file.
25476         * tests/unilbrk/test-u8-possible-linebreaks.c: New file.
25477
25478 2008-05-10  Bruno Haible  <bruno@clisp.org>
25479
25480         Split up 'linebreak' module.
25481         * lib/unilbrk.h: New file, based on lib/linebreak.h.
25482         * lib/unilbrk/lbrkprop1.h: New file, extracted from lib/lbrkprop.h.
25483         * lib/unilbrk/lbrkprop2.h: New file, renamed from lib/lbrkprop.h with
25484         modifications.
25485         * lib/unilbrk/tables.h: New file, extracted from lib/linebreak.c.
25486         * lib/unilbrk/tables.c: New file, extracted from lib/linebreak.c.
25487         * lib/unilbrk/u8-possible-linebreaks.c: New file, extracted from
25488         lib/linebreak.c.
25489         * lib/unilbrk/u16-possible-linebreaks.c: New file, extracted from
25490         lib/linebreak.c.
25491         * lib/unilbrk/u32-possible-linebreaks.c: New file, extracted from
25492         lib/linebreak.c.
25493         * lib/unilbrk/ulc-common.h: New file, extracted from lib/linebreak.c.
25494         * lib/unilbrk/ulc-common.c: New file, extracted from lib/linebreak.c.
25495         * lib/unilbrk/ulc-possible-linebreaks.c: New file, extracted from
25496         lib/linebreak.c.
25497         * lib/unilbrk/u8-width-linebreaks.c: New file, extracted from
25498         lib/linebreak.c.
25499         * lib/unilbrk/u16-width-linebreaks.c: New file, extracted from
25500         lib/linebreak.c.
25501         * lib/unilbrk/u32-width-linebreaks.c: New file, extracted from
25502         lib/linebreak.c.
25503         * lib/unilbrk/ulc-width-linebreaks.c: New file, extracted from
25504         lib/linebreak.c.
25505         * modules/unilbrk/base: New file.
25506         * modules/unilbrk/tables: New file.
25507         * modules/unilbrk/u8-possible-linebreaks: New file.
25508         * modules/unilbrk/u16-possible-linebreaks: New file.
25509         * modules/unilbrk/u32-possible-linebreaks: New file.
25510         * modules/unilbrk/ulc-common: New file.
25511         * modules/unilbrk/ulc-possible-linebreaks: New file.
25512         * modules/unilbrk/u8-width-linebreaks: New file.
25513         * modules/unilbrk/u16-width-linebreaks: New file.
25514         * modules/unilbrk/u32-width-linebreaks: New file.
25515         * modules/unilbrk/ulc-width-linebreaks: New file.
25516         * lib/linebreak.h: Remove file.
25517         * lib/linebreak.c: Remove file.
25518         * m4/linebreak.m4: Remove file.
25519         * modules/linebreak: Remove file.
25520         * NEWS: Mention the changes.
25521
25522 2008-05-09  Eric Blake  <ebb9@byu.net>
25523
25524         Add xmemdup0.
25525         * lib/xalloc.h (xmemdup0): New prototype and C++ typesafe
25526         implementation.
25527         * lib/xmalloc.c (xmemdup0): New C implementation.
25528
25529 2008-05-08  Bruno Haible  <bruno@clisp.org>
25530
25531         * m4/wctype.m4 (gl_WCTYPE_H): Correct indentation.
25532
25533 2008-05-07  Eric Blake  <ebb9@byu.net>
25534
25535         Support cross-compilation of <wctype.h>.
25536         * m4/wctype.m4 (gl_WCTYPE_H): Fix improper nesting in
25537         AC_CACHE_CHECK.
25538
25539 2008-05-06  Soren Hansen  <soren@ubuntu.com>  (tiny change)
25540
25541         * build-aux/vc-list-files: Add support for bzr.
25542
25543 2008-05-03  Jim Meyering  <meyering@redhat.com>
25544
25545         avoid failed assertion with tight malloc
25546         * tests/test-getndelim2.c: Correct an off-by-one assertion.
25547
25548 2008-05-03  Simon Josefsson  <simon@josefsson.org>
25549
25550         * m4/inet_pton.m4: Set HAVE_DECL_INET_PTON to 0 when declarations
25551         are needed from arpa/inet.h.
25552         * m4/inet_ntop.m4: Likewise, for HAVE_DECL_INET_NTOP.
25553         Reported by Bruno Haible.
25554
25555 2008-05-02  Jim Meyering  <meyering@redhat.com>
25556
25557         avoid compilation error on FreeBSD 6
25558         * tests/test-getaddrinfo.c [!defined EAI_NODATA] (EAI_NODATA): Define.
25559
25560 2008-05-01  Jim Meyering  <meyering@redhat.com>
25561
25562         useless-if-before-free: correct --help's exit status description
25563         * build-aux/useless-if-before-free (usage): Like grep, exit 0
25564         for one or more matches, etc.  Reported by Bruno Haible.
25565
25566         vc-list-files: make the stand-alone gnulib test work
25567         * modules/vc-list-files-tests (configure.ac):
25568         Define and AC_SUBST abs_aux_dir.
25569         (Makefile.am) [TESTS_ENVIRONMENT]: Rather than passing
25570         $(abs_top_srcdir) to each script and having each of them
25571         duplicate the work of setting PATH, set PATH here, using
25572         the new variable, abs_aux_dir instead.
25573         * tests/test-vc-list-files-cvs.sh: Don't set PATH here.
25574         * tests/test-vc-list-files-git.sh: Likewise.
25575         Reported by Bruno Haible.
25576
25577 2008-05-01  Bruno Haible  <bruno@clisp.org>
25578
25579         * lib/getndelim2.c (getndelim2): Fix newsize computation during
25580         reallocation. Rename 'done' to 'found_delimiter'.
25581
25582 2008-05-01  Jim Meyering  <meyering@redhat.com>
25583
25584         vc-list-files: accommodate /bin/sh like the one from Solaris 10
25585         * build-aux/vc-list-files: Use `...`, not $(...).
25586
25587 2008-04-30  Jim Meyering  <meyering@redhat.com>
25588
25589         add tests for vc-list-files
25590         * modules/vc-list-files-tests: New module.
25591         * tests/test-vc-list-files-cvs.sh: New file.
25592         * tests/test-vc-list-files-git.sh: New file.
25593
25594         avoid a warning from gcc
25595         * lib/getndelim2.c (IF_LINT): Define.
25596         (getndelim2): Use it to avoid a "may be used uninitialized" warning.
25597
25598         vc-list-files: work properly with build-aux/cvsu, too
25599         * build-aux/vc-list-files: Hoist the "./"-removing code to apply
25600         to all cvs-based clauses.
25601
25602         vc-list-files: work properly in the CVS+awk case, too
25603         * build-aux/vc-list-files: In the CVS+awk case, remove "./" prefix.
25604
25605         vc-list-files: avoid use of ${*-*} that fails when /bin/sh is dash
25606         * build-aux/vc-list-files: Simplify ${*-*} to $dir, since we no longer
25607         take more than one file argument, so .  Add quotes, just in case $dir
25608         ever contains a shell meta-character.  Prompted by Soren Hansen in
25609         <http://thread.gmane.org/gmane.comp.emulators.libvirt/6221/focus=6240>.
25610
25611 2008-04-29  Eric Blake  <ebb9@byu.net>
25612
25613         Optimize getndelim2 to use block operations when possible.
25614         * modules/getndelim2 (Depends-on): Add stdbool, freadptr,
25615         freadseek, and memchr2.
25616         * lib/getndelim2.c (getndelim2): Use them for block reads.
25617
25618 2008-04-29  Bruno Haible  <bruno@clisp.org>
25619
25620         * m4/inet_ntop.m4 (gl_INET_NTOP): Require gl_USE_SYSTEM_EXTENSIONS.
25621         * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
25622         * modules/inet_ntop (Depends-on): Add extensions.
25623         * modules/inet_pton (Depends-on): Likewise.
25624         Reported by Simon Josefsson.
25625
25626 2008-04-29  Jim Meyering  <meyering@redhat.com>
25627
25628         When the is more than one match in a block, match all of them.
25629         * build-aux/useless-if-before-free: Iterate through each block
25630         until there are no more matches.
25631
25632         Fix broken useless-if-before-free script.
25633         * build-aux/useless-if-before-free: Fix typo: missing "?" after
25634         the expression to match cast of argument to free-like function.
25635
25636 2008-04-29  Eric Blake  <ebb9@byu.net>
25637
25638         Use new header.
25639         * lib/getaddrinfo.c (includes): s/"inet_ntop.h"/<arpa/inet.h>/.
25640
25641 2008-04-29  Jim Meyering  <meyering@redhat.com>
25642
25643         Avoid test segfault on x86_64 due to lack of inet_ntop declaration.
25644         * tests/test-getaddrinfo.c: Include <arpa/inet.h>, now guaranteed
25645         by gnulib to exist and to declare e.g., inet_ntop.
25646         Don't include "inet_ntop.h", now removed.
25647
25648         * m4/arpa_inet_h.m4: Remove trailing blanks.
25649
25650 2008-04-29  Eric Blake  <ebb9@byu.net>
25651
25652         Silence valgrind on safe reads beyond potential array bounds.
25653         * lib/rawmemchr.valgrind: New file.
25654         * lib/strchrnul.valgrind: Likewise.
25655         * modules/rawmemchr (Files): Distribute new file.
25656         * modules/strchrnul (Files): Likewise.
25657         Suggested by Bruno Haible.
25658
25659 2008-04-29  Bruno Haible  <bruno@clisp.org>
25660
25661         * lib/arpa_inet.in.h: Include system's <arpa/inet.h> if it exists.
25662         (inet_ntop, inet_pton): Change portability warning's wording.
25663         * m4/arpa_inet_h.m4 (gl_HEADER_ARPA_INET): Set HAVE_ARPA_INET_H.
25664         Invoke gl_CHECK_NEXT_HEADERS.
25665         (gl_ARPA_INET_H_DEFAULTS): Initialize ARPA_INET_H.
25666         * m4/inet_ntop.m4 (gl_INET_NTOP): Require gl_ARPA_INET_H_DEFAULTS and
25667         set ARPA_INET_H.
25668         * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
25669         * modules/arpa_inet (Description): No longer only for systems that
25670         lack it.
25671         (Depends-on): Add include_next.
25672         (Makeile.am): Substitute INCLUDE_NEXT, NEXT_ARPA_INET_H,
25673         HAVE_ARPA_INET_H.
25674
25675 2008-04-29  Jim Meyering  <meyering@redhat.com>
25676
25677         * modules/mkdir (License): Re-license as LGPLv2+.
25678
25679 2008-04-29  Bruno Haible  <bruno@clisp.org>
25680
25681         * modules/rawmemchr (Maintainer): Set to Eric.
25682         * modules/strchrnul (Maintainer): Likewise.
25683
25684 2008-04-29  Simon Josefsson  <simon@josefsson.org>
25685
25686         * m4/arpa_inet_h.m4 (gl_ARPA_INET_H_DEFAULTS): Set
25687         HAVE_DECL_INET_NTOP and HAVE_DECL_INET_PTON.
25688
25689         * modules/arpa_inet (arpa/inet.h): Use them.
25690
25691 2008-04-28  Eric Blake  <ebb9@byu.net>
25692
25693         Test getndelim2.
25694         * modules/getndelim2-tests: New file.
25695         * tests/test-getndelim2.c: Likewise.
25696         * lib/getndelim2.c (getndelim2): Never return 0.  Lock the
25697         stream.
25698         * m4/getndelim2.m4 (gl_GETNDELIM2): Check for lock functions.
25699
25700         * MODULES.html.sh: Document new module.
25701
25702 2008-04-20  Bruno Haible  <bruno@clisp.org>
25703
25704         * lib/c-stack.c (die): Use raise.
25705         * modules/c-stack (Depends-on): Add raise.
25706
25707 2008-04-28  Bruno Haible  <bruno@clisp.org>
25708
25709         Expect rpmatch to be declared.
25710         * lib/yesno.c (rpmatch): Remove declaration.
25711
25712         Declare rpmatch.
25713         * lib/stdlib.in.h (rpmatch): New declaration.
25714         * lib/rpmatch.c: Include <stdlib.h> first.
25715         * m4/rpmatch.m4 (gl_FUNC_RPMATCH): Require AC_USE_SYSTEM_EXTENSIONS and
25716         gl_STDLIB_H_DEFAULTS. Set HAVE_RPMATCH.
25717         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_RPMATCH,
25718         HAVE_RPMATCH.
25719         * modules/rpmatch (Depends-on): Add stdlib, extensions.
25720         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
25721         (Include): Set to <stdlib.h>.
25722         * modules/stdlib (Makefile.am): Substitute GNULIB_RPMATCH and
25723         HAVE_RPMATCH.
25724         * NEWS: Document the change.
25725
25726 2008-04-28  Bruno Haible  <bruno@clisp.org>
25727
25728         Change rpmatch to use nl_langinfo when appropriate.
25729         * lib/rpmatch.c: Include stdbool.h, string.h, langinfo.h.
25730         (N_): New macro.
25731         (localized_pattern): New function/macro.
25732         (try): Remove match, nomatch arguments. Copy the pattern into safe
25733         memory before caching it.
25734         (rpmatch): Use localized_pattern. Add translator comments.
25735         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Test for nl_langinfo and YESEXPR.
25736         Suggested by Eric Blake.
25737         * modules/rpmatch (Depends-on): Add stdbool.
25738
25739 2008-04-28  Eric Blake  <ebb9@byu.net>
25740
25741         Add rawmemchr module, matching glibc.
25742         * modules/string (Makefile.am): New indicator.
25743         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Set it.
25744         * lib/string.in.h (rawmemchr): Declare when appropriate.
25745         * modules/rawmemchr: New file.
25746         * m4/rawmemchr.m4: Likewise.
25747         * lib/rawmemchr.c: Likewise.
25748         * modules/rawmemchr-tests: Likewise.
25749         * tests/test-rawmemchr.c: Likewise.
25750         * doc/glibc-functions/rawmemchr.texi (rawmemchr): Document
25751         module.
25752         * modules/strchrnul (Depends-on): Add rawmemchr.
25753         * lib/strchrnul.c (strchrnul): Optimize a corner case.
25754
25755         Whitespace cleanup.
25756         * tests/test-strchrnul.c: Reindent.
25757         * lib/strchrnul.c: Likewise.
25758
25759         Optimize and test strchrnul.
25760         * lib/strchrnul.c (strchrnul): Rewrite to do parallel search.
25761         * modules/strchrnul-tests: New file.
25762         * tests/test-strchrnul.c: Likewise.
25763
25764         Remove intprops dependency.
25765         * modules/memchr (Depends-on): Remove intprops.
25766         * modules/memrchr (Depends-on): Likewise.
25767         * modules/memchr2 (Depends-on): Likewise.
25768         * lib/memchr.c (__memchr): Hand-inline the TYPE_MAXIMUM check.
25769         * lib/memrchr.c (__memrchr): Likewise.
25770         * lib/memrchr2.c (memchr2): Likewise.
25771         Reported by Simon Josefsson.
25772
25773 2008-04-28  Simon Josefsson  <simon@josefsson.org>
25774
25775         * m4/sys_socket_h.m4: Move AC_REQUIRE([AC_C_INLINE]) to top.
25776         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
25777
25778 2008-04-28  Simon Josefsson  <simon@josefsson.org>
25779
25780         * lib/inet_ntop.h, lib/inet_pton.h: Remove files.
25781
25782         * lib/inet_ntop.c: Include arpa/inet.h instead of inet_ntop.h.
25783
25784         * lib/inet_pton.c: Include arpa/inet.h instead of inet_pton.h.
25785
25786         * lib/arpa_inet.in.h [@GNULIB_INET_NTOP@]: Inline inet_ntop.h
25787         declarations.
25788         [@GNULIB_INET_PTON@]: Inline inet_pton.h declarations.
25789
25790         * m4/inet_pton.m4: Don't check for header files.
25791
25792         * m4/inet_ntop.m4: Don't check for header files.
25793
25794 2008-04-28  Simon Josefsson  <simon@josefsson.org>
25795
25796         * m4/sys_socket_h.m4: Require AC_C_INLINE when necessary.
25797         * lib/sys_socket.in.h (setsockopt): Use proper win32 tests (don't
25798         trigger for cygwin).
25799         Reported by Bruno Haible  <bruno@clisp.org>.
25800
25801 2008-04-28  Bruno Haible  <bruno@clisp.org>
25802
25803         * doc/posix-functions/strdup.texi: Mention mingw problem.
25804
25805 2008-04-27  Bruno Haible  <bruno@clisp.org>
25806
25807         * modules/stat-time-tests (Depends-on): Add sleep.
25808         * tests/test-stat-time.c (force_unlink): New function.
25809         (cleanup): Use it.
25810         (test_mtime): Remove the ctime related tests.
25811         (test_ctime): New function, containing the ctime related tests.
25812         (main): Call test_ctime, except on native Windows platforms.
25813
25814 2008-04-27  Bruno Haible  <bruno@clisp.org>
25815
25816         * lib/rpmatch.c (rpmatch): Add some comments.
25817         Reported by James Youngman <jay@gnu.org>.
25818
25819 2008-04-27  Bruno Haible  <bruno@clisp.org>
25820
25821         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Also test the behaviour on
25822         quiet NaNs.
25823
25824 2008-04-27  Bruno Haible  <bruno@clisp.org>
25825
25826         Make test-yesno.sh work on mingw.
25827         * tests/test-yesno.sh: Postprocess the output to convert CR/LF to LF.
25828         * tests/test-yesno.c: Include yesno.h first. Include binary-io.h.
25829         (main): Set stdin to binary mode.
25830         * modules/yesno-tests (Depends-on): Add binary-io.
25831
25832 2008-04-27  Bruno Haible  <bruno@clisp.org>
25833
25834         Fix 'isfinite' on x86, x86_64, ia64 platforms.
25835         * tests/test-isfinite.c (test_isfinitel): Also test the behavior on
25836         argument that lie outside the IEEE 854 domain.
25837         * m4/isfinite.m4 (gl_ISFINITEL_WORKS): New macro.
25838         (gl_ISFINITE): Use it.
25839         * doc/posix-functions/isfinite.texi: Document the fixed bugs.
25840
25841 2008-04-27  Bruno Haible  <bruno@clisp.org>
25842
25843         Allow local renaming in config.h.
25844         * lib/memrchr.c (memrchr): Don't undefine outside libc.
25845
25846 2008-04-27  Bruno Haible  <bruno@clisp.org>
25847
25848         * lib/memchr.c (__memchr): Change type of 'i'.
25849         * lib/memchr2.c (memchr2): Likewise.
25850
25851 2008-04-26  Eric Blake  <ebb9@byu.net>
25852         and Bruno Haible  <bruno@clisp.org>
25853
25854         Optimize and test memrchr.
25855         * modules/memrchr (Depends-on): Add intprops.
25856         * lib/memrchr.c (__memrchr): Avoid false positives in loop.
25857         * modules/memrchr-tests: New file.
25858         * tests/test-memrchr.c: New file.
25859
25860 2008-04-26  Bruno Haible  <bruno@clisp.org>
25861
25862         Add tentative support for DragonFly BSD.
25863         * lib/stdio-impl.h: Add macros for DragonFly BSD.
25864         * lib/fbufmode.c (fbufmode): Update conditionals. Use fp_ instead of
25865         fp.
25866         * lib/fflush.c (clear_ungetc_buffer, disable_seek_optimization,
25867         restore_seek_optimization, update_fpos_cache, rpl_fflush: Likewise.
25868         * lib/fpurge.c (fpurge): Likewise.
25869         * lib/freadable.c (freaadable): Likewise.
25870         * lib/freadahead.c (freadahead): Likewise.
25871         * lib/freading.c (freading): Likewise.
25872         * lib/freadptr.c (freadptr): Likewise.
25873         * lib/freadseek.c (freadptrinc): Likewise.
25874         * lib/fseeko.c (fseeko): Likewise.
25875         * lib/fseterr.c (fseterr): Likewise.
25876         * lib/fwritable.c (fwritable): Likewise.
25877         * lib/fwriting.c (fwriting): Likewise.
25878
25879 2008-04-26  Bruno Haible  <bruno@clisp.org>
25880
25881         * lib/stdio-impl.h: New file.
25882         * lib/fbufmode.c: Include stdio-impl.h.
25883         (fbufmode): Use fp_, remove redundant #defines.
25884         * lib/fflush.c: Include stdio-impl.h.
25885         (clear_ungetc_buffer): Remove redundant #defines.
25886         * lib/fpurge.c: Include stdio-impl.h.
25887         (fpurge): Remove redundant #defines.
25888         * lib/freadable.c: Include stdio-impl.h.
25889         (freadable): Remove redundant #defines.
25890         * lib/freadahead.c: Include stdio-impl.h.
25891         (freadahead): Remove redundant #defines.
25892         * lib/freading.c: Include stdio-impl.h.
25893         (freading): Remove redundant #defines.
25894         * lib/freadptr.c: Include stdio-impl.h.
25895         (freadptr): Remove redundant #defines.
25896         * lib/freadseek.c: Include stdio-impl.h.
25897         (freadptrinc): Remove redundant #defines.
25898         * lib/fseeko.c: Include stdio-impl.h.
25899         (rpl_fseeko): Remove redundant #defines.
25900         * lib/fseterr.c: Include stdio-impl.h.
25901         (fseterr): Remove redundant #defines.
25902         * lib/fwritable.c: Include stdio-impl.h.
25903         (fwritable: Remove redundant #defines.
25904         * lib/fwriting.c: Include stdio-impl.h.
25905         (fwriting): Remove redundant #defines.
25906         * modules/fbufmode (Files): Add lib/stdio-impl.h.
25907         * modules/fflush (Files): Likewise.
25908         * modules/fpurge (Files): Likewise.
25909         * modules/freadable (Files): Likewise.
25910         * modules/freadahead (Files): Likewise.
25911         * modules/freading (Files): Likewise.
25912         * modules/freadptr (Files): Likewise.
25913         * modules/freadseek (Files): Likewise.
25914         * modules/fseeko (Files): Likewise.
25915         * modules/fseterr (Files): Likewise.
25916         * modules/fwritable (Files): Likewise.
25917         * modules/fwriting (Files): Likewise.
25918
25919 2008-04-26  Bruno Haible  <bruno@clisp.org>
25920
25921         * lib/fflush.c (clear_ungetc_buffer, disable_seek_optimization,
25922         restore_seek_optimization, update_fpos_cache): New functions, extracted
25923         from rpl_fflush.
25924         (rpl_fflush): Use them.
25925         * m4/fflush.m4 (gl_PREREQ_FFLUSH): New macro.
25926         (gl_REPLACE_FFLUSH): Use it.
25927
25928 2008-04-26  Bruno Haible  <bruno@clisp.org>
25929
25930         * tests/test-xstrtol.sh: Work around limitation of an old 'tr' program
25931         on Solaris.
25932         * tests/test-xstrtoimax.sh: Likewise.
25933         * tests/test-xstrtoumax.sh: Likewise.
25934         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
25935
25936 2008-04-26  Bruno Haible  <bruno@clisp.org>
25937
25938         * modules/memchr-tests: New file.
25939         * tests/test-memchr.c; New file, based on tests/test-memchr2.c.
25940
25941 2008-04-26  Eric Blake  <ebb9@byu.net>
25942             Bruno Haible  <bruno@clisp.org>
25943
25944         * lib/memchr.c: Include intprops.h.
25945         (__memchr): Optimize parallel detection of matching bytes. Rename local
25946         variables. Add explanatory comments.
25947
25948 2008-04-26  Bruno Haible  <bruno@clisp.org>
25949
25950         Fix module 'memchr', broken since 2000-10-28.
25951         * lib/memchr.c: Outside glibc, define memchr, not __memchr.
25952
25953 2008-04-26  Bruno Haible  <bruno@clisp.org>
25954
25955         * lib/memchr2.c (memchr2): Rename local variables. Add explanatory
25956         comments.
25957
25958 2008-04-25  Eric Blake  <ebb9@byu.net>
25959
25960         Use native fstatat on cygwin 1.7.0.
25961         * m4/openat.m4 (gl_FUNC_OPENAT): Make sure lstat check is made
25962         first.
25963
25964 2008-04-23  Eric Blake  <ebb9@byu.net>
25965
25966         Improve memchr2 performance.
25967         * lib/memchr2.c (memchr2): Further optimize parallel detection of
25968         NUL bytes.
25969         * modules/memchr2 (Depends-on): Use intprops.h.
25970
25971 2008-04-23  Simon Josefsson  <simon@josefsson.org>
25972
25973         * lib/sys_socket.in.h (setsockopt): Be more type safe by declaring
25974         an inline function instead of a CPP macro.  Patch by Ben Pfaff
25975         <blp@cs.stanford.edu>.
25976
25977 2008-04-23  Simon Josefsson  <simon@josefsson.org>
25978
25979         * lib/arpa_inet.in.h: New file.
25980
25981         * modules/arpa_inet (Files): Add lib/arpa_inet.in.h.
25982         (Makefile.am): Sed in substitute header file.
25983
25984         * m4/arpa_inet_h.m4: Add gl_ARPA_INET_H_DEFAULTS and
25985         gl_ARPA_INET_MODULE_INDICATOR.  Use them.
25986
25987         * modules/inet_ntop (configure.ac): Use
25988         gl_ARPA_INET_MODULE_INDICATOR.
25989
25990         * modules/inet_pton (configure.ac): Use
25991         gl_ARPA_INET_MODULE_INDICATOR.
25992
25993 2008-04-22  Jim Meyering  <meyering@redhat.com>
25994
25995         * modules/verify (License): Re-license as LGPLv2+.
25996
25997 2008-04-22  Simon Josefsson  <simon@josefsson.org>
25998
25999         * lib/sys_socket.in.h: Define setsockopt macro to cast fourth
26000         parameter to void* as per POSIX standard (MinGW uses char*).
26001
26002 2008-04-21  Bruno Haible  <bruno@clisp.org>
26003
26004         * lib/wctype.in.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit,
26005         iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit):
26006         Define to replacements if REPLACE_ISWCNTRL is 1.
26007         * m4/wctype.m4 (gl_WCTYPE_H): Test whether the isw* functions work.
26008         If not, set WCTYPE_H to nonempty and REPLACE_ISWCNTRL to 1.
26009         * modules/wctype (Makefile.am): Substitute REPLACE_ISWCNTRL.
26010         * doc/posix-functions/iswalnum.texi: Mention the 'wctype' module and
26011         what it fixes.
26012         * doc/posix-functions/iswalpha.texi: Likewise.
26013         * doc/posix-functions/iswblank.texi: Likewise.
26014         * doc/posix-functions/iswcntrl.texi: Likewise.
26015         * doc/posix-functions/iswdigit.texi: Likewise.
26016         * doc/posix-functions/iswgraph.texi: Likewise.
26017         * doc/posix-functions/iswlower.texi: Likewise.
26018         * doc/posix-functions/iswprint.texi: Likewise.
26019         * doc/posix-functions/iswpunct.texi: Likewise.
26020         * doc/posix-functions/iswspace.texi: Likewise.
26021         * doc/posix-functions/iswupper.texi: Likewise.
26022         * doc/posix-functions/iswxdigit.texi: Likewise.
26023         Reported by Alain Guibert.
26024
26025 2008-04-21  Bruno Haible  <bruno@clisp.org>
26026
26027         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Fix typo in last commit.
26028         Patch by Alain Guibert.
26029
26030 2008-04-21  Bruno Haible  <bruno@clisp.org>
26031
26032         Fix test failures on mingw.
26033         * tests/test-xstrtol.c (print_no_progname): New function.
26034         (main): Install it in error_print_progname hook.
26035         * tests/test-xstrtol.sh: Convert CR/LF to NL in output.
26036         * tests/test-xstrtoimax.sh: Likewise.
26037         * tests/test-xstrtoumax.sh: Likewise.
26038
26039 2008-04-21  Bruno Haible  <bruno@clisp.org>
26040
26041         Fix test failure on mingw.
26042         * tests/test-argp-2.sh (func_compare): Remove CRs from sed's output.
26043
26044 2008-04-21  Bruno Haible  <bruno@clisp.org>
26045
26046         * lib/localename.c (SUBLANG_TIBETAN_PRC, SUBLANG_TIBETAN_BHUTAN):
26047         Actually assign a value.
26048
26049 2008-04-20  Bruno Haible  <bruno@clisp.org>
26050
26051         Fix conflict between modules 'canonicalize' and 'canonicalize-lgpl',
26052         take 2.
26053         * lib/canonicalize.c (canonicalize_file_name): Elide if the
26054         'canonicalize-lgpl' module is also used.
26055         * lib/canonicalize-lgpl.c: Undo last change.
26056         * modules/canonicalize-lgpl (configure.ac): Invoke gl_MODULE_INDICATOR.
26057
26058 2008-04-20  Bruno Haible  <bruno@clisp.org>
26059
26060         * lib/mkdir.c (mkdir): Undefine after the includes, not right after
26061         config.h. Provide _mkdir based fallback for mingw.
26062         * lib/sys_stat.in.h (mkdir): Define through an 'extern' declaration
26063         if REPLACE_MKDIR is 1. Otherwise, test for mingw directly.
26064         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Require
26065         gl_SYS_STAT_H_DEFAULTS. When doing the replacement, set REPLACE_MKDIR
26066         rather than defining mkdir in config.h.
26067         * m4/sys_stat_h.m4 (gl_SYS_STAT_MODULE_INDICATOR): New macro.
26068         (gl_SYS_STAT_H_DEFAULTS): New macro.
26069         (gl_HEADER_SYS_STAT_H): Require it. Don't set HAVE_DECL_MKDIR and
26070         HAVE_IO_H any more.
26071         * modules/sys_stat (Makefile.am): Substitute REPLACE_MKDIR instead of
26072         HAVE_DECL_MKDIR and HAVE_IO_H.
26073
26074 2008-04-20  Bruno Haible  <bruno@clisp.org>
26075
26076         * lib/isapipe.c: Port to native Windows platforms.
26077
26078 2008-04-20  Bruno Haible  <bruno@clisp.org>
26079
26080         * lib/gc-gnulib.c: Include <windows.h> before <wincrypt.h>.
26081
26082 2008-04-21  Eric Blake  <ebb9@byu.net>
26083
26084         Work around preprocessors that don't handle UINTMAX_MAX.
26085         * lib/memchr2.c (memchr2): Avoid embedded #if.
26086         Reported by Alain Guibert, fix suggested by Bruno Haible.
26087
26088 2008-04-21  Simon Josefsson  <simon@josefsson.org>
26089
26090         * doc/posix-functions/strftime.texi (strftime): Explain better
26091         Windows incompatibility.  Suggested by Micah Cowan
26092         <micah@cowan.name>.
26093
26094 2008-04-20  Bruno Haible  <bruno@clisp.org>
26095
26096         * modules/uniconv/u32-conv-to-enc (Depends-on): Add unistr/u32-mblen,
26097         unistr/u8-mblen.
26098
26099 2008-04-20  Bruno Haible  <bruno@clisp.org>
26100
26101         Fix test failure on platforms with non-GNU iconv.
26102         * lib/uniconv/u16-conv-to-enc.c (u16_to_u8_lenient): New function.
26103         (U_TO_U8): Use it, rather than u16_to_u8.
26104         * lib/uniconv/u-conv-to-enc.h (FUNC): Allow an incomplete sequence of
26105         units at the end of the input string.
26106         * modules/uniconv/u16-conv-to-enc (Depends-on): Update.
26107
26108 2008-04-20  Bruno Haible  <bruno@clisp.org>
26109
26110         * tests/uniconv/test-u8-conv-to-enc.c (main): Accept result == NULL
26111         when the resulting length is 0.
26112         * tests/uniconv/test-u16-conv-to-enc.c (main): Likewise.
26113
26114 2008-04-20  Bruno Haible  <bruno@clisp.org>
26115
26116         * m4/roundf.m4 (gl_FUNC_ROUNDF): Add test whether roundf actually
26117         works.
26118         * doc/posix-functions/roundf.texi: Mention roundf bug on mingw.
26119
26120 2008-04-20  Bruno Haible  <bruno@clisp.org>
26121
26122         * tests/test-tsearch.c (main): Don't use initstate if it is missing.
26123         * modules/tsearch-tests (configure.ac): Test for initstate function.
26124
26125 2008-04-20  Bruno Haible  <bruno@clisp.org>
26126
26127         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Also provided a substitute
26128         for nlink_t if missing.
26129         * tests/test-sys_stat.c: Check the existence of the nlink_t type.
26130
26131 2008-04-19  Bruno Haible  <bruno@clisp.org>
26132
26133         Work around snprintf bug on Linux libc5.
26134         * m4/printf.m4 (gl_SNPRINTF_SIZE1): New macro.
26135         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
26136         gl_SNPRINTF_SIZE1.
26137         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
26138         * m4/snprintf.m4 (gl_FUNC_SNPRINTF): Likewise. Replace snprintf if
26139         that test failed.
26140         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Likewise.
26141         * lib/vasnprintf.c (USE_SNPRINTF): Set to 0 on Linux libc5 systems.
26142         * modules/snprintf (Files): Add m4/printf.m4.
26143         * modules/vsnprintf (Files): Likewise.
26144         * doc/posix-functions/snprintf.texi: Document Linux libc5 problem.
26145         * doc/posix-functions/vsnprintf.texi: Likewise.
26146
26147 2008-04-19  Bruno Haible  <bruno@clisp.org>
26148
26149         * lib/vasnprintf.c (floorlog10l, floorlog10): Reduce maximum error
26150         from 0.0058 to less than 10^-7.
26151
26152 2008-04-19  Bruno Haible  <bruno@clisp.org>
26153
26154         Fix rounding when a precision is given.
26155         * lib/vasnprintf.c (is_borderline): New function.
26156         (VASNPRINTF): For %e and %g, consider replacing the digits 10....0 with
26157         9...9x.
26158         * tests/test-vasnprintf-posix.c (test_function): Test rounding with %f,
26159         %e, %g.
26160         * tests/test-vasprintf-posix.c (test_function): Likewise.
26161         * tests/test-snprintf-posix.h (test_function): Likewise.
26162         * tests/test-sprintf-posix.h (test_function): Likewise.
26163         * tests/test-fprintf-posix.h (test_function): Test rounding with %f.
26164         * tests/test-printf-posix.h (test_function): Likewise.
26165         * tests/test-printf-posix.output: Update.
26166         Reported by John Darrington <john@darrington.wattle.id.au> via
26167         Ben Pfaff <blp@cs.stanford.edu>.
26168
26169 2008-04-18  Simon Josefsson  <simon@josefsson.org>
26170
26171         * doc/posix-functions/strftime.texi (strftime): Clarify platform.
26172         Suggested by Bruno Haible <bruno@clisp.org>.
26173
26174 2008-04-17  Bruno Haible  <bruno@clisp.org>
26175
26176         * lib/lock.h (gl_lock_destroy, gl_rwlock_destroy,
26177         gl_recursive_lock_destroy): Provide no-op definitions for the dummy
26178         implementation.
26179         Patch by Bruce Merry <bmerry@gmail.com>.
26180
26181 2008-04-17  Simon Josefsson  <simon@josefsson.org>
26182
26183         * doc/posix-functions/strftime.texi (strftime): Mention that %e
26184         doesn't work under Windows.
26185
26186 2008-04-16  Bruno Haible  <bruno@clisp.org>
26187
26188         * lib/localename.c (LANG_MAORI, LANG_QUECHUA, LANG_SOTHO, LANG_UIGHUR):
26189         New macros.
26190         (SUBLANG_BOSNIAN_BOSNIA_HERZEGOVINA_LATIN,
26191         SUBLANG_BOSNIAN_BOSNIA_HERZEGOVINA_CYRILLIC,
26192         SUBLANG_CROATIAN_CROATIA, SUBLANG_CROATIAN_BOSNIA_HERZEGOVINA_LATIN,
26193         SUBLANG_MONGOLIAN_CYRILLIC_MONGOLIA, SUBLANG_MONGOLIAN_PRC,
26194         SUBLANG_QUECHUA_BOLIVIA, SUBLANG_QUECHUA_ECUADOR, SUBLANG_QUECHUA_PERU,
26195         SUBLANG_RUSSIAN_RUSSIA, SUBLANG_RUSSIAN_MOLDAVIA, SUBLANG_SPANISH_US,
26196         SUBLANG_TIBETAN_PRC, SUBLANG_TIBETAN_BHUTAN, SUBLANG_UIGHUR_PRC): New
26197         macros.
26198         (gl_locale_name_from_win32_LANGID): Refine code for Croatian/Bosnian,
26199         Mongolian, Russian, Spanish, Tibetan. Add code for Maori, Quechua,
26200         Northern Sotho, Uighur.
26201
26202 2008-04-16  Bruno Haible  <bruno@clisp.org>
26203
26204         * lib/localename.c (SUBLANG_SINDHI_INDIA): New macro.
26205         (SUBLANG_SINDHI_PAKISTAN): Change value from 1 to 2.
26206         (gl_locale_name_from_win32_LANGID): Fix code for Sindhi.
26207         Reported by Daniel Bergström <daniel@octocode.com>.
26208
26209 2007-12-25  KJK::Hyperion  <hackbunny@reactos.com>
26210             Bruno Haible  <bruno@clisp.org>
26211
26212         * lib/localename.c (gl_locale_name_canonicalize) [WIN32_NATIVE]: New
26213         function.
26214         (gl_locale_name_from_win32_LANGID, gl_locale_name_from_win32_LCID):
26215         New functions, mostly extracted from gl_locale_name_default.
26216         (gl_locale_name_default): Use gl_locale_name_from_win32_LCID.
26217
26218 2008-04-16  Eric Blake  <ebb9@byu.net>
26219
26220         Adjust strtod detection to catch glibc 2.7 bug.
26221         * m4/strtod.m4 (gl_FUNC_STRTOD): Test "nan()" behavior.
26222         Reported by John Gatewood Ham.
26223
26224 2008-04-16  Bruno Haible  <bruno@clisp.org>
26225
26226         Add tentative support for Linux libc5.
26227         * lib/fbufmode.c (fbufmode) [__GNU_LIBRARY__==1]: Reuse glibc2 code.
26228         * lib/fpurge.c (fpurge): Likewise.
26229         * lib/freadable.c (freadable): Likewise.
26230         * lib/freadahead.c (freadahead): Likewise.
26231         * lib/freading.c (freading): Likewise.
26232         * lib/freadptr.c (freadptr): Likewise.
26233         * lib/freadseek.c (freadptrinc): Likewise.
26234         * lib/fseeko.c (rpl_fseeko): Likewise.
26235         * lib/fseterr.c (fseterr): Likewise.
26236         * lib/fwritable.c (fwritable): Likewise.
26237         * lib/fwriting.c (fwriting): Likewise.
26238         Reported by Alain Guibert <alguibert+bts@free.fr>.
26239
26240 2008-04-15  Bruno Haible  <bruno@clisp.org>
26241
26242         * modules/mathl (configure.ac): Define module indicator.
26243
26244 2008-04-15  Bruno Haible  <bruno@clisp.org>
26245
26246         * lib/logl.c (logl): Remove unused variables.
26247
26248 2008-04-15  Bruno Haible  <bruno@clisp.org>
26249
26250         * lib/uniconv/u-conv-to-enc.h (FUNC): Fix return value when U_TO_U8
26251         fails.
26252
26253 2008-04-15  Bruno Haible  <bruno@clisp.org>
26254
26255         * lib/trim.c (trim2): Fix argument of isspace() macro.
26256
26257 2008-04-15  Paolo Bonzini  <bonzini@gnu.org>
26258
26259         * lib/tanl.c (kernel_tanl): Rename flag to invert, initialize it
26260         to 0.
26261         * lib/trigl.c (ieee754_rem_pio2l): Fix range checks.
26262
26263 2008-04-14  Bruno Haible  <bruno@clisp.org>
26264
26265         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Fix underquoting of
26266         AC_LANG_PROGRAM argument.
26267         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Likewise.
26268         * m4/gethrxtime.m4 (gl_ARITHMETIC_HRTIME_T): Likewise.
26269         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Likewise.
26270         * m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
26271         * m4/math_h.m4 (gl_MATH_H): Likewise.
26272         * m4/mbstate_t.m4 (AC_TYPE_MBSTATE_T): Likewise.
26273         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
26274         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Likewise.
26275         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): Likewise.
26276         * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise.
26277         * m4/regex.m4 (gl_REGEX): Likewise.
26278         * m4/stdint.m4 (gl_INTEGER_TYPE_SUFFIX): Likewise.
26279         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET): Likewise.
26280         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
26281         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): Likewise.
26282         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
26283         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
26284         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
26285         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise.
26286
26287 2008-04-14  Jim Meyering  <meyering@redhat.com>
26288
26289         test-strtod: fix typos: s/abs/fabs/
26290         * tests/test-strtod.c (main): Use fabs, not narrowing-to-int "abs".
26291
26292 2008-04-13  Bruno Haible  <bruno@clisp.org>
26293
26294         Fix conflict between modules 'canonicalize' and 'canonicalize-lgpl'.
26295         * lib/canonicalize-lgpl.c: Elide the contents if the 'canonicalize'
26296         module is also used and while not building the reloc-wrapper.
26297
26298 2008-04-13  Bruno Haible  <bruno@clisp.org>
26299
26300         * tests/test-getaddrinfo.c (simple): Ignore EAI_NODATA error.
26301
26302 2008-04-13  Bruno Haible  <bruno@clisp.org>
26303
26304         Fix AIX compilation failure introduced on 2008-04-02.
26305         * tests/test-frexp.c (exp): Undefine before redefining.
26306         * tests/test-frexpl.c (exp): Likewise.
26307
26308 2008-04-13  Bruno Haible  <bruno@clisp.org>
26309
26310         Work around a HP-UX stdio bug.
26311         * tests/test-ftell.c (main): Disable the fseek/ftell test on HP-UX.
26312         * tests/test-ftello.c (main): Likewise.
26313         * doc/posix-functions/ftell.texi: Mention HP-UX bug.
26314         * doc/posix-functions/ftello.texi: Likewise.
26315
26316 2008-04-13  Bruno Haible  <bruno@clisp.org>
26317
26318         Make test-signbit pass on HP-UX/hppa.
26319         * tests/test-signbit.c (minus_zerol): New variable.
26320         (test_signbitl): Use it.
26321
26322 2008-04-13  Bruno Haible  <bruno@clisp.org>
26323
26324         Make truncl work on OSF/1 4.0.
26325         * m4/truncl.m4 (gl_FUNC_TRUNCL): Test whether truncl actually works.
26326         Set REPLACE_TRUNCL, not HAVE_DECL_TRUNCL.
26327         * lib/math.in.h (truncl): Test REPLACE_TRUNCL, not HAVE_DECL_TRUNCL.
26328         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_TRUNCL, not
26329         HAVE_DECL_TRUNCL.
26330         * modules/math (Makefile.am): Substitute REPLACE_TRUNCL, not
26331         HAVE_DECL_TRUNCL.
26332         * doc/posix-functions/truncl.texi: Document the OSF/1 4.0 problem.
26333
26334 2008-04-13  Bruno Haible  <bruno@clisp.org>
26335
26336         * lib/unictype.h: Remove trailing comma from enumeration definitions.
26337
26338 2008-04-13  Bruno Haible  <bruno@clisp.org>
26339
26340         * lib/count-one-bits.h (COUNT_ONE_BITS): Rewrite verification
26341         expression, so as to avoid HP-UX 11 cc compiler bug.
26342
26343 2008-04-13  Bruno Haible  <bruno@clisp.org>
26344
26345         * m4/regex.m4 (gl_PREREQ_REGEX): Also check for <libintl.h>.
26346
26347 2008-04-13  Bruno Haible  <bruno@clisp.org>
26348
26349         * lib/git-merge-changelog.c: Remove empty declaration outside of
26350         functions.
26351
26352 2008-04-13  Bruno Haible  <bruno@clisp.org>
26353
26354         * modules/quotearg-tests (Makefile.am): Define test_quotearg_LDADD.
26355
26356 2008-04-13  Bruno Haible  <bruno@clisp.org>
26357
26358         * doc/posix-headers/sys_socket.texi: Document the problem on EMX.
26359         * lib/sys_socket.in.h (SHUT_RD, SHUT_WR, SHUT_RDWR): Define if missing.
26360         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Replace <sys/socket.h>
26361         also if it exists but lacks definitions of the SHUT_* macros.
26362         * modules/sys_socket (Description): Update.
26363         Reported by Elbert Pol <e.pol@chello.nl>.
26364
26365 2008-04-13  Bruno Haible  <bruno@clisp.org>
26366
26367         * lib/localcharset.c (OS2): Don't redefine if already defined.
26368         Reported by Elbert Pol <e.pol@chello.nl>.
26369
26370 2008-04-13  Bruno Haible  <bruno@clisp.org>
26371
26372         * lib/binary-io.h [__EMX__]: Include <io.h>.
26373         Reported by Elbert Pol <e.pol@chello.nl>.
26374
26375 2008-04-12  Bruno Haible  <bruno@clisp.org>
26376
26377         * lib/fpucw.h: Enable the definitions also for x86_64.
26378         Needed for NetBSD/x86_64.
26379         Reported by Thomas Klausner <tk@giga.or.at>.
26380
26381 2008-04-12  Bruno Haible  <bruno@clisp.org>
26382
26383         * tests/test-strtod.c: Include isnand.h.
26384         (main): Use isnand instead of isnan.
26385         Reported by Jim Meyering.
26386
26387 2008-04-12  Bruno Haible  <bruno@clisp.org>
26388
26389         * m4/isnanf.m4 (gl_ISNANF_WORKS): Add a test for a special NaN.
26390         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
26391
26392 2008-04-12  Jim Meyering  <meyering@redhat.com>
26393
26394         * m4/math_h.m4 (gl_MATH_H): Fix typos.
26395
26396 2008-04-12  Bruno Haible  <bruno@clisp.org>
26397
26398         * lib/freadptr.c (freadptr) [__EMX__]: Fix wrong assertion.
26399         Reported by Elbert Pol <e.pol@chello.nl>.
26400
26401 2008-04-12  Eric Blake  <ebb9@byu.net>
26402
26403         Work around Solaris 10 math.h bug.
26404         * m4/math_h.m4 (gl_MATH_H): Check for bug.
26405         (gl_MATH_H_DEFAULTS): Set up default.
26406         * modules/math (Makefile.am): Replace new indicators.
26407         * lib/math.in.h (NAN, HUGE_VAL): Provide replacements.
26408         * tests/test-math.c (main): Test this.
26409         * m4/strtod.m4 (gl_FUNC_STRTOD): Don't rely on HUGE_VAL.
26410         * doc/posix-headers/math.texi (math.h): Mention bug.
26411         Reported by Nelson H. F. Beebe and Jim Meyering.
26412
26413 2008-04-11  Bruno Haible  <bruno@clisp.org>
26414
26415         Adapt to future versions of Apple GCC.
26416         * lib/argp-fmtstream.h (ARGP_FS_EI): Don't test __GNUC_GNU_INLINE__.
26417         Reported by Peter O'Gorman <peter@pogma.com>.
26418
26419 2008-04-11  Bruno Haible  <bruno@clisp.org>
26420
26421         * tests/test-getaddrinfo.c (simple): Ignore EAI_NONAME error.
26422
26423 2008-04-11  Bruno Haible  <bruno@clisp.org>
26424
26425         * modules/strsignal-tests (Makefile.am): Define test_strsignal_LDADD.
26426
26427         * modules/getaddrinfo-tests (Makefile.am): Define
26428         test_getaddrinfo_LDADD.
26429
26430 2008-04-11  Bruno Haible  <bruno@clisp.org>
26431
26432         * lib/strsignal.c (_sys_siglist): Don't declare if already declared.
26433         (init): Fix syntax error.
26434         * m4/strsignal.m4 (gl_PREREQ_STRSIGNAL): Check whether _sys_siglist
26435         is declared.
26436
26437 2008-04-11  Bruno Haible  <bruno@clisp.org>
26438
26439         * lib/glob.c: Include <stdbool.h>. Needed at least with IRIX cc.
26440         * modules/glob (Depends-on): Add stdbool.
26441
26442 2008-04-11  Bruno Haible  <bruno@clisp.org>
26443
26444         * lib/trim.c: Include <string.h>.
26445
26446 2008-04-11  Eric Blake  <ebb9@byu.net>
26447
26448         Avoid compile failure on OS/2.
26449         * lib/regex_internal.h (internal_function): Disable optimization
26450         on OS/2 (__EMX__), where it caused compiler error.
26451         Reported by Elbert Pol.
26452
26453 2008-04-11  Bruno Haible  <bruno@clisp.org>
26454
26455         Flush the standard error stream before aborting. Needed on mingw.
26456         * tests/test-argmatch.c (ASSERT): Call fflush(stderr) before abort().
26457         * tests/test-array_list.c (ASSERT): Likewise.
26458         * tests/test-array_oset.c (ASSERT): Likewise.
26459         * tests/test-avltree_list.c (ASSERT): Likewise.
26460         * tests/test-avltree_oset.c (ASSERT): Likewise.
26461         * tests/test-avltreehash_list.c (ASSERT): Likewise.
26462         * tests/test-binary-io.c (ASSERT): Likewise.
26463         * tests/test-byteswap.c (ASSERT): Likewise.
26464         * tests/test-c-ctype.c (ASSERT): Likewise.
26465         * tests/test-c-strcasecmp.c (ASSERT): Likewise.
26466         * tests/test-c-strcasestr.c (ASSERT): Likewise.
26467         * tests/test-c-strncasecmp.c (ASSERT): Likewise.
26468         * tests/test-c-strstr.c (ASSERT): Likewise.
26469         * tests/test-canonicalize-lgpl.c (ASSERT): Likewise.
26470         * tests/test-canonicalize.c (ASSERT): Likewise.
26471         * tests/test-carray_list.c (ASSERT): Likewise.
26472         * tests/test-ceilf1.c (ASSERT): Likewise.
26473         * tests/test-ceilf2.c (ASSERT): Likewise.
26474         * tests/test-ceill.c (ASSERT): Likewise.
26475         * tests/test-count-one-bits.c (ASSERT): Likewise.
26476         * tests/test-fbufmode.c (ASSERT): Likewise.
26477         * tests/test-fflush2.c (ASSERT): Likewise.
26478         * tests/test-floorf1.c (ASSERT): Likewise.
26479         * tests/test-floorf2.c (ASSERT): Likewise.
26480         * tests/test-floorl.c (ASSERT): Likewise.
26481         * tests/test-fopen.c (ASSERT): Likewise.
26482         * tests/test-fpending.c (ASSERT): Likewise.
26483         * tests/test-fprintf-posix.c (ASSERT): Likewise.
26484         * tests/test-fpurge.c (ASSERT): Likewise.
26485         * tests/test-freadable.c (ASSERT): Likewise.
26486         * tests/test-freadahead.c (ASSERT): Likewise.
26487         * tests/test-freading.c (ASSERT): Likewise.
26488         * tests/test-freadptr.c (ASSERT): Likewise.
26489         * tests/test-freadptr2.c (ASSERT): Likewise.
26490         * tests/test-freadseek.c (ASSERT): Likewise.
26491         * tests/test-freopen.c (ASSERT): Likewise.
26492         * tests/test-frexp.c (ASSERT): Likewise.
26493         * tests/test-frexpl.c (ASSERT): Likewise.
26494         * tests/test-fseek.c (ASSERT): Likewise.
26495         * tests/test-fseeko.c (ASSERT): Likewise.
26496         * tests/test-fstrcmp.c (ASSERT): Likewise.
26497         * tests/test-ftell.c (ASSERT): Likewise.
26498         * tests/test-ftello.c (ASSERT): Likewise.
26499         * tests/test-func.c (ASSERT): Likewise.
26500         * tests/test-fwritable.c (ASSERT): Likewise.
26501         * tests/test-fwriting.c (ASSERT): Likewise.
26502         * tests/test-getdelim.c (ASSERT): Likewise.
26503         * tests/test-getline.c (ASSERT): Likewise.
26504         * tests/test-i-ring.c (ASSERT): Likewise.
26505         * tests/test-iconv-utf.c (ASSERT): Likewise.
26506         * tests/test-iconv.c (ASSERT): Likewise.
26507         * tests/test-isfinite.c (ASSERT): Likewise.
26508         * tests/test-isnand.c (ASSERT): Likewise.
26509         * tests/test-isnanf.c (ASSERT): Likewise.
26510         * tests/test-isnanl.h (ASSERT): Likewise.
26511         * tests/test-ldexpl.c (ASSERT): Likewise.
26512         * tests/test-linked_list.c (ASSERT): Likewise.
26513         * tests/test-linkedhash_list.c (ASSERT): Likewise.
26514         * tests/test-localename.c (ASSERT): Likewise.
26515         * tests/test-lseek.c (ASSERT): Likewise.
26516         * tests/test-mbscasecmp.c (ASSERT): Likewise.
26517         * tests/test-mbscasestr1.c (ASSERT): Likewise.
26518         * tests/test-mbscasestr2.c (ASSERT): Likewise.
26519         * tests/test-mbscasestr3.c (ASSERT): Likewise.
26520         * tests/test-mbscasestr4.c (ASSERT): Likewise.
26521         * tests/test-mbschr.c (ASSERT): Likewise.
26522         * tests/test-mbscspn.c (ASSERT): Likewise.
26523         * tests/test-mbsncasecmp.c (ASSERT): Likewise.
26524         * tests/test-mbspbrk.c (ASSERT): Likewise.
26525         * tests/test-mbspcasecmp.c (ASSERT): Likewise.
26526         * tests/test-mbsrchr.c (ASSERT): Likewise.
26527         * tests/test-mbsspn.c (ASSERT): Likewise.
26528         * tests/test-mbsstr1.c (ASSERT): Likewise.
26529         * tests/test-mbsstr2.c (ASSERT): Likewise.
26530         * tests/test-mbsstr3.c (ASSERT): Likewise.
26531         * tests/test-memchr2.c (ASSERT): Likewise.
26532         * tests/test-memmem.c (ASSERT): Likewise.
26533         * tests/test-open.c (ASSERT): Likewise.
26534         * tests/test-printf-frexp.c (ASSERT): Likewise.
26535         * tests/test-printf-frexpl.c (ASSERT): Likewise.
26536         * tests/test-printf-posix.c (ASSERT): Likewise.
26537         * tests/test-quotearg.c (ASSERT): Likewise.
26538         * tests/test-rbtree_list.c (ASSERT): Likewise.
26539         * tests/test-rbtree_oset.c (ASSERT): Likewise.
26540         * tests/test-rbtreehash_list.c (ASSERT): Likewise.
26541         * tests/test-round1.c (ASSERT): Likewise.
26542         * tests/test-roundf1.c (ASSERT): Likewise.
26543         * tests/test-roundl.c (ASSERT): Likewise.
26544         * tests/test-signbit.c (ASSERT): Likewise.
26545         * tests/test-sleep.c (ASSERT): Likewise.
26546         * tests/test-snprintf-posix.c (ASSERT): Likewise.
26547         * tests/test-snprintf.c (ASSERT): Likewise.
26548         * tests/test-sprintf-posix.c (ASSERT): Likewise.
26549         * tests/test-stat-time.c (ASSERT): Likewise.
26550         * tests/test-strcasestr.c (ASSERT): Likewise.
26551         * tests/test-strerror.c (ASSERT): Likewise.
26552         * tests/test-striconv.c (ASSERT): Likewise.
26553         * tests/test-striconveh.c (ASSERT): Likewise.
26554         * tests/test-striconveha.c (ASSERT): Likewise.
26555         * tests/test-strsignal.c (ASSERT): Likewise.
26556         * tests/test-strstr.c (ASSERT): Likewise.
26557         * tests/test-strtod.c (ASSERT): Likewise.
26558         * tests/test-trunc1.c (ASSERT): Likewise.
26559         * tests/test-trunc2.c (ASSERT): Likewise.
26560         * tests/test-truncf1.c (ASSERT): Likewise.
26561         * tests/test-truncf2.c (ASSERT): Likewise.
26562         * tests/test-truncl.c (ASSERT): Likewise.
26563         * tests/test-vasnprintf-posix.c (ASSERT): Likewise.
26564         * tests/test-vasnprintf-posix2.c (ASSERT): Likewise.
26565         * tests/test-vasnprintf.c (ASSERT): Likewise.
26566         * tests/test-vasprintf-posix.c (ASSERT): Likewise.
26567         * tests/test-vasprintf.c (ASSERT): Likewise.
26568         * tests/test-vfprintf-posix.c (ASSERT): Likewise.
26569         * tests/test-vprintf-posix.c (ASSERT): Likewise.
26570         * tests/test-vsnprintf-posix.c (ASSERT): Likewise.
26571         * tests/test-vsnprintf.c (ASSERT): Likewise.
26572         * tests/test-vsprintf-posix.c (ASSERT): Likewise.
26573         * tests/test-wcwidth.c (ASSERT): Likewise.
26574         * tests/test-xfprintf-posix.c (ASSERT): Likewise.
26575         * tests/test-xprintf-posix.c (ASSERT): Likewise.
26576         * tests/test-xvasprintf.c (ASSERT): Likewise.
26577         * tests/uniconv/test-u16-conv-from-enc.c (ASSERT): Likewise.
26578         * tests/uniconv/test-u16-conv-to-enc.c (ASSERT): Likewise.
26579         * tests/uniconv/test-u16-strconv-from-enc.c (ASSERT): Likewise.
26580         * tests/uniconv/test-u16-strconv-to-enc.c (ASSERT): Likewise.
26581         * tests/uniconv/test-u32-conv-from-enc.c (ASSERT): Likewise.
26582         * tests/uniconv/test-u32-conv-to-enc.c (ASSERT): Likewise.
26583         * tests/uniconv/test-u32-strconv-from-enc.c (ASSERT): Likewise.
26584         * tests/uniconv/test-u32-strconv-to-enc.c (ASSERT): Likewise.
26585         * tests/uniconv/test-u8-conv-from-enc.c (ASSERT): Likewise.
26586         * tests/uniconv/test-u8-conv-to-enc.c (ASSERT): Likewise.
26587         * tests/uniconv/test-u8-strconv-from-enc.c (ASSERT): Likewise.
26588         * tests/uniconv/test-u8-strconv-to-enc.c (ASSERT): Likewise.
26589         * tests/unictype/test-bidi_byname.c (ASSERT): Likewise.
26590         * tests/unictype/test-bidi_name.c (ASSERT): Likewise.
26591         * tests/unictype/test-bidi_of.c (ASSERT): Likewise.
26592         * tests/unictype/test-bidi_test.c (ASSERT): Likewise.
26593         * tests/unictype/test-block_list.c (ASSERT): Likewise.
26594         * tests/unictype/test-block_of.c (ASSERT): Likewise.
26595         * tests/unictype/test-block_test.c (ASSERT): Likewise.
26596         * tests/unictype/test-categ_and.c (ASSERT): Likewise.
26597         * tests/unictype/test-categ_and_not.c (ASSERT): Likewise.
26598         * tests/unictype/test-categ_byname.c (ASSERT): Likewise.
26599         * tests/unictype/test-categ_name.c (ASSERT): Likewise.
26600         * tests/unictype/test-categ_none.c (ASSERT): Likewise.
26601         * tests/unictype/test-categ_of.c (ASSERT): Likewise.
26602         * tests/unictype/test-categ_or.c (ASSERT): Likewise.
26603         * tests/unictype/test-categ_test_withtable.c (ASSERT): Likewise.
26604         * tests/unictype/test-combining.c (ASSERT): Likewise.
26605         * tests/unictype/test-decdigit.c (ASSERT): Likewise.
26606         * tests/unictype/test-digit.c (ASSERT): Likewise.
26607         * tests/unictype/test-mirror.c (ASSERT): Likewise.
26608         * tests/unictype/test-numeric.c (ASSERT): Likewise.
26609         * tests/unictype/test-pr_byname.c (ASSERT): Likewise.
26610         * tests/unictype/test-pr_test.c (ASSERT): Likewise.
26611         * tests/unictype/test-predicate-part1.h (ASSERT): Likewise.
26612         * tests/unictype/test-scripts.c (ASSERT): Likewise.
26613         * tests/unictype/test-sy_c_ident.c (ASSERT): Likewise.
26614         * tests/unictype/test-sy_java_ident.c (ASSERT): Likewise.
26615         * tests/unistdio/test-u16-asnprintf1.c (ASSERT): Likewise.
26616         * tests/unistdio/test-u16-vasnprintf1.c (ASSERT): Likewise.
26617         * tests/unistdio/test-u16-vasnprintf2.c (ASSERT): Likewise.
26618         * tests/unistdio/test-u16-vasnprintf3.c (ASSERT): Likewise.
26619         * tests/unistdio/test-u16-vasprintf1.c (ASSERT): Likewise.
26620         * tests/unistdio/test-u16-vsnprintf1.c (ASSERT): Likewise.
26621         * tests/unistdio/test-u16-vsprintf1.c (ASSERT): Likewise.
26622         * tests/unistdio/test-u32-asnprintf1.c (ASSERT): Likewise.
26623         * tests/unistdio/test-u32-vasnprintf1.c (ASSERT): Likewise.
26624         * tests/unistdio/test-u32-vasnprintf2.c (ASSERT): Likewise.
26625         * tests/unistdio/test-u32-vasnprintf3.c (ASSERT): Likewise.
26626         * tests/unistdio/test-u32-vasprintf1.c (ASSERT): Likewise.
26627         * tests/unistdio/test-u32-vsnprintf1.c (ASSERT): Likewise.
26628         * tests/unistdio/test-u32-vsprintf1.c (ASSERT): Likewise.
26629         * tests/unistdio/test-u8-asnprintf1.c (ASSERT): Likewise.
26630         * tests/unistdio/test-u8-vasnprintf1.c (ASSERT): Likewise.
26631         * tests/unistdio/test-u8-vasnprintf2.c (ASSERT): Likewise.
26632         * tests/unistdio/test-u8-vasnprintf3.c (ASSERT): Likewise.
26633         * tests/unistdio/test-u8-vasprintf1.c (ASSERT): Likewise.
26634         * tests/unistdio/test-u8-vsnprintf1.c (ASSERT): Likewise.
26635         * tests/unistdio/test-u8-vsprintf1.c (ASSERT): Likewise.
26636         * tests/unistdio/test-ulc-asnprintf1.c (ASSERT): Likewise.
26637         * tests/unistdio/test-ulc-vasnprintf1.c (ASSERT): Likewise.
26638         * tests/unistdio/test-ulc-vasnprintf2.c (ASSERT): Likewise.
26639         * tests/unistdio/test-ulc-vasnprintf3.c (ASSERT): Likewise.
26640         * tests/unistdio/test-ulc-vasprintf1.c (ASSERT): Likewise.
26641         * tests/unistdio/test-ulc-vsnprintf1.c (ASSERT): Likewise.
26642         * tests/unistdio/test-ulc-vsprintf1.c (ASSERT): Likewise.
26643         * tests/uniwidth/test-u16-strwidth.c (ASSERT): Likewise.
26644         * tests/uniwidth/test-u16-width.c (ASSERT): Likewise.
26645         * tests/uniwidth/test-u32-strwidth.c (ASSERT): Likewise.
26646         * tests/uniwidth/test-u32-width.c (ASSERT): Likewise.
26647         * tests/uniwidth/test-u8-strwidth.c (ASSERT): Likewise.
26648         * tests/uniwidth/test-u8-width.c (ASSERT): Likewise.
26649         * tests/uniwidth/test-uc_width.c (ASSERT): Likewise.
26650         Reported by Eric Blake.
26651
26652 2008-04-11  Bruno Haible  <bruno@clisp.org>
26653
26654         * lib/wchar.in.h: Tweak comment.
26655
26656 2008-04-11  Bruno Haible  <bruno@clisp.org>
26657
26658         Fix __GNUC_STDC_INLINE__ predefine with Apple GCC on MacOS X 10.5.
26659         * gnulib-tool (func_emit_initmacro_start): Emit an invocation of
26660         gl_COMMON.
26661         * m4/gnulib-common.m4 (gl_COMMON, gl_COMMON_BODY): New macros.
26662
26663 2008-04-11  Bruno Haible  <bruno@clisp.org>
26664
26665         * modules/git-merge-changelog (git_merge_changelog_LDADD): Add LIBINTL.
26666
26667 2008-04-11  Simon Josefsson  <simon@josefsson.org>
26668
26669         * lib/gc-gnulib.c: On Windows, use CryptGenRandom from CSP instead
26670         of attempting to use non-existing /dev/*random.  Based on patch
26671         from Adam Strzelecki <ono@java.pl> in
26672         <http://lists.gnu.org/archive/html/help-gsasl/2008-02/msg00000.html>.
26673
26674 2008-04-08  Bruno Haible  <bruno@clisp.org>
26675
26676         Add tentative support for emx+gcc.
26677         * lib/fbufmode.c (fbufmode) [__EMX__]: Add conditional code.
26678         * lib/fpurge.c (fpurge): Likewise.
26679         * lib/freadable.c (freadable): Likewise.
26680         * lib/freadahead.c (freadahead): Likewise.
26681         * lib/freading.c (freading): Likewise.
26682         * lib/freadptr.c (freadptr): Likewise.
26683         * lib/freadseek.c (freadptrinc): Likewise.
26684         * lib/fseeko.c (rpl_fseeko): Likewise.
26685         * lib/fseterr.c (fseterr): Likewise.
26686         * lib/fwritable.c (fwritable): Likewise.
26687         * lib/fwriting.c (fwriting): Likewise.
26688         * m4/fpending.m4 (gl_FUNC_FPENDING): Add a variant for emx+gcc.
26689
26690 2008-04-09  Eric Blake  <ebb9@byu.net>
26691
26692         Avoid some autoconf warnings.
26693         * m4/regex.m4 (gl_REGEX): s/AC_HELP_STRING/AS_HELP_STRING/.
26694         * m4/acl.m4 (gl_FUNC_ACL): Likewise.
26695         * m4/afs.m4 (gl_AFS): Likewise.
26696         * m4/gc-random.m4 (gl_GC_RANDOM): Likewise.
26697         * m4/include_next.m4 (gl_INCLUDE_NEXT): s/AC_FOREACH/m4_foreach_w/.
26698         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
26699         * m4/stdint.m4 (gl_STDINT_BITSIZEOF, gl_CHECK_TYPES_SIGNED)
26700         (gl_INTEGER_TYPE_SUFFIX): Likewise.
26701         * m4/onceonly_2_57.m4 (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE)
26702         (AC_CHECK_DECLS_ONCE): Likewise.
26703         Rename file...
26704         * m4/onceonly.m4: ...to this, and delete 2.54 variant, now that
26705         gnulib-tool requires autoconf 2.59 or better.
26706         * gnulib-tool (func_get_filelist): s/\(onceonly\)_2_57.m4/\1.m4/.
26707
26708 2008-04-08  Eric Blake  <ebb9@byu.net>
26709
26710         Use 'git describe --match' if present (added in git 1.5.5).
26711         * build-aux/git-version-gen: Limit result to tags that match 'v*'
26712         if possible.
26713
26714 2008-04-08  Bruno Haible  <bruno@clisp.org>
26715
26716         Add tentative support for OpenServer.
26717         * lib/fbufmode.c (fbufmode): Add conditional define for _flag, _base,
26718         _ptr, _cnt.
26719         * lib/fpurge.c (fpurge): Likewise.
26720         * lib/freadable.c (freadable): Likewise.
26721         * lib/freadahead.c (freadahead): Likewise.
26722         * lib/freading.c (freading): Likewise.
26723         * lib/freadptr.c (freadptr): Likewise.
26724         * lib/freadseek.c (freadptrinc): Likewise.
26725         * lib/fseeko.c (rpl_fseeko): Likewise.
26726         * lib/fseterr.c (fseterr): Likewise.
26727         * lib/fwritable.c (fwritable): Likewise.
26728         * lib/fwriting.c (fwriting): Likewise.
26729         Reported by Roger Cornelius <rac@tenzing.org> and
26730         Brian K. White <brian@aljex.com>.
26731
26732 2008-04-06  Jim Meyering  <meyering@redhat.com>
26733
26734         * gnulib-tool (func_add_or_update): s/backuped/backed up/ in diagnostic
26735
26736 2008-04-06  Bruno Haible  <bruno@clisp.org>
26737
26738         Avoid possible error with non-ASCII bytes in UTF-8 locales.
26739         * tests/test-fprintf-posix.sh: Use "LC_ALL=C tr" instead of "tr".
26740         * tests/test-printf-posix.sh: Likewise.
26741         * tests/test-vfprintf-posix.sh: Likewise.
26742         * tests/test-vprintf-posix.sh: Likewise.
26743         * tests/test-xprintf-posix.sh: Likewise.
26744
26745 2008-04-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
26746
26747         * m4/double-slash-root.m4 (gl_DOUBLE_SLASH_ROOT): Fix quoting,
26748         hide error from 'ls', needed on OS/2.
26749         Report by Elbert Pol <elbert.pol@gmail.com>.
26750
26751 2008-04-04  Eric Blake  <ebb9@byu.net>
26752
26753         Make test-fseeko.c failures meaningful.
26754         * tests/test-fseeko.c: Print line number on failure.
26755         * tests/test-fseek.c: Likewise.
26756         Reported by Nelson H. F. Beebe.
26757
26758         Improve strtod bug detection check.
26759         * m4/strtod.m4 (gl_FUNC_STRTOD): Also check for hex-float parsing,
26760         required for Solaris 10.
26761         Reported by Bob Friesenhahn and Nelson H. F. Beebe.
26762
26763 2008-04-04  Bruno Haible  <bruno@clisp.org>
26764
26765         * modules/relocatable-prog-wrapper (Files): Add m4/environ.m4. Needed
26766         by m4/setenv.m4.
26767
26768 2008-04-03  Eric Blake  <ebb9@byu.net>
26769
26770         Ensure sane .version contents.
26771         * top/GNUmakefile (_dummy): Also delete .version when rebuilding
26772         version string.
26773         * build-aux/git-version-gen: Improve documentation.
26774
26775         Make GNU make output nicer.
26776         * top/GNUmakefile [!_have-Makefile]: Add dependency on
26777         MAKECMDGOALS to enforce message for all command line targets.  Set
26778         srcdir for use in maint.mk.
26779
26780         Another maintainer tweak.
26781         * top/GNUmakefile (_is-dist-target): Allow maintainer-distcheck as
26782         a target that regenerates version.
26783
26784 2008-04-03  Jim Meyering  <meyering@redhat.com>
26785
26786         vc-list-files: don't cause coreutils "make po-check" failure
26787         * build-aux/vc-list-files: Skip postprocessing when $2 is '.'
26788
26789 2008-04-03  Eric Blake  <ebb9@byu.net>
26790
26791         Allow VPATH usage of vc-list-files.
26792         * build-aux/vc-list-files (scriptversion): Add timestamp.
26793         (options): Add --help, --version, -C.
26794         (CVS): Support installed cvsu.
26795
26796 2008-04-02  Bruno Haible  <bruno@clisp.org>
26797
26798         Avoid some "statement with no effect" warnings from gcc.
26799         * tests/test-wctype.c (main): Explicitly ignore unused values.
26800         Reported by Jim Meyering.
26801
26802 2008-04-02  Jim Meyering  <meyering@redhat.com>
26803
26804         Avoid some warnings from "gcc -Wshadow".
26805         * tests/test-frexp.c (exp): Define to a different identifier.
26806         * tests/test-frexpl.c (exp): Likewise.
26807
26808 2008-04-03  Jim Meyering  <meyering@redhat.com>
26809
26810         bootstrap: remove dangling *.[ch] symlinks from lib
26811         * build-aux/bootstrap [dangling symlink removal]: Move find's
26812         -depth option to precede all others, to avoid a warning.
26813         Remove *.[ch] files too, and from "$source_base" (usually lib/).
26814
26815 2008-04-02  Bruno Haible  <bruno@clisp.org>
26816
26817         Avoid some warnings from "gcc -Wshadow".
26818         * tests/tests-vfprintf-posix.c (my_fprintf): Move after test_function.
26819         * tests/tests-vprintf-posix.c (my_printf): Move after test_function.
26820         * tests/tests-vsnprintf-posix.c (my_snprintf): Move after test_function.
26821         * tests/tests-vsprintf-posix.c (my_sprintf): Move after test_function.
26822         Reported by Jim Meyering.
26823
26824 2008-04-01  Bruno Haible  <bruno@clisp.org>
26825
26826         Fix test to work on IRIX 6.5 with cc.
26827         * tests/test-math.c (numeric_equal): New function.
26828         (main): Use it.
26829
26830 2008-04-01  Bruno Haible  <bruno@clisp.org>
26831
26832         * doc/posix-headers/math.texi: Refine documentation of NAN problem.
26833
26834 2008-04-01  Bruno Haible  <bruno@clisp.org>
26835
26836         * tests/test-vasnprintf-posix.c: Include nan.h instead of <math.h>.
26837         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
26838         * modules/vasnprintf-posix-tests (Files): Add tests/nan.h.
26839         (Depends-on): Remove math.
26840
26841         * tests/test-vasprintf-posix.c: Include nan.h instead of <math.h>.
26842         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
26843         * modules/vasprintf-posix-tests (Files): Add tests/nan.h.
26844         (Depends-on): Remove math.
26845
26846         * tests/test-snprintf-posix.h: Include nan.h instead of <math.h>.
26847         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
26848         * modules/snprintf-posix-tests (Files): Add tests/nan.h.
26849         (Depends-on): Remove math.
26850         * modules/vsnprintf-posix-tests (Files): Add tests/nan.h.
26851         (Depends-on): Remove math.
26852
26853         * tests/test-sprintf-posix.h: Include nan.h instead of <math.h>.
26854         (test_function): Use NaNd, NaNl instead of NAN or 0.0L/0.0L.
26855         * modules/sprintf-posix-tests (Files): Add tests/nan.h.
26856         (Depends-on): Remove math.
26857         * modules/vsprintf-posix-tests (Files): Add tests/nan.h.
26858         (Depends-on): Remove math.
26859
26860         * tests/test-round1.c: Include nan.h.
26861         (main): Use NaNd instead of NAN.
26862         * modules/round-tests (Files): Add tests/nan.h.
26863
26864         * tests/test-trunc1.c: Include nan.h.
26865         (main): Use NaNd instead of NAN.
26866         * modules/trunc-tests (Files): Add tests/nan.h.
26867
26868         * tests/test-roundf1.c: Include nan.h.
26869         (main): Use NaNf instead of NAN.
26870         * modules/roundf-tests (Files): Add tests/nan.h.
26871
26872         * tests/test-truncf1.c: Include nan.h.
26873         (main): Use NaNf instead of NAN.
26874         * modules/truncf-tests (Files): Add tests/nan.h.
26875
26876         * tests/test-ceilf1.c: Include nan.h.
26877         (main): Use NaNf instead of NAN.
26878         * modules/ceilf-tests (Files): Add tests/nan.h.
26879
26880         * tests/test-floorf1.c: Include nan.h.
26881         (main): Use NaNf instead of NAN.
26882         * modules/floorf-tests (Files): Add tests/nan.h.
26883
26884         * tests/test-isnanf.c: Include nan.h instead of <math.h>.
26885         (main): Use NaNf instead of NAN.
26886         * modules/isnanf-nolibm-tests (Files): Add tests/nan.h.
26887
26888         * tests/test-isnand.c: Include nan.h instead of <math.h>.
26889         (main): Use NaNd instead of NAN.
26890         * modules/isnand-nolibm-tests (Files): Add tests/nan.h.
26891
26892         * tests/test-frexp.c: Include nan.h.
26893         (main): Use NaNd instead of NAN.
26894         * modules/frexp-tests (Files): Add tests/nan.h.
26895
26896         * lib/isnan.c: Don't include <math.h>.
26897         (FUNC): Don't use NAN macro.
26898         * modules/isnand-nolibm (Depends-on): Remove math.
26899         * modules/isnanf-nolibm (Depends-on): Remove math.
26900         * modules/isnanl (Depends-on): Remove math.
26901         * modules/isnanl-nolibm (Depends-on): Remove math.
26902
26903         * tests/nan.h: New file.
26904
26905 2008-04-01  Eric Blake  <ebb9@byu.net>
26906
26907         Fix typos.
26908         * tests/test-strtod.c (main): s/FLT_/DBL_/ for minimum and epsilon
26909         values to be the right type.
26910
26911         For now, cater to gnulib strtod inaccuracies.
26912         * tests/test-strtod.c (main): Allow 1-ulp error on expected
26913         fractional results.  While not as nice from a QoI perspective, it
26914         is a quicker patch than correctly implementing decimal to binary
26915         rounding.
26916
26917 2008-03-31  Eric Blake  <ebb9@byu.net>
26918
26919         Guarantee a definition of NAN.
26920         * lib/math.in.h (NAN): Define if missing.
26921         * tests/test-math.c (main): Test it.
26922         * doc/posix-headers/math.texi (math.h): Document this.
26923         * lib/isnan.c (rpl_isnand): Use it.
26924         * tests/test-ceilf1.c (NaN): Delete, and use NAN instead.
26925         * tests/test-floorf1.c (NaN): Likewise.
26926         * tests/test-frexp.c (NaN): Likewise.
26927         * tests/test-isnand.c (NaN): Likewise.
26928         * tests/test-isnanf.c (NaN): Likewise.
26929         * tests/test-round1.c (NaN): Likewise.
26930         * tests/test-roundf1.c (NaN): Likewise.
26931         * tests/test-snprintf-posix.h (NaN): Likewise.
26932         * tests/test-sprintf-posix.h (NaN): Likewise.
26933         * tests/test-trunc1.c (NaN): Likewise.
26934         * tests/test-truncf1.c (NaN): Likewise.
26935         * tests/test-vasnprintf-posix.c (NaN): Likewise.
26936         * tests/test-vasprintf-posix.c (NaN): Likewise.
26937         * modules/isnand-nolibm (Depends-on): Add math.
26938         * modules/isnanf-nolibm (Depends-on): Likewise.
26939         * modules/isnanl (Depends-on): Likewise.
26940         * modules/isnanl-nolibm (Depends-on): Likewise.
26941         * modules/snprintf-posix-tests (Depends-on): Likewise.
26942         * modules/sprintf-posix-tests (Depends-on): Likewise.
26943         * modules/vsnprintf-posix-tests (Depends-on): Likewise.
26944         * modules/vsprintf-posix-tests (Depends-on): Likewise.
26945         * modules/vasnprintf-posix-tests (Depends-on): Likewise.
26946         * modules/vasprintf-posix-tests (Depends-on): Likewise.
26947
26948 2008-03-31  Bruno Haible  <bruno@clisp.org>
26949
26950         * tests/test-strtod.c (main): Update results for OSF/1 platforms.
26951         * doc/posix-functions/strtod.texi: Likewise.
26952
26953 2008-03-31  Bruno Haible  <bruno@clisp.org>
26954
26955         * tests/test-strtod.c (main): Don't use C99 syntax.
26956
26957 2008-03-31  Bruno Haible  <bruno@clisp.org>
26958
26959         * tests/test-strtod.c (main): Don't test NAN macro. Needed for Solaris.
26960         Reported by Eric Blake.
26961
26962 2008-03-31  Jim Meyering  <meyering@redhat.com>
26963
26964         Don't compare actual signbit return values.
26965         * tests/test-strtod.c (main): Rather, compare only their
26966         zero/non-zero nature.
26967
26968 2008-03-31  Eric Blake  <ebb9@byu.net>
26969
26970         More strtod documentation.
26971         * doc/posix-functions/strtod.texi (strtod): Interpret more test
26972         failures as distinct bugs.
26973
26974 2008-03-30  Paul Eggert  <eggert@cs.ucla.edu>
26975
26976         * lib/wchar.in.h [defined __need_mbstate_t]: Just include <wchar.h>.
26977         Problem reported by Erik Benada in
26978         <http://lists.gnu.org/archive/html/bug-gnulib/2008-03/msg00249.html>.
26979
26980 2008-03-30  Bruno Haible  <bruno@clisp.org>
26981
26982         * tests/test-strtod.c: Add comments about which assertion fails on which
26983         platform.
26984         * doc/posix-functions/strtod.texi: Add info about many more platforms.
26985
26986 2008-03-30  Eric Blake  <ebb9@byu.net>
26987
26988         Test signbit behavior on zeros.
26989         * tests/test-signbit.c (test_signbitf): Add tests for zero.
26990         (test_signbitd, test_signbitl): Likewise.
26991
26992         More strtod touchups.
26993         * tests/test-strtod.c (main): Ignore tests for signbit on NaN, and
26994         sign of negative underflow, for now.  Use .5, not .1.
26995         * doc/posix-functions/strtod.texi (strtod): Mention these
26996         limitations.
26997         Reported by Jim Meyering.
26998
26999 2008-03-30  Bruno Haible  <bruno@clisp.org>
27000
27001         * lib/striconveh.h (mem_iconveh, str_iconveh): Optimize the conversion
27002         from UTF-8 to UTF-8//TRANSLIT in the same way as from UTF-8 to UTF-8.
27003
27004 2008-03-30  Bruno Haible  <bruno@clisp.org>
27005
27006         Avoid failure when attempting to return empty iconv results on some
27007         platforms.
27008         * lib/striconveh.c (mem_cd_iconveh_internal): In the final memory
27009         allocation, don't report ENOMEM when the resulting string is empty.
27010
27011 2008-03-30  Bruno Haible  <bruno@clisp.org>
27012
27013         Fix buffer overrun.
27014         * lib/vasnprintf.c (VASNPRINTF): If !USE_SNPRINTF && pad_ourselves:
27015         Don't consider the width for tmp_length. Check count against tmp_length
27016         before doing the padding. Ensure enough allocation during padding.
27017
27018 2008-03-30  Eric Blake  <ebb9@byu.net>
27019
27020         strtod touchups.
27021         * lib/strtod.c (strtod): Avoid compiler warnings.
27022         Reported by Jim Meyering.
27023
27024 2008-03-30  Bruno Haible  <bruno@clisp.org>
27025
27026         * lib/unistdio/u-vsprintf.h (EOVERFLOW): Remove fallback.
27027         * modules/unistdio/ulc-vsprintf (Depends-on): Add EOVERFLOW.
27028         * modules/unistdio/u8-vsprintf (Depends-on): Add EOVERFLOW.
27029         * modules/unistdio/u8-u8-vsprintf (Depends-on): Add EOVERFLOW.
27030         * modules/unistdio/u16-vsprintf (Depends-on): Add EOVERFLOW.
27031         * modules/unistdio/u16-u16-vsprintf (Depends-on): Add EOVERFLOW.
27032         * modules/unistdio/u32-vsprintf (Depends-on): Add EOVERFLOW.
27033         * modules/unistdio/u32-u32-vsprintf (Depends-on): Add EOVERFLOW.
27034
27035         * lib/unistdio/u-vsnprintf.h (EOVERFLOW): Remove fallback.
27036         * modules/unistdio/ulc-vsnprintf (Depends-on): Add EOVERFLOW.
27037         * modules/unistdio/u8-vsnprintf (Depends-on): Add EOVERFLOW.
27038         * modules/unistdio/u8-u8-vsnprintf (Depends-on): Add EOVERFLOW.
27039         * modules/unistdio/u16-vsnprintf (Depends-on): Add EOVERFLOW.
27040         * modules/unistdio/u16-u16-vsnprintf (Depends-on): Add EOVERFLOW.
27041         * modules/unistdio/u32-vsnprintf (Depends-on): Add EOVERFLOW.
27042         * modules/unistdio/u32-u32-vsnprintf (Depends-on): Add EOVERFLOW.
27043
27044         * lib/unistdio/u-vasprintf.h (EOVERFLOW): Remove fallback.
27045         * modules/unistdio/ulc-vasprintf (Depends-on): Add EOVERFLOW.
27046         * modules/unistdio/u8-vasprintf (Depends-on): Add EOVERFLOW.
27047         * modules/unistdio/u8-u8-vasprintf (Depends-on): Add EOVERFLOW.
27048         * modules/unistdio/u16-vasprintf (Depends-on): Add EOVERFLOW.
27049         * modules/unistdio/u16-u16-vasprintf (Depends-on): Add EOVERFLOW.
27050         * modules/unistdio/u32-vasprintf (Depends-on): Add EOVERFLOW.
27051         * modules/unistdio/u32-u32-vasprintf (Depends-on): Add EOVERFLOW.
27052
27053         * lib/unistdio/ulc-vfprintf.c (EOVERFLOW): Remove fallback.
27054         * modules/unistdio/ulc-vfprintf (Depends-on): Add EOVERFLOW.
27055
27056         * lib/unistdio/ulc-fprintf.c (EOVERFLOW): Remove fallback.
27057         * modules/unistdio/ulc-fprintf (Depends-on): Add EOVERFLOW.
27058
27059         * lib/xvasprintf.c (EOVERFLOW): Remove fallback.
27060         * modules/xvasprintf (Depends-on): Add EOVERFLOW.
27061
27062         * lib/vsprintf.c (EOVERFLOW): Remove fallback.
27063         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Drop gl_EOVERFLOW.
27064         * modules/vsprintf-posix (Depends-on): Add EOVERFLOW.
27065
27066         * lib/vsnprintf.c (EOVERFLOW): Remove fallback.
27067         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Drop gl_EOVERFLOW.
27068         * modules/vsnprintf (Depends-on): Add EOVERFLOW.
27069
27070         * lib/vfprintf.c (EOVERFLOW): Remove fallback.
27071         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Drop gl_EOVERFLOW.
27072         * modules/vfprintf-posix (Depends-on): Add EOVERFLOW.
27073
27074         * lib/vasprintf.c (EOVERFLOW): Remove fallback.
27075         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Drop gl_EOVERFLOW.
27076         * modules/vasprintf (Depends-on): Add EOVERFLOW.
27077
27078         * lib/vasnprintf.c (EOVERFLOW): Remove fallback.
27079         * m4/vasnprintf.m4 (gl_FUNC_VASNPRINTF): Drop gl_EOVERFLOW.
27080         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Drop gl_EOVERFLOW.
27081         * modules/vasnprintf (Files): Remove m4/eoverflow.m4.
27082         (Depends-on): Add EOVERFLOW.
27083         * modules/unistdio/ulc-vasnprintf (Files): Remove m4/eoverflow.m4.
27084         (Depends-on): Add EOVERFLOW.
27085         * modules/unistdio/u8-vasnprintf (Files): Remove m4/eoverflow.m4.
27086         (Depends-on): Add EOVERFLOW.
27087         * modules/unistdio/u8-u8-vasnprintf (Files): Remove m4/eoverflow.m4.
27088         (Depends-on): Add EOVERFLOW.
27089         * modules/unistdio/u16-vasnprintf (Files): Remove m4/eoverflow.m4.
27090         (Depends-on): Add EOVERFLOW.
27091         * modules/unistdio/u16-u16-vasnprintf (Files): Remove m4/eoverflow.m4.
27092         (Depends-on): Add EOVERFLOW.
27093         * modules/unistdio/u32-vasnprintf (Files): Remove m4/eoverflow.m4.
27094         (Depends-on): Add EOVERFLOW.
27095         * modules/unistdio/u32-u32-vasnprintf (Files): Remove m4/eoverflow.m4.
27096         (Depends-on): Add EOVERFLOW.
27097
27098         * lib/sprintf.c (EOVERFLOW): Remove fallback.
27099         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Drop gl_EOVERFLOW.
27100         * modules/sprintf-posix (Depends-on): Add EOVERFLOW.
27101
27102         * lib/snprintf.c (EOVERFLOW): Remove fallback.
27103         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Drop gl_EOVERFLOW.
27104         * modules/snprintf (Depends-on): Add EOVERFLOW.
27105
27106         * lib/poll.c (EOVERFLOW): Remove fallback.
27107         * modules/poll (Depends-on): Add EOVERFLOW.
27108
27109         * lib/getugroups.c (EOVERFLOW): Remove fallback.
27110         * modules/getugroups (Depends-on): Add EOVERFLOW.
27111
27112         * lib/getdelim.c (EOVERFLOW): Remove fallback.
27113         * modules/getdelim (Depends-on): Add EOVERFLOW.
27114
27115         * lib/ftell.c (EOVERFLOW): Remove fallback.
27116         * modules/ftell (Depends-on): Add EOVERFLOW.
27117
27118         * lib/fprintf.c (EOVERFLOW): Remove fallback.
27119         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Drop gl_EOVERFLOW.
27120         * modules/fprintf-posix (Depends-on): Add EOVERFLOW.
27121
27122         * lib/c-stack.c (EOVERFLOW): Remove unused fallback.
27123
27124         * modules/EOVERFLOW-tests: New file.
27125         * tests/test-EOVERFLOW.c: New file.
27126
27127         * modules/EOVERFLOW: New file.
27128         * doc/posix-headers/errno.texi: Mention EOVERFLOW portability problem.
27129
27130 2008-03-30  Bruno Haible  <bruno@clisp.org>
27131
27132         Fix bug introduced on 2007-06-10.
27133         * lib/vasnprintf.c (VASNPRINTF): When performing zero-padding, use
27134         spaces instead of 0 digits for 's' also when ENABLE_UNISTDIO.
27135
27136 2008-03-30  Bruno Haible  <bruno@clisp.org>
27137
27138         Improve freadseek's efficiency after ungetc.
27139         * lib/freadseek.c: Include freadahead.h.
27140         (freadptrinc): New function, extracted from freadseek.
27141         (freadseek): Use it in a loop. Use freadahead to determine the number
27142         of loop iterations.
27143         * modules/freadseek (Depends-on): Add freadahead.
27144         (configure.ac): Require AC_C_INLINE.
27145
27146 2008-03-30  Bruno Haible  <bruno@clisp.org>
27147
27148         * lib/freadseek.c (freadseek): Don't ignore the return value of
27149         freadptr.
27150
27151 2008-03-29  Eric Blake  <ebb9@byu.net>
27152
27153         Add hex float support.
27154         * modules/strtod (Depends-on): Add c-ctype.
27155         (Link): Mention POW_LIB.
27156         * lib/strtod.c (strtod): Recognize hex floats.  Don't allow
27157         whitespace between 'e' and exponent.
27158         * tests/test-strtod.c (main): Enable hex float tests.
27159         * doc/posix-functions/strtod.texi (strtod): Document what gnulib
27160         now provides.
27161
27162         Document various strtod bugs, with some fixes.
27163         * doc/posix-functions/strtod.texi (strtod): Document bugs with
27164         "-0x", "inf", "nan", and hex constants.
27165         * doc/posix-functions/atof.texi (atof): Likewise.
27166         * modules/stdlib (Makefile.am): Support strtod.
27167         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Likewise.
27168         * m4/strtod.m4 (gl_FUNC_STRTOD): Fit in stdlib framework, and
27169         detect additional strtod bugs.
27170         * lib/stdlib.in.h (rpl_strtod): Add declarations.
27171         * lib/strtod.c (strtod): Return -0.0 on negative underflow.  Use
27172         bool where appropriate.  Parse 'inf' and 'nan'.
27173         * tests/test-strtod.c: New file.
27174         * modules/strtod (Depends-on): Add stdbool, stdlib.
27175         (configure.ac): Turn on module indicator.
27176         * modules/strtod-tests: New module.
27177
27178 2008-03-29  Eric Blake  <ebb9@byu.net>
27179
27180         Fix ftell on mingw.
27181         * lib/ftell.c (EOVERFLOW): Define if the system lacks it.
27182         * modules/ftell-tests (Depends-on): Add binary-io.
27183         * modules/ftello-tests (Depends-on): Likewise.
27184         * tests/test-ftell.c (main): Enhance test to cover behavior after
27185         ungetc.  Enforce binary mode.
27186         * tests/test-ftello.c (main): Likewise.
27187
27188         Pass test-freadseek on cygwin.
27189         * modules/freadseek (Depends-on): Use freadptr, not freadahead.
27190         * lib/freadseek.c (freadseek): Don't increment beyond bounds of
27191         ungetc buffer.
27192
27193         * tests/test-fflush2.c (main): Fix typo.
27194
27195 2008-03-29  Bruno Haible  <bruno@clisp.org>
27196
27197         * tests/test-fflush2.c (main): Temporarily disable the contents of
27198         this test.
27199         * m4/fflush.m4 (gl_FUNC_FFLUSH): Add a TODO.
27200         Reported by Eric Blake.
27201
27202 2008-03-28  Simon Josefsson  <simon@josefsson.org>
27203
27204         * lib/gc.h (enum Gc_hash): Add GC_SHA224.
27205         (GC_SHA224_DIGEST_SIZE): Add.
27206
27207         * lib/gc-libgcrypt.c (gc_hash_open): Handle SHA-224.
27208         (gc_hash_digest_length): Likewise.
27209         (gc_hash_buffer): Likewise.
27210
27211 2008-03-25  Bruno Haible  <bruno@clisp.org>
27212
27213         * doc/gnulib-tool.texi (gettextize and autopoint): Explain in more
27214         detail which gettext release to use.
27215         Reported by Simon Josefsson.
27216
27217 2008-03-26  Jim Meyering  <meyering@redhat.com>
27218
27219         gnumakefile: remove file from $(top_builddir), not from $(top_srcdir)
27220         * modules/gnumakefile (clean-GNUmakefile): Also, use
27221         test ... && ... || : syntax rather than if-then ... fi.
27222
27223         gnumakefile: Don't double-quote-expand $(VPATH) value.
27224         * modules/gnumakefile (clean-GNUmakefile): Use single quotes.
27225
27226 2008-03-24  Eric Blake  <ebb9@byu.net>
27227
27228         Alter GNUmakefile to install into top directory.
27229         * modules/maintainer-makefile: Split, and add dependency...
27230         * modules/gnumakefile: to this new module.
27231         * build-aux/GNUmakefile: Move...
27232         * top/GNUmakefile: ...here.
27233         * build-aux/maint.mk: Move...
27234         * top/maint.mk: ...here.
27235         * MODULES.html.sh (Support for maintaining...): Document new
27236         module.
27237
27238 2008-03-23  Bruno Haible  <bruno@clisp.org>
27239
27240         * gnulib-tool: New options --vc-files, --no-vc-files.
27241         (func_usage): Document them.
27242         (vc_files): New variable.
27243         (func_import): Consider vc_files.
27244         (func_create_testdir): Set vc_files to empty.
27245         Suggested by Jim Meyering and Karl Berry.
27246
27247 2008-03-23  Bruno Haible  <bruno@clisp.org>
27248
27249         Fix regex compilation error on HP-UX 11.
27250         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_TYPE_MBSTATE_T.
27251         * modules/regex (Files): Add m4/mbstate_t.m4.
27252         Reported by Ton Voon <ton.voon@altinity.com>.
27253
27254 2008-03-23  Bruno Haible  <bruno@clisp.org>
27255
27256         * doc/gnulib-tool.texi (gettextize and autopoint): New section.
27257
27258 2008-03-23  Eric Blake  <ebb9@byu.net>
27259             Bruno Haible  <bruno@clisp.org>
27260
27261         Install files from top/ in the destination directory.
27262         * gnulib-tool (func_get_automake_snippet): Synthesize an EXTRA_DIST
27263         augmentation also for the files from top/.
27264         (func_import, func_create_testdir): Rewrite file names:
27265         top/filename -> filename.
27266
27267 2008-03-23  Bruno Haible  <bruno@clisp.org>
27268
27269         Tweak "gnulib --version" output.
27270         * gnulib-tool (func_version): Replace "-dirty" suffix with "-modified".
27271
27272 2008-03-23  Bruno Haible  <bruno@clisp.org>
27273
27274         Tweak "gnulib --version" output.
27275         * gnulib-tool (func_version): Use date of last commit to ChangeLog,
27276         rather than contents of ChangeLog, when possible.
27277
27278 2008-03-21  Eric Blake  <ebb9@byu.net>
27279
27280         More --version tweaks.
27281         * gnulib-tool (func_version): Obey GNU Coding Standards.  Output
27282         date of last ChangeLog entry.
27283
27284 2008-03-21  Jim Meyering  <meyering@redhat.com>
27285
27286         * build-aux/GNUmakefile (_have-git-version-gen): Split long line.
27287
27288 2008-03-20  Eric Blake  <ebb9@byu.net>
27289
27290         VPATH fix.
27291         * build-aux/GNUmakefile (_have_git-version-gen): Look in correct dir.
27292
27293 2008-03-20  Simon Josefsson  <simon@josefsson.org>
27294
27295         * build-aux/GNUmakefile: Make git-version-gen optional.  Add
27296         _build-aux variable.  Suggested by Eric Blake <ebb9@byu.net>.
27297
27298 2008-03-20  Eric Blake  <ebb9@byu.net>
27299
27300         Sync GNUmakefile with coreutils.
27301         * build-aux/GNUmakefile (have-Makefile): Rename...
27302         (_have-Makefile): ...to this, for namespace consideration.
27303         (GNUmakefile.cfg): Include, if present.
27304         (_autoreconf): Define a default.
27305         (_is-dist-target): New rule for rebuilds to pick up intra-release
27306         version.
27307         (maint-cfg.mk): Rename...
27308         (cfg.mk): ...to this.
27309
27310 2008-03-18  Jim Meyering  <meyering@redhat.com>
27311
27312         New script and module: mktempd
27313         * MODULES.html.sh (maint+release support): Add mktempd.
27314         * build-aux/mktempd: New file.
27315         * modules/mktempd: New file.
27316
27317 2008-03-15  Jim Meyering  <meyering@redhat.com>
27318
27319         Undo last change.
27320         * lib/sha1.c, lib/md5.c: 63 != ~63.
27321         Reported by Andreas Schwab.
27322
27323         sha1.c, md5.c: Hoist a redundant expression.
27324         * lib/sha1.c (sha1_process_bytes): AND-off the low bits in
27325         "ctx->buflen" only once, before calling *_process_block.
27326         * lib/md5.c (md5_process_bytes): Likewise.
27327
27328 2008-03-14  Eric Blake  <ebb9@byu.net>
27329
27330         Bump copyright year in files generated by gnulib-tool.
27331         * gnulib-tool (func_emit_copyright_notice): Extract copyright from
27332         gnulib-tool, rather than hard-coding it.
27333
27334         Fix 'gnulib-tool --version' output to work with git.
27335         * gnulib-tool (func_gnulib_dir): New function, extracted from...
27336         (startup): ...here.
27337         (func_version): Use it to invoke git-version-gen, rather than
27338         relying on CVS keyword expansion.  Modernize wording.
27339         (cvsdatestamp, last_checkin_date, version): Kill unused
27340         variables.
27341
27342 2008-03-12  Jim Meyering  <meyering@redhat.com>
27343
27344         Recognize optional cast of the argument to free.
27345         * build-aux/useless-if-before-free: Update regexps.
27346
27347         * build-aux/bootstrap (gnulib_tool): Remove trailing blanks.
27348
27349 2008-03-11  Bruno Haible  <bruno@clisp.org>
27350
27351         Extend AC_LIB_LINKFLAGS to the situation of several libraries provided
27352         by a single package.
27353         * m4/lib-link.m4 (AC_LIB_FROMPACKAGE): New macro.
27354         (AC_LIB_LINKFLAGS_BODY): Use the information stored by
27355         AC_LIB_FROMPACKAGE. Use AC_ARG_WITH instead of AC_LIB_ARG_WITH.
27356         Reported by Sam Steingold <sds@gnu.org>.
27357
27358 2008-03-12  Sergey Poznyakoff  <gray@gnu.org.ua>
27359
27360         * build-aux/bootstrap (version_controlled_file): Adapt for SVN
27361         repositories.
27362
27363 2008-03-11  Bruno Haible  <bruno@clisp.org>
27364
27365         Avoid conflicts between local macro definitions.
27366         * m4/lib-link.m4 (AC_LIB_LINKFLAGS, AC_LIB_HAVE_LINKFLAGS,
27367         AC_LIB_LINKFLAGS_BODY): Use pushdef/popdef instead of define/undefine.
27368
27369 2008-03-10  Peter O'Gorman  <bug-gnulib@mlists.thewrittenword.com>
27370             Bruno Haible  <bruno@clisp.org>
27371
27372         Make va_copy work with some version of xlc on AIX 5.1.
27373         * lib/stdarg.in.h: New file.
27374         * m4/stdarg.m4 (gl_STDARG_H): Initialize STDARG_H and NEXT_STDARG_H.
27375         On AIX, use a <stdarg.h> file substitute.
27376         * modules/stdarg (Files): Add lib/stdarg.in.h.
27377         (Depends-on): Add include_next.
27378         (Makefile.am): Build a stdarg.h substitute if requested.
27379         * doc/posix-functions/va_copy.texi: Document the platforms lacking it.
27380
27381 2008-03-10  Bruno Haible  <bruno@clisp.org>
27382
27383         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Document a restriction.
27384         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Likewise.
27385         Reported by Peter O'Gorman <bug-gnulib@mlists.thewrittenword.com>.
27386
27387 2008-03-10  Bruno Haible  <bruno@clisp.org>
27388
27389         * modules/stdlib (Depends-on): Add include_next, remove
27390         absolute-header.
27391
27392 2008-03-09  Bruno Haible  <bruno@clisp.org>
27393
27394         * lib/freadahead.h (freadahead): Document more precisely.
27395         * lib/freadahead.c (freadahead): When an ungetc is in effect, return
27396         the sum of both buffer sizes.
27397         * tests/test-freadahead.c (main): Also test behaviour after ungetc.
27398         * NEWS: Document the change.
27399
27400 2008-03-09  Bruno Haible  <bruno@clisp.org>
27401
27402         Extend freadptr to return also the buffer size.
27403         * lib/freadptr.h (freadptr): Add sizep argument.
27404         * lib/freadptr.c: Include freadptr.h, not freadahead.h.
27405         (freadptr): Add sizep argument. Determine buffer size like freadahead
27406         does.
27407         * tests/test-freadptr.c: Don't include freadahead.h.
27408         (main): Adapt for new calling convention of freadptr.
27409         * tests/test-freadptr2.c: New file, based on tests/test-freadahead.c.
27410         * tests/test-freadptr2.sh: New file, based on tests/test-freadahead.sh.
27411         * modules/freadptr-tests (Files): Add tests/test-freadptr2.c,
27412         tests/test-freadptr2.sh.
27413         (Depends): Remove freadahead.
27414         (TESTS): Add test-freadptr2.sh.
27415         (check_PROGRAMS): Add test-freadptr2.
27416
27417 2008-03-09  Bruno Haible  <bruno@clisp.org>
27418
27419         * doc/Makefile (%.pdf): Explain how to remedy the save_size error.
27420         Report and solution by Simon Josefsson.
27421
27422 2008-03-06  Bruno Haible  <bruno@clisp.org>
27423
27424         Make fflush after ungetc work on BSD platforms.
27425         * lib/fflush.c (rpl_fflush): Discard ungetc buffer if possible.
27426         * tests/test-fflush2.c: New file.
27427         * tests/test-fflush2.sh: New file.
27428         * modules/fflush-tests (Files): Add tests/test-fflush2.sh,
27429         tests/test-fflush2.c.
27430         (Makefile.am): Build test-fflush2 and run test-fflush2.sh.
27431         * doc/posix-functions/fflush.texi: Document fflush after ungetc bug.
27432
27433 2008-03-06  Eric Blake  <ebb9@byu.net>
27434
27435         Likewise for ftello.
27436         * modules/ftello (Dependencies): Add extensions.
27437         * m4/ftello.m4 (gl_FUNC_FTELLO): Require AC_USE_SYSTEM_EXTENSIONS.
27438
27439 2008-03-06  Bruno Haible  <bruno@clisp.org>
27440
27441         * modules/fseeko (Dependencies): Add extensions.
27442         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Require AC_USE_SYSTEM_EXTENSIONS.
27443         Needed on glibc systems.
27444
27445 2008-03-06  Bruno Haible  <bruno@clisp.org>
27446
27447         * doc/gnulib-tool.texi (@nosuchmodulenote): Avoid line break inside
27448         email address.
27449         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
27450
27451 2008-03-06  Bruno Haible  <bruno@clisp.org>
27452
27453         * users.txt: Add libgnupdf.
27454
27455 2008-03-06  Thien-Thi Nguyen  <ttn@gnuvola.org>  (tiny change)
27456
27457         * doc/gnulib-tool.texi (@nosuchmodulenote): New macro.
27458         (Header File Substitutes, Function Substitutes,
27459         Glibc Header File Substitutes, Glibc Function Substitutes): Use it.
27460         (Build robot for gnulib): Fix typo.
27461
27462 2008-03-06  Bruno Haible  <bruno@clisp.org>
27463
27464         * doc/gnulib-tool.texi (VCS Issues): Small updates.
27465         Reported by Thien-Thi Nguyen <ttn@gnuvola.org>.
27466
27467 2008-03-06  Bruno Haible  <bruno@clisp.org>
27468
27469         * doc/func.texi: New file, extracted from doc/gnulib.texi.
27470         * doc/gnulib.texi: Include it.
27471
27472 2008-03-06  Simon Josefsson  <simon@josefsson.org>
27473
27474         * modules/func (License): Change license to unlimited; there was
27475         no LGPL parts in the module anyway.
27476
27477 2008-03-06  Simon Josefsson  <simon@josefsson.org>
27478
27479         * modules/__func__: Renamed to modules/func.
27480         * modules/__func__-tests: Renamed to modules/func-tests.
27481         * tests/test-__func__.c: Renamed to tests/test-func.c.
27482         * m4/__func__.m4: Renamed to m4/func.m4.
27483         * doc/gnulib.texi (__func__): Section renamed to func.
27484         Suggested by Eric Blake <ebb9@byu.net>.
27485
27486 2008-03-06  Simon Josefsson  <simon@josefsson.org>
27487
27488         * doc/gnulib.texi (__func__): Use C99 terminology when talking
27489         about __func__.  Make example self-contained.  Suggested by Eric
27490         Blake <ebb9@byu.net>.
27491
27492         * tests/test-__func__.c (main): Avoid extraneous () around __func.
27493         Suggested by Eric Blake <ebb9@byu.net>.
27494
27495 2008-03-06  Simon Josefsson  <simon@josefsson.org>
27496
27497         * modules/__func__: New file.
27498         * modules/__func__-tests: New file.
27499         * tests/test-__func__.c: New file.
27500         * m4/__func__.m4: New file.
27501         * doc/gnulib.texi (__func__): Document __func__ module.
27502
27503 2008-03-05  Simon Josefsson  <simon@josefsson.org>
27504
27505         * modules/byteswap (License): Re-license as LGPLv2+.
27506
27507 2008-03-05  Simon Josefsson  <simon@josefsson.org>
27508
27509         * doc/Makefile: Add pdf target.
27510
27511 2008-03-05  Simon Josefsson  <simon@josefsson.org>
27512
27513         * modules/inline (License): Use 'unlimited', since there are only
27514         *.m4 files in this module.
27515
27516 2008-03-03  John E. Malmberg  <wb8tyw@qsl.net>  (tiny change)
27517             Bruno Haible  <bruno@clisp.org>
27518
27519         Add support for HP C 7.1 on OpenVMS 8.3.
27520         * lib/alloca.in.h (alloca): Define as alias for DEC C on VMS.
27521
27522 2008-03-03  John E. Malmberg  <wb8tyw@qsl.net>  (tiny change)
27523
27524         Update VMS specifics.
27525         * lib/getopt.c [VMS]: Remove include of unixlib.h.
27526
27527 2008-03-02  Jim Meyering  <meyering@redhat.com>
27528
27529         Remove the last dependency on the "free" module.
27530         * m4/readutmp.m4 (gl_READUTMP): Don't require gl_FUNC_FREE.
27531         Reported by Bob Proulx.
27532
27533         * lib/getdelim.c (getdelim): Don't leak memory upon failed realloc.
27534
27535         Remove useless "if" tests before free.  Deprecate "free" module.
27536         * doc/posix-functions/free.texi: Mention that this
27537         module is no longer useful.
27538         * modules/free (Notice): Say this module is obsolete.
27539         * modules/readutmp (Depends-on): Remove free.
27540         * lib/save-cwd.c (free_cwd): Remove useless "if" before free.
27541         * lib/putenv.c (putenv): Likewise.
27542         * lib/gc-gnulib.c (gc_cipher_close): Likewise.
27543         * lib/getaddrinfo.c (freeaddrinfo): Likewise.
27544         * tests/test-c-strcasestr.c (main): Likewise.
27545         * tests/test-c-strstr.c (main): Likewise.
27546         * tests/test-mbscasestr1.c (main): Likewise.
27547         * tests/test-mbscasestr2.c (main): Likewise.
27548         * tests/test-mbsstr1.c (main): Likewise.
27549         * tests/test-mbsstr2.c (main): Likewise.
27550         * tests/test-memmem.c (main): Likewise.
27551         * tests/test-strcasestr.c (main): Likewise.
27552         * tests/test-striconv.c (main): Likewise.
27553         * tests/test-striconveh.c (main): Likewise.
27554         * tests/test-striconveha.c (main): Likewise.
27555         * tests/test-strstr.c (main): Likewise.
27556
27557         * build-aux/git-version-gen: Adjust a comment and the Usage string.
27558
27559         bootstrap: sync from coreutils again
27560         * build-aux/bootstrap: Remove dangling m4/*.m4 symlinks.
27561
27562 2008-03-01  Jim Meyering  <meyering@redhat.com>
27563
27564         bootstrap: sync from coreutils
27565         * build-aux/bootstrap (update_po_files): Copy a .po file into place
27566         also when the target doesn't exist.
27567
27568 2008-03-01  Eric Blake  <ebb9@byu.net>
27569
27570         Fix bugs in last patch.
27571         * lib/memchr2.c (memchr2): Fix typo.
27572         * tests/test-memchr2.c: Test previous bug, and don't use GNU
27573         extension.
27574         Reported by Bruce Korb.
27575
27576         New module 'memchr2'.
27577         * modules/memchr2: New file.
27578         * modules/memchr2-tests: Likewise.
27579         * lib/memchr2.h: Likewise.
27580         * lib/memchr2.c: Likewise, based on memchr.c.
27581         * tests/test-memchr2.c: New test.
27582         * MODULES.html.sh (String handling): Add memchr2.
27583
27584 2008-02-29  Bruno Haible  <bruno@clisp.org>
27585
27586         * modules/freadseek-tests: New file.
27587         * tests/test-freadseek.sh: New file.
27588         * tests/test-freadseek.c: New file.
27589
27590         New module 'freadseek'.
27591         * modules/freadseek: New file.
27592         * lib/freadseek.h: New file.
27593         * lib/freadseek.c: New file.
27594         * MODULES.html.sh (File stream based Input/Output): Add freadseek.
27595
27596 2008-02-29  Sergey Poznyakoff  <gray@gnu.org.ua>
27597
27598         * users.txt: Add anubis, cpio, mailfromd, mailutils, radius,
27599         wydawca.
27600
27601         * m4/argp.m4 (gl_ARGP): Use AC_TRY_LINK to test if
27602         program_invocation_name and program_invocation_short_name are
27603         present.
27604
27605 2008-02-28  Bruno Haible  <bruno@clisp.org>
27606
27607         * tests/test-freadptr.c: Add a test for behaviour after ungetc.
27608         * tests/test-freadptr.sh: Also test non-seekable stdin.
27609
27610 2008-02-28  Sergey Poznyakoff  <gray@gnu.org.ua>
27611
27612         * build-aux/bootstrap (source_base, m4_base)
27613         (doc_base, tests_base): New variables.
27614         (gnulib_tool_options): Do not hardcode base directories, use
27615         the above variables instead.
27616
27617 2008-02-28  Atsushi SAKAI  <sakaia@jp.fujitsu.com>
27618
27619         * lib/xsize.h: Fix typo in comment: s/tupe/type/.
27620
27621 2008-02-28  Bruno Haible  <bruno@clisp.org>
27622
27623         * modules/freadptr-tests: New file.
27624         * tests/test-freadptr.sh: New file.
27625         * tests/test-freadptr.c: New file.
27626
27627         New module 'freadptr'.
27628         * modules/freadptr: New file.
27629         * lib/freadptr.h: New file.
27630         * lib/freadptr.c: New file.
27631         * MODULES.html.sh (File stream based Input/Output): Add freadptr.
27632
27633 2008-02-26  Karl Berry  <karl@freefriends.org>
27634
27635         Sync from Libtool:
27636         * libltdl/argz.c (argz_add, argz_count): New functions.
27637         * libltdl/argz.in.h: Declare them.
27638         Report by Juan Manuel Guerrero <juan.guerrero@gmx.de>.
27639
27640 2008-02-22  Bruno Haible  <bruno@clisp.org>
27641
27642         * m4/time_r.m4 (gl_TIME_R): Also check that localtime_r's return type
27643         is a pointer type.  Needed for HP-UX 10.
27644         * doc/posix-functions/localtime_r.texi: Mention HP-UX 10.
27645         * doc/posix-functions/gmtime_r.texi: Likewise.
27646         Reported by Peter O'Gorman <bug-gnulib@mlists.thewrittenword.com>.
27647
27648 2008-02-24  Bruno Haible  <bruno@clisp.org>
27649
27650         * modules/environ-tests: New file.
27651         * tests/test-environ.c: New file.
27652
27653         New module 'environ'.
27654         * modules/environ: New file.
27655         * lib/unistd.in.h (environ): New declaration.
27656         * m4/environ.m4: New file.
27657         (gt_CHECK_VAR_DECL): Moved here from m4/setenv.m4. Undefine gt_cv_var
27658         after use.
27659         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_ENVIRON and
27660         HAVE_DECL_ENVIRON.
27661         * modules/unistd (Makefile.am): Substitute also GNULIB_ENVIRON and
27662         HAVE_DECL_ENVIRON.
27663         * doc/posix-functions/environ.texi: Mention module 'environ'. Remove
27664         wrong claim that 'environ' is missing on some systems.
27665         * modules/execute (Depends-on): Add environ.
27666         * lib/execute.c (environ): Remove fallback declaration.
27667         * modules/pipe (Depends-on): Add environ.
27668         * lib/pipe.c (environ): Remove fallback declaration.
27669         * modules/setenv (Depends-on): Add environ.
27670         * lib/setenv.c (environ): Remove fallback declaration.
27671         * modules/unsetenv (Depends-on): Add environ.
27672         * lib/unsetenv.c (environ): Remove fallback declaration.
27673         * m4/setenv.m4 (gt_CHECK_VAR_DECL): Remove macro. Moved to
27674         m4/environ.m4.
27675         (gl_PREREQ_SETENV): Require gl_ENVIRON instead of testing for environ.
27676         (gl_PREREQ_UNSETENV): Likewise.
27677
27678 2008-02-24  Bruno Haible  <bruno@clisp.org>
27679
27680         * doc/posix-functions/environ.texi: Document the MacOS X problem.
27681
27682 2008-02-20  Bob Proulx  <bob@proulx.com>
27683
27684         Enable use of older two part flavor 'git describe'.
27685         * build-aux/git-version-gen: If using the older two part flavor of
27686         git version then recreate the third part now present in the
27687         newer three part flavor of git describe.
27688
27689 2008-02-20  Martin Buchholz  <martin@xemacs.org>  (tiny change)
27690
27691         * lib/fts.c (fts_build): Typo correction to comment.
27692
27693 2008-02-17  Bruno Haible  <bruno@clisp.org>
27694
27695         * lib/git-merge-changelog.c (main) [split_merged_entry]: Avoid
27696         generating no-op conflicts.
27697
27698 2008-02-17  Bruno Haible  <bruno@clisp.org>
27699
27700         Speed up by 10%.
27701         * lib/git-merge-changelog.c (main): Use the iterator to iterate through
27702         result_entries, rather than an index-based loop.
27703
27704 2008-02-17  Bruno Haible  <bruno@clisp.org>
27705
27706         Speed up by 25%.
27707         * lib/git-merge-changelog.c (struct entry): New fields 'hashcode',
27708         'hashcode_cached'.
27709         (entry_create): New function.
27710         (entry_hashcode): Use the cached hashcode if possible.
27711         (read_changelog_file, try_split_merged_entry): Use entry_create.
27712
27713 2008-02-17  Bruno Haible  <bruno@clisp.org>
27714
27715         Speed up from O(n^2) to O(n) for long ChangeLog files.
27716         * lib/git-merge-changelog.c: Include gl_rbtreehash_list.h.
27717         (read_changelog_file): Change implementation of entries_reversed list
27718         to rbtreehash.
27719         * modules/git-merge-changelog (Depends-on): Add rbtreehash-list.
27720
27721 2008-02-17  Bruno Haible  <bruno@clisp.org>
27722
27723         New option --split-merged-entry.
27724         * lib/git-merge-changelog.c (FSTRCMP_STRICTER_THRESHOLD): New macro.
27725         (find_paragraph_end, try_split_merged_entry): New functions.
27726         (long_options): Add option --split-merged-entry.
27727         (usage): Document option --split-merged-entry.
27728         (main): Implement option --split-merged-entry.
27729         Reported by Eric Blake.
27730
27731 2008-02-17  Bruno Haible  <bruno@clisp.org>
27732
27733         * lib/git-merge-changelog.c: Include c-strstr.h.
27734         (main): Support the "git pull --rebase" situation.
27735         * modules/git-merge-changelog (Depends-on): Add c-strstr.
27736         Reported by Eric Blake.
27737
27738 2008-02-16  Eric Blake  <ebb9@byu.net>
27739
27740         Avoid doubling \ in common case of "c-maybe" quoting style.
27741         * lib/quotearg.c (quotearg_buffer_restyled): Don't escape \ when
27742         eliding outer quotes.
27743         * lib/quotearg.h: Document this.
27744         * tests/test-quotearg.c (result_strings, inputs, results_g)
27745         (flag_results, locale_results): Test it by adding a new string to
27746         each test group.
27747         (compare_strings): Test new string.
27748
27749 2008-02-13  Eric Blake  <ebb9@byu.net>
27750
27751         Avoid trigraph quoting in default output.
27752         * lib/quotearg.h (enum quoting_flags): Add QA_SPLIT_TRIGRAPHS.
27753         * lib/quotearg.c (quotearg_buffer_restyled): Don't quote trigraphs
27754         unless explicitly requested.
27755         * tests/test-quotearg.c (flag_results, main): Add additional tests.
27756
27757 2008-02-13  Lasse Collin  <lasse.collin@tukaani.org>
27758
27759         Don't rely on signed integer overflowing to negative value.
27760         * lib/getugroups.c (getugroups): Include <limits.h>.
27761         Instead, compare against INT_MAX, and increment only if the test passes.
27762
27763 2008-02-13  Jim Meyering  <meyering@redhat.com>
27764         and Eric Blake  <ebb9@byu.net>
27765
27766         Avoid shadowing warning and compile errors on Linux.
27767         * tests/test-quotearg.c [ENABLE_NLS]: Disable <libintl.h>
27768         forwarding macros on Linux.
27769         (dcgettext): Define a stub, for Linux.
27770         (results_g, main): Avoid warnings.
27771
27772 2008-02-12  Eric Blake  <ebb9@byu.net>
27773
27774         Silence warning in last patch.
27775         * lib/quotearg.c (quotearg_buffer_restyled): Add missing const.
27776
27777         Quotearg part 4: add tests, fix c-maybe colon quoting.
27778         * lib/quotearg.h: Improve documentation.
27779         * lib/quotearg.c (quotearg_buffer_restyled): Don't add extra
27780         escapes when adding outer quotes.  When quoting trigraphs, use
27781         valid C notation.  When quoting NUL, omit extra characters if next
27782         character is not digit.  Alter prototype.
27783         (quotearg_buffer, quotearg_alloc_mem, quotearg_n_options): Adjust
27784         callers.
27785         * modules/quotearg-tests: New module.
27786         * tests/test-quotearg.c: New test.
27787
27788 2008-02-07  Eric Blake  <ebb9@byu.net>
27789
27790         Quotearg part 3: add flag to control outer quote elision.
27791         * lib/quotearg.h (c_maybe_quoting_style): New style.
27792         (enum quoting_flags): Better documentation of flags.
27793         * lib/quotearg.c (quoting_style_args, quoting_style_vals): Add
27794         c-maybe style.
27795         (quotearg_buffer_restyled): Handle new flag to elide outer
27796         quotes.
27797
27798         Quotearg part 2: add flag that can control NUL elision.
27799         * lib/quotearg.h (set_quoting_flags): New prototype.
27800         * lib/quotearg.c (struct quoting_options): Add flag field.
27801         (set_quoting_flags): New function.
27802         (quotearg_buffer_restyled): Add flags parameter.
27803         (quotearg_alloc_mem): Set the flag if length cannot be returned.
27804         (quotearg_n_options): Set the flag, since length cannot be
27805         returned.
27806         (quoting_options_from_style): Default flags correctly.
27807
27808         Quotearg part 1: more wrappers, restore quotearg_char state.
27809         * lib/quotearg.h (quotearg_alloc_mem, quotearg_n_mem)
27810         (quotearg_mem, quotearg_style_mem, quotearg_char_mem)
27811         (quotearg_colon_mem): New wrappers.
27812         * lib/quotearg.c (quotearg_alloc, quotearg_char): Rewrite...
27813         (quotearg_alloc_mem, quotearg_char_mem): ...in terms of these new
27814         functions.
27815         (quotearg_n_mem, quotearg_mem, quotearg_style_mem)
27816         (quotearg_colon_mem): New functions.
27817
27818 2008-02-11  Bruno Haible  <bruno@clisp.org>
27819
27820         * modules/git-merge-changelog (Makefile.am): Don't use -L and -l for a
27821         library in the current directory: it does not work with parallel make.
27822         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
27823
27824 2008-02-11  Bruno Haible  <bruno@clisp.org>
27825
27826         * .gitattributes: New file.
27827
27828 2008-02-11  Jim Meyering  <meyering@redhat.com>
27829
27830         useless-if-before-free: Fix reversed exit values.
27831         * build-aux/useless-if-before-free: Use correct values
27832         for EXIT_MATCH and EXIT_NO_MATCH.
27833
27834         * build-aux/useless-if-before-free: Close stdout carefully.
27835
27836 2008-02-10  Bruno Haible  <bruno@clisp.org>
27837
27838         New module 'git-merge-changelog'.
27839         * modules/git-merge-changelog: New file.
27840         * lib/git-merge-changelog.c: New file.
27841
27842 2008-02-10  Jim Meyering  <meyering@redhat.com>
27843
27844         useless-if-before-free: New option: --list (-l).
27845
27846         useless-if-before-free: Don't exit immediately upon open failure.
27847         * build-aux/useless-if-before-free: Exit 2 for errors.
27848         Upon failure to open a file, don't exit immediately.
27849         Rather, just warn and continue with any remaining files.
27850
27851 2008-02-10  Bruno Haible  <bruno@clisp.org>
27852
27853         New abstract list operation 'node_set_value'.
27854         * lib/gl_list.h (gl_list_node_set_value): New function.
27855         (struct gl_list_implementation): New field node_set_value.
27856         * lib/gl_list.c (gl_list_node_set_value): New function.
27857         * lib/gl_array_list.c (gl_array_node_set_value): New function.
27858         (gl_array_list_implementation): Update.
27859         * lib/gl_carray_list.c (gl_carray_node_set_value): New function.
27860         (gl_carray_list_implementation): Update.
27861         * lib/gl_anylinked_list2.h (gl_linked_node_set_value): New function.
27862         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
27863         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
27864         * lib/gl_anytree_list2.h (gl_tree_node_set_value): New function.
27865         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
27866         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
27867         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
27868         Update.
27869         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Update.
27870         * lib/gl_sublist.c (gl_sublist_node_set_value): New function.
27871         (gl_sublist_list_implementation): Update.
27872
27873 2008-02-10  Bruno Haible  <bruno@clisp.org>
27874
27875         * lib/diffseq.h: Write "ELEMENT const" instead of "const ELEMENT".
27876         Needed when ELEMENT is #defined to 'some_type *'.
27877
27878 2008-02-10  Jim Meyering  <meyering@redhat.com>
27879
27880         New script and module: useless-if-before-free
27881         * MODULES.html.sh (maint+release support): Add useless-if-before-free.
27882         * build-aux/useless-if-before-free: New file.
27883         * modules/useless-if-before-free: New file.
27884
27885         * build-aux/gitlog-to-changelog: Use committer date, not author date.
27886
27887         xstrtol_error: Fix typo.
27888         * lib/xstrtol-error.c (xstrtol_error): The parameter was unused:
27889         s/exit_failure/exit_status/.
27890
27891 2008-02-09  Jim Meyering  <meyering@redhat.com>
27892
27893         New script and module: gitlog-to-changelog
27894         * MODULES.html.sh (maint+release support): Add gitlog-to-changelog.
27895         * modules/gitlog-to-changelog: New file.
27896         * build-aux/gitlog-to-changelog: New file.
27897
27898 2008-02-08  Jim Meyering  <meyering@redhat.com>
27899
27900         Avoid two "parameter unused" warnings.
27901         * lib/stat-time.h (get_stat_birthtime_ns, get_stat_birthtime):
27902         Mark "st" as used.
27903
27904         Use "git COMMAND", not "git-COMMAND".
27905         * build-aux/bootstrap (version_controlled_file): s/git-rm/git-rm/.
27906         * build-aux/announce-gen (get_tool_versions): Correct a diagnostic.
27907         * build-aux/git-version-gen: Use "git status", not "git-status".
27908
27909 2008-02-07  Bruno Haible  <bruno@clisp.org>
27910
27911         * lib/vasnprintf.c (VASNPRINTF): Don't use %n on native Woe32 systems.
27912         Avoids a crash on Windows Vista.
27913         Reported by Adam Strzelecki <ono@java.pl> via
27914         Simon Josefsson <simon@josefsson.org>.
27915
27916 2008-02-06  Bruno Haible  <bruno@clisp.org>
27917
27918         Fix *printf behaviour regarding the left-adjust flag on HP-UX 10.20.
27919         * m4/printf.m4 (gl_PRINTF_FLAG_LEFTADJUST): New macro.
27920         * lib/vasnprintf.c (VASNPRINTF): Handle NEED_PRINTF_FLAG_LEFTADJUST.
27921         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_LEFTADJUST): New macro.
27922         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
27923         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
27924         gl_PRINTF_FLAG_LEFTADJUST and test its result. Invoke
27925         gl_PREREQ_VASNPRINTF_FLAG_LEFTADJUST.
27926         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
27927         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
27928         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
27929         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
27930         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
27931         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
27932         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
27933         * tests/test-vasnprintf-posix.c (test_function): Add testcases for the
27934         left-adjust flag.
27935         * tests/test-snprintf-posix.h (test_function): Likewise.
27936         * tests/test-sprintf-posix.h (test_function): Likewise.
27937         * tests/test-vasprintf-posix.c (test_function): Likewise.
27938         * doc/posix-functions/fprintf.texi: Update.
27939         * doc/posix-functions/printf.texi: Update.
27940         * doc/posix-functions/snprintf.texi: Update.
27941         * doc/posix-functions/sprintf.texi: Update.
27942         * doc/posix-functions/vfprintf.texi: Update.
27943         * doc/posix-functions/vprintf.texi: Update.
27944         * doc/posix-functions/vsnprintf.texi: Update.
27945         * doc/posix-functions/vsprintf.texi: Update.
27946         Reported by Peter Fales <psfales@alcatel-lucent.com>.
27947
27948 2008-02-06  Bruno Haible  <bruno@clisp.org>
27949
27950         Fix bug introduced on 2008-01-26.
27951         * lib/isnan.c (FUNC): Set to rpl_isnand, not rpl_isnan.
27952
27953 2008-02-06  Bruno Haible  <bruno@clisp.org>
27954
27955         Fix bug introduced on 2007-06-10.
27956         * lib/vasnprintf.c (VASNPRINTF): Perform zero-padding also if
27957         !NEED_PRINTF_FLAG_ZERO.
27958
27959 2008-02-05  Peter O'Gorman <pogma@thewrittenword.com>
27960
27961         getloadavg: use libperfstat on AIX5
27962         * lib/getloadavg.c, m4/getloadavg.m4 [aix]: Use libperfstat
27963
27964 2008-02-03  Bruno Haible  <bruno@clisp.org>
27965
27966         * lib/diffseq.h: Add comments about required #includes.
27967         Reported by Michael Biggs <gnulib@doubleplum.net>.
27968
27969 2008-02-01  Bruno Haible  <bruno@clisp.org>
27970
27971         * users.txt: Add gnuit.
27972
27973 2008-01-31  Bruno Haible  <bruno@clisp.org>
27974
27975         * lib/md4.c (set_uint32): Mark as inline.
27976         * lib/md5.c (set_uint32): Likewise.
27977         * lib/sha1.c (set_uint32): Likewise.
27978         * m4/md4.m4 (gl_MD4): Require AC_C_INLINE.
27979         * m4/md5.m4 (gl_MD5): Likewise.
27980         * m4/sha1.m4 (gl_SHA1): Likewise.
27981
27982 2008-01-31  Jim Meyering  <meyering@redhat.com>
27983
27984         Use "sizeof VAR", rather than a literal "4".
27985         * lib/md5.c (md5_read_ctx): Use sizeof ctx->A, not 4.
27986         * lib/md4.c (md4_read_ctx): Likewise.
27987         * lib/sha1.c (sha1_read_ctx): Likewise.
27988
27989 2008-01-31  Simon Josefsson  <simon@josefsson.org>
27990
27991         * tests/test-sha1.c: New file, based on test-md5.c.
27992
27993         * modules/crypto/sha1-tests: New file.
27994
27995 2008-01-31  Simon Josefsson  <simon@josefsson.org>
27996
27997         * lib/sha1.h (SHA1_DIGEST_SIZE): Define.
27998
27999 2008-01-31  Jim Meyering  <meyering@redhat.com>
28000
28001         Prefer "sizeof v" over the equivalent "4".
28002         * lib/md4.c (set_uint32): Use "sizeof v" as memcpy length, not 4.
28003         * lib/md5.c (set_uint32): Likewise.
28004         * lib/sha1.c (set_uint32): Likewise.
28005
28006 2008-01-31  Simon Josefsson  <simon@josefsson.org>
28007
28008         * lib/sha1.c (set_uint32): Mark function as static.
28009
28010 2008-01-31  Simon Josefsson  <simon@josefsson.org>
28011
28012         md2: clarify comments to say that alignment is not required.
28013         * lib/md2.h: Remove warning about alignment in comment.
28014         * lib/md2.c (md2_read_ctx, md2_finish_ctx): Doc fix, alignment has
28015         never been required.
28016
28017 2008-01-31  Simon Josefsson  <simon@josefsson.org>
28018
28019         md4: adapt alignment constraint fix from sha1.
28020         * lib/md4.c (set_uint32): New function, from sha1.c
28021         (md4_read_ctx): Use it.
28022         (md4_finish_ctx): Doc fix.
28023         * lib/md4.h: Doc fix.
28024
28025 2008-01-31  Simon Josefsson  <simon@josefsson.org>
28026
28027         md5: adapt alignment constraint fix from sha1.
28028         * lib/md5.c (set_uint32): New function, from sha1.c
28029         (md5_read_ctx): Use it.
28030         (md5_finish_ctx): Doc fix.
28031         * lib/md5.h: Doc fix.
28032
28033 2008-01-30  Peter Palfrader  <weasel@debian.org>
28034
28035         sha1: remove the result buffer alignment constraint
28036         * lib/sha1.c (set_uint32): New function.
28037         (sha1_read_ctx): Rewrite to remove the result buffer alignment
28038         constraint.
28039         (sha1_finish_ctx): Remove comment warning about alignment constraint.
28040         * lib/sha1.h: Likewise.
28041
28042 2008-01-30  Andreas Schwab  <schwab@suse.de>
28043             Bruno Haible  <bruno@clisp.org>
28044
28045         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Include <float.h> and ensure a
28046         correct definition of LDBL_MIN_EXP.
28047
28048 2008-01-30  Karl Berry  <karl@gnu.org>
28049
28050         * config/srclist-update: try to preserve x bit on updates.
28051         * config/srclistvars.sh: update for karl.
28052
28053 2008-01-29  Jim Meyering  <meyering@redhat.com>
28054
28055         vasnprintf.c: Avoid warning about unused label
28056         * lib/vasnprintf.c (VASNPRINTF) [!USE_SNPRINTF]: Guard the
28057         "overflow" label definition and associated code with the
28058         same cpp condition that guards the sole use of that label.
28059
28060 2008-01-26  Bruno Haible  <bruno@clisp.org>
28061
28062         * m4/isnanl.m4 (gl_HAVE_ISNANL_NO_LIBM, gl_HAVE_ISNANL_IN_LIBM,
28063         gl_FUNC_ISNANL_WORKS): Test the GCC >= 4.0 built-in.
28064         * lib/isnanl.h (isnanl): Use the GCC >= 4.0 built-in.
28065         * lib/isnanl-nolibm.h (isnanl): Likewise.
28066         Reported by Paul Eggert <eggert@cs.ucla.edu>.
28067
28068 2008-01-26  Bruno Haible  <bruno@clisp.org>
28069
28070         * m4/isnand.m4 (gl_FUNC_ISNAND_NO_LIBM): Test the GCC >= 4.0 built-in.
28071         * lib/isnand.h (isnand): Use the GCC >= 4.0 built-in.
28072
28073 2008-01-26  Bruno Haible  <bruno@clisp.org>
28074
28075         * m4/isnanf.m4 (gl_HAVE_ISNANF_NO_LIBM, gl_ISNANF_WORKS): Test the
28076         GCC >= 4.0 built-in.
28077         * lib/isnanf.h (isnanf): Use the GCC >= 4.0 built-in.
28078
28079 2008-01-26  Bruno Haible  <bruno@clisp.org>
28080
28081         Rename isnan, applicable to 'double' only, to isnand.
28082         * modules/isnand-nolibm: Renamed from modules/isnan-nolibm.
28083         (Files): Add lib/isnand.h, lib/isnand.c. Remove lib/isnan.h.
28084         (configure.ac): Update.
28085         (Include): Replace "isnan.h" with "isnand.h".
28086         * m4/isnand.m4: Renamed from m4/isnan.m4.
28087         (gl_FUNC_ISNAND_NO_LIBM): Renamed from gl_FUNC_ISNAN_NO_LIBM. Set
28088         HAVE_ISNAND_IN_LIBC instead of HAVE_ISNAN_IN_LIBC. Build isnand.c
28089         instead of isnan.c.
28090         * lib/isnand.h: Renamed from lib/isnan.h. Test HAVE_ISNAND_IN_LIBC
28091         instead of HAVE_ISNAN_IN_LIBC.
28092         (isnand): Renamed from isnan.
28093         * lib/isnand.c: New file.
28094         * modules/isnand-nolibm-tests: Renamed from modules/isnan-nolibm-tests.
28095         (Files): Add tests/test-isnand.c. Remove tests/test-isnan.c.
28096         (Makefile.am): Update.
28097         * tests/test-isnand.c: Renamed from tests/test-isnan.c.
28098         Include isnand.h instead of isnan.h.
28099         (main): Test isnand instead of isnan.
28100         * modules/fprintf-posix (Depends-on): Add isnand-nolibm, remove
28101         isnan-nolibm.
28102         * modules/frexp (Depends-on): Likewise.
28103         * modules/frexp-tests (Depends-on): Likewise.
28104         * modules/frexp-nolibm (Depends-on): Likewise.
28105         * modules/frexp-nolibm-tests (Depends-on): Likewise.
28106         * modules/isfinite (Depends-on): Likewise.
28107         * modules/round-tests (Depends-on): Likewise.
28108         * modules/signbit (Depends-on): Likewise.
28109         * modules/signbit-tests (Depends-on): Likewise.
28110         * modules/snprintf-posix (Depends-on): Likewise.
28111         * modules/sprintf-posix (Depends-on): Likewise.
28112         * modules/trunc-tests (Depends-on): Likewise.
28113         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
28114         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
28115         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
28116         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
28117         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
28118         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
28119         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
28120         * modules/vasnprintf-posix (Depends-on): Likewise.
28121         * modules/vasprintf-posix (Depends-on): Likewise.
28122         * modules/vfprintf-posix (Depends-on): Likewise.
28123         * modules/vsnprintf-posix (Depends-on): Likewise.
28124         * modules/vsprintf-posix (Depends-on): Likewise.
28125         * lib/frexp.c: Include isnand.h instead of isnan.h.
28126         (ISNAN): Set to isnand instead of isnan.
28127         * lib/isfinite.c: Include isnand.h instead of isnan.h.
28128         (gl_isfinited): Use isnand instead of isnan.
28129         * lib/signbitd.c: Include isnand.h instead of isnan.h.
28130         (gl_signbitd): Use isnand instead of isnan.
28131         * lib/vasnprintf.c: Include isnand.h instead of isnan.h.
28132         (is_infinite_or_zero, VASNPRINTF): Use isnand instead of isnan.
28133         * tests/test-frexp.c: Include isnand.h instead of isnan.h.
28134         (main): Use isnand instead of isnan.
28135         * tests/test-round1.c: Include isnand.h.
28136         (main): Use isnand instead of isnan.
28137         * tests/test-round2.c: Include isnand.h instead of isnan.h.
28138         (ISNAN): Set to isnand instead of isnan.
28139         * tests/test-trunc1.c: Include isnand.h.
28140         (main): Use isnand instead of isnan.
28141         * tests/test-trunc2.c: Include isnand.h instead of isnan.h.
28142         (equal): Use isnand instead of isnan.
28143         * MODULES.html.sh (Mathematics <math.h>): Replace isnan-nolibm with
28144         isnand-nolibm.
28145         * NEWS: Mention the change.
28146
28147 2008-01-25  Paul Eggert  <eggert@cs.ucla.edu>
28148             Bruno Haible  <bruno@clisp.org>
28149
28150         * m4/signbit.m4 (gl_SIGNBIT): Require a macro definition. Test whether
28151         the GCC builtins for signbits are present and set
28152         REPLACE_SIGNBIT_USING_GCC if so.
28153         * lib/math.in.h (signbit): Define using GCC builtins if
28154         REPLACE_SIGNBIT_USING_GCC is set.
28155         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize
28156         REPLACE_SIGNBIT_USING_GCC.
28157         * modules/math (Makefile.am): Substitute REPLACE_SIGNBIT_USING_GCC.
28158
28159 2008-01-25  Jim Meyering  <meyering@redhat.com>
28160
28161         Prefer <config.h> over "config.h".  See autoconf doc for explanation.
28162         * lib/poll.c: Include <config.h>, not "config.h".
28163         * tests/test-getaddrinfo.c: Likewise.
28164
28165 2008-01-25  Simon Josefsson  <simon@josefsson.org>
28166
28167         * modules/sockets-tests: New file.
28168
28169 2008-01-24  Simon Josefsson  <simon@josefsson.org>
28170
28171         * modules/sockets: New module, can be used to call WSA_Startup and
28172         WSA_Cleanup when needed.
28173
28174         * lib/sockets.h, lib/sockets.c: New files.
28175
28176         * m4/sockets.m4: New file.
28177
28178         * tests/test-sockets.c: New file.
28179
28180 2008-01-19  Bruno Haible  <bruno@clisp.org>
28181
28182         * doc/posix-headers: Renamed from doc/headers.
28183         * doc/posix-functions: Renamed from doc/functions.
28184         * doc/gnulib.texi: Update.
28185
28186 2008-01-19  Bruno Haible  <bruno@clisp.org>
28187
28188         * doc/glibc-functions/strcasestr.texi: Include contents of
28189         doc/functions/strcasestr.texi, fixing the list of platforms.
28190         * doc/functions/strcasestr.texi: Remove file.
28191
28192 2008-01-19  Bruno Haible  <bruno@clisp.org>
28193
28194         * doc/glibc-functions/memmem.texi: Include contents of
28195         doc/functions/memmem.texi.
28196         * doc/functions/memmem.texi: Remove file.
28197
28198 2008-01-18  Bruno Haible  <bruno@clisp.org>
28199
28200         * doc/glibc-functions/*.texi: New files.
28201         * doc/gnulib.texi (Glibc Function Substitutes): Completely rewritten
28202         to use the new files.
28203
28204 2008-01-17  Bruno Haible  <bruno@clisp.org>
28205
28206         * tests/test-gethostname.c (main): Fix printf statement.
28207
28208 2008-01-17  Simon Josefsson  <simon@josefsson.org>
28209
28210         * modules/gethostname-tests: New file.
28211
28212         * tests/test-gethostname.c: New file.
28213
28214 2008-01-17  Simon Josefsson  <simon@josefsson.org>
28215
28216         * lib/gethostname.c: Include string.h unconditionally, strncpy is
28217         used by the UNAME case.  Reported by Bruno Haible
28218         <bruno@clisp.org>.
28219
28220 2008-01-17  Eric Blake  <ebb9@byu.net>
28221
28222         Convert c-strcasestr to be more efficient.
28223         * modules/c-strcasestr (Files): Use Two-Way, not KMP.
28224         (Depends-on): Add c-strcase, remove malloca, strnlen.
28225         * tests/test-c-strcasestr.c (main): Enhance test.
28226         * lib/c-strcasestr.c (c_strcasestr): Rewrite to new algorithm.
28227
28228 2007-01-16  Paolo Bonzini  <bonzini@gnu.org>
28229
28230         * build-aux/bootstrap (MSGID_BUGS_ADDRESS): New overridable variable.
28231         Use it in creating po/Makevars.
28232
28233 2008-01-15  Simon Josefsson  <simon@josefsson.org>
28234
28235         * lib/gc-libgcrypt.c (gc_init): Disable secure memory by default.
28236         Applications that requires it should initialize libgcrypt
28237         manually.
28238
28239 2008-01-16  Simon Josefsson  <simon@josefsson.org>
28240
28241         * lib/gethostname.c [!HAVE_UNAME]: Need string.h for strcpy.
28242
28243 2008-01-15  Paul Eggert  <eggert@cs.ucla.edu>
28244
28245         Fix problem with getdate on mingw32 reported by Simon Josefsson
28246         in <http://lists.gnu.org/archive/html/bug-gnulib/2008-01/msg00192.html>.
28247         * lib/getdate.y (get_date): Check "HAVE_DECL_TZNAME", not "defined
28248         tzname", when deciding whether to declare tzname.
28249         * lib/strftime.c (tzname): Likewise.
28250
28251 2008-01-15  Bruno Haible  <bruno@clisp.org>
28252
28253         Work around a MacOS X 10.5 bug in frexpl().
28254         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Also check denormalized numbers.
28255         * doc/functions/frexpl.texi: Document the bug.
28256         Reported by Elias Pipping <pipping@gentoo.org>.
28257
28258 2008-01-14  Eric Blake  <ebb9@byu.net>
28259
28260         Touch up previous patch.
28261         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR_SIMPLE): Fix typo.
28262         * doc/functions/strcasestr.texi (strcasestr): Document OpenBSD bug.
28263
28264         Convert strcasestr module to use Two-Way algorithm.
28265         * modules/strcasestr-simple: New module, based on the old
28266         strcasestr, but with Two-Way rather than KMP.
28267         * modules/strcasestr (Depends-on): Change to strcasestr-simple.
28268         * lib/string.in.h (rpl_strcasestr): Declare.
28269         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Check for linear
28270         performance.
28271         * lib/strcasestr.c (strcasestr): Simplify, and avoid malloc.
28272         * modules/string (Makefile.am): Support strcasestr.
28273         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Likewise.
28274         * modules/strcasestr-tests (Depends-on): Check for alarm.
28275         * tests/test-strcasestr.c: Augment test.
28276         * lib/str-two-way.h: Clean up stray macro.
28277         * NEWS: Document new module.
28278         * MODULES.html.sh (string handling): Likewise.
28279         * doc/functions/strcasestr.texi: New file.
28280         * doc/gnulib.texi (Function Substitutes): New node.  Move memmem
28281         here, since it is not a POSIX function.
28282
28283 2008-01-14  Colin Watson  <cjwatson@debian.org>
28284             Bruno Haible  <bruno@clisp.org>
28285
28286         * m4/strsignal.m4 (gl_FUNC_STRSIGNAL): Also check whether strsignal
28287         works fine; if not, set REPLACE_STRSIGNAL.
28288         (gl_PREREQ_STRSIGNAL): Require AC_DECL_SYS_SIGLIST.
28289         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
28290         REPLACE_STRSIGNAL.
28291         * lib/string.in.h (strsignal): Consider REPLACE_STRSIGNAL.
28292         * modules/string (Makefile.am): Substitute REPLACE_STRSIGNAL.
28293         * tests/test-strsignal.c (main): Check out-of-range signal numbers.
28294
28295 2008-01-14  Bruno Haible  <bruno@clisp.org>
28296
28297         * modules/strsignal (Include): Change to <string.h>.
28298
28299 2008-01-14  Colin Watson  <cjwatson@debian.org>
28300
28301         * modules/argp (Notice): Add a notice recommending to change
28302         XGETTEXT_OPTIONS.
28303         (configure.ac): Invoke AM_XGETTEXT_OPTION if it exists.
28304
28305 2008-01-13  Colin Watson  <cjwatson@debian.org>
28306
28307         * modules/strsignal-tests: New file.
28308         * tests/test-strsignal.c: New file.
28309
28310         * lib/strsignal.c: New file, from glibc with modifications.
28311         * lib/siglist.h: New file, from glibc with modifications.
28312         * lib/string.in.h (strsignal): New declaration.
28313         * m4/strsignal.m4: New file.
28314         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
28315         GNULIB_STRSIGNAL and HAVE_DECL_STRSIGNAL.
28316         * modules/strsignal: New file.
28317         * modules/string (Makefile.am): Substitute GNULIB_STRSIGNAL and
28318         HAVE_DECL_STRSIGNAL.
28319
28320 2008-01-13  Bruno Haible  <bruno@clisp.org>
28321
28322         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Check that the
28323         locale encoding is not ASCII. Needed for OpenBSD 4.0.
28324         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): Likewise.
28325         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
28326
28327 2008-01-13  Bruno Haible  <bruno@clisp.org>
28328
28329         * lib/argp-fmtstream.h (__attribute__): Don't redefine if
28330         __STRICT_ANSI__ is set: it's not needed by any version of gcc.
28331         * lib/argp.h (__attribute__): Likewise.
28332         * lib/c-stack.c (__attribute__): Likewise.
28333         * lib/error.h (__attribute__): Likewise.
28334         * lib/fts.c (__attribute__): Likewise.
28335         * lib/openat.h (__attribute__): Likewise.
28336         * lib/stdio.in.h (__attribute__): Likewise.
28337         * lib/string.in.h (__attribute__): Likewise.
28338         * lib/utimens.c (__attribute__): Likewise.
28339         * lib/vasnprintf.h (__attribute__): Likewise.
28340         * lib/xalloc.h (__attribute__): Likewise.
28341         * lib/xprintf.h (__attribute__): Likewise.
28342         * lib/xstrtol.h (__attribute__): Likewise.
28343         * lib/xvasprintf.h (__attribute__): Likewise.
28344
28345 2008-01-12  Bruno Haible  <bruno@clisp.org>
28346
28347         * doc/gnulib.texi (Glibc Header File Substitutes): New chapter.
28348         * doc/glibc-headers/a.out.texi: New file.
28349         * doc/glibc-headers/aliases.texi: New file.
28350         * doc/glibc-headers/alloca.texi: New file.
28351         * doc/glibc-headers/ar.texi: New file.
28352         * doc/glibc-headers/argp.texi: New file.
28353         * doc/glibc-headers/argz.texi: New file.
28354         * doc/glibc-headers/byteswap.texi: New file.
28355         * doc/glibc-headers/crypt.texi: New file.
28356         * doc/glibc-headers/endian.texi: New file.
28357         * doc/glibc-headers/envz.texi: New file.
28358         * doc/glibc-headers/err.texi: New file.
28359         * doc/glibc-headers/error.texi: New file.
28360         * doc/glibc-headers/execinfo.texi: New file.
28361         * doc/glibc-headers/fpu_control.texi: New file.
28362         * doc/glibc-headers/fstab.texi: New file.
28363         * doc/glibc-headers/fts.texi: New file.
28364         * doc/glibc-headers/getopt.texi: New file.
28365         * doc/glibc-headers/ieee754.texi: New file.
28366         * doc/glibc-headers/ifaddrs.texi: New file.
28367         * doc/glibc-headers/libintl.texi: New file.
28368         * doc/glibc-headers/mcheck.texi: New file.
28369         * doc/glibc-headers/mntent.texi: New file.
28370         * doc/glibc-headers/obstack.texi: New file.
28371         * doc/glibc-headers/paths.texi: New file.
28372         * doc/glibc-headers/printf.texi: New file.
28373         * doc/glibc-headers/pty.texi: New file.
28374         * doc/glibc-headers/resolv.texi: New file.
28375         * doc/glibc-headers/shadow.texi: New file.
28376         * doc/glibc-headers/sysexits.texi: New file.
28377         * doc/glibc-headers/ttyent.texi: New file.
28378
28379 2008-01-12  Jim Meyering  <meyering@redhat.com>
28380
28381         announce-gen: emit Gnulib's git-based version string.
28382         * build-aux/announce-gen: Remove option: --gnulib-snapshot-time-stamp=S.
28383         New option --gnulib-version=V, where V is expected to be
28384         the output of running git describe in the gnulib directory.
28385         (get_tool_versions): Request feedback on xdelta.  I suspect it's
28386         not useful, and plan to stop publishing an xdelta file with each
28387         coreutils release.
28388
28389         * build-aux/announce-gen: Also check for lzma-compressed files.
28390
28391 2008-01-11  Bruno Haible  <bruno@clisp.org>
28392
28393         * tests/test-memmem.c (main): Increase maximum allowed time.
28394         * tests/test-strstr.c (main): Likewise.
28395
28396 2008-01-11  Bruno Haible  <bruno@clisp.org>
28397
28398         * doc/functions/memmem.texi: Add more precisions about platforms.
28399         * doc/functions/strstr.texi: Likewise.
28400
28401 2008-01-10  Eric Blake  <ebb9@byu.net>
28402
28403         * m4/strstr.m4: Delete cruft from copy-n-paste.
28404         Reported by Bruno Haible.
28405
28406 2008-01-10  Bruno Haible  <bruno@clisp.org>
28407
28408         Make c-strstr rely on strstr.
28409         * lib/c-strstr.c: Don't include str-kmp.h.
28410         (c_strstr): Define in terms of strstr.
28411         * modules/c-strstr (Files): Remove lib/str-kmp.h.
28412         (Depends-on): Remove stdbool, malloca, strnlen. Add strstr.
28413
28414 2008-01-10  Bruno Haible  <bruno@clisp.org>
28415
28416         * doc/gnulib.texi (String Functions in C Locale): New section.
28417         * doc/c-ctype.texi: New file.
28418         * doc/c-strcase.texi: New file.
28419         * doc/c-strcaseeq.texi: New file.
28420         * doc/c-strcasestr.texi: New file.
28421         * doc/c-strstr.texi: New file.
28422         * doc/c-strtod.texi: New file.
28423         * doc/c-strtold.texi: New file.
28424
28425 2008-01-10  Eric Blake  <ebb9@byu.net>
28426
28427         * lib/relocatable.h: Fix a comment.
28428
28429 2008-01-10  Eric Blake  <ebb9@byu.net>
28430
28431         Share two-way algorithm.
28432         * lib/str-two-way.h: New file, merged from...
28433         * lib/memmem.c: ...here...
28434         * lib/strstr.c: ...and here.
28435         * modules/memmem (Files): Use it.
28436         * modules/strstr (Files): Likewise.
28437
28438         Avoid quadratic strstr implementations.
28439         * lib/strstr.c: New file.
28440         * m4/strstr.m4: Likewise.
28441         * modules/strstr: Likewise.
28442         * modules/strstr-tests: Likewise.
28443         * tests/test-strstr.c: Likewise.
28444         * lib/string.in.h (rpl_strstr): Declare.
28445         (memmem) [GNULIB_POSIXCHECK]: Document speed issue.
28446         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Support strstr.
28447         * modules/string (Makefile.am): Likewise.
28448         * MODULES.html.sh (string handling): Mention new module.
28449         * doc/functions/strstr.texi (strstr): Document the bug.
28450
28451 2008-01-10  Bruno Haible  <bruno@clisp.org>
28452
28453         * lib/relocatable.h (relocate): State whether result is freshly
28454         allocated or not.
28455         * lib/relocatable.c (relocate): Return a freshly allocated string
28456         instead of a pointer to a privately held string.
28457         Reported by Sylvain Beucler <beuc@gnu.org>.
28458
28459 2008-01-10  Colin Watson  <cjwatson@debian.org>
28460
28461         * lib/canonicalize-lgpl.c [!_LIBC]: Fix typo in #if directive:
28462         s/S_ISNLK/S_ISLNK/.
28463
28464 2008-01-09  Bruno Haible  <bruno@clisp.org>
28465
28466         * doc/functions/memmem.texi: Use the same structure as snprintf.texi
28467         and other files.
28468         * m4/memmem.m4 (gl_FUNC_MEMMEM): Say "guessing no" instead of "no"
28469         if it's only a guess.
28470         * modules/memmem: Simplify by depending on memmem-simple.
28471
28472 2008-01-09  Bruno Haible  <bruno@clisp.org>
28473
28474         Work around OpenBSD 4.0 tdelete() bug.
28475         * m4/tsearch.m4 (gl_FUNC_TSEARCH): Also check tdelete's return value.
28476         * lib/search.in.h: If REPLACE_TSEARCH is 1, define tsearch etc. as
28477         macros and don't redefine the enum values.
28478         * m4/search_h.m4 (gl_SEARCH_H_DEFAULTS): Initialize REPLACE_TSEARCH.
28479         * modules/search (Makefile.am): Also substitute REPLACE_TSEARCH.
28480         * doc/functions/tdelete.texi: Document the OpenBSD 4.0 bug.
28481
28482 2008-01-09  Bruno Haible  <bruno@clisp.org>
28483
28484         * tests/test-wcwidth.c: Include <string.h> and localcharset.h.
28485         (main): Don't perform the tests if setlocale did not install a UTF-8
28486         locale. Needed on OpenBSD 4.0.
28487         * modules/wcwidth-tests (Depends-on): Add localcharset.
28488
28489 2008-01-09  Paul Eggert  <eggert@cs.ucla.edu>
28490
28491         gl_FUNC_ALLOCA no longer defines HAVE_ALLOCA_H unconditionally.
28492         See <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00149.html>.
28493         * NEWS: announce this.
28494         * m4/alloca.m4 (gl_FUNC_ALLOCA): Don't define HAVE_ALLOCA_H.
28495
28496 2008-01-09  Simon Josefsson  <simon@josefsson.org>
28497         and Eric Blake  <ebb9@byu.net>
28498
28499         Add memmem-simple module.
28500         * m4/memmem.m4 (gl_FUNC_MEMMEM_SIMPLE): New macro.
28501         (gl_FUNC_MEMMEM): Separate performance from presence checks.
28502         * modules/memmem-simple: New file.
28503         * modules/memmem (Description): Tweak.
28504         * MODULES.html.sh (string handling): Mention new module.
28505         * doc/functions/memmem.texi (memmem): Distinguish which flaws are
28506         addressed by memmem-simple.
28507         * NEWS: Document the difference.
28508
28509 2008-01-09  Eric Blake  <ebb9@byu.net>
28510
28511         Give gcc some memmem optimization hints.
28512         * lib/string.in.h (memmem, memrchr, strchrnul, strnlen, strpbrk)
28513         (strcasestr): Declare as pure.
28514         * modules/memmem (Maintainer): Claim my implementation.
28515
28516 2008-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
28517
28518         Support AIX 6.1 and higher.
28519         * build-aux/config.libpath: Likewise.
28520         * build-aux/config.rpath: Likewise.
28521
28522 2008-01-08  Jim Meyering  <meyering@redhat.com>
28523             Bruno Haible  <bruno@clisp.org>
28524
28525         * lib/printf-parse.c (PRINTF_PARSE): Handle a size specifier "q"
28526         on MacOS X and a size specifier "I64" on mingw. Needed for PRIdMAX.
28527         Reported by Peter Fales in
28528         <http://lists.gnu.org/archive/html/bug-coreutils/2007-12/msg00148.html>.
28529
28530 2008-01-08  Bruno Haible  <bruno@clisp.org>
28531
28532         * modules/unictype/category-of (Depends-on): Add
28533         unictype/category-none.
28534         * modules/unictype/category-and-tests (Depends-on): Add
28535         unictype/category-{L,N,Lu,Nd}.
28536         * modules/unictype/category-and-not-tests (Depends-on): Likewise.
28537         * modules/unictype/category-or-tests (Depends-on): Add
28538         unictype/category-{L,N}.
28539         * modules/unictype/category-name-tests (Depends-on): Add
28540         unictype/category-{Z,Nl}.
28541         Reported by Simon Josefsson.
28542
28543 2008-01-08  Bruno Haible  <bruno@clisp.org>
28544
28545         * lib/str-kmp.h (knuth_morris_pratt_unibyte): Document the calling
28546         convention better.
28547         * lib/mbsstr.c (knuth_morris_pratt_multibyte): Likewise.
28548         * lib/mbscasestr.c (knuth_morris_pratt_multibyte): Likewise.
28549         Reported by Peter Miller <millerp@canb.auug.org.au>.
28550
28551 2008-01-08  Eric Blake  <ebb9@byu.net>
28552
28553         Rewrite memmem to guarantee linear complexity without malloc.
28554         * lib/memmem.c (memmem): Use Two-Way rather than
28555         Knuth-Morris-Pratt, to allow O(1) space usage.
28556         (critical_factorization, two_way_short_needle)
28557         (two_way_long_needle): New functions.
28558         (knuth_morris_pratt): Delete.
28559         * modules/memmem (Depends-on): No longer need malloca or stdbool.
28560         Add stdint.
28561         * tests/test-memmem.c (main): Add tests for periodic needle and
28562         sublinear performance.
28563         * doc/functions/memmem.texi (memmem): Document other deficiencies
28564         in cygwin and older glibc.
28565
28566 2008-01-08  Bruno Haible  <bruno@clisp.org>
28567
28568         * modules/memmem-tests (Makefile.am): Remove TESTS_ENVIRONMENT
28569         augmentation.
28570
28571 2008-01-08  Mike Frysinger  <vapier@gentoo.org>
28572
28573         Add a configure time option: --disable-acl.
28574         * m4/acl.m4 (gl_FUNC_ACL): Wrap all ACL logic in a call to
28575         AC_ARG_ENABLE(acl).
28576
28577 2008-01-06  Simon Josefsson  <simon@josefsson.org>
28578
28579         * tests/test-localename.c: Don't include obsolete "setenv.h".
28580
28581         * modules/localename-tests (Depends-on): Need unsetenv.
28582
28583 2008-01-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
28584
28585         * DEPENDENCIES: Require Texinfo version 4.6 or newer.
28586
28587 2008-01-06  Colin Watson  <cjwatson@debian.org>
28588
28589         * users.txt: Add man-db.
28590
28591 2008-01-07  Bruno Haible  <bruno@clisp.org>
28592
28593         * doc/gnulib-intro.texi (Library vs Reusable Code): Restore the
28594         previous section name.
28595
28596 2008-01-07  Bruno Haible  <bruno@clisp.org>
28597
28598         * lib/progname.c (set_program_name): Don't strip off a leading
28599         "lt-" prefix outside a .libs directory.
28600         Suggested by Paul Eggert.
28601
28602 2008-01-01  Sylvain Beucler  <beuc@gnu.org>
28603             Bruno Haible  <bruno@clisp.org>
28604
28605         Improve memory cleanup in 'relocatable' module.
28606         * lib/relocatable.h (compute_curr_prefix): Change return type to
28607         'char *'.
28608         * lib/relocatable.c (compute_curr_prefix): Change return type to
28609         'char *'. Free curr_installdir after use.
28610         (relocate): Free curr_prefix_better after use.
28611         * lib/progreloc.c (prepare_relocate): Free curr_prefix after use.
28612
28613 2008-01-01  Bruno Haible  <bruno@clisp.org>
28614
28615         * tests/test-wcwidth.c (main): Relax test of U+2060. Avoids a test
28616         failure on older glibc systems.
28617         Reported by Peter Fales <psfales@alcatel-lucent.com>.
28618
28619 2008-01-05  Eric Blake  <ebb9@byu.net>
28620
28621         Avoid quadratic system memmem.
28622         * m4/memmem.m4 (gl_FUNC_MEMMEM): Check for quadratic memmem.
28623         Reported by Ralf Wildenhues.
28624
28625         Fix memmem test for mingw.
28626         * modules/memmem-tests (configure.ac): Check for alarm.
28627         * tests/test-memmem.c (main): Avoid alarm on platforms that lack
28628         it.
28629         * doc/functions/memmem.texi: New file.
28630         * doc/gnulib.texi (Function Substitutes): Add memmem.
28631         Reported by Bruno Haible.
28632
28633 2008-01-04  Bruno Haible  <bruno@clisp.org>
28634
28635         * m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP):
28636         Require gl_HEADER_STRINGS_H_DEFAULTS, not
28637         gl_HEADER_STRING_H_DEFAULTS.
28638
28639 2008-01-04  Eric Blake  <ebb9@byu.net>
28640
28641         Shorten duration of memmem test.
28642         * tests/test-memmem.c (main): Use alarm to declare failure if test
28643         is taking too long.
28644         Reported by Ralf Wildenhues.
28645
28646 2007-12-21  Simon Josefsson  <simon@josefsson.org>
28647
28648         * modules/relocatable-prog-wrapper (Depends-on): Add intprops and
28649         string, needed by strerror.
28650
28651 2008-01-03  Colin Watson  <cjwatson@debian.org>
28652             Bruno Haible  <bruno@clisp.org>
28653
28654         * doc/gnulib-tool.texi (Localization): New section.
28655
28656 2008-01-02  Bruno Haible  <bruno@clisp.org>
28657
28658         * lib/memmem.c (knuth_morris_pratt, memmem): Change all 'char *'
28659         variables to 'unsigned char *' type.
28660         Reported by Paul Eggert.
28661
28662 2008-01-02  Jim Meyering  <jim@meyering.net>
28663
28664         * lib/version-etc.c (COPYRIGHT_YEAR): Increase for new year.
28665
28666 2007-12-31  Jim Meyering  <jim@meyering.net>
28667
28668         Avoid use of private FTS type name.
28669         * lib/fts.c (fts_sort): Use FTSENT rather than "struct _ftsent".
28670
28671 2007-12-30  Karl Berry  <karl@gnu.org>
28672
28673         * doc/gnulib.texi (Library vs. Reusable Code): remove period, to
28674         work around defect in Texinfo and/or the standalone Info browser.
28675
28676 2007-12-30  Bruno Haible  <bruno@clisp.org>
28677
28678         Unify 5 copies of the KMP code.
28679         * lib/str-kmp.h: New file.
28680         * lib/c-strcasestr.c: Include str-kmp.h.
28681         (knuth_morris_pratt): Remove function.
28682         (c_strcasestr): Update.
28683         * lib/c-strstr.c: Include str-kmp.h.
28684         (knuth_morris_pratt): Remove function.
28685         (c_strcasestr): Update.
28686         * lib/mbscasestr.c: Include str-kmp.h.
28687         (knuth_morris_pratt_unibyte): Remove function.
28688         * lib/mbsstr.c: Include str-kmp.h.
28689         (knuth_morris_pratt_unibyte): Remove function.
28690         * lib/strcasestr.c: Include str-kmp.h.
28691         (knuth_morris_pratt): Remove function.
28692         (strcasestr): Update.
28693         * modules/c-strcasestr (Files): Add lib/str-kmp.h.
28694         * modules/c-strstr (Files): Likewise.
28695         * modules/mbscasestr (Files): Likewise.
28696         * modules/mbsstr (Files): Likewise.
28697         * modules/strcasestr (Files): Likewise.
28698         Suggested by Paul Eggert.
28699
28700 2007-12-30  Bruno Haible  <bruno@clisp.org>
28701
28702         * lib/xmalloca.c (xmmalloca): Don't define if HAVE_ALLOCA is not
28703         defined.
28704
28705 2007-12-30  Bruno Haible  <bruno@clisp.org>
28706
28707         * lib/xmalloca.h: Include xalloc.h.
28708         (xnmalloca): New macro.
28709
28710 2007-12-30  Bruno Haible  <bruno@clisp.org>
28711
28712         * lib/malloca.h (nmalloca): New macro.
28713         * lib/c-strcasestr.c (knuth_morris_pratt): Use it.
28714         * lib/c-strstr.c (knuth_morris_pratt): Likewise.
28715         * lib/mbscasestr.c (knuth_morris_pratt_unibyte,
28716         knuth_morris_pratt_multibyte): Likewise.
28717         * lib/mbsstr.c (knuth_morris_pratt_unibyte,
28718         knuth_morris_pratt_multibyte): Likewise.
28719         * lib/memmem.c (knuth_morris_pratt): Likewise.
28720         * lib/strcasestr.c (knuth_morris_pratt): Likewise.
28721
28722 2007-12-25  Bruno Haible  <bruno@clisp.org>
28723
28724         Fixup after 2007-10-17 commit. Ensure that 'glob' stays under LGPLv2+.
28725         * lib/glob.c: Don't include openat.h.
28726         (link_exists2_p): Add back the code that deals with the
28727         !GLOB_ALTDIRFUNC case.
28728         (link_exists_p) [!_LIBC && !HAVE_FSTATAT]: Just call link_exists2_p and
28729         let it do the filename concatenation.
28730         * m4/glob.m4 (gl_PREREQ_GLOB): Add check for fstatat.
28731         * modules/glob (Depends-on): Remove openat.
28732
28733 2007-12-31  Bruno Haible  <bruno@clisp.org>
28734
28735         * modules/dirfd (License): Change to LGPLv2+.
28736         Approved by Jim Meyering.
28737
28738 2007-12-29  Paul Eggert  <eggert@cs.ucla.edu>
28739
28740         * lib/memmem.c (knuth_morris_pratt): Check for size_t overflow
28741         when multiplying M by sizeof (size_t).
28742
28743 2007-12-10  Martin Lambers  <marlam@marlam.de>
28744
28745         Override getpagesize on mingw.
28746         * lib/getpagesize.c: New file.
28747         * m4/getpagesize.m4 (gl_FUNC_GETPAGESIZE): Enable replacement on mingw.
28748         * modules/getpagesize (Files): Add lib/getpagesize.c.
28749         * lib/unistd.in.h (getpagesize): Declare if we are using a replacement.
28750         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
28751         REPLACE_GETPAGESIZE.
28752         * modules/unistd (Makefile.am): Substitute REPLACE_GETPAGESIZE.
28753
28754 2007-12-25  Bruno Haible  <bruno@clisp.org>
28755
28756         * modules/localcharset (Notice): New field.
28757         (configure.ac): Define LOCALCHARSET_TESTS_ENVIRONMENT.
28758         Suggested by Ben Pfaff <blp@cs.stanford.edu>.
28759
28760 2007-12-25  Paul Eggert  <eggert@cs.ucla.edu>
28761             Bruno Haible  <bruno@clisp.org>
28762
28763         Avoid using the syntax symbol() in formatted documentation.
28764         * MODULES.html.sh (func_module): When replacing symbol() with a
28765         hyperlink, remove the parentheses. Show an error if some remain.
28766         Recognize and render the '...' syntax.
28767         * doc/alloca-opt.texi: Remove parentheses from symbol reference.
28768         Rework. Add paragraph about GCC's inlining.
28769         * doc/alloca.texi: Likewise.
28770         * doc/error.texi: Remove parentheses from symbol reference.
28771         * doc/gnulib-intro.texi: Likewise.
28772         * doc/gnulib.texi (alloca, alloca-opt): New nodes.
28773         * modules/fnmatch (Description): Reword to say "the ... function".
28774         * modules/full-read (Description): Likewise.
28775         * modules/full-write (Description): Likewise.
28776         * modules/safe-read (Description): Likewise.
28777         * modules/safe-write (Description): Likewise.
28778         * modules/strchrnul (Description): Likewise.
28779         * modules/trim (Description): Likewise.
28780         * modules/error (Description): Remove parentheses from symbol
28781         references.
28782         * modules/verror (Description): Likewise.
28783         Reported by Karl Berry.
28784
28785 2007-12-25  Bruno Haible  <bruno@clisp.org>
28786
28787         Fixup after 2007-10-16 commit.
28788         * lib/glob.c (glob_in_dir): Don't use ISO C99 syntax.
28789
28790 2007-12-24  Bruno Haible  <bruno@clisp.org>
28791
28792         Make --enable-relocatable work with DESTDIR.
28793         * build-aux/install-reloc: Accept another argument 'destdir'. Use it
28794         to compute installdir from destprog.
28795         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): In INSTALL_PROGRAM_ENV,
28796         also set the RELOC_DESTDIR variable.
28797         Reported by Левашев Иван <octagram@bluebottle.com>.
28798
28799 2007-12-24  Bruno Haible  <bruno@clisp.org>
28800
28801         Fix link error due to xalloc_die().
28802         * lib/progreloc.c: When NO_XMALLOC is defined, use areadlink instead
28803         of xreadlink.
28804         * lib/relocwrapper.c: Update comments.
28805         * build-aux/install-reloc: Remove xreadlink.c from file list.
28806         * modules/relocatable-prog-wrapper (Files): Remove xreadlink.h and
28807         xreadlink.c.
28808         Reported by Левашев Иван <octagram@bluebottle.com>.
28809
28810 2007-12-24  Bruno Haible  <bruno@clisp.org>
28811
28812         Split setenv module into setenv and unsetenv. Get rid of setenv.h.
28813         * lib/setenv.h: Remove file.
28814         * lib/stdlib.in.h (setenv, unsetenv): New declarations, moved here from
28815         lib/setenv.h.
28816         * modules/setenv (Files): Remove lib/setenv.h, lib/unsetenv.c.
28817         (Depends-on): Add stdlib.
28818         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR. Don't invoke
28819         gl_FUNC_UNSETENV.
28820         (Include): Replace setenv.h with <stdlib.h>.
28821         * modules/unsetenv: New file.
28822         * lib/setenv.c: Include <stdlib.h> first, after alloca.h.
28823         * lib/unsetenv.c: Include <stdlib.h> first.
28824         * m4/setenv.m4 (gl_FUNC_SETENV, gl_FUNC_SETENV_SEPARATE): Require
28825         gl_STDLIB_H_DEFAULTS. Conditionally set HAVE_SETENV to 0.
28826         (gl_FUNC_UNSETENV): Require gl_STDLIB_H_DEFAULTS. Conditionally set
28827         HAVE_UNSETENV to 0. Set VOID_UNSETENV as an AC_SUBSTed variable.
28828         * modules/stdlib (Makefile.am): Substitute also GNULIB_SETENV,
28829         HAVE_SETENV, GNULIB_UNSETENV, HAVE_UNSETENV, VOID_UNSETENV.
28830         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_SETENV,
28831         HAVE_SETENV, GNULIB_UNSETENV, HAVE_UNSETENV, VOID_UNSETENV.
28832         * doc/functions/unsetenv.texi: Update.
28833         * modules/xsetenv (Depends-on): Add unsetenv.
28834         * modules/getdate (Depends-on): Likewise.
28835         * lib/xsetenv.h: Include <stdlib.h> instead of setenv.h.
28836         * lib/xsetenv.c: Don't include setenv.h.
28837         * lib/getdate.y: Likewise.
28838         * lib/relocwrapper.c: Likewise.
28839         * modules/relocatable-prog-wrapper (Files): Remove lib/setenv.h.
28840         (Depends-on): Add stdlib.
28841         * NEWS: Mention the changes.
28842         Reported by Левашев Иван <octagram@bluebottle.com>.
28843
28844 2007-12-23  Bruno Haible  <bruno@clisp.org>
28845
28846         * lib/memmem.c (memmem): Use lowercase variable names. Tab
28847         indentation.
28848
28849 2007-12-23  Bruno Haible  <bruno@clisp.org>
28850
28851         * lib/c-strcasestr.c: Add more comments.
28852         * lib/c-strstr.c: Likewise.
28853         * lib/mbscasestr.c: Likewise.
28854         * lib/mbsstr.c: Likewise.
28855         * lib/strcasestr.c: Likewise.
28856         * lib/memmem.c: Likewise.
28857
28858 2007-12-23  Bruno Haible  <bruno@clisp.org>
28859
28860         * tests/test-memmem.c: Include <string.h> first.
28861
28862 2007-12-22  Bruno Haible  <bruno@clisp.org>
28863
28864         * gnulib-tool (func_create_testdir): Change $auxdir while generating
28865         the contents of $testsbase.
28866         Reported by Ralf Wildenhues.
28867
28868 2007-12-22  Bruno Haible  <bruno@clisp.org>
28869
28870         * gnulib-tool (func_emit_tests_Makefile_am): Replace local_ldadd with
28871         two variables local_ldadd_before, local_ldadd_last.
28872
28873 2007-12-20  Eric Blake  <ebb9@byu.net>
28874
28875         Work around circular library issue when cross-compiling.
28876         * lib/progname.c (set_program_name): Use strncmp, not memcmp, so
28877         that progname.o does not need to pull in rpl_memcmp.
28878
28879 2007-12-19  Eric Blake  <ebb9@byu.net>
28880
28881         Fix memmem to avoid O(n^2) worst-case complexity.
28882         * lib/memmem.c (knuth_morris_pratt): New function.
28883         (memmem): Use it if first few naive iterations fail.
28884         * m4/memmem.m4 (gl_FUNC_MEMMEM): Detect cygwin bug.
28885         * modules/memcmp (License): Set to LGPLv2+, not LGPL.
28886         * modules/memchr (License): Likewise.
28887         * modules/memmem (Depends-on): Add memcmp, memchr, stdbool, and
28888         malloca.
28889         * tests/test-memmem.c: Rewrite, borrowing ideas from
28890         test-mbsstr1.c; the old version wouldn't even compile!
28891         * modules/memmem-tests: New file.
28892         * lib/string.in.h (rpl_memmem): Add declaration.
28893         * modules/string (Makefile.am): Substitute REPLACE_MEMMEM.
28894         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Default for
28895         REPLACE_MEMMEM.
28896
28897 2007-12-18  Paul Eggert  <eggert@cs.ucla.edu>
28898
28899         Fix problem with _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H on VMS.
28900         * lib/stdint.in.h (_GL_JUST_INCLUDE_SYSTEM_INTTYPES_H): Define
28901         before any system include files, and undef after them all.  This
28902         should fix a problem on VMS reported by John E. Malmberg in
28903         <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00118.html>.
28904
28905 2007-12-17  Eric Blake  <ebb9@byu.net>
28906
28907         Revert addition of verify, for BSD/OS.
28908         * lib/fseeko.c [!HAVE_FSEEKO]: Allow off_t > long, even though it
28909         can't handle large files, for the sake of obsolete platforms.
28910         * modules/fseeko (Depends-on): Remove verify.
28911         * doc/functions/fseeko.texi (fseeko): Document BSD/OS limitation.
28912         * doc/functions/ftello.texi (ftello): Likewise.
28913         * doc/functions/fgetpos.texi (fgetpos): Likewise.
28914         Reported by Larry Jones.
28915
28916 2007-12-17  Petr Salinger  <Petr.Salinger@seznam.cz>
28917
28918         getcwd.c: Use a more readable witness: HAVE_OPENAT_SUPPORT
28919         * lib/getcwd.c: Define and use HAVE_OPENAT_SUPPORT, in place of AT_FDCWD.
28920
28921 2007-12-17  Jim Meyering  <meyering@redhat.com>
28922
28923         Port to GNU/kFreeBSD - FreeBSD kernel + GNU libc,
28924         which has no openat syscall, yet <fcntl.h> does define AT_FDCWD.
28925         * lib/getcwd.c: Undef AT_FDCWD if there is no openat function.
28926         * modules/getcwd (Depends-on): Add openat.
28927         Reported by Petr Salinger.
28928
28929 2007-12-17  Bruno Haible  <bruno@clisp.org>
28930
28931         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Use GL_NOCRASH to
28932         avoid a segmentation fault of the configure test on x86_64 systems.
28933
28934 2007-12-15  Jim Meyering  <meyering@redhat.com>
28935
28936         * build-aux/gnupload (GPG): Don't hard-code absolute name of gpg binary.
28937
28938 2007-12-13  Eric Blake  <ebb9@byu.net>
28939
28940         Another fseek test.
28941         * tests/test-fseek.c (main): Also test ungetc handling.
28942         * tests/test-fseeko.c (main): Likewise.
28943         * modules/fseeko (Depends-on): Add verify.
28944         * lib/fseeko.c [!HAVE_FSEEKO]: Verify that off_t is not too
28945         large.
28946         Reported by Larry Jones.
28947
28948         Fix fseeko on mingw.
28949         * lib/fseeko.c (rpl_fseeko) [_IOERR]: Reset EOF flag on successful
28950         seek.
28951
28952         Beef up fseek tests.
28953         * tests/test-fseek.c (main): Also test eof handling.
28954         * tests/test-fseeko.c (main): Likewise.
28955         Reported by Larry Jones.
28956
28957 2007-12-13  Larry Jones  <lawrence.jones@siemens.com>  (tiny change)
28958
28959         Fix fseeko on BSD-based platforms.
28960         * lib/fseeko.c (rpl_fseeko) [__sferror]: Reset EOF flag on
28961         successful seek.
28962
28963 2007-12-12  Eric Blake  <ebb9@byu.net>
28964
28965         Allow circular dependency of separate libtests.a
28966         * gnulib-tool (func_emit_tests_Makefile_am): Add AM_LIBTOOLFLAGS
28967         when use_libtests.
28968
28969 2007-12-11  Eric Blake  <ebb9@byu.net>
28970
28971         Fix bug with -0.0L in previous patch.
28972         * lib/isnan.c (rpl_isnanl): Make robust to -0.0L and pad bits.
28973         * tests/test-isnan.c (main): Also test on zeroes.
28974         * tests/test-isnanf.c (main): Likewise.
28975         * tests/test-isnanl.h (main): Likewise.
28976
28977         Detect pseudo-denormals on x86 even when cross-compiling.
28978         * lib/isnan.c (rpl_isnanl) [!KNOWN_EXPBIT0_LOCATION
28979         && USE_LONG_DOUBLE && x86]: Add one more check to filter out
28980         invalid bit patterns that happen to satisfy ==.
28981
28982         Avoid link failures with separate libtests.a.
28983         * gnulib-tool (func_emit_tests_Makefile_am): Also list local_ldadd
28984         last, to satisfy circular dependencies.
28985
28986 2007-12-11  Eric Blake  <ebb9@byu.net>
28987         and Bruno Haible  <bruno@clisp.org>
28988
28989         Fix OpenBSD 4.0 <float.h> handling of long double.
28990         * m4/float_h.m4 (gl_FLOAT_H): Also claim OpenBSD is broken.
28991         * lib/float.in.h [__OpenBSD__]: Add fixes for OpenBSD.
28992         * doc/headers/float.texi (float.h): Document OpenBSD bug.
28993
28994 2007-12-11  Jim Meyering  <meyering@redhat.com>
28995
28996         * users.txt: Add libvirt.
28997
28998         Support versions of autoconf prior to 2.59c.
28999         * gnulib-tool (func_emit_initmacro_done): Define m4_foreach_w
29000         if it is not already defined.
29001
29002 2007-12-09  Bruno Haible  <bruno@clisp.org>
29003
29004         Let 'gnulib-tool --import' collect sources needed for the tests in
29005         tests/ rather than in lib/.
29006         * gnulib-tool (func_emit_tests_Makefile_am): Accept use_libtests
29007         argument. If true, add rules to generate libtests.a, and put libtests.a
29008         into $(LDADD). Consider source files in subdirectories and set
29009         uses_subdirs.
29010         (func_emit_initmacro_start, func_emit_initmacro_end,
29011         func_emit_initmacro_done): Pass all arguments explicitly.
29012         (func_import): Determine two module lists main_modules,
29013         testsrelated_modules. Determine use_libtests. Determine two variables
29014         sed_transform_main_lib_file, sed_transform_testsrelated_lib_file
29015         instead of just sed_transform_lib_file. Determine two variables
29016         main_files and testsrelated_files. Compute 'files' as the union of
29017         both. Adjust sed_rewrite_old_files, sed_rewrite_new_files,
29018         func_add_or_update. In the generated gnulib-comp.m4, collect the
29019         object files for tests/ in different variables than those for lib/.
29020         Substitute LIBTESTS_LIBDEPS.
29021         (func_create_testdir): Combine the uses_subdirs results from
29022         func_emit_lib_Makefile_am and from func_emit_tests_Makefile_am.
29023
29024 2007-12-09  Bruno Haible  <bruno@clisp.org>
29025
29026         * gnulib-tool (func_emit_tests_Makefile_am): Expand references to
29027         the build-aux directory.
29028
29029 2007-12-09  Bruno Haible  <bruno@clisp.org>
29030
29031         * gnulib-tool (func_emit_tests_Makefile_am): Remove redundant code
29032         introduced on 2006-09-09.
29033
29034 2007-12-07  Jim Meyering  <meyering@redhat.com>
29035
29036         Let these macros work also with autoconf-2.59.
29037         * m4/getline.m4 (gl_FUNC_GETLINE): Require only autoconf-2.59.  2.60
29038         is not needed, since gnulib now permits use of AC_CHECK_DECLS_ONCE.
29039         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise.
29040
29041 2007-12-06  Jim Meyering  <meyering@redhat.com>
29042
29043         Avoid a configure-time syntax error in gl_FUNC_ACL.
29044         * m4/acl.m4 (gl_FUNC_ACL): Be careful to check for the acl_trivial
29045         function in each branch, before testing the cache variable.
29046
29047 2007-12-04  Eric Blake  <ebb9@byu.net>
29048
29049         Make scripts executable.
29050         * build-aux/config.guess: Add execute permissions.
29051         * build-aux/config.sub: Likewise.
29052         * build-aux/gendocs.sh: Likewise.
29053
29054         Fix frexp on mingw.
29055         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Detect mingw bug when
29056         cross-compiling.
29057         * doc/functions/frexp.texi (frexp): Document the bug.
29058
29059         Make cygwin fseeko check more reliable.
29060         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET) [__CYGWIN__]: Use cygwin
29061         version numbers, rather than unrelated feature check.
29062         * doc/functions/fseeko.texi (fseeko): Tweak failure report.
29063         * doc/functions/ftello.texi (ftello): Likewise.
29064         Reported by Bruno Haible.
29065
29066         * m4/strerror.m4: Bump version number.
29067
29068 2007-12-03  Bruno Haible  <bruno@clisp.org>
29069
29070         * doc/functions/mprotect.texi: Mention the mingw problem.
29071
29072 2007-12-03  Eric Blake  <ebb9@byu.net>
29073
29074         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): Ensure
29075         REPLACE_STRERROR is initialized before this macro.
29076
29077 2007-12-03  Paul Eggert  <eggert@cs.ucla.edu>
29078
29079         Add support for Solaris 10 ACLs.  Also, ACLs are Gnulib, not Autoconf.
29080         * modules/acl (configure.ac): Rename AC_FUNC_ACL to gl_FUNC_ACL.
29081         * m4/acl.m4 (gl_FUNC_ACL): Renamed from AC_FUNC_ACL.  On Solaris,
29082         put -lsec in even for programs other than 'ls'.  This fixes a problem
29083         for gettext reported by Bruno Haible in
29084         <http://lists.gnu.org/archive/html/bug-gnulib/2007-12/msg00007.html>.
29085         * lib/acl.c (copy_acl, qset_acl) [USE_ACL && defined ACL_NO_TRIVIAL]:
29086         Add support for Solaris 10.  This isn't efficient, but should get the
29087         job done for now.
29088
29089 2007-12-03  James Youngman  <jay@gnu.org>
29090
29091         * doc/regexprops-generic.texi: change "an close-group" to "a
29092         close-group" and "illegal" to "not allowed".
29093
29094 2007-11-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
29095
29096         * lib/unictype/pr_byname.c: Include unictype/pr_byname.h instead of
29097         pr_byname.h. Needed for the rare case when the maintainer has done
29098         "make maintainer-clean" in the source directory and then attempts a
29099         build outside the source directory.
29100         * lib/unictype/scripts.c: Include unictype/scripts_byname.h instead of
29101         scripts_byname.h.
29102
29103 2007-12-02  Martin Lambers <marlam@marlam.de>
29104             Bruno Haible  <bruno@clisp.org>
29105
29106         * lib/getpagesize.h: Remove file.
29107         * lib/unistd.in.h: Include declaration of getpagesize here.
29108         * m4/getpagesize.m4 (gl_FUNC_GETPAGESIZE): Renamed from gl_GETPAGESIZE.
29109         Invoke gl_UNISTD_H_DEFAULTS. Set HAVE_GETPAGESIZE, HAVE_OS_H,
29110         HAVE_SYS_PARAM_H.
29111         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_GETPAGESIZE,
29112         HAVE_GETPAGESIZE, HAVE_OS_H, HAVE_SYS_PARAM_H.
29113         * modules/getpagesize (Files): Remove lib/getpagesize.h.
29114         (Depends-on): Add unistd.
29115         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
29116         (Include): Use <unistd.h> instead of getpagesize.h.
29117         * modules/unistd (Makefile.am): Substitute also GNULIB_GETPAGESIZE,
29118         HAVE_GETPAGESIZE, HAVE_OS_H, HAVE_SYS_PARAM_H.
29119         * m4/pagealign_alloc.m4 (gl_PREREQ_PAGEALIGN_ALLOC): Remove
29120         gl_GETPAGESIZE invocation, already handled by module dependency.
29121         * lib/pagealign_alloc.c: Don't include getpagesize.h.
29122
29123 2007-12-02  Bruno Haible  <bruno@clisp.org>
29124
29125         * modules/strings-tests: New file.
29126         * tests/test-strings.c: New file.
29127
29128         Move declarations of str{,n}casecmp from <string.h> to <strings.h>.
29129         * lib/strings.in.h: New file.
29130         * lib/string.in.h (strcasecmp, strncasecmp): Remove declarations.
29131         * m4/strings_h.m4: New file.
29132         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Remove initialization
29133         of HAVE_STRCASECMP, HAVE_DECL_STRNCASECMP.
29134         * modules/strings: New file.
29135         * modules/string (Makefile.am): Update.
29136         * modules/strcase (Include): Mention <strings.h>, not <string.h>.
29137         Reported by Karl Berry.
29138
29139 2007-12-01  Eric Blake  <ebb9@byu.net>
29140
29141         * m4/stdio_h.m4 (gl_STDIN_LARGE_OFFSET) [__CYGWIN__]: Rewrite to
29142         accomodate fix in cygwin 1.5.25.
29143
29144 2007-12-01  Jim Meyering  <meyering@redhat.com>
29145
29146         Fix a bug that inhibited much of the utf8-optimization in regcomp.c.
29147         * lib/regcomp.c (optimize_utf8): Fix a typo, s/idx/ctx_type/,
29148         that would inhibit utf8-optimization of a regexp containing line-
29149         or buffer-anchors, e.g., `^', `$'.
29150
29151 2007-11-30  Bruno Haible  <bruno@clisp.org>
29152
29153         * lib/lock.h (gl_recursive_lock_init) [PTHREAD &&
29154         PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: Call
29155         glthread_recursive_lock_init.
29156         * lib/lock.c (glthread_recursive_lock_init)
29157         [PTHREAD_RECURSIVE_MUTEX_INITIALIZER]: New function.
29158         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
29159
29160 2007-11-28  Paul Eggert  <eggert@cs.ucla.edu>
29161
29162         New function qset_acl, like set_acl but with syscall semantics.
29163         * lib/acl.h (qset_acl): New decl.
29164         * lib/acl.c (qset_acl): New function.
29165         (set_acl): Use new function.  Use more-consistent diagnostics.
29166
29167 2007-11-28  Jim Meyering  <meyering@redhat.com>
29168
29169         * modules/physmem (License): Change from GPL to LGPLv2+.
29170
29171 2007-11-26  Bruno Haible  <bruno@clisp.org>
29172
29173         * lib/vasnprintf.c (decode_long_double): Don't abort if the
29174         'long double' type has excess precision.
29175         Reported by Jim Meyering in
29176         <http://lists.gnu.org/archive/html/bug-gnulib/2007-11/msg00120.html>.
29177
29178 2007-11-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
29179
29180         * doc/fdl.texi, doc/gpl-3.0.texi, doc/lgpl-3.0.texi:
29181         Sync from <http://gnu.org/licenses>.
29182         * modules/agpl-3.0, doc/agpl-3.0.texi: New module,
29183         with license text from same location.
29184         * doc/maintain.texi, doc/standards.texi:  Sync from
29185         <http://savannah.gnu.org/projects/gnustandards>.
29186
29187 2007-11-22  Ondřej Vašík  <ovasik@redhat.com>
29188         and Jim Meyering  <meyering@redhat.com>
29189
29190         Adjust getdate' grammar to accept a slightly more regular language.
29191         E.g., accept "YYYYMMDD +N days" as well as "YYYYMMDD N days".
29192         Before, the former was rejected.
29193         * lib/getdate.y (digits_to_date_time): New function, factored
29194         out of ...
29195         (number): ...here.  Just call digits_to_date_time.
29196         (hybrid): New non-terminal to handle an <unsigned number,
29197         signed relative offset> sequence consistently.
29198
29199 2007-11-18  Jim Meyering  <meyering@redhat.com>
29200
29201         Pull my changes from coreutils:
29202         bootstrap: fix typo to enable use of $gnulib_tool_option_extras.
29203         * build-aux/bootstrap (gnulib_tool_options): Add a space before the
29204         use of $gnulib_tool_option_extras, so that it's separated from the
29205         preceding argument.
29206
29207         Fix bootstrap failure to handle files like lib/uniwidth/cjk.h.
29208         * build-aux/bootstrap (cp_mark_as_generated): Create any required
29209         parent destination directories before copying a file into place.
29210
29211 2007-11-18  Sergey Poznyakoff  <gray@gnu.org.ua>
29212
29213         bootstrap: work also with 4-argument variant of AC_INIT
29214         * build-aux/bootstrap (gnulib_extra_files): Adjust sed command.
29215
29216 2007-11-16  Paul Eggert  <eggert@cs.ucla.edu>
29217
29218         Port test-getaddrinfo to Solaris.
29219         Problem reported by Bruno Haible in
29220         <http://lists.gnu.org/archive/html/bug-gnulib/2007-03/msg00171.html>.
29221         * tests/test-getaddrinfo.c (simple): Add a comment asking for an
29222         explanation of setting 'hints'.
29223         Don't reject an implementation merely because it returns EAI_SERVICE.
29224         (EAI_SERVICE): Define to 0 if not defined.
29225
29226 2007-11-15  Paul Eggert  <eggert@cs.ucla.edu>
29227
29228         The license of gnu-make and posix-shell is now "GPLed build tool".
29229         * modules/gnu-make (License): Likewise.
29230         * modules/posix-shell (License): Likewise.
29231
29232         New module posix-shell, for determining a POSIX shell
29233         or perhaps something that is close enough to a POSIX shell.
29234         * m4/posix-shell.m4: New file.
29235         * modules/posix-shell: New file.
29236
29237         * MODULES.html.sh: Mention new module.
29238
29239         New module gnu-make, for determining whether we're using GNU Make.
29240         * m4/gnu-make.m4: New file.
29241         * modules/gnu-make: New file.
29242         * MODULES.html.sh: Mention new module.
29243
29244 2007-11-14  Jim Meyering  <meyering@redhat.com>
29245
29246         Define a sometimes-link-required function using ARGMATCH_DIE_DECL.
29247         * tests/test-argmatch.c (ARGMATCH_DIE_DECL): When defined,
29248         use this macro to create a function _definition_.
29249         Remove useless "#undef ARGMATCH_DIE".
29250
29251 2007-11-14  Bruno Haible  <bruno@clisp.org>
29252
29253         * lib/config.charset: Update for OpenBSD 4.1.
29254         Reported and helped by Ben Pfaff <blp@cs.stanford.edu>.
29255
29256 2007-11-12  Paul Eggert  <eggert@cs.ucla.edu>
29257
29258         Document 64-bit #if problems in stdint.texi.
29259         * doc/headers/stdint.texi (stdint.h): Mention problems with
29260         64-bit-#if, and how to work around them.
29261
29262         Don't insist on 'long long int' support in the preprocessor.  It
29263         breaks too many things.  For example, PRIdMAX still uses a 'long
29264         long int' format with the latest Sun compiler, even though
29265         HAVE_LONG_LONG_INT isn't defined due to that compiler's
29266         preprocessor problem.  This causes the latest coreutils to dump
29267         core on Solaris 10 sparc with the Sun C compiler.
29268         Instead, fix the 2007-10-16 problem in a different way, by evaluating
29269         the troublesome expressions at configure-time, not at #if-time.
29270         * m4/longlong.m4 (_AC_TYPE_LONG_LONG_SNIPPET): Don't test the
29271         preprocessor.
29272         * m4/inttypes.m4 (gl_INTTYPES_H): Move the #if checks into
29273         compile-time C checks, done at 'configure'-time.
29274         (gl_INTTYPES_CHECK_LONG_LONG_INT_CONDITION): New macro.
29275         * modules/inttypes (Makefile): Substitute the new symbols that
29276         gl_INTTYPES_H now generates.
29277         * lib/inttypes.in.h: Don't use constants wider than 'long' in #if.
29278
29279 2007-11-12  Bruno Haible  <bruno@clisp.org>
29280
29281         Tests for Unicode character classification functions.
29282
29283         * modules/unictype/bidicategory-byname-tests: New file.
29284         * modules/unictype/bidicategory-name-tests: New file.
29285         * modules/unictype/bidicategory-of-tests: New file.
29286         * modules/unictype/bidicategory-test-tests: New file.
29287         * modules/unictype/block-list-tests: New file.
29288         * modules/unictype/block-of-tests: New file.
29289         * modules/unictype/block-test-tests: New file.
29290         * modules/unictype/category-C-tests: New file.
29291         * modules/unictype/category-Cc-tests: New file.
29292         * modules/unictype/category-Cf-tests: New file.
29293         * modules/unictype/category-Cn-tests: New file.
29294         * modules/unictype/category-Co-tests: New file.
29295         * modules/unictype/category-Cs-tests: New file.
29296         * modules/unictype/category-L-tests: New file.
29297         * modules/unictype/category-Ll-tests: New file.
29298         * modules/unictype/category-Lm-tests: New file.
29299         * modules/unictype/category-Lo-tests: New file.
29300         * modules/unictype/category-Lt-tests: New file.
29301         * modules/unictype/category-Lu-tests: New file.
29302         * modules/unictype/category-M-tests: New file.
29303         * modules/unictype/category-Mc-tests: New file.
29304         * modules/unictype/category-Me-tests: New file.
29305         * modules/unictype/category-Mn-tests: New file.
29306         * modules/unictype/category-N-tests: New file.
29307         * modules/unictype/category-Nd-tests: New file.
29308         * modules/unictype/category-Nl-tests: New file.
29309         * modules/unictype/category-No-tests: New file.
29310         * modules/unictype/category-P-tests: New file.
29311         * modules/unictype/category-Pc-tests: New file.
29312         * modules/unictype/category-Pd-tests: New file.
29313         * modules/unictype/category-Pe-tests: New file.
29314         * modules/unictype/category-Pf-tests: New file.
29315         * modules/unictype/category-Pi-tests: New file.
29316         * modules/unictype/category-Po-tests: New file.
29317         * modules/unictype/category-Ps-tests: New file.
29318         * modules/unictype/category-S-tests: New file.
29319         * modules/unictype/category-Sc-tests: New file.
29320         * modules/unictype/category-Sk-tests: New file.
29321         * modules/unictype/category-Sm-tests: New file.
29322         * modules/unictype/category-So-tests: New file.
29323         * modules/unictype/category-Z-tests: New file.
29324         * modules/unictype/category-Zl-tests: New file.
29325         * modules/unictype/category-Zp-tests: New file.
29326         * modules/unictype/category-Zs-tests: New file.
29327         * modules/unictype/category-and-not-tests: New file.
29328         * modules/unictype/category-and-tests: New file.
29329         * modules/unictype/category-byname-tests: New file.
29330         * modules/unictype/category-name-tests: New file.
29331         * modules/unictype/category-none-tests: New file.
29332         * modules/unictype/category-of-tests: New file.
29333         * modules/unictype/category-or-tests: New file.
29334         * modules/unictype/category-test-withtable-tests: New file.
29335         * modules/unictype/combining-class-tests: New file.
29336         * modules/unictype/ctype-alnum-tests: New file.
29337         * modules/unictype/ctype-alpha-tests: New file.
29338         * modules/unictype/ctype-blank-tests: New file.
29339         * modules/unictype/ctype-cntrl-tests: New file.
29340         * modules/unictype/ctype-digit-tests: New file.
29341         * modules/unictype/ctype-graph-tests: New file.
29342         * modules/unictype/ctype-lower-tests: New file.
29343         * modules/unictype/ctype-print-tests: New file.
29344         * modules/unictype/ctype-punct-tests: New file.
29345         * modules/unictype/ctype-space-tests: New file.
29346         * modules/unictype/ctype-upper-tests: New file.
29347         * modules/unictype/ctype-xdigit-tests: New file.
29348         * modules/unictype/decimal-digit-tests: New file.
29349         * modules/unictype/digit-tests: New file.
29350         * modules/unictype/mirror-tests: New file.
29351         * modules/unictype/numeric-tests: New file.
29352         * modules/unictype/property-alphabetic-tests: New file.
29353         * modules/unictype/property-ascii-hex-digit-tests: New file.
29354         * modules/unictype/property-bidi-arabic-digit-tests: New file.
29355         * modules/unictype/property-bidi-arabic-right-to-left-tests: New file.
29356         * modules/unictype/property-bidi-block-separator-tests: New file.
29357         * modules/unictype/property-bidi-boundary-neutral-tests: New file.
29358         * modules/unictype/property-bidi-common-separator-tests: New file.
29359         * modules/unictype/property-bidi-control-tests: New file.
29360         * modules/unictype/property-bidi-embedding-or-override-tests: New file.
29361         * modules/unictype/property-bidi-eur-num-separator-tests: New file.
29362         * modules/unictype/property-bidi-eur-num-terminator-tests: New file.
29363         * modules/unictype/property-bidi-european-digit-tests: New file.
29364         * modules/unictype/property-bidi-hebrew-right-to-left-tests: New file.
29365         * modules/unictype/property-bidi-left-to-right-tests: New file.
29366         * modules/unictype/property-bidi-non-spacing-mark-tests: New file.
29367         * modules/unictype/property-bidi-other-neutral-tests: New file.
29368         * modules/unictype/property-bidi-pdf-tests: New file.
29369         * modules/unictype/property-bidi-segment-separator-tests: New file.
29370         * modules/unictype/property-bidi-whitespace-tests: New file.
29371         * modules/unictype/property-byname-tests: New file.
29372         * modules/unictype/property-combining-tests: New file.
29373         * modules/unictype/property-composite-tests: New file.
29374         * modules/unictype/property-currency-symbol-tests: New file.
29375         * modules/unictype/property-dash-tests: New file.
29376         * modules/unictype/property-decimal-digit-tests: New file.
29377         * modules/unictype/property-default-ignorable-code-point-tests: New file.
29378         * modules/unictype/property-deprecated-tests: New file.
29379         * modules/unictype/property-diacritic-tests: New file.
29380         * modules/unictype/property-extender-tests: New file.
29381         * modules/unictype/property-format-control-tests: New file.
29382         * modules/unictype/property-grapheme-base-tests: New file.
29383         * modules/unictype/property-grapheme-extend-tests: New file.
29384         * modules/unictype/property-grapheme-link-tests: New file.
29385         * modules/unictype/property-hex-digit-tests: New file.
29386         * modules/unictype/property-hyphen-tests: New file.
29387         * modules/unictype/property-id-continue-tests: New file.
29388         * modules/unictype/property-id-start-tests: New file.
29389         * modules/unictype/property-ideographic-tests: New file.
29390         * modules/unictype/property-ids-binary-operator-tests: New file.
29391         * modules/unictype/property-ids-trinary-operator-tests: New file.
29392         * modules/unictype/property-ignorable-control-tests: New file.
29393         * modules/unictype/property-iso-control-tests: New file.
29394         * modules/unictype/property-join-control-tests: New file.
29395         * modules/unictype/property-left-of-pair-tests: New file.
29396         * modules/unictype/property-line-separator-tests: New file.
29397         * modules/unictype/property-logical-order-exception-tests: New file.
29398         * modules/unictype/property-lowercase-tests: New file.
29399         * modules/unictype/property-math-tests: New file.
29400         * modules/unictype/property-non-break-tests: New file.
29401         * modules/unictype/property-not-a-character-tests: New file.
29402         * modules/unictype/property-numeric-tests: New file.
29403         * modules/unictype/property-other-alphabetic-tests: New file.
29404         * modules/unictype/property-other-default-ignorable-code-point-tests: New file.
29405         * modules/unictype/property-other-grapheme-extend-tests: New file.
29406         * modules/unictype/property-other-id-continue-tests: New file.
29407         * modules/unictype/property-other-id-start-tests: New file.
29408         * modules/unictype/property-other-lowercase-tests: New file.
29409         * modules/unictype/property-other-math-tests: New file.
29410         * modules/unictype/property-other-uppercase-tests: New file.
29411         * modules/unictype/property-paired-punctuation-tests: New file.
29412         * modules/unictype/property-paragraph-separator-tests: New file.
29413         * modules/unictype/property-pattern-syntax-tests: New file.
29414         * modules/unictype/property-pattern-white-space-tests: New file.
29415         * modules/unictype/property-private-use-tests: New file.
29416         * modules/unictype/property-punctuation-tests: New file.
29417         * modules/unictype/property-quotation-mark-tests: New file.
29418         * modules/unictype/property-radical-tests: New file.
29419         * modules/unictype/property-sentence-terminal-tests: New file.
29420         * modules/unictype/property-soft-dotted-tests: New file.
29421         * modules/unictype/property-space-tests: New file.
29422         * modules/unictype/property-terminal-punctuation-tests: New file.
29423         * modules/unictype/property-test-tests: New file.
29424         * modules/unictype/property-titlecase-tests: New file.
29425         * modules/unictype/property-unassigned-code-value-tests: New file.
29426         * modules/unictype/property-unified-ideograph-tests: New file.
29427         * modules/unictype/property-uppercase-tests: New file.
29428         * modules/unictype/property-variation-selector-tests: New file.
29429         * modules/unictype/property-white-space-tests: New file.
29430         * modules/unictype/property-xid-continue-tests: New file.
29431         * modules/unictype/property-xid-start-tests: New file.
29432         * modules/unictype/property-zero-width-tests: New file.
29433         * modules/unictype/scripts-tests: New file.
29434         * modules/unictype/syntax-c-ident-tests: New file.
29435         * modules/unictype/syntax-c-whitespace-tests: New file.
29436         * modules/unictype/syntax-java-ident-tests: New file.
29437         * modules/unictype/syntax-java-whitespace-tests: New file.
29438         * tests/unictype/test-bidi_byname.c: New file.
29439         * tests/unictype/test-bidi_name.c: New file.
29440         * tests/unictype/test-bidi_of.c: New file.
29441         * tests/unictype/test-bidi_test.c: New file.
29442         * tests/unictype/test-block_list.c: New file.
29443         * tests/unictype/test-block_of.c: New file.
29444         * tests/unictype/test-block_test.c: New file.
29445         * tests/unictype/test-categ_and.c: New file.
29446         * tests/unictype/test-categ_and_not.c: New file.
29447         * tests/unictype/test-categ_byname.c: New file.
29448         * tests/unictype/test-categ_name.c: New file.
29449         * tests/unictype/test-categ_none.c: New file.
29450         * tests/unictype/test-categ_of.c: New file.
29451         * tests/unictype/test-categ_or.c: New file.
29452         * tests/unictype/test-categ_test_withtable.c: New file.
29453         * tests/unictype/test-combining.c: New file.
29454         * tests/unictype/test-decdigit.c: New file.
29455         * tests/unictype/test-digit.c: New file.
29456         * tests/unictype/test-mirror.c: New file.
29457         * tests/unictype/test-numeric.c: New file.
29458         * tests/unictype/test-pr_byname.c: New file.
29459         * tests/unictype/test-pr_test.c: New file.
29460         * tests/unictype/test-predicate-part1.h: New file.
29461         * tests/unictype/test-predicate-part2.h: New file.
29462         * tests/unictype/test-scripts.c: New file.
29463         * tests/unictype/test-sy_c_ident.c: New file.
29464         * tests/unictype/test-sy_java_ident.c: New file.
29465
29466         * tests/unictype/test-categ_C.c: New file, generated by gen-ctype.c
29467         for Unicode 5.0.0.
29468         * tests/unictype/test-categ_Cc.c: Likewise.
29469         * tests/unictype/test-categ_Cf.c: Likewise.
29470         * tests/unictype/test-categ_Cn.c: Likewise.
29471         * tests/unictype/test-categ_Co.c: Likewise.
29472         * tests/unictype/test-categ_Cs.c: Likewise.
29473         * tests/unictype/test-categ_L.c: Likewise.
29474         * tests/unictype/test-categ_Ll.c: Likewise.
29475         * tests/unictype/test-categ_Lm.c: Likewise.
29476         * tests/unictype/test-categ_Lo.c: Likewise.
29477         * tests/unictype/test-categ_Lt.c: Likewise.
29478         * tests/unictype/test-categ_Lu.c: Likewise.
29479         * tests/unictype/test-categ_M.c: Likewise.
29480         * tests/unictype/test-categ_Mc.c: Likewise.
29481         * tests/unictype/test-categ_Me.c: Likewise.
29482         * tests/unictype/test-categ_Mn.c: Likewise.
29483         * tests/unictype/test-categ_N.c: Likewise.
29484         * tests/unictype/test-categ_Nd.c: Likewise.
29485         * tests/unictype/test-categ_Nl.c: Likewise.
29486         * tests/unictype/test-categ_No.c: Likewise.
29487         * tests/unictype/test-categ_P.c: Likewise.
29488         * tests/unictype/test-categ_Pc.c: Likewise.
29489         * tests/unictype/test-categ_Pd.c: Likewise.
29490         * tests/unictype/test-categ_Pe.c: Likewise.
29491         * tests/unictype/test-categ_Pf.c: Likewise.
29492         * tests/unictype/test-categ_Pi.c: Likewise.
29493         * tests/unictype/test-categ_Po.c: Likewise.
29494         * tests/unictype/test-categ_Ps.c: Likewise.
29495         * tests/unictype/test-categ_S.c: Likewise.
29496         * tests/unictype/test-categ_Sc.c: Likewise.
29497         * tests/unictype/test-categ_Sk.c: Likewise.
29498         * tests/unictype/test-categ_Sm.c: Likewise.
29499         * tests/unictype/test-categ_So.c: Likewise.
29500         * tests/unictype/test-categ_Z.c: Likewise.
29501         * tests/unictype/test-categ_Zl.c: Likewise.
29502         * tests/unictype/test-categ_Zp.c: Likewise.
29503         * tests/unictype/test-categ_Zs.c: Likewise.
29504         * tests/unictype/test-ctype_alnum.c: Likewise.
29505         * tests/unictype/test-ctype_alpha.c: Likewise.
29506         * tests/unictype/test-ctype_blank.c: Likewise.
29507         * tests/unictype/test-ctype_cntrl.c: Likewise.
29508         * tests/unictype/test-ctype_digit.c: Likewise.
29509         * tests/unictype/test-ctype_graph.c: Likewise.
29510         * tests/unictype/test-ctype_lower.c: Likewise.
29511         * tests/unictype/test-ctype_print.c: Likewise.
29512         * tests/unictype/test-ctype_punct.c: Likewise.
29513         * tests/unictype/test-ctype_space.c: Likewise.
29514         * tests/unictype/test-ctype_upper.c: Likewise.
29515         * tests/unictype/test-ctype_xdigit.c: Likewise.
29516         * tests/unictype/test-decdigit.h: Likewise.
29517         * tests/unictype/test-digit.h: Likewise.
29518         * tests/unictype/test-numeric.h: Likewise.
29519         * tests/unictype/test-pr_alphabetic.c: Likewise.
29520         * tests/unictype/test-pr_ascii_hex_digit.c: Likewise.
29521         * tests/unictype/test-pr_bidi_arabic_digit.c: Likewise.
29522         * tests/unictype/test-pr_bidi_arabic_right_to_left.c: Likewise.
29523         * tests/unictype/test-pr_bidi_block_separator.c: Likewise.
29524         * tests/unictype/test-pr_bidi_boundary_neutral.c: Likewise.
29525         * tests/unictype/test-pr_bidi_common_separator.c: Likewise.
29526         * tests/unictype/test-pr_bidi_control.c: Likewise.
29527         * tests/unictype/test-pr_bidi_embedding_or_override.c: Likewise.
29528         * tests/unictype/test-pr_bidi_eur_num_separator.c: Likewise.
29529         * tests/unictype/test-pr_bidi_eur_num_terminator.c: Likewise.
29530         * tests/unictype/test-pr_bidi_european_digit.c: Likewise.
29531         * tests/unictype/test-pr_bidi_hebrew_right_to_left.c: Likewise.
29532         * tests/unictype/test-pr_bidi_left_to_right.c: Likewise.
29533         * tests/unictype/test-pr_bidi_non_spacing_mark.c: Likewise.
29534         * tests/unictype/test-pr_bidi_other_neutral.c: Likewise.
29535         * tests/unictype/test-pr_bidi_pdf.c: Likewise.
29536         * tests/unictype/test-pr_bidi_segment_separator.c: Likewise.
29537         * tests/unictype/test-pr_bidi_whitespace.c: Likewise.
29538         * tests/unictype/test-pr_combining.c: Likewise.
29539         * tests/unictype/test-pr_composite.c: Likewise.
29540         * tests/unictype/test-pr_currency_symbol.c: Likewise.
29541         * tests/unictype/test-pr_dash.c: Likewise.
29542         * tests/unictype/test-pr_decimal_digit.c: Likewise.
29543         * tests/unictype/test-pr_default_ignorable_code_point.c: Likewise.
29544         * tests/unictype/test-pr_deprecated.c: Likewise.
29545         * tests/unictype/test-pr_diacritic.c: Likewise.
29546         * tests/unictype/test-pr_extender.c: Likewise.
29547         * tests/unictype/test-pr_format_control.c: Likewise.
29548         * tests/unictype/test-pr_grapheme_base.c: Likewise.
29549         * tests/unictype/test-pr_grapheme_extend.c: Likewise.
29550         * tests/unictype/test-pr_grapheme_link.c: Likewise.
29551         * tests/unictype/test-pr_hex_digit.c: Likewise.
29552         * tests/unictype/test-pr_hyphen.c: Likewise.
29553         * tests/unictype/test-pr_id_continue.c: Likewise.
29554         * tests/unictype/test-pr_id_start.c: Likewise.
29555         * tests/unictype/test-pr_ideographic.c: Likewise.
29556         * tests/unictype/test-pr_ids_binary_operator.c: Likewise.
29557         * tests/unictype/test-pr_ids_trinary_operator.c: Likewise.
29558         * tests/unictype/test-pr_ignorable_control.c: Likewise.
29559         * tests/unictype/test-pr_iso_control.c: Likewise.
29560         * tests/unictype/test-pr_join_control.c: Likewise.
29561         * tests/unictype/test-pr_left_of_pair.c: Likewise.
29562         * tests/unictype/test-pr_line_separator.c: Likewise.
29563         * tests/unictype/test-pr_logical_order_exception.c: Likewise.
29564         * tests/unictype/test-pr_lowercase.c: Likewise.
29565         * tests/unictype/test-pr_math.c: Likewise.
29566         * tests/unictype/test-pr_non_break.c: Likewise.
29567         * tests/unictype/test-pr_not_a_character.c: Likewise.
29568         * tests/unictype/test-pr_numeric.c: Likewise.
29569         * tests/unictype/test-pr_other_alphabetic.c: Likewise.
29570         * tests/unictype/test-pr_other_default_ignorable_code_point.c: Likewise.
29571         * tests/unictype/test-pr_other_grapheme_extend.c: Likewise.
29572         * tests/unictype/test-pr_other_id_continue.c: Likewise.
29573         * tests/unictype/test-pr_other_id_start.c: Likewise.
29574         * tests/unictype/test-pr_other_lowercase.c: Likewise.
29575         * tests/unictype/test-pr_other_math.c: Likewise.
29576         * tests/unictype/test-pr_other_uppercase.c: Likewise.
29577         * tests/unictype/test-pr_paired_punctuation.c: Likewise.
29578         * tests/unictype/test-pr_paragraph_separator.c: Likewise.
29579         * tests/unictype/test-pr_pattern_syntax.c: Likewise.
29580         * tests/unictype/test-pr_pattern_white_space.c: Likewise.
29581         * tests/unictype/test-pr_private_use.c: Likewise.
29582         * tests/unictype/test-pr_punctuation.c: Likewise.
29583         * tests/unictype/test-pr_quotation_mark.c: Likewise.
29584         * tests/unictype/test-pr_radical.c: Likewise.
29585         * tests/unictype/test-pr_sentence_terminal.c: Likewise.
29586         * tests/unictype/test-pr_soft_dotted.c: Likewise.
29587         * tests/unictype/test-pr_space.c: Likewise.
29588         * tests/unictype/test-pr_terminal_punctuation.c: Likewise.
29589         * tests/unictype/test-pr_titlecase.c: Likewise.
29590         * tests/unictype/test-pr_unassigned_code_value.c: Likewise.
29591         * tests/unictype/test-pr_unified_ideograph.c: Likewise.
29592         * tests/unictype/test-pr_uppercase.c: Likewise.
29593         * tests/unictype/test-pr_variation_selector.c: Likewise.
29594         * tests/unictype/test-pr_white_space.c: Likewise.
29595         * tests/unictype/test-pr_xid_continue.c: Likewise.
29596         * tests/unictype/test-pr_xid_start.c: Likewise.
29597         * tests/unictype/test-pr_zero_width.c: Likewise.
29598         * tests/unictype/test-sy_c_whitespace.c: Likewise.
29599         * tests/unictype/test-sy_java_whitespace.c: Likewise.
29600
29601 2007-11-12  Bruno Haible  <bruno@clisp.org>
29602
29603         Unicode character classification functions.
29604         * lib/unictype.h: New file.
29605         * modules/unictype/base: New file.
29606         * modules/unictype/category-L: New file.
29607         * modules/unictype/category-Lu: New file.
29608         * modules/unictype/category-Ll: New file.
29609         * modules/unictype/category-Lt: New file.
29610         * modules/unictype/category-Lm: New file.
29611         * modules/unictype/category-Lo: New file.
29612         * modules/unictype/category-M: New file.
29613         * modules/unictype/category-Mn: New file.
29614         * modules/unictype/category-Mc: New file.
29615         * modules/unictype/category-Me: New file.
29616         * modules/unictype/category-N: New file.
29617         * modules/unictype/category-Nd: New file.
29618         * modules/unictype/category-Nl: New file.
29619         * modules/unictype/category-No: New file.
29620         * modules/unictype/category-P: New file.
29621         * modules/unictype/category-Pc: New file.
29622         * modules/unictype/category-Pd: New file.
29623         * modules/unictype/category-Ps: New file.
29624         * modules/unictype/category-Pe: New file.
29625         * modules/unictype/category-Pi: New file.
29626         * modules/unictype/category-Pf: New file.
29627         * modules/unictype/category-Po: New file.
29628         * modules/unictype/category-S: New file.
29629         * modules/unictype/category-Sm: New file.
29630         * modules/unictype/category-Sc: New file.
29631         * modules/unictype/category-Sk: New file.
29632         * modules/unictype/category-So: New file.
29633         * modules/unictype/category-Z: New file.
29634         * modules/unictype/category-Zs: New file.
29635         * modules/unictype/category-Zl: New file.
29636         * modules/unictype/category-Zp: New file.
29637         * modules/unictype/category-C: New file.
29638         * modules/unictype/category-Cc: New file.
29639         * modules/unictype/category-Cf: New file.
29640         * modules/unictype/category-Cs: New file.
29641         * modules/unictype/category-Co: New file.
29642         * modules/unictype/category-Cn: New file.
29643         * modules/unictype/category-or: New file.
29644         * modules/unictype/category-of: New file.
29645         * modules/unictype/category-test: New file.
29646         * modules/unictype/category-test-withtable: New file.
29647         * modules/unictype/category-byname: New file.
29648         * modules/unictype/category-none: New file.
29649         * modules/unictype/category-and: New file.
29650         * modules/unictype/category-and-not: New file.
29651         * modules/unictype/category-name: New file.
29652         * modules/unictype/combining-class: New file.
29653         * modules/unictype/category-all: New file.
29654         * modules/unictype/bidicategory-all: New file.
29655         * modules/unictype/bidicategory-byname: New file.
29656         * modules/unictype/bidicategory-name: New file.
29657         * modules/unictype/bidicategory-of: New file.
29658         * modules/unictype/bidicategory-test: New file.
29659         * modules/unictype/decimal-digit: New file.
29660         * modules/unictype/digit: New file.
29661         * modules/unictype/numeric: New file.
29662         * modules/unictype/mirror: New file.
29663         * modules/unictype/property-white-space: New file.
29664         * modules/unictype/property-alphabetic: New file.
29665         * modules/unictype/property-other-alphabetic: New file.
29666         * modules/unictype/property-not-a-character: New file.
29667         * modules/unictype/property-default-ignorable-code-point: New file.
29668         * modules/unictype/property-other-default-ignorable-code-point: New
29669         file.
29670         * modules/unictype/property-deprecated: New file.
29671         * modules/unictype/property-logical-order-exception: New file.
29672         * modules/unictype/property-variation-selector: New file.
29673         * modules/unictype/property-private-use: New file.
29674         * modules/unictype/property-unassigned-code-value: New file.
29675         * modules/unictype/property-uppercase: New file.
29676         * modules/unictype/property-other-uppercase: New file.
29677         * modules/unictype/property-lowercase: New file.
29678         * modules/unictype/property-other-lowercase: New file.
29679         * modules/unictype/property-titlecase: New file.
29680         * modules/unictype/property-soft-dotted: New file.
29681         * modules/unictype/property-id-start: New file.
29682         * modules/unictype/property-other-id-start: New file.
29683         * modules/unictype/property-id-continue: New file.
29684         * modules/unictype/property-other-id-continue: New file.
29685         * modules/unictype/property-xid-start: New file.
29686         * modules/unictype/property-xid-continue: New file.
29687         * modules/unictype/property-pattern-white-space: New file.
29688         * modules/unictype/property-pattern-syntax: New file.
29689         * modules/unictype/property-join-control: New file.
29690         * modules/unictype/property-grapheme-base: New file.
29691         * modules/unictype/property-grapheme-extend: New file.
29692         * modules/unictype/property-other-grapheme-extend: New file.
29693         * modules/unictype/property-grapheme-link: New file.
29694         * modules/unictype/property-bidi-control: New file.
29695         * modules/unictype/property-bidi-left-to-right: New file.
29696         * modules/unictype/property-bidi-hebrew-right-to-left: New file.
29697         * modules/unictype/property-bidi-arabic-right-to-left: New file.
29698         * modules/unictype/property-bidi-european-digit: New file.
29699         * modules/unictype/property-bidi-eur-num-separator: New file.
29700         * modules/unictype/property-bidi-eur-num-terminator: New file.
29701         * modules/unictype/property-bidi-arabic-digit: New file.
29702         * modules/unictype/property-bidi-common-separator: New file.
29703         * modules/unictype/property-bidi-block-separator: New file.
29704         * modules/unictype/property-bidi-segment-separator: New file.
29705         * modules/unictype/property-bidi-whitespace: New file.
29706         * modules/unictype/property-bidi-non-spacing-mark: New file.
29707         * modules/unictype/property-bidi-boundary-neutral: New file.
29708         * modules/unictype/property-bidi-pdf: New file.
29709         * modules/unictype/property-bidi-embedding-or-override: New file.
29710         * modules/unictype/property-bidi-other-neutral: New file.
29711         * modules/unictype/property-hex-digit: New file.
29712         * modules/unictype/property-ascii-hex-digit: New file.
29713         * modules/unictype/property-ideographic: New file.
29714         * modules/unictype/property-unified-ideograph: New file.
29715         * modules/unictype/property-radical: New file.
29716         * modules/unictype/property-ids-binary-operator: New file.
29717         * modules/unictype/property-ids-trinary-operator: New file.
29718         * modules/unictype/property-zero-width: New file.
29719         * modules/unictype/property-space: New file.
29720         * modules/unictype/property-non-break: New file.
29721         * modules/unictype/property-iso-control: New file.
29722         * modules/unictype/property-format-control: New file.
29723         * modules/unictype/property-dash: New file.
29724         * modules/unictype/property-hyphen: New file.
29725         * modules/unictype/property-punctuation: New file.
29726         * modules/unictype/property-line-separator: New file.
29727         * modules/unictype/property-paragraph-separator: New file.
29728         * modules/unictype/property-quotation-mark: New file.
29729         * modules/unictype/property-sentence-terminal: New file.
29730         * modules/unictype/property-terminal-punctuation: New file.
29731         * modules/unictype/property-currency-symbol: New file.
29732         * modules/unictype/property-math: New file.
29733         * modules/unictype/property-other-math: New file.
29734         * modules/unictype/property-paired-punctuation: New file.
29735         * modules/unictype/property-left-of-pair: New file.
29736         * modules/unictype/property-combining: New file.
29737         * modules/unictype/property-composite: New file.
29738         * modules/unictype/property-decimal-digit: New file.
29739         * modules/unictype/property-numeric: New file.
29740         * modules/unictype/property-diacritic: New file.
29741         * modules/unictype/property-extender: New file.
29742         * modules/unictype/property-ignorable-control: New file.
29743         * modules/unictype/property-test: New file.
29744         * modules/unictype/property-byname: New file.
29745         * modules/unictype/property-all: New file.
29746         * modules/unictype/scripts: New file.
29747         * modules/unictype/scripts-all: New file.
29748         * modules/unictype/block-of: New file.
29749         * modules/unictype/block-test: New file.
29750         * modules/unictype/block-list: New file.
29751         * modules/unictype/block-all: New file.
29752         * modules/unictype/syntax-c-whitespace: New file.
29753         * modules/unictype/syntax-java-whitespace: New file.
29754         * modules/unictype/syntax-c-ident: New file.
29755         * modules/unictype/syntax-java-ident: New file.
29756         * modules/unictype/ctype-alnum: New file.
29757         * modules/unictype/ctype-alpha: New file.
29758         * modules/unictype/ctype-cntrl: New file.
29759         * modules/unictype/ctype-digit: New file.
29760         * modules/unictype/ctype-graph: New file.
29761         * modules/unictype/ctype-lower: New file.
29762         * modules/unictype/ctype-print: New file.
29763         * modules/unictype/ctype-punct: New file.
29764         * modules/unictype/ctype-space: New file.
29765         * modules/unictype/ctype-upper: New file.
29766         * modules/unictype/ctype-xdigit: New file.
29767         * modules/unictype/ctype-blank: New file.
29768         * lib/unictype/bidi_byname.c: New file.
29769         * lib/unictype/bidi_name.c: New file.
29770         * lib/unictype/bidi_of.c: New file.
29771         * lib/unictype/bidi_test.c: New file.
29772         * lib/unictype/bitmap.h: New file.
29773         * lib/unictype/block_test.c: New file.
29774         * lib/unictype/blocks.c: New file.
29775         * lib/unictype/categ_C.c: New file.
29776         * lib/unictype/categ_Cc.c: New file.
29777         * lib/unictype/categ_Cf.c: New file.
29778         * lib/unictype/categ_Cn.c: New file.
29779         * lib/unictype/categ_Co.c: New file.
29780         * lib/unictype/categ_Cs.c: New file.
29781         * lib/unictype/categ_L.c: New file.
29782         * lib/unictype/categ_Ll.c: New file.
29783         * lib/unictype/categ_Lm.c: New file.
29784         * lib/unictype/categ_Lo.c: New file.
29785         * lib/unictype/categ_Lt.c: New file.
29786         * lib/unictype/categ_Lu.c: New file.
29787         * lib/unictype/categ_M.c: New file.
29788         * lib/unictype/categ_Mc.c: New file.
29789         * lib/unictype/categ_Me.c: New file.
29790         * lib/unictype/categ_Mn.c: New file.
29791         * lib/unictype/categ_N.c: New file.
29792         * lib/unictype/categ_Nd.c: New file.
29793         * lib/unictype/categ_Nl.c: New file.
29794         * lib/unictype/categ_No.c: New file.
29795         * lib/unictype/categ_P.c: New file.
29796         * lib/unictype/categ_Pc.c: New file.
29797         * lib/unictype/categ_Pd.c: New file.
29798         * lib/unictype/categ_Pe.c: New file.
29799         * lib/unictype/categ_Pf.c: New file.
29800         * lib/unictype/categ_Pi.c: New file.
29801         * lib/unictype/categ_Po.c: New file.
29802         * lib/unictype/categ_Ps.c: New file.
29803         * lib/unictype/categ_S.c: New file.
29804         * lib/unictype/categ_Sc.c: New file.
29805         * lib/unictype/categ_Sk.c: New file.
29806         * lib/unictype/categ_Sm.c: New file.
29807         * lib/unictype/categ_So.c: New file.
29808         * lib/unictype/categ_Z.c: New file.
29809         * lib/unictype/categ_Zl.c: New file.
29810         * lib/unictype/categ_Zp.c: New file.
29811         * lib/unictype/categ_Zs.c: New file.
29812         * lib/unictype/categ_and.c: New file.
29813         * lib/unictype/categ_and_not.c: New file.
29814         * lib/unictype/categ_byname.c: New file.
29815         * lib/unictype/categ_name.c: New file.
29816         * lib/unictype/categ_none.c: New file.
29817         * lib/unictype/categ_of.c: New file.
29818         * lib/unictype/categ_or.c: New file.
29819         * lib/unictype/categ_test.c: New file.
29820         * lib/unictype/combining.c: New file.
29821         * lib/unictype/ctype_alnum.c: New file.
29822         * lib/unictype/ctype_alpha.c: New file.
29823         * lib/unictype/ctype_blank.c: New file.
29824         * lib/unictype/ctype_cntrl.c: New file.
29825         * lib/unictype/ctype_digit.c: New file.
29826         * lib/unictype/ctype_graph.c: New file.
29827         * lib/unictype/ctype_lower.c: New file.
29828         * lib/unictype/ctype_print.c: New file.
29829         * lib/unictype/ctype_punct.c: New file.
29830         * lib/unictype/ctype_space.c: New file.
29831         * lib/unictype/ctype_upper.c: New file.
29832         * lib/unictype/ctype_xdigit.c: New file.
29833         * lib/unictype/decdigit.c: New file.
29834         * lib/unictype/digit.c: New file.
29835         * lib/unictype/identsyntaxmap.h: New file.
29836         * lib/unictype/mirror.c: New file.
29837         * lib/unictype/numeric.c: New file.
29838         * lib/unictype/pr_alphabetic.c: New file.
29839         * lib/unictype/pr_ascii_hex_digit.c: New file.
29840         * lib/unictype/pr_bidi_arabic_digit.c: New file.
29841         * lib/unictype/pr_bidi_arabic_right_to_left.c: New file.
29842         * lib/unictype/pr_bidi_block_separator.c: New file.
29843         * lib/unictype/pr_bidi_boundary_neutral.c: New file.
29844         * lib/unictype/pr_bidi_common_separator.c: New file.
29845         * lib/unictype/pr_bidi_control.c: New file.
29846         * lib/unictype/pr_bidi_embedding_or_override.c: New file.
29847         * lib/unictype/pr_bidi_eur_num_separator.c: New file.
29848         * lib/unictype/pr_bidi_eur_num_terminator.c: New file.
29849         * lib/unictype/pr_bidi_european_digit.c: New file.
29850         * lib/unictype/pr_bidi_hebrew_right_to_left.c: New file.
29851         * lib/unictype/pr_bidi_left_to_right.c: New file.
29852         * lib/unictype/pr_bidi_non_spacing_mark.c: New file.
29853         * lib/unictype/pr_bidi_other_neutral.c: New file.
29854         * lib/unictype/pr_bidi_pdf.c: New file.
29855         * lib/unictype/pr_bidi_segment_separator.c: New file.
29856         * lib/unictype/pr_bidi_whitespace.c: New file.
29857         * lib/unictype/pr_byname.c: New file.
29858         * lib/unictype/pr_byname.gperf: New file.
29859         * lib/unictype/pr_combining.c: New file.
29860         * lib/unictype/pr_composite.c: New file.
29861         * lib/unictype/pr_currency_symbol.c: New file.
29862         * lib/unictype/pr_dash.c: New file.
29863         * lib/unictype/pr_decimal_digit.c: New file.
29864         * lib/unictype/pr_default_ignorable_code_point.c: New file.
29865         * lib/unictype/pr_deprecated.c: New file.
29866         * lib/unictype/pr_diacritic.c: New file.
29867         * lib/unictype/pr_extender.c: New file.
29868         * lib/unictype/pr_format_control.c: New file.
29869         * lib/unictype/pr_grapheme_base.c: New file.
29870         * lib/unictype/pr_grapheme_extend.c: New file.
29871         * lib/unictype/pr_grapheme_link.c: New file.
29872         * lib/unictype/pr_hex_digit.c: New file.
29873         * lib/unictype/pr_hyphen.c: New file.
29874         * lib/unictype/pr_id_continue.c: New file.
29875         * lib/unictype/pr_id_start.c: New file.
29876         * lib/unictype/pr_ideographic.c: New file.
29877         * lib/unictype/pr_ids_binary_operator.c: New file.
29878         * lib/unictype/pr_ids_trinary_operator.c: New file.
29879         * lib/unictype/pr_ignorable_control.c: New file.
29880         * lib/unictype/pr_iso_control.c: New file.
29881         * lib/unictype/pr_join_control.c: New file.
29882         * lib/unictype/pr_left_of_pair.c: New file.
29883         * lib/unictype/pr_line_separator.c: New file.
29884         * lib/unictype/pr_logical_order_exception.c: New file.
29885         * lib/unictype/pr_lowercase.c: New file.
29886         * lib/unictype/pr_math.c: New file.
29887         * lib/unictype/pr_non_break.c: New file.
29888         * lib/unictype/pr_not_a_character.c: New file.
29889         * lib/unictype/pr_numeric.c: New file.
29890         * lib/unictype/pr_other_alphabetic.c: New file.
29891         * lib/unictype/pr_other_default_ignorable_code_point.c: New file.
29892         * lib/unictype/pr_other_grapheme_extend.c: New file.
29893         * lib/unictype/pr_other_id_continue.c: New file.
29894         * lib/unictype/pr_other_id_start.c: New file.
29895         * lib/unictype/pr_other_lowercase.c: New file.
29896         * lib/unictype/pr_other_math.c: New file.
29897         * lib/unictype/pr_other_uppercase.c: New file.
29898         * lib/unictype/pr_paired_punctuation.c: New file.
29899         * lib/unictype/pr_paragraph_separator.c: New file.
29900         * lib/unictype/pr_pattern_syntax.c: New file.
29901         * lib/unictype/pr_pattern_white_space.c: New file.
29902         * lib/unictype/pr_private_use.c: New file.
29903         * lib/unictype/pr_punctuation.c: New file.
29904         * lib/unictype/pr_quotation_mark.c: New file.
29905         * lib/unictype/pr_radical.c: New file.
29906         * lib/unictype/pr_sentence_terminal.c: New file.
29907         * lib/unictype/pr_soft_dotted.c: New file.
29908         * lib/unictype/pr_space.c: New file.
29909         * lib/unictype/pr_terminal_punctuation.c: New file.
29910         * lib/unictype/pr_test.c: New file.
29911         * lib/unictype/pr_titlecase.c: New file.
29912         * lib/unictype/pr_unassigned_code_value.c: New file.
29913         * lib/unictype/pr_unified_ideograph.c: New file.
29914         * lib/unictype/pr_uppercase.c: New file.
29915         * lib/unictype/pr_variation_selector.c: New file.
29916         * lib/unictype/pr_white_space.c: New file.
29917         * lib/unictype/pr_xid_continue.c: New file.
29918         * lib/unictype/pr_xid_start.c: New file.
29919         * lib/unictype/pr_zero_width.c: New file.
29920         * lib/unictype/scripts.c: New file.
29921         * lib/unictype/sy_c_ident.c: New file.
29922         * lib/unictype/sy_c_whitespace.c: New file.
29923         * lib/unictype/sy_java_ident.c: New file.
29924         * lib/unictype/sy_java_whitespace.c: New file.
29925
29926         * lib/unictype/bidi_of.h: New file, generated by gen-ctype.c for
29927         Unicode 5.0.0.
29928         * lib/unictype/blocks.h: Likewise.
29929         * lib/unictype/categ_C.h: Likewise.
29930         * lib/unictype/categ_Cc.h: Likewise.
29931         * lib/unictype/categ_Cf.h: Likewise.
29932         * lib/unictype/categ_Cn.h: Likewise.
29933         * lib/unictype/categ_Co.h: Likewise.
29934         * lib/unictype/categ_Cs.h: Likewise.
29935         * lib/unictype/categ_L.h: Likewise.
29936         * lib/unictype/categ_Ll.h: Likewise.
29937         * lib/unictype/categ_Lm.h: Likewise.
29938         * lib/unictype/categ_Lo.h: Likewise.
29939         * lib/unictype/categ_Lt.h: Likewise.
29940         * lib/unictype/categ_Lu.h: Likewise.
29941         * lib/unictype/categ_M.h: Likewise.
29942         * lib/unictype/categ_Mc.h: Likewise.
29943         * lib/unictype/categ_Me.h: Likewise.
29944         * lib/unictype/categ_Mn.h: Likewise.
29945         * lib/unictype/categ_N.h: Likewise.
29946         * lib/unictype/categ_Nd.h: Likewise.
29947         * lib/unictype/categ_Nl.h: Likewise.
29948         * lib/unictype/categ_No.h: Likewise.
29949         * lib/unictype/categ_P.h: Likewise.
29950         * lib/unictype/categ_Pc.h: Likewise.
29951         * lib/unictype/categ_Pd.h: Likewise.
29952         * lib/unictype/categ_Pe.h: Likewise.
29953         * lib/unictype/categ_Pf.h: Likewise.
29954         * lib/unictype/categ_Pi.h: Likewise.
29955         * lib/unictype/categ_Po.h: Likewise.
29956         * lib/unictype/categ_Ps.h: Likewise.
29957         * lib/unictype/categ_S.h: Likewise.
29958         * lib/unictype/categ_Sc.h: Likewise.
29959         * lib/unictype/categ_Sk.h: Likewise.
29960         * lib/unictype/categ_Sm.h: Likewise.
29961         * lib/unictype/categ_So.h: Likewise.
29962         * lib/unictype/categ_Z.h: Likewise.
29963         * lib/unictype/categ_Zl.h: Likewise.
29964         * lib/unictype/categ_Zp.h: Likewise.
29965         * lib/unictype/categ_Zs.h: Likewise.
29966         * lib/unictype/categ_of.h: Likewise.
29967         * lib/unictype/combining.h: Likewise.
29968         * lib/unictype/ctype_alnum.h: Likewise.
29969         * lib/unictype/ctype_alpha.h: Likewise.
29970         * lib/unictype/ctype_blank.h: Likewise.
29971         * lib/unictype/ctype_cntrl.h: Likewise.
29972         * lib/unictype/ctype_digit.h: Likewise.
29973         * lib/unictype/ctype_graph.h: Likewise.
29974         * lib/unictype/ctype_lower.h: Likewise.
29975         * lib/unictype/ctype_print.h: Likewise.
29976         * lib/unictype/ctype_punct.h: Likewise.
29977         * lib/unictype/ctype_space.h: Likewise.
29978         * lib/unictype/ctype_upper.h: Likewise.
29979         * lib/unictype/ctype_xdigit.h: Likewise.
29980         * lib/unictype/decdigit.h: Likewise.
29981         * lib/unictype/digit.h: Likewise.
29982         * lib/unictype/mirror.h: Likewise.
29983         * lib/unictype/numeric.h: Likewise.
29984         * lib/unictype/pr_alphabetic.h: Likewise.
29985         * lib/unictype/pr_ascii_hex_digit.h: Likewise.
29986         * lib/unictype/pr_bidi_arabic_digit.h: Likewise.
29987         * lib/unictype/pr_bidi_arabic_right_to_left.h: Likewise.
29988         * lib/unictype/pr_bidi_block_separator.h: Likewise.
29989         * lib/unictype/pr_bidi_boundary_neutral.h: Likewise.
29990         * lib/unictype/pr_bidi_common_separator.h: Likewise.
29991         * lib/unictype/pr_bidi_control.h: Likewise.
29992         * lib/unictype/pr_bidi_embedding_or_override.h: Likewise.
29993         * lib/unictype/pr_bidi_eur_num_separator.h: Likewise.
29994         * lib/unictype/pr_bidi_eur_num_terminator.h: Likewise.
29995         * lib/unictype/pr_bidi_european_digit.h: Likewise.
29996         * lib/unictype/pr_bidi_hebrew_right_to_left.h: Likewise.
29997         * lib/unictype/pr_bidi_left_to_right.h: Likewise.
29998         * lib/unictype/pr_bidi_non_spacing_mark.h: Likewise.
29999         * lib/unictype/pr_bidi_other_neutral.h: Likewise.
30000         * lib/unictype/pr_bidi_pdf.h: Likewise.
30001         * lib/unictype/pr_bidi_segment_separator.h: Likewise.
30002         * lib/unictype/pr_bidi_whitespace.h: Likewise.
30003         * lib/unictype/pr_combining.h: Likewise.
30004         * lib/unictype/pr_composite.h: Likewise.
30005         * lib/unictype/pr_currency_symbol.h: Likewise.
30006         * lib/unictype/pr_dash.h: Likewise.
30007         * lib/unictype/pr_decimal_digit.h: Likewise.
30008         * lib/unictype/pr_default_ignorable_code_point.h: Likewise.
30009         * lib/unictype/pr_deprecated.h: Likewise.
30010         * lib/unictype/pr_diacritic.h: Likewise.
30011         * lib/unictype/pr_extender.h: Likewise.
30012         * lib/unictype/pr_format_control.h: Likewise.
30013         * lib/unictype/pr_grapheme_base.h: Likewise.
30014         * lib/unictype/pr_grapheme_extend.h: Likewise.
30015         * lib/unictype/pr_grapheme_link.h: Likewise.
30016         * lib/unictype/pr_hex_digit.h: Likewise.
30017         * lib/unictype/pr_hyphen.h: Likewise.
30018         * lib/unictype/pr_id_continue.h: Likewise.
30019         * lib/unictype/pr_id_start.h: Likewise.
30020         * lib/unictype/pr_ideographic.h: Likewise.
30021         * lib/unictype/pr_ids_binary_operator.h: Likewise.
30022         * lib/unictype/pr_ids_trinary_operator.h: Likewise.
30023         * lib/unictype/pr_ignorable_control.h: Likewise.
30024         * lib/unictype/pr_iso_control.h: Likewise.
30025         * lib/unictype/pr_join_control.h: Likewise.
30026         * lib/unictype/pr_left_of_pair.h: Likewise.
30027         * lib/unictype/pr_line_separator.h: Likewise.
30028         * lib/unictype/pr_logical_order_exception.h: Likewise.
30029         * lib/unictype/pr_lowercase.h: Likewise.
30030         * lib/unictype/pr_math.h: Likewise.
30031         * lib/unictype/pr_non_break.h: Likewise.
30032         * lib/unictype/pr_not_a_character.h: Likewise.
30033         * lib/unictype/pr_numeric.h: Likewise.
30034         * lib/unictype/pr_other_alphabetic.h: Likewise.
30035         * lib/unictype/pr_other_default_ignorable_code_point.h: Likewise.
30036         * lib/unictype/pr_other_grapheme_extend.h: Likewise.
30037         * lib/unictype/pr_other_id_continue.h: Likewise.
30038         * lib/unictype/pr_other_id_start.h: Likewise.
30039         * lib/unictype/pr_other_lowercase.h: Likewise.
30040         * lib/unictype/pr_other_math.h: Likewise.
30041         * lib/unictype/pr_other_uppercase.h: Likewise.
30042         * lib/unictype/pr_paired_punctuation.h: Likewise.
30043         * lib/unictype/pr_paragraph_separator.h: Likewise.
30044         * lib/unictype/pr_pattern_syntax.h: Likewise.
30045         * lib/unictype/pr_pattern_white_space.h: Likewise.
30046         * lib/unictype/pr_private_use.h: Likewise.
30047         * lib/unictype/pr_punctuation.h: Likewise.
30048         * lib/unictype/pr_quotation_mark.h: Likewise.
30049         * lib/unictype/pr_radical.h: Likewise.
30050         * lib/unictype/pr_sentence_terminal.h: Likewise.
30051         * lib/unictype/pr_soft_dotted.h: Likewise.
30052         * lib/unictype/pr_space.h: Likewise.
30053         * lib/unictype/pr_terminal_punctuation.h: Likewise.
30054         * lib/unictype/pr_titlecase.h: Likewise.
30055         * lib/unictype/pr_unassigned_code_value.h: Likewise.
30056         * lib/unictype/pr_unified_ideograph.h: Likewise.
30057         * lib/unictype/pr_uppercase.h: Likewise.
30058         * lib/unictype/pr_variation_selector.h: Likewise.
30059         * lib/unictype/pr_white_space.h: Likewise.
30060         * lib/unictype/pr_xid_continue.h: Likewise.
30061         * lib/unictype/pr_xid_start.h: Likewise.
30062         * lib/unictype/pr_zero_width.h: Likewise.
30063         * lib/unictype/scripts.h: Likewise.
30064         * lib/unictype/scripts_byname.gperf: Likewise.
30065         * lib/unictype/sy_c_ident.h: Likewise.
30066         * lib/unictype/sy_c_whitespace.h: Likewise.
30067         * lib/unictype/sy_java_ident.h: Likewise.
30068         * lib/unictype/sy_java_whitespace.h: Likewise.
30069
30070         * lib/unictype/Makefile: New file.
30071         * lib/unictype/gen-ctype.c: New file, based on gen-unicode-ctype.c in
30072         glibc.
30073         * lib/unictype/3level.h: New file, copied from glibc.
30074         * lib/unictype/3levelbit.h: New file.
30075
30076 2007-11-11  Bruno Haible  <bruno@clisp.org>
30077
30078         * modules/gperf: New file.
30079         * modules/iconv_open (Depends-on): Add it.
30080         (Makefile.am): Remove the GPERF definition.
30081
30082 2007-11-11  Bruno Haible  <bruno@clisp.org>
30083
30084         * m4/round.m4 (gl_FUNC_ROUND): Test against NetBSD 3.0 bug.
30085         * doc/functions/round.texi: Mention the NetBSD 3.0 bug.
30086
30087 2007-11-11  Bruno Haible  <bruno@clisp.org>
30088
30089         * tests/test-argmatch.c (ARGMATCH_DIE): Undefine.
30090         (usage): Remove function.
30091
30092 2007-11-11  Bruno Haible  <bruno@clisp.org>
30093
30094         * m4/roundf.m4 (gl_FUNC_ROUNDF): Use gl_FUNC_FLOORF_LIBS and
30095         gl_FUNC_CEILF_LIBS.
30096         * m4/round.m4 (gl_FUNC_ROUND): Use gl_FUNC_FLOOR_LIBS and
30097         gl_FUNC_CEIL_LIBS.
30098         * m4/roundl.m4 (gl_FUNC_ROUNDL): Use gl_FUNC_FLOORL_LIBS and
30099         gl_FUNC_CEILL_LIBS.
30100         * modules/roundf (Files): Add m4/floorf.m4, m4/ceilf.m4.
30101         * modules/round (Files): Add m4/floor.m4, m4/ceil.m4.
30102         * modules/roundl (Files): Add m4/floorl.m4, m4/ceill.m4.
30103
30104 2007-11-11  Bruno Haible  <bruno@clisp.org>
30105
30106         * m4/roundf.m4 (gl_FUNC_ROUNDF): Handle the case that floorf and
30107         roundf were declared but do not exist on functions.
30108         * m4/roundl.m4 (gl_FUNC_ROUNDL): Handle the case that floorl and
30109         roundl were declared but do not exist on functions.
30110         * lib/round.c (HAVE_FLOOR_AND_CEIL): Use HAVE_FLOORF_AND_CEILF and
30111         HAVE_FLOORL_AND_CEILL, respectively.
30112         Needed for Sun C on Solaris 10.
30113
30114 2007-11-11  Bruno Haible  <bruno@clisp.org>
30115
30116         * m4/roundf.m4 (gl_FUNC_ROUNDF): Set REPLACE_ROUNDF instead of
30117         HAVE_DECL_ROUNDF. Remove redundant AC_SUBST.
30118         * m4/round.m4 (gl_FUNC_ROUND): Set REPLACE_ROUND instead of
30119         HAVE_DECL_ROUND. Remove redundant AC_SUBST.
30120         * m4/roundl.m4 (gl_FUNC_ROUNDL): Set REPLACE_ROUNDL instead of
30121         HAVE_DECL_ROUNDL. Remove redundant AC_SUBST.
30122         * lib/math.in.h (roundf): Use REPLACE_ROUNDF instead of
30123         HAVE_DECL_ROUNDF.
30124         (round): Use REPLACE_ROUND instead of HAVE_DECL_ROUND.
30125         (roundl): Use REPLACE_ROUNDL instead of HAVE_DECL_ROUNDL.
30126         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_ROUND* instead
30127         of HAVE_DECL_ROUND*.
30128         * modules/math (Makefile.am): Update.
30129
30130 2007-11-10  Bruno Haible  <bruno@clisp.org>
30131
30132         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Use same check for
30133         ptrdiff_t as m4/intl.m4.
30134
30135 2007-11-10  Jim Meyering  <meyering@redhat.com>
30136
30137         Avoid link failure for the argmatch test.
30138         * tests/test-argmatch.c (usage): Define function to avoid a link
30139         failure: argmatch_die requires a usage function.
30140
30141 2007-11-09  Bruno Haible  <bruno@clisp.org>
30142
30143         * doc/functions/snprintf.texi: Mention BeOS deficiency.
30144         * doc/functions/vsnprintf.texi: Likewise.
30145         * lib/vasnprintf.c (VASNPRINTF): Ensure that we never call snprintf
30146         with a size argument < 2.
30147
30148 2007-11-09  Bruno Haible  <bruno@clisp.org>
30149
30150         * lib/vasnprintf.c (VASNPRINTF): Increase reallocation of snprintf
30151         buffer. Fixes an inefficiency introduced on 2007-11-03.
30152
30153 2007-11-09  Bruno Haible  <bruno@clisp.org>
30154
30155         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8) [BeOS]: Make this test return
30156         none instead of tr_TR. Fixes a failure of test-c-strcasecmp.c.
30157
30158 2007-11-08  Jim Meyering  <meyering@redhat.com>
30159
30160         Change cache variable name prefix "jm_" to "gl_" everywhere.
30161         * m4/d-type.m4, m4/jm-winsz1.m4, m4/jm-winsz2.m4, m4/link-follow.m4:
30162         * m4/putenv.m4, m4/strtoimax.m4, m4/strtoumax.m4, m4/unlink-busy.m4:
30163         * m4/uptime.m4: s/gl_/jm_/
30164
30165 2007-11-07  Bruno Haible  <bruno@clisp.org>
30166
30167         Update to GNU gettext 0.17.
30168         * m4/intl.m4: Update to GNU gettext 0.17.
30169         * m4/po.m4: Likewise.
30170         * modules/gettext (Files): Remove m4/ulonglong.m4.
30171         (configure.ac): Require gettext infrastructure from version 0.17.
30172
30173 2007-11-06  Bruno Haible  <bruno@clisp.org>
30174
30175         * lib/fbufmode.c (fbufmode) [QNX]: Use numerical values for flags; the
30176         symbolic values are not defined in a public header.
30177         * lib/freadable.c (freadable) [QNX]: Likewise.
30178         * lib/freadahead.c (freadahead) [QNX]: Likewise.
30179         * lib/freading.c (freading) [QNX]: Likewise.
30180         * lib/fseterr.c (fseterr) [QNX]: Likewise.
30181         * lib/fwritable.c (fwritable) [QNX]: Likewise.
30182         * lib/fwriting.c (fwriting) [QNX]: Likewise.
30183         * lib/fpurge.c (fpurge) [QNX]: Likewise. Add a return statement.
30184         Reported by Alain Magloire.
30185
30186         * m4/fpending.m4 (gl_FUNC_FPENDING): Add a variant for QNX.
30187
30188 2007-11-05  Bruno Haible  <bruno@clisp.org>
30189
30190         * lib/vasnprintf.c (VASNPRINTF): Expand the NEED_PRINTF_DIRECTIVE_A
30191         code when NEED_PRINTF_LONG_DOUBLE or NEED_PRINTF_DOUBLE is set.
30192         Needed on Cygwin, where !NEED_PRINTF_DIRECTIVE_A && NEED_PRINTF_DOUBLE.
30193         Reported by Eric Blake.
30194
30195 2007-10-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30196             Bruno Haible  <bruno@clisp.org>
30197
30198         * modules/malloc (configure.ac): Define GNULIB_MALLOC_GNU always.
30199         * modules/realloc (configure.ac): Define GNULIB_REALLOC_GNU always.
30200         * lib/realloc.c (SYSTEM_MALLOC_GLIBC_COMPATIBLE): New macro.
30201         (malloc): Undefine also before including <stdlib.h>.
30202         (rpl_realloc): Turn malloc(0) into malloc(1) if necessary.
30203         Needed on OSF/1 4.0.
30204
30205 2007-11-05  Jim Meyering  <meyering@redhat.com>
30206
30207         git-version-gen: sync from coreutils.
30208         * build-aux/git-version-gen: Add comments.
30209         Change the first '-' to '.' in the snapshot version string,
30210         e.g., 6.9-377-08144 -> 6.9.377-08144
30211         Remove first parameter.
30212         Don't declare a version "-dirty" merely because a time
30213         stamp has changed.
30214
30215 2007-11-04  Bruno Haible  <bruno@clisp.org>
30216
30217         * lib/lock.h: Protect all macro definitions containing an 'if'
30218         statement through a "do { ... } while (0)".
30219         * lib/tls.h: Likewise.
30220
30221 2007-11-04  Bruno Haible  <bruno@clisp.org>
30222
30223         * lib/vasnprintf.c (DCHAR_IS_TCHAR, DCHAR_CPY): Undefine at the end.
30224
30225 2007-11-04  Bruno Haible  <bruno@clisp.org>
30226
30227         * m4/printf.m4 (gl_PRINTF_ENOMEM): Use GL_NOCRASH.
30228         * modules/fprintf-posix (Depends-on): Add nocrash.
30229         * modules/snprintf-posix (Depends-on): Likewise.
30230         * modules/sprintf-posix (Depends-on): Likewise.
30231         * modules/vasnprintf-posix (Depends-on): Likewise.
30232         * modules/vasprintf-posix (Depends-on): Likewise.
30233         * modules/vfprintf-posix (Depends-on): Likewise.
30234         * modules/vsnprintf-posix (Depends-on): Likewise.
30235         * modules/vsprintf-posix (Depends-on): Likewise.
30236         * modules/unistdio/u8-vasnprintf (Depends-on): Likewise.
30237         * modules/unistdio/u8-u8-vasnprintf (Depends-on): Likewise.
30238         * modules/unistdio/u16-vasnprintf (Depends-on): Likewise.
30239         * modules/unistdio/u16-u16-vasnprintf (Depends-on): Likewise.
30240         * modules/unistdio/u32-vasnprintf (Depends-on): Likewise.
30241         * modules/unistdio/u32-u32-vasnprintf (Depends-on): Likewise.
30242         * modules/unistdio/ulc-vasnprintf (Depends-on): Likewise.
30243
30244 2007-11-04  Bruno Haible  <bruno@clisp.org>
30245
30246         * modules/nocrash: New file.
30247         * m4/nocrash.m4: New file, taken from GNU clisp. Code taken from
30248         GNU libsigsegv, with permission of GNU libsigsegv's copyright holders.
30249
30250 2007-11-04  Bruno Haible  <bruno@clisp.org>
30251
30252         * tests/test-vasnprintf-posix.c (test_function): Add some tests of
30253         precision handling.
30254         * tests/test-vasprintf-posix.c (test_function): Likewise.
30255         * tests/test-snprintf-posix.h (test_function): Likewise.
30256         * tests/test-sprintf-posix.h (test_function): Likewise.
30257
30258         Fix *printf behaviour for large precisions on mingw and BeOS.
30259         * m4/printf.m4 (gl_PRINTF_PRECISION): New macro.
30260         * lib/vasnprintf.c (VASNPRINTF): Handle NEED_PRINTF_UNBOUNDED_PRECISION.
30261         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_PRECISION): New macro.
30262         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
30263         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
30264         gl_PRINTF_PRECISION and test its result. Invoke
30265         gl_PREREQ_VASNPRINTF_PRECISION.
30266         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
30267         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
30268         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
30269         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
30270         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
30271         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
30272         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
30273         * doc/functions/fprintf.texi: Update.
30274         * doc/functions/printf.texi: Update.
30275         * doc/functions/snprintf.texi: Update.
30276         * doc/functions/sprintf.texi: Update.
30277         * doc/functions/vfprintf.texi: Update.
30278         * doc/functions/vprintf.texi: Update.
30279         * doc/functions/vsnprintf.texi: Update.
30280         * doc/functions/vsprintf.texi: Update.
30281
30282 2007-11-04  Bruno Haible  <bruno@clisp.org>
30283
30284         * lib/vasnprintf.c (scale10_round_decimal_decoded): Fix shift loop.
30285
30286 2007-11-04  Bruno Haible  <bruno@clisp.org>
30287
30288         * modules/relocatable-prog (Files): Add m4/lib-ld.m4.
30289         Reported by Sylvain Beucler <beuc@gnu.org>.
30290
30291 2007-11-03  Bruno Haible  <bruno@clisp.org>
30292
30293         * tests/test-fprintf-posix2.sh: New file.
30294         * tests/test-fprintf-posix2.c: New file.
30295         * modules/fprintf-posix-tests (Files): Add them.
30296         (TESTS): Add test-fprintf-posix2.sh.
30297         (configure.ac): Check for getrlimit and setrlimit.
30298         (check_PROGRAMS): Add test-fprintf-posix2.
30299
30300         * tests/test-printf-posix2.sh: New file.
30301         * tests/test-printf-posix2.c: New file.
30302         * modules/printf-posix-tests (Files): Add them.
30303         (TESTS): Add test-printf-posix2.sh.
30304         (configure.ac): Check for getrlimit and setrlimit.
30305         (check_PROGRAMS): Add test-printf-posix2.
30306
30307         Fix *printf behaviour in out-of-memory situations on MacOS X and *BSD.
30308         * m4/printf.m4 (gl_PRINTF_ENOMEM): New macro.
30309         * lib/vasnprintf.c: Implement NEED_PRINTF_DOUBLE.
30310         (decode_double): New function, copied from decode_long_double.
30311         (scale10_round_decimal_decoded): New function, extracted from
30312         scale10_round_decimal_long_double.
30313         (scale10_round_decimal_long_double): Use it.
30314         (scale10_round_decimal_double): New function.
30315         (floorlog10): New function.
30316         (VASNPRINTF): Handle NEED_PRINTF_DOUBLE case.
30317         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_ENOMEM): New macro.
30318         (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): Invoke it.
30319         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
30320         gl_PRINTF_ENOMEM and test its result. Invoke
30321         gl_PREREQ_VASNPRINTF_ENOMEM.
30322         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
30323         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
30324         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
30325         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
30326         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
30327         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
30328         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
30329         * modules/fprintf-posix (Depends-on): Add frexp-nolibm.
30330         * modules/snprintf-posix (Depends-on): Likewise.
30331         * modules/sprintf-posix (Depends-on): Likewise.
30332         * modules/vasnprintf-posix (Depends-on): Likewise.
30333         * modules/vasprintf-posix (Depends-on): Likewise.
30334         * modules/vfprintf-posix (Depends-on): Likewise.
30335         * modules/vsnprintf-posix (Depends-on): Likewise.
30336         * modules/vsprintf-posix (Depends-on): Likewise.
30337         * doc/functions/fprintf.texi: Update.
30338         * doc/functions/printf.texi: Update.
30339         * doc/functions/snprintf.texi: Update.
30340         * doc/functions/sprintf.texi: Update.
30341         * doc/functions/vfprintf.texi: Update.
30342         * doc/functions/vprintf.texi: Update.
30343         * doc/functions/vsnprintf.texi: Update.
30344         * doc/functions/vsprintf.texi: Update.
30345
30346 2007-11-03  Bruno Haible  <bruno@clisp.org>
30347
30348         * modules/frexp-nolibm-tests: New file.
30349
30350         * modules/frexp-nolibm: New file.
30351         * m4/frexp.m4 (gl_FUNC_FREXP_NO_LIBM): New macro.
30352
30353 2007-11-03  Bruno Haible  <bruno@clisp.org>
30354
30355         * lib/vasnprintf.c (VASNPRINTF): Don't assume that snprintf's return
30356         value is C99 compliant.
30357         Needed for OSF/1 5.1.
30358
30359 2007-11-03  Bruno Haible  <bruno@clisp.org>
30360
30361         Fix out-of-memory handling of vasnprintf.
30362         * lib/printf-parse.c: Include <errno.h>.
30363         (PRINTF_PARSE): When failing, set errno to EINVAL or ENOMEM.
30364         * lib/vasnprintf.c (VASNPRINTF): When PRINTF_PARSE fails, assume errno
30365         is already set.
30366
30367 2007-11-02  Eric Blake  <ebb9@byu.net>
30368
30369         Fix tests on cygwin.
30370         * modules/xprintf-posix-tests (Makefile.am): Link against -lintl.
30371
30372 2007-11-01  Bruno Haible  <bruno@clisp.org>
30373
30374         * lib/stdlib.in.h (putenv): Remove the "not POSIX compliant everywhere"
30375         warning.
30376         * doc/functions/putenv.texi: Clarify that the 'putenv' module is not
30377         needed for POSIX compatibility.
30378
30379 2007-11-01  Paul Eggert  <eggert@cs.ucla.edu>
30380
30381         * m4/putenv.m4 (gl_FUNC_PUTENV): Also mention that we're checking
30382         for compatibility with GNU.
30383
30384 2007-11-01  Bruno Haible  <bruno@clisp.org>
30385
30386         * lib/putenv.c: Include <stdlib.h>. Remove rpl_putenv declaration.
30387         (putenv): Renamed from rpl_putenv. Change argument type from
30388         'const char *' to 'char *'.
30389         * m4/putenv.m4 (gl_FUNC_PUTENV): Require gl_STDLIB_H_DEFAULTS. Instead
30390         of defining putenv in config.h, just set REPLACE_PUTENV.
30391         * modules/putenv (Depends-on): Add stdlib.
30392         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
30393         (Include): Use <stdlib.h>.
30394         * lib/stdlib.in.h (putenv): New declaration.
30395         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_PUTENV and
30396         REPLACE_PUTENV.
30397         * modules/stdlib (Makefile.am): Substitute GNULIB_PUTENV and
30398         REPLACE_PUTENV.
30399         Needed for MacOS X 10.5.0.
30400         Reported by Peter O'Gorman <peter@pogma.com>.
30401
30402 2007-11-01  Jim Meyering  <meyering@redhat.com>
30403
30404         Treat an empty date string exactly like "0".
30405         * lib/getdate.y (get_date): Once any isspace or TZ= prefix is consumed,
30406         if the remaining date string (to be parsed) is empty, use "0".
30407         Reported by Mischa Molhoek and discussed in this thread:
30408         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/11726>.
30409
30410 2007-10-31  Bruno Haible  <bruno@clisp.org>
30411
30412         * m4/intmax_t.m4 (gl_AC_TYPE_INTMAX_T, gt_AC_TYPE_INTMAX_T): Use
30413         AC_TYPE_LONG_LONG_INT instead of gl_AC_TYPE_LONG_LONG.
30414         * m4/uintmax_t.m4 (gl_AC_TYPE_UINTMAX_T): Use
30415         AC_TYPE_UNSIGNED_LONG_LONG_INT instead of gl_AC_TYPE_UNSIGNED_LONG_LONG.
30416         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Remove macro.
30417         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG): Remove macro.
30418
30419 2007-10-31  Bruno Haible  <bruno@clisp.org>
30420
30421         * m4/longlong.m4 (_AC_TYPE_LONG_LONG_SNIPPET): New macro, extracted
30422         from AC_TYPE_LONG_LONG_INT and AC_TYPE_UNSIGNED_LONG_LONG_INT.
30423         (AC_TYPE_LONG_LONG_INT): Use it.
30424         (AC_TYPE_UNSIGNED_LONG_LONG_INT): Moved here from m4/ulonglong.m4. Use
30425         it as well.
30426         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Remove macro; moved
30427         to m4/longlong.m4.
30428         * modules/stdint (Files): Remove m4/ulonglong.m4.
30429         * modules/strtoull (Files): Use m4/longlong.m4 instead of
30430         m4/ulonglong.m4.
30431         * modules/strtoumax (Files): Likewise.
30432
30433 2007-10-30  Bruno Haible  <bruno@clisp.org>
30434
30435         * modules/xvasprintf-posix: New file.
30436         Suggested by Eric Blake.
30437
30438 2007-10-30  Bruno Haible  <bruno@clisp.org>
30439
30440         * modules/xprintf-posix-tests: New file.
30441         * tests/test-xprintf-posix.sh: New file.
30442         * tests/test-xprintf-posix.c: New file.
30443         * tests/test-xfprintf-posix.c: New file.
30444
30445         * modules/xprintf-posix: New file.
30446
30447 2007-10-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30448
30449         * modules/fbufmode-tests (MOSTLYCLEANFILES): Remove temp files.
30450         * modules/freadable-tests (MOSTLYCLEANFILES): Likewise.
30451         * modules/fwritable-tests (MOSTLYCLEANFILES): Likewise.
30452
30453 2007-10-29  Bruno Haible  <bruno@clisp.org>
30454
30455         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): Rename the cache variable to
30456         contain the special marker '_cv_'.
30457         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): Likewise.
30458         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): Likewise.
30459         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): Likewise.
30460         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): Likewise.
30461         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): Likewise.
30462         Reported by Ralf Wildenhues.
30463
30464 2007-10-29  Bruno Haible  <bruno@clisp.org>
30465
30466         * gnulib-tool (func_import): When --lgpl is not specified, set
30467         sed_transform_lib_file to convert LGPL and GPLv2+ copyright headers to
30468         GPLv3.
30469         Reported by Simon Josefsson.
30470
30471 2007-10-28  Bruno Haible  <bruno@clisp.org>
30472
30473         * lib/math.in.h: Test REPLACE_ISFINITE instead of HAVE_DECL_ISFINITE.
30474         * m4/isfinite.m4 (gl_ISFINITE): Initialize REPLACE_ISFINITE instead of
30475         HAVE_DECL_ISFINITE.
30476         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Update.
30477         * modules/math (Makefile.am): Substitute REPLACE_ISFINITE instead of
30478         HAVE_DECL_ISFINITE.
30479
30480 2007-10-28  Bruno Haible  <bruno@clisp.org>
30481
30482         * lib/stdint.in.h (_STDINT_MAX): Subtract 1 from an unused signed
30483         integer shift in the signed case. Fixes warnings with OSF/1 5.1 cc.
30484
30485 2007-10-28  Bruno Haible  <bruno@clisp.org>
30486
30487         Fix link errors with Sun C 5.0 on Solaris 10.
30488         * m4/floorf.m4 (gl_FUNC_FLOORF): Consider also the case that the
30489         function is declared but not present in the compiler's libm.
30490         * m4/floorl.m4 (gl_FUNC_FLOORL): Likewise.
30491         * m4/ceilf.m4 (gl_FUNC_CEILF): Likewise.
30492         * m4/ceill.m4 (gl_FUNC_CEILL: Likewise.
30493         * lib/math.in.h: Test REPLACE_CEILF instead of HAVE_DECL_CEILF.
30494         Test REPLACE_CEILL instead of HAVE_DECL_CEILL.
30495         Test REPLACE_FLOORF instead of HAVE_DECL_FLOORF.
30496         Test REPLACE_FLOORL instead of HAVE_DECL_FLOORL.
30497         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Update.
30498         * modules/math (Makefile.am): Substitute REPLACE_CEILF instead of
30499         HAVE_DECL_CEILF, REPLACE_CEILL instead of HAVE_DECL_CEILL,
30500         REPLACE_FLOORF instead of HAVE_DECL_FLOORF, REPLACE_FLOORL instead of
30501         HAVE_DECL_FLOORL.
30502
30503 2007-10-28  Bruno Haible  <bruno@clisp.org>
30504
30505         * m4/floorl.m4 (gl_FUNC_FLOORL_LIBS): New macro, extracted from
30506         gl_FUNC_FLOORL. Cache the result.
30507         (gl_FUNC_FLOORL): Use it.
30508         * m4/ceill.m4 (gl_FUNC_CEILL_LIBS): New macro, extracted from
30509         gl_FUNC_CEILL. Cache the result.
30510         (gl_FUNC_CEILL): Use it.
30511
30512         * m4/floor.m4 (gl_FUNC_FLOOR_LIBS): New macro, extracted from
30513         gl_FUNC_FLOOR. Cache the result.
30514         (gl_FUNC_FLOOR): Use it.
30515         * m4/ceil.m4 (gl_FUNC_CEIL_LIBS): New macro, extracted from
30516         gl_FUNC_CEIL. Cache the result.
30517         (gl_FUNC_CEIL): Use it.
30518
30519         * m4/floorf.m4 (gl_FUNC_FLOORF_LIBS): New macro, extracted from
30520         gl_FUNC_FLOORF. Cache the result.
30521         (gl_FUNC_FLOORF): Use it.
30522         * m4/ceilf.m4 (gl_FUNC_CEILF_LIBS): New macro, extracted from
30523         gl_FUNC_CEILF. Cache the result.
30524         (gl_FUNC_CEILF): Use it.
30525
30526 2007-10-28  Bruno Haible  <bruno@clisp.org>
30527
30528         * gnulib-tool: Allow specifying the LGPL version number through
30529         --lgpl=2 or --lgpl=3.
30530         (func_usage): Document --lgpl with argument.
30531         Handle --lgpl=... arguments.
30532         (func_import): Recognize also gl_LGPL calls with an argument. When
30533         --lgpl=2 is used and the module's license is just LGPL, report an
30534         error. Set sed_transform_lib_file according to the lgpl variable. In
30535         the generated files, use --lgpl or gl_LGPL invocations with argument,
30536         if necessary.
30537         * doc/gnulib-intro.texi (Copyright): Explain how to get modules under
30538         an LGPv2+ license.
30539         * doc/gnulib-tool.texi (Modified imports): Update explanation of
30540         gl_LGPL macro.
30541
30542 2007-10-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30543             Bruno Haible  <bruno@clisp.org>
30544
30545         * lib/unistr.h (u8_uctomb_aux): Declare also if !HAVE_INLINE.
30546         (u16_uctomb_aux): Likewise.
30547         * lib/unistr/u8-uctomb-aux.c (u8_uctomb_aux): Define also if
30548         !HAVE_INLINE.
30549         * lib/unistr/u16-uctomb-aux.c (u16_uctomb_aux): Likewise
30550
30551 2007-10-28  Bruno Haible  <bruno@clisp.org>
30552
30553         * modules/error: Add a notice recommending to change XGETTEXT_OPTIONS.
30554         Invoke AM_GETTEXT_OPTION if it exists.
30555         * modules/vasprintf: Likewise.
30556         * modules/verror: Likewise.
30557         * modules/xprintf: Likewise.
30558         * modules/xvasprintf: Likewise.
30559
30560 2007-10-27  Ben Pfaff  <blp@gnu.org>
30561
30562         * lib/math.in.h: Define isfinite macro and prototypes for
30563         gl_isfinitef, gl_isfinited, gl_isfinitel if we are providing
30564         implementations.
30565         * m4/math_h.m4: New substitutions for isfinite module.
30566         * lib/isfinite.c: New file.
30567         * m4/isfinite.m4: New file.
30568         * modules/math: Replace isfinite-related @VARS@ in math.in.h.
30569         * modules/isfinite: New file.
30570         * modules/isfinite-tests: New file.
30571         * tests/tests-isfinite.c: New file.
30572         * doc/functions/isfinite.texi: Mention isfinite module.
30573         * MODULES.html.sh: Mention new module.
30574
30575 2007-10-27  Ben Pfaff  <blp@gnu.org>
30576
30577         Ralf Wildenhues reported that Tru64 4.0D declares the round
30578         functions but does not have definitions.
30579         * m4/check-math-lib.m4 (gl_CHECK_MATH_LIB): If the target function
30580         cannot be found in any library, set the output variable to
30581         "missing" instead of "".
30582         * m4/round.m4: Also use our substitute if we cannot find round in
30583         any library, even if it is declared.
30584         * m4/roundf.m4: Likewise for roundf.
30585         * m4/roundl.m4: Likewise for roundl.
30586         * lib/math.in.h: Undefine roundf, round, roundl before defining
30587         their replacements, to allow for hypothetical systems where these
30588         may be defined as macros but not available in libraries.
30589
30590 2007-10-27  Bruno Haible  <bruno@clisp.org>
30591
30592         * doc/gnulib.texi: Invoke @firstparagraphindent.
30593         * doc/gnulib-tool.texi (Simple update): Mention possible incompatible
30594         changes in gnulib.
30595         (Source changes): New section.
30596
30597 2007-10-26  Bruno Haible  <bruno@clisp.org>
30598
30599         * m4/gnulib-common.m4 (AC_C_RESTRICT): New overriding definition,
30600         borrowed from autoconf.
30601
30602 2007-10-26  Bruno Haible  <bruno@clisp.org>
30603
30604         * lib/strerror.c (rpl_strerror): Return "Unknown error ..." also if
30605         strerror returned the empty string. Needed on HP-UX 11.00.
30606
30607 2007-10-24  Micah Cowan  <micah@cowan.name>
30608
30609         Remove vestiges of cvs-gnulib-checkout process.  Now we use git.
30610         * build-aux/bootstrap: Remove support for now-unnecessary option,
30611         --cvs-user, and envvars CVS_USER, CVS_RSH.
30612
30613 2007-10-24  Jim Meyering  <meyering@redhat.com>
30614
30615         Avoid diagnostics from sha1sum when there is no cached checksum.
30616         * build-aux/bootstrap (update_po_files): Skip the sha1sum check
30617         if the po.s1 file hasn't been created yet.
30618
30619         * build-aux/bootstrap: Sync from coreutils:
30620         2007-10-24  Jim Meyering  <meyering@redhat.com>
30621         Get gnulib from the git repository, not from an obsolete cvs one.
30622         * build-aux/bootstrap: Suggestion from Micah Cowan.
30623         2007-10-04  Jim Meyering  <jim@meyering.net>
30624         * build-aux/bootstrap (slurp): Adapt to _.h -> .in.h name change.
30625         (update_po_files): Work also when there are no .po files in po/.
30626
30627 2007-10-24  Paul Eggert  <eggert@cs.ucla.edu>
30628
30629         * README: Append ".git" to git and cg examples.
30630         Problem reported by Benoit Sigoure.
30631
30632 2007-10-23  Micah Cowan  <micah@cowan.name>
30633
30634         * users.txt: Add wget.
30635
30636 2007-10-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30637
30638         Fix linking of some unistdio tests on FreeBSD.
30639         * modules/unistdio/u16-vsnprintf-tests
30640         (test_u16_vsprintf1_LDADD): Add @LIBINTL@.
30641         * modules/unistdio/u16-vsprintf-tests
30642         (test_u16_vsnprintf1_LDADD): Likewise.
30643         * modules/unistdio/u32-vsnprintf-tests
30644         (test_u32_vsnprintf1_LDADD): Likewise.
30645         * modules/unistdio/u32-vsprintf-tests
30646         (test_u32_vsprintf1_LDADD): Likewise.
30647         * modules/unistdio/u8-vsnprintf-tests
30648         (test_u8_vsnprintf1_LDADD): Likewise.
30649         * modules/unistdio/u8-vsprintf-tests
30650         (test_u8_vsprintf1_LDADD): Likewise.
30651         * modules/unistdio/ulc-vsnprintf-tests
30652         (test_ulc_vsnprintf1_LDADD): Likewise.
30653         * modules/unistdio/ulc-vsprintf-tests
30654         (test_ulc_vsprintf1_LDADD): Likewise.
30655
30656         Fix linking of some uniconv tests on FreeBSD.
30657         * modules/uniconv/u16-conv-from-enc-tests
30658         (test_u16_conv_from_enc_LDADD): Link $(LDADD) before @LIBICONV@.
30659         * modules/uniconv/u16-conv-to-enc-tests
30660         (test_u16_conv_to_enc_LDADD): Likewise.
30661         * modules/uniconv/u16-strconv-from-enc-tests
30662         (test_u16_strconv_from_enc_LDADD): Likewise.
30663         * modules/uniconv/u16-strconv-to-enc-tests
30664         (test_u16_strconv_to_enc_LDADD): Likewise.
30665         * modules/uniconv/u32-conv-from-enc-tests
30666         (test_u32_conv_from_enc_LDADD): Likewise.
30667         * modules/uniconv/u32-conv-to-enc-tests
30668         (test_u32_conv_to_enc_LDADD): Likewise.
30669         * modules/uniconv/u32-strconv-from-enc-tests
30670         (test_u32_strconv_from_enc_LDADD): Likewise.
30671         * modules/uniconv/u32-strconv-to-enc-tests
30672         (test_u32_strconv_to_enc_LDADD): Likewise.
30673         * modules/uniconv/u8-conv-from-enc-tests
30674         (test_u8_conv_from_enc_LDADD): Likewise.
30675         * modules/uniconv/u8-conv-to-enc-tests
30676         (test_u8_conv_to_enc_LDADD): Likewise.
30677         * modules/uniconv/u8-strconv-from-enc-tests
30678         (test_u8_strconv_from_enc_LDADD): Likewise.
30679         * modules/uniconv/u8-strconv-to-enc-tests
30680         (test_u8_strconv_to_enc_LDADD): Likewise.
30681
30682 2007-10-22  Bruno Haible  <bruno@clisp.org>
30683
30684         * lib/stdint.in.h: Add check that intmax_t and uintmax_t have the same
30685         size.
30686
30687 2007-10-22  Eric Blake  <ebb9@byu.net>
30688
30689         Tweak x*printf documentation.
30690         * lib/xprintf.c (xprintf, xvprintf, xfprintf, xvfprintf): Adjust
30691         variable name and comments.
30692         Suggested by Bruno Haible.
30693
30694 2007-10-22  Bruno Haible  <bruno@clisp.org>
30695
30696         * lib/acl.c (copy_acl): Fix file name in comment.
30697
30698 2007-10-22  Paul Eggert  <eggert@cs.ucla.edu>
30699
30700         Fix Tru64 problem with stdbool.h.
30701         * lib/stdbool.in.h (false, true):
30702         [! (defined __cplusplus || defined __BEOS__) && !defined __GNUC__]:
30703         Don't declare as an enum in this situation; it runs afoul of Tru64.
30704         Problem reported by Steven M. Schweda in
30705         <http://lists.gnu.org/archive/html/bug-autoconf/2007-10/msg00019.html>.
30706
30707 2007-10-22  Eric Blake  <ebb9@byu.net>
30708
30709         Also wrap vf?printf.
30710         * lib/xprintf.h (xvprintf, xvfprintf): New declarations.
30711         * lib/xprintf.c (xprintf, xfprintf): Work for C89.
30712         (xvprintf, xvfprintf): New functions.
30713
30714 2007-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30715
30716         * modules/fstrcmp-tests (test_fstrcmp_LDADD): New, add
30717         @LIBINTL@ for FreeBSD 6.2, $(LIBTHREAD) for AIX 4.3.3.
30718
30719         * lib/uniconv/u16-conv-to-enc.c (U_MBLEN): Define.
30720         * lib/uniconv/u32-conv-to-enc.c (U_MBLEN): Likewise.
30721
30722 2007-10-22  Paul Eggert  <eggert@cs.ucla.edu>
30723
30724         * lib/acl.c (copy_acl): Adjust to IRIX 6.5.  Problem reported
30725         by Bruno Haible.
30726
30727 2007-10-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30728
30729         * lib/getloadavg.c
30730         [defined (__osf__) && (defined (__alpha) || defined (__alpha__)]:
30731         Undef `sys' after including sys/table.h, for Tru64 4.0D.
30732
30733         * tests/test-i-ring.c: Work for C89.
30734
30735 2007-10-22  Bruno Haible  <bruno@clisp.org>
30736
30737         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Use -1ull, not
30738         -1u, in preprocessor expression, so that we don't test for the bug
30739         in HP-UX 11.00 cpp.  Testing for this bug caused problems; see
30740         <http://lists.gnu.org/archive/html/bug-gnulib/2007-10/msg00329.html>.
30741
30742 2007-10-22  Eric Blake  <ebb9@byu.net>
30743
30744         * tests/test-yesno.sh: Silence stderr during test.
30745
30746 2007-10-22  Simon Josefsson  <simon@josefsson.org>
30747
30748         * modules/crypto/gc-camellia: New file.
30749
30750         * m4/gc-camellia.m4: New file.
30751
30752         * lib/gc-libgcrypt.c (gc_cipher_open): Support Camellia.
30753
30754         * lib/gc.h (enum Gc_cipher): Add GC_CAMELLIA128, GC_CAMELLIA256.
30755
30756 2007-10-22  Simon Josefsson  <simon@josefsson.org>
30757
30758         * build-aux/maint.mk (gzip_rsyncable): Don't fail if gzip sends
30759         --help to stdout.  Reported by sms@antinode.org (Steven
30760         M. Schweda).
30761
30762 2007-10-22  Simon Josefsson  <simon@josefsson.org>
30763
30764         * users.txt: Fix link to libksba.
30765
30766 2007-10-21  Ben Pfaff  <blp@gnu.org>
30767
30768         * modules/roundf-tests: Add dependency on floorf, ceilf to allow
30769         round.c roundf implementation that depends on floorf and ceilf to
30770         be tested unconditionally.
30771
30772 2007-10-21  Ben Pfaff  <blp@gnu.org>
30773
30774         * m4/check-libm-func.m4: Removed.
30775         * m4/check-math-lib.m4: New file.
30776         * m4/round.m4: Rewrite to use gl_CHECK_MATH_LIB.
30777         * m4/roundf.m4: Ditto, and fix lack of HAVE_DECL_ROUNDF
30778         definition and lack of AC_LIBOBJ([roundf]).
30779         * m4/roundl.m4: Ditto, and similarly for roundl.
30780         * modules/round: Reference new m4 file.
30781         * modules/roundf: Ditto.
30782         * modules/roundl: Ditto.
30783         * tests/test-round2.c (main): Use ROUND instead of round.
30784         Bug report from Bruno Haible.
30785
30786 2007-10-21  Bruno Haible  <bruno@clisp.org>
30787
30788         * lib/printf-parse.c: Don't assume <stdint.h> exists in IN_LIBASPRINTF
30789         context.
30790
30791 2007-10-21  Bruno Haible  <bruno@clisp.org>
30792
30793         * tests/test-wcwidth.c (main): Allow negative result for some control
30794         characters.
30795
30796         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Check also the width of U+200B.
30797         Needed on OSF/1 5.1.
30798
30799 2007-10-21  Bruno Haible  <bruno@clisp.org>
30800
30801         * tests/test-floorf1.c: Include isnanf.h.
30802         (main): Use isnanf() instead of isnan().
30803         * tests/test-ceilf1.c: Include isnanf.h.
30804         (main): Use isnanf() instead of isnan().
30805         * tests/test-truncf1.c: Include isnanf.h.
30806         (main): Use isnanf() instead of isnan().
30807         * tests/test-roundf1.c: Include isnanf.h.
30808         (main): Use isnanf() instead of isnan().
30809
30810 2007-10-21  Eric Blake  <ebb9@byu.net>
30811
30812         * users.txt: Update URL for m4.
30813
30814 2007-10-21  Bruno Haible  <bruno@clisp.org>
30815
30816         * users.txt: Add clisp. Update URLs to Simon Josefsson's projects.
30817
30818 2007-10-21  Bruno Haible  <bruno@clisp.org>
30819
30820         * gnulib-tool (func_create_megatestdir): Determine the cvsdate from
30821         Git's management files if the CVS files are not present.
30822
30823 2007-10-20  Bruno Haible  <bruno@clisp.org>
30824
30825         * lib/count-one-bits.h (COUNT_ONE_BITS): Use the builtin also for
30826         gcc-3.4.x.
30827
30828 2007-10-20  Ben Pfaff  <blp@gnu.org>
30829
30830         * lib/math.in.h: Declare round, roundf, roundl if we are providing
30831         implementations.
30832         * m4/math_h.m4: New substitutions for round, roundf, roundl modules.
30833         * lib/round.c: New file.
30834         * lib/roundf.c: New file.
30835         * lib/roundl.c: New file.
30836         * m4/round.m4: New file.
30837         * m4/roundf.m4: New file.
30838         * m4/roundl.m4: New file.
30839         * m4/check-libm-func-m4: New file.
30840         * modules/math: Replace round, roundf, roundl related @VARS@ in
30841         math.in.h.
30842         * modules/round: New file.
30843         * modules/round-tests: New file.
30844         * modules/roundf: New file.
30845         * modules/roundf-tests: New file.
30846         * modules/roundl: New file.
30847         * modules/roundl-tests: New file.
30848         * tests/test-round1.c: New file.
30849         * tests/test-round2.c: New file.
30850         * tests/test-roundf1.c: New file.
30851         * tests/test-roundf2.c: New file.
30852         * tests/test-roundl.c: New file.
30853         * doc/functions/round.texi: Mention round module.
30854         * doc/functions/roundf.texi: Mention roundf module.
30855         * doc/functions/roundl.texi: Mention roundl module.
30856         * MODULES.html.sh: Mention new modules.
30857         Thanks to Bruno Haible for suggestions.
30858
30859 2007-10-20  Jim Meyering  <meyering@redhat.com>
30860
30861         * lib/xprintf.c: Include <config.h> unconditionally.
30862
30863         Change xprintf's license to GPL.
30864         * modules/xprintf (License): s/LGPL/GPL/, since this module
30865         depends on modules (exit and exitfail) which are GPL.
30866         Suggestion from Bruno Haible.
30867
30868         xprintf fixes.
30869         * lib/xprintf.c (xprintf, xfprintf): Use va_end.
30870         Use a clearer diagnostic.
30871         Patch from Bruno Haible.
30872
30873 2007-10-20  Bruno Haible  <bruno@clisp.org>
30874
30875         * lib/vasnprintf.c (VASNPRINTF): Don't report overflow if the available
30876         length is INT_MAX and sizeof (DCHAR_T) > sizeof (TCHAR_T).
30877         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
30878
30879 2007-10-20  Bruno Haible  <bruno@clisp.org>
30880
30881         * tests/test-floorf2.c (correct_result_p): Don't rely on excess
30882         precision in the comparison result > x - 1 or similar.
30883         * tests/test-ceilf2.c (correct_result_p): Likewise.
30884         * tests/test-truncf2.c (correct_result_p): Likewise.
30885         * tests/test-trunc2.c (correct_result_p): Likewise.
30886         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
30887
30888 2007-10-20  Bruno Haible  <bruno@clisp.org>
30889
30890         * modules/ceil: New file.
30891         * m4/ceil.m4: New file.
30892         * doc/functions/ceil.texi: Mention the 'ceil' module.
30893
30894 2007-10-20  Bruno Haible  <bruno@clisp.org>
30895
30896         * modules/floor: New file.
30897         * m4/floor.m4: New file.
30898         * doc/functions/floor.texi: Mention the 'floor' module.
30899
30900 2007-10-20  Bruno Haible  <bruno@clisp.org>
30901
30902         * modules/ceilf-tests (Depends-on): Add fprintf-posix. Needed for use
30903         of %a.
30904         * modules/floorf-tests (Depends-on): Likewise.
30905         * modules/truncf-tests (Depends-on): Likewise.
30906         * modules/trunc-tests (Depends-on): Likewise.
30907         Reported by Ben Pfaff.
30908
30909 2007-10-19  Jim Meyering  <meyering@redhat.com>
30910
30911         * lib/xprintf.c (xprintf, xfprintf): Test err < 0, not just "err".
30912         Don't bother testing specific errno values.  Just test ferror.
30913
30914         New module: xprintf
30915         * modules/xprintf, lib/xprintf.c, lib/xprintf.h: New files.
30916
30917 2007-10-19  Bruno Haible  <bruno@clisp.org>
30918
30919         * modules/csharpexec (Makefile.am): Use @FOO@ syntax instead of $(FOO)
30920         syntax.
30921         * modules/javaexec (Makefile.am): Likewise.
30922         * modules/relocatable-prog (Makefile.am): Likewise.
30923         Suggested by Jim Meyering.
30924
30925 2007-10-18  Bruno Haible  <bruno@clisp.org>
30926
30927         * lib/vasnprintf.c (VASNPRINTF): Don't use %n on glibc >= 2.3 systems.
30928         Reported by Jim Meyering.
30929
30930 2007-10-18  Eric Blake  <ebb9@byu.net>
30931
30932         * modules/filenamecat-tests (Makefile.am): Link against -lintl.
30933
30934 2007-10-18  Bruno Haible  <bruno@clisp.org>
30935
30936         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_N, gl_SNPRINTF_DIRECTIVE_N): Put
30937         the format string into writable memory. Needed in Fortify conditions.
30938
30939 2007-10-18  Colin Watson <cjwatson@debian.org>  (tiny change)
30940             Bruno Haible  <bruno@clisp.org>
30941
30942         * lib/trim.c: Include config.h unconditionally. Include trim.h always.
30943         Include ctype.h always. Include stdlib.h, not mbuiter.h, for MB_CUR_MAX.
30944         * modules/trim (Depends-on): Add mbchar.
30945         (configure.ac): Add gl_FUNC_MBRTOWC.
30946         (Makefile.am): Augment lib_SOURCES.
30947
30948 2007-10-17  Paul Eggert  <eggert@cs.ucla.edu>
30949
30950         Modify glob.c to use fstatat and dirfd, to simplify it.
30951         Suggested by Eric Blake.
30952         * lib/glob.c (__fxstatat64) [!_LIBC]: New macro.
30953         Don't include <stdbool.h>; not used.
30954         (link_exists2_p, glob_in_dir) [!_LIBC]: No longer a special case.
30955         (link_exists_p): Simplify implementation, since we can now assume
30956         dirfd and fstatat.
30957         * modules/glob (Depends-on): Add dirfd, openat.  Remove stdbool.
30958
30959 2007-10-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
30960
30961         * gnulib-tool (func_get_dependencies): Fix sed script to
30962         match only tests.
30963
30964 2007-10-17  Bruno Haible  <bruno@clisp.org>
30965
30966         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): On Cygwin, don't
30967         allow locale names without encoding suffix.
30968         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): Likewise.
30969         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
30970
30971 2007-10-16  Bruno Haible  <bruno@clisp.org>
30972
30973         * lib/getcwd.c (__getcwd): Define with explicit rpl_ prefix.
30974         * lib/getgroups.c (getgroups): Likewise.
30975         * lib/gettimeofday.c (localtime, gmtime, tzset): Likewise.
30976
30977 2007-10-16  Bruno Haible  <bruno@clisp.org>
30978
30979         * modules/absolute-header (License): Change from LGPL to LGPLv2+.
30980         * modules/malloc-posix (License): Likewise.
30981         * modules/realloc-posix (License): Likewise.
30982         * modules/calloc-posix (License): Likewise.
30983         * modules/intprops (License): Change from GPL to LGPL, with
30984         Paul Eggert's approval.
30985
30986 2007-10-16  Paul Eggert  <eggert@cs.ucla.edu>
30987
30988         Merge glibc changes into lib/glob.c.
30989
30990         * lib/glob.c (glob_in_dir): Sync with glibc/posix/glob.c, dated
30991         2007-10-15 04:59:03 UTC.  Here are the changes:
30992
30993         2007-10-14  Ulrich Drepper  <drepper@redhat.com>
30994
30995         * lib/glob.c: Reimplement link_exists_p to use fstatat64.
30996
30997         * lib/glob.c: Add some branch prediction throughout.
30998
30999         2007-10-07  Ulrich Drepper  <drepper@redhat.com>
31000
31001         [BZ #5103]
31002         * lib/glob.c (glob): Recognize patterns starting \/.
31003
31004         2007-02-14  Jakub Jelinek  <jakub@redhat.com>
31005
31006         [BZ #3996]
31007         * lib/glob.c (attribute_hidden): Define if not defined.
31008         (glob): Unescape dirname, filename or username when needed and not
31009         GLOB_NOESCAPE.  Handle \/ correctly.  Handle GLOB_MARK if filename
31010         is NULL.  Handle unescaped [ in pattern without closing ].
31011         Don't pass GLOB_CHECK down to recursive glob for directories.
31012         (__glob_pattern_type): New function.
31013         (__glob_pattern_p): Implement using __glob_pattern_type.
31014         (glob_in_dir): Handle GLOB_NOCHECK patterns containing no meta
31015         characters and backslashes if not GLOB_NOESCAPE or unterminated [.
31016         Remove unreachable code.
31017
31018         2006-09-30  Ulrich Drepper  <drepper@redhat.com>
31019
31020         * lib/glob.c (glob_in_dir): Add some comments and asserts to
31021         explain why there are no leaks.
31022
31023         2006-09-25  Jakub Jelinek  <jakub@redhat.com>
31024
31025         [BZ #3253]
31026         * lib/glob.c (glob_in_dir): Don't alloca one struct globlink at a
31027         time, rather allocate increasingly bigger arrays of pointers, if
31028         possible with alloca, if too large with malloc.
31029
31030 2007-10-16  Paul Eggert  <eggert@cs.ucla.edu>
31031
31032         Check for 64-bit int errors in HP-UX 10.20 preprocessor.
31033         Problem reported by H.Merijn Brand in
31034         <http://lists.gnu.org/archive/html/bug-tar/2007-10/msg00018.html>.
31035         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Check preprocessor too.
31036         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
31037
31038 2007-10-15  Bruno Haible  <bruno@clisp.org>
31039
31040         * lib/fchdir.c (close, open, closedir, opendir, dup, dup2): Define
31041         with explicit rpl_ prefix.
31042         * lib/fopen.c (fopen): Likewise.
31043         * lib/freopen.c (freopen): Likewise.
31044         * lib/iconv.c (iconv): Likewise.
31045         * lib/iconv_close.c (iconv_close): Likewise.
31046
31047 2007-10-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
31048
31049         * m4/iconv_open (gl_FUNC_ICONV_OPEN_UTF): Fix cache variable name.
31050
31051 2007-10-15  Bruno Haible  <bruno@clisp.org>
31052
31053         * m4/getaddrinfo.m4 (gl_GETADDRINFO, gl_PREREQ_GETADDRINFO): Use
31054         <stddef.h> instead of <stdlib.h> since we only need NULL.
31055         Reported by Ben Pfaff <blp@cs.stanford.edu>.
31056
31057 2007-10-15  Bruno Haible  <bruno@clisp.org>
31058
31059         * doc/gnulib-tool.texi (Initial import): Swap order of -I directives.
31060         Replace paragraph talking about LIBOBJS.
31061         Reported by Colin Watson <cjwatson@debian.org>.
31062
31063 2007-10-15  Bruno Haible  <bruno@clisp.org>
31064
31065         * m4/getaddrinfo.m4 (gl_GETADDRINFO, gl_PREREQ_GETADDRINFO): Include
31066         <stdlib.h> before using NULL.
31067
31068 2007-10-15  Simon Josefsson  <simon@josefsson.org>
31069
31070         * m4/getaddrinfo.m4: Use NULL rather than 0 for pointers.
31071         Reported by Albert Chin <china@thewrittenword.com>.
31072
31073 2007-10-14  Bruno Haible  <bruno@clisp.org>
31074
31075         * modules/iconv_open-utf-tests: New file.
31076         * tests/test-iconv-utf.c: New file.
31077
31078         Enhance iconv_open to support UTF-16BE, UTF-16LE, UTF-32BE, UTF-32LE.
31079         * modules/iconv_open-utf: New file.
31080         * lib/iconv.in.h (_ICONV_UTF8_UTF*, _ICONV_UTF*_UTF8): New macros.
31081         (iconv, iconv_close): New declarations.
31082         * lib/iconv_open.c: Include c-strcase.h. Don't require ICONV_FLAVOR to
31083         be defined.
31084         (iconv_open): Add special handling of conversion between UTF-8 and
31085         UTF-{16,32}{BE,LE}.
31086         * lib/iconv.c: New file, incorporating code from GNU libiconv 1.11.
31087         * lib/iconv_close.c: New file.
31088         * m4/iconv_open.m4 (gl_REPLACE_ICONV_OPEN): New macro, extracted from
31089         gl_FUNC_ICONV_OPEN.
31090         (gl_FUNC_ICONV_OPEN): Use it.
31091         (gl_FUNC_ICONV_OPEN_UTF): New macro.
31092         * m4/iconv_h.m4 (gl_ICONV_H_DEFAULTS): Initialize also REPLACE_ICONV
31093         and REPLACE_ICONV_UTF.
31094         * modules/iconv_open (Depends-on): Add c-strcase.
31095         (Makefile.am): Substitute also REPLACE_ICONV, REPLACE_ICONV_UTF,
31096         ICONV_CONST.
31097         * doc/functions/iconv_open.texi: Mention the iconv_open-utf module.
31098
31099 2007-10-13  Albert Chin  <china@thewrittenword.com>
31100             Bruno Haible  <bruno@clisp.org>
31101
31102         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Perform the test for getaddrinfo
31103         through a link check that includes <netdb.h>. Needed for OSF/1 5.1.
31104
31105 2007-10-13  Bruno Haible  <bruno@clisp.org>
31106
31107         * lib/argp-fmtstream.h (ARGP_FS_EI): If __GNUC_STDC_INLINE__ is
31108         defined, use the ISO C99 inline semantics.
31109         * lib/argp.h (ARGP_EI): Likewise.
31110
31111 2007-10-13  Bruno Haible  <bruno@clisp.org>
31112
31113         Handle 'inline' change in gcc 4.3.0.
31114         * lib/argp-fmtstream.h (argp_fmtstream_putc, argp_fmtstream_puts,
31115         argp_fmtstream_write, argp_fmtstream_set_lmargin,
31116         argp_fmtstream_set_rmargin, argp_fmtstream_set_wmargin,
31117         argp_fmtstream_point): Disable 'extern' declaration if the function
31118         definition is going to be provided inline.
31119         (ARGP_FS_EI): If __GNUC_STDC_INLINE__ is defined, use the GNU C inline
31120         semantics, not the ISO C99 inline semantics.
31121         * lib/argp.h (argp_usage, _option_is_short, _option_is_end): Disable
31122         'extern' declaration if the function definition is going to be provided
31123         inline.
31124         (ARGP_EI): Don't assume GNU C. If __GNUC_STDC_INLINE__ is defined, use
31125         the GNU C inline semantics, not the ISO C99 inline semantics. With
31126         GCC 4.2, avoid a warning.
31127
31128 2007-10-13  Bruno Haible  <bruno@clisp.org>
31129
31130         * lib/freading.h (freading): Enable the use of __freading for
31131         glibc >= 2.7.
31132         * lib/freading.c (freading): Likewise.
31133
31134 2007-10-12  Paul Eggert  <eggert@cs.ucla.edu>
31135
31136         * lib/argp-fmtstream.h (ARGP_FS_EI): Work around GCC 4.2.1 diagnostic
31137         "warning: C99 inline functions are not supported; using GNU89".
31138
31139 2007-10-12  Bruno Haible  <bruno@clisp.org>
31140
31141         * lib/ceil.c (FUNC): Avoid rounding errors for values near a power
31142         of 2.
31143         * tests/test-ceilf2.c: New file.
31144         * modules/ceilf-tests: (Files, Depends-on, Makefile.am): Add new test.
31145
31146         * tests/test-ceilf1.c: Renamed from tests/test-ceilf.c.
31147         * modules/ceilf-tests: Update.
31148
31149 2007-10-12  Bruno Haible  <bruno@clisp.org>
31150
31151         * lib/floor.c (FUNC): Avoid rounding errors for values near a power
31152         of 2.
31153         * tests/test-floorf2.c: New file.
31154         * modules/floorf-tests: (Files, Depends-on, Makefile.am): Add new test.
31155
31156         * tests/test-floorf1.c: Renamed from tests/test-floorf.c.
31157         * modules/floorf-tests: Update.
31158
31159 2007-10-12  Bruno Haible  <bruno@clisp.org>
31160
31161         * tests/test-trunc2.c: New file.
31162         * modules/trunc-tests: (Files, Depends-on, Makefile.am): Add new test.
31163
31164         * tests/test-trunc1.c: Renamed from tests/test-trunc.c.
31165         * modules/trunc-tests: Update.
31166
31167 2007-10-12  Bruno Haible  <bruno@clisp.org>
31168
31169         * lib/trunc.c (FUNC): Avoid rounding errors for values near a power
31170         of 2.
31171         * tests/test-truncf2.c: New file.
31172         * modules/truncf-tests: (Files, Depends-on, Makefile.am): Add new test.
31173
31174         * tests/test-truncf1.c: Renamed from tests/test-truncf.c.
31175         * modules/truncf-tests: Update.
31176
31177 2007-10-11  Eric Blake  <ebb9@byu.net>
31178
31179         Don't claim strerror is broken on Interix.
31180         * doc/functions/strerror.texi (strerror): Known broken systems are
31181         now Solaris 8, and not Interix.
31182         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): No longer filter out
31183         Interix on cross-compile.
31184         Reported by Martin Koeppe in
31185         http://lists.gnu.org/archive/html/bug-gnulib/2007-10/msg00005.html.
31186
31187 2007-10-11  Bruno Haible  <bruno@clisp.org>
31188
31189         * modules/i-ring-tests: New file.
31190         * tests/test-i-ring.c: Renamed from lib/i-ring-test.c. Use ASSERT
31191         instead of assert.
31192
31193 2007-10-11  Bruno Haible  <bruno@clisp.org>
31194
31195         * modules/filenamecat-tests: New file.
31196         * tests/test-filenamecat.c: New file, extracted from lib/filenamecat.c.
31197         * lib/filenamecat.c: Remove test code.
31198
31199 2007-10-11  Paul Eggert  <eggert@cs.ucla.edu>
31200
31201         Simplify and modernize strerror substitute, partly to fix Solaris 8 bug.
31202
31203         * lib/strerror.c: Include <string.h> always, to test interface,
31204         and to remove the need for the dummy.
31205         Include intprops.h to compute width instead of doing it ourselves
31206         and missing a CHAR_BIT declaration, which broke tar 1.19 on Solaris 8.
31207         (strerror): Define it to return NULL if there's no system strerror.
31208         (rpl_strerror): Use INT_STRLEN_BOUND to compute bound.
31209         Omit !HAVE_STRERROR code.  We don't need to worry about supporting
31210         ancient pre-strerror Unix systems well any more.  Saying "unknown
31211         system error" is enough.
31212         * lib/string.in.h (strerror): Simplify the ifdef to reflect the
31213         simpler strerror.c implementation.
31214         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE, gl_PREREQ_STDERROR):
31215         Simplify the tests to reflect the simpler strerror implementation.
31216         * modules/strerror (Depends-on): Add intprops.
31217
31218 2007-10-09  Eric Blake  <ebb9@byu.net>
31219
31220         Silence test-fpending.
31221         * modules/fpending-tests (Files): Add wrapper script.
31222         * tests/test-fpending.sh: New file.
31223
31224 2007-10-09  Bruno Haible  <bruno@clisp.org>
31225
31226         * MODULES.html.sh (func_module): Don't create a hyperlink for
31227         function names like 'printf_frexp'.
31228         (Misc): Add crc, memxor.
31229         (Characteristics of floating types): New section.
31230         (Mathematics): Add ceilf, ceill, floorf, floorl, frexpl-nolibm,
31231         isnanf-nolibm, signbit, trunc, truncf, truncl.
31232         (Enhancements for ISO C 99 functions): New subsection Input/output.
31233         (Support for systems lacking POSIX:2001): Add arpa_inet, calloc-posix,
31234         fcntl, fopen, freopen, fseek, fseeko, ftell, ftello, iconv_open,
31235         locale, malloc-posix, netinet_in, open, realloc-posix, signal, sleep.
31236         (Compatibility checks for POSIX:2001 functions): Add clock-time.
31237         (Enhancements for POSIX:2001 functions): Add chdir-long.
31238         (File system functions): Add areadlink, chdir-safer, read-file.
31239         Remove cycle-check.
31240         (File system as inode set): New section.
31241         (Date and time): Add gethrxtime.
31242         (Multithreading): Add openmp.
31243         (Internationalization functions): Add localename.
31244         (Unicode string functions): Add unistr/u*-mbsnlen.
31245         (Support for maintaining and releasing projects): Add git-version-gen.
31246         (Lone files): Remove directories.
31247
31248 2007-10-08  Ben Pfaff  <blp@gnu.org>
31249
31250         * lib/xmalloca.h: Fix typo in comment.
31251
31252 2007-10-08  Paul Eggert  <eggert@cs.ucla.edu>
31253
31254         * lib/xnanosleep.c (xnanosleep): Don't assume GCC 4.3.0 behavior
31255         when avoiding problems with integer overflow.  Use a portable test
31256         instead.
31257
31258 2007-10-08  Simon Josefsson  <simon@josefsson.org>
31259
31260         * modules/dummy (License): Change to LGPLv2+.
31261         * modules/float (License): Likewise
31262         * modules/realloc (License): Likewise
31263         * modules/stdlib (License): Likewise
31264
31265 2007-10-07  Bruno Haible  <bruno@clisp.org>
31266
31267         * trunc.c (TWO_MANT_DIG): Change type to DOUBLE.
31268         * floor.c (TWO_MANT_DIG): Likewise.
31269         * ceil.c (TWO_MANT_DIG): Likewise.
31270         Reported by Ben Pfaff.
31271
31272 2007-10-07  Bruno Haible  <bruno@clisp.org>
31273
31274         Avoid gcc warnings "declaration of 'exp' shadows a global declaration".
31275         * lib/math.in.h (frexp, frexpl): Change parameter name to 'expptr'.
31276         * lib/frexp.c (FUNC): Likewise.
31277         * lib/printf-frexp.h (printf_frexp): Likewise.
31278         * lib/printf-frexpl.h (printf_frexpl): Likewise.
31279         * lib/printf-frexp.c (FUNC): Likewise.
31280         Suggested by Jim Meyering.
31281
31282 2007-10-07  Jim Meyering  <meyering@redhat.com>
31283
31284         Make xnanosleep's integer overflow test more robust.
31285         * lib/xnanosleep.c (xnanosleep): Declare a temporary to be "volatile",
31286         so that gcc-4.3.0 doesn't optimize away this test for overflow.
31287
31288 2007-10-07  Bruno Haible  <bruno@clisp.org>
31289
31290         * NEWS: Mention the license change.
31291
31292         * doc/gnulib-intro.texi (Copyright): Update the meaning of the license
31293         abbreviations in the modules files.
31294
31295         Change copyright notice from GPLv2+ to GPLv3+.
31296         * README: Change copyright notice.
31297         * MODULES.html.sh: Likewise.
31298         * build-aux/bootstrap.conf: Likewise.
31299         * build-aux/config.libpath: Likewise.
31300         * build-aux/csharpcomp.sh.in: Likewise.
31301         * build-aux/csharpexec.sh.in: Likewise.
31302         * build-aux/install-reloc: Likewise.
31303         * build-aux/javacomp.sh.in: Likewise.
31304         * build-aux/javaexec.sh.in: Likewise.
31305         * build-aux/ldd.sh.in: Likewise.
31306         * build-aux/reloc-ldflags: Likewise.
31307         * build-aux/relocatable.sh.in: Likewise.
31308         * build-aux/x-to-1.in: Likewise.
31309         * check-module: Likewise.
31310         * config/srclistvars.sh: Likewise.
31311         * gnulib-tool: Likewise.
31312         * lib/acl-internal.h: Likewise.
31313         * lib/acl.c: Likewise.
31314         * lib/acl.h: Likewise.
31315         * lib/acl_entries.c: Likewise.
31316         * lib/areadlink-with-size.c: Likewise.
31317         * lib/areadlink.c: Likewise.
31318         * lib/areadlink.h: Likewise.
31319         * lib/argmatch.c: Likewise.
31320         * lib/argmatch.h: Likewise.
31321         * lib/argp-ba.c: Likewise.
31322         * lib/argp-eexst.c: Likewise.
31323         * lib/argp-fmtstream.c: Likewise.
31324         * lib/argp-fmtstream.h: Likewise.
31325         * lib/argp-fs-xinl.c: Likewise.
31326         * lib/argp-help.c: Likewise.
31327         * lib/argp-namefrob.h: Likewise.
31328         * lib/argp-parse.c: Likewise.
31329         * lib/argp-pin.c: Likewise.
31330         * lib/argp-pv.c: Likewise.
31331         * lib/argp-pvh.c: Likewise.
31332         * lib/argp-xinl.c: Likewise.
31333         * lib/argp.h: Likewise.
31334         * lib/at-func.c: Likewise.
31335         * lib/atanl.c: Likewise.
31336         * lib/backupfile.c: Likewise.
31337         * lib/backupfile.h: Likewise.
31338         * lib/basename.c: Likewise.
31339         * lib/binary-io.h: Likewise.
31340         * lib/byteswap.in.h: Likewise.
31341         * lib/c-stack.c: Likewise.
31342         * lib/c-stack.h: Likewise.
31343         * lib/c-strcasestr.c: Likewise.
31344         * lib/c-strcasestr.h: Likewise.
31345         * lib/c-strstr.c: Likewise.
31346         * lib/c-strstr.h: Likewise.
31347         * lib/c-strtod.c: Likewise.
31348         * lib/calloc.c: Likewise.
31349         * lib/canon-host.c: Likewise.
31350         * lib/canon-host.h: Likewise.
31351         * lib/canonicalize-lgpl.c: Likewise.
31352         * lib/canonicalize.c: Likewise.
31353         * lib/canonicalize.h: Likewise.
31354         * lib/ceil.c: Likewise.
31355         * lib/ceilf.c: Likewise.
31356         * lib/ceill.c: Likewise.
31357         * lib/chdir-long.c: Likewise.
31358         * lib/chdir-long.h: Likewise.
31359         * lib/chdir-safer.c: Likewise.
31360         * lib/chdir-safer.h: Likewise.
31361         * lib/chown.c: Likewise.
31362         * lib/classpath.c: Likewise.
31363         * lib/classpath.h: Likewise.
31364         * lib/clean-temp.c: Likewise.
31365         * lib/clean-temp.h: Likewise.
31366         * lib/cloexec.c: Likewise.
31367         * lib/close-stream.c: Likewise.
31368         * lib/closein.c: Likewise.
31369         * lib/closein.h: Likewise.
31370         * lib/closeout.c: Likewise.
31371         * lib/closeout.h: Likewise.
31372         * lib/concat-filename.c: Likewise.
31373         * lib/copy-file.c: Likewise.
31374         * lib/copy-file.h: Likewise.
31375         * lib/count-one-bits.h: Likewise.
31376         * lib/crc.c: Likewise.
31377         * lib/crc.h: Likewise.
31378         * lib/creat-safer.c: Likewise.
31379         * lib/csharpcomp.c: Likewise.
31380         * lib/csharpcomp.h: Likewise.
31381         * lib/csharpexec.c: Likewise.
31382         * lib/csharpexec.h: Likewise.
31383         * lib/cycle-check.c: Likewise.
31384         * lib/cycle-check.h: Likewise.
31385         * lib/diacrit.c: Likewise.
31386         * lib/diacrit.h: Likewise.
31387         * lib/diffseq.h: Likewise.
31388         * lib/dirchownmod.c: Likewise.
31389         * lib/dirent.in.h: Likewise.
31390         * lib/dirfd.c: Likewise.
31391         * lib/dirfd.h: Likewise.
31392         * lib/dirname.c: Likewise.
31393         * lib/dirname.h: Likewise.
31394         * lib/dummy.c: Likewise.
31395         * lib/dup-safer.c: Likewise.
31396         * lib/dup2.c: Likewise.
31397         * lib/eealloc.h: Likewise.
31398         * lib/error.c: Likewise.
31399         * lib/error.h: Likewise.
31400         * lib/euidaccess.c: Likewise.
31401         * lib/exclude.c: Likewise.
31402         * lib/exclude.h: Likewise.
31403         * lib/execute.c: Likewise.
31404         * lib/execute.h: Likewise.
31405         * lib/exitfail.c: Likewise.
31406         * lib/exitfail.h: Likewise.
31407         * lib/expl.c: Likewise.
31408         * lib/fatal-signal.c: Likewise.
31409         * lib/fatal-signal.h: Likewise.
31410         * lib/fbufmode.c: Likewise.
31411         * lib/fbufmode.h: Likewise.
31412         * lib/fchdir.c: Likewise.
31413         * lib/fchmodat.c: Likewise.
31414         * lib/fchownat.c: Likewise.
31415         * lib/fcntl--.h: Likewise.
31416         * lib/fcntl-safer.h: Likewise.
31417         * lib/fcntl.in.h: Likewise.
31418         * lib/fd-safer.c: Likewise.
31419         * lib/fflush.c: Likewise.
31420         * lib/file-has-acl.c: Likewise.
31421         * lib/file-set.c: Likewise.
31422         * lib/file-type.c: Likewise.
31423         * lib/file-type.h: Likewise.
31424         * lib/fileblocks.c: Likewise.
31425         * lib/filemode.c: Likewise.
31426         * lib/filemode.h: Likewise.
31427         * lib/filename.h: Likewise.
31428         * lib/filenamecat.c: Likewise.
31429         * lib/filenamecat.h: Likewise.
31430         * lib/findprog.c: Likewise.
31431         * lib/findprog.h: Likewise.
31432         * lib/float.in.h: Likewise.
31433         * lib/floor.c: Likewise.
31434         * lib/floorf.c: Likewise.
31435         * lib/floorl.c: Likewise.
31436         * lib/fopen-safer.c: Likewise.
31437         * lib/fopen.c: Likewise.
31438         * lib/fpending.c: Likewise.
31439         * lib/fpending.h: Likewise.
31440         * lib/fprintf.c: Likewise.
31441         * lib/fprintftime.h: Likewise.
31442         * lib/fpucw.h: Likewise.
31443         * lib/fpurge.c: Likewise.
31444         * lib/fpurge.h: Likewise.
31445         * lib/freadable.c: Likewise.
31446         * lib/freadable.h: Likewise.
31447         * lib/freadahead.c: Likewise.
31448         * lib/freadahead.h: Likewise.
31449         * lib/freading.c: Likewise.
31450         * lib/freading.h: Likewise.
31451         * lib/free.c: Likewise.
31452         * lib/freopen.c: Likewise.
31453         * lib/frexp.c: Likewise.
31454         * lib/frexpl.c: Likewise.
31455         * lib/fseek.c: Likewise.
31456         * lib/fseterr.c: Likewise.
31457         * lib/fseterr.h: Likewise.
31458         * lib/fstatat.c: Likewise.
31459         * lib/fstrcmp.c: Likewise.
31460         * lib/fstrcmp.h: Likewise.
31461         * lib/fsusage.c: Likewise.
31462         * lib/fsusage.h: Likewise.
31463         * lib/ftell.c: Likewise.
31464         * lib/ftello.c: Likewise.
31465         * lib/fts-cycle.c: Likewise.
31466         * lib/fts.c: Likewise.
31467         * lib/fts_.h: Likewise.
31468         * lib/full-read.c: Likewise.
31469         * lib/full-read.h: Likewise.
31470         * lib/full-write.c: Likewise.
31471         * lib/full-write.h: Likewise.
31472         * lib/fwritable.c: Likewise.
31473         * lib/fwritable.h: Likewise.
31474         * lib/fwriteerror.c: Likewise.
31475         * lib/fwriteerror.h: Likewise.
31476         * lib/fwriting.c: Likewise.
31477         * lib/fwriting.h: Likewise.
31478         * lib/gcd.c: Likewise.
31479         * lib/gcd.h: Likewise.
31480         * lib/getcwd.c: Likewise.
31481         * lib/getdate.h: Likewise.
31482         * lib/getdate.y: Likewise.
31483         * lib/getdomainname.c: Likewise.
31484         * lib/getdomainname.h: Likewise.
31485         * lib/getgroups.c: Likewise.
31486         * lib/gethostname.c: Likewise.
31487         * lib/gethrxtime.c: Likewise.
31488         * lib/gethrxtime.h: Likewise.
31489         * lib/getloadavg.c: Likewise.
31490         * lib/getndelim2.c: Likewise.
31491         * lib/getndelim2.h: Likewise.
31492         * lib/getnline.c: Likewise.
31493         * lib/getnline.h: Likewise.
31494         * lib/getopt.c: Likewise.
31495         * lib/getopt.in.h: Likewise.
31496         * lib/getopt1.c: Likewise.
31497         * lib/getopt_int.h: Likewise.
31498         * lib/getpagesize.h: Likewise.
31499         * lib/getsubopt.c: Likewise.
31500         * lib/gettime.c: Likewise.
31501         * lib/getugroups.c: Likewise.
31502         * lib/getugroups.h: Likewise.
31503         * lib/getusershell.c: Likewise.
31504         * lib/gl_anyavltree_list1.h: Likewise.
31505         * lib/gl_anyavltree_list2.h: Likewise.
31506         * lib/gl_anyhash_list1.h: Likewise.
31507         * lib/gl_anyhash_list2.h: Likewise.
31508         * lib/gl_anylinked_list1.h: Likewise.
31509         * lib/gl_anylinked_list2.h: Likewise.
31510         * lib/gl_anyrbtree_list1.h: Likewise.
31511         * lib/gl_anyrbtree_list2.h: Likewise.
31512         * lib/gl_anytree_list1.h: Likewise.
31513         * lib/gl_anytree_list2.h: Likewise.
31514         * lib/gl_anytree_oset.h: Likewise.
31515         * lib/gl_anytreehash_list1.h: Likewise.
31516         * lib/gl_anytreehash_list2.h: Likewise.
31517         * lib/gl_array_list.c: Likewise.
31518         * lib/gl_array_list.h: Likewise.
31519         * lib/gl_array_oset.c: Likewise.
31520         * lib/gl_array_oset.h: Likewise.
31521         * lib/gl_avltree_list.c: Likewise.
31522         * lib/gl_avltree_list.h: Likewise.
31523         * lib/gl_avltree_oset.c: Likewise.
31524         * lib/gl_avltree_oset.h: Likewise.
31525         * lib/gl_avltreehash_list.c: Likewise.
31526         * lib/gl_avltreehash_list.h: Likewise.
31527         * lib/gl_carray_list.c: Likewise.
31528         * lib/gl_carray_list.h: Likewise.
31529         * lib/gl_linked_list.c: Likewise.
31530         * lib/gl_linked_list.h: Likewise.
31531         * lib/gl_linkedhash_list.c: Likewise.
31532         * lib/gl_linkedhash_list.h: Likewise.
31533         * lib/gl_list.c: Likewise.
31534         * lib/gl_list.h: Likewise.
31535         * lib/gl_oset.c: Likewise.
31536         * lib/gl_oset.h: Likewise.
31537         * lib/gl_rbtree_list.c: Likewise.
31538         * lib/gl_rbtree_list.h: Likewise.
31539         * lib/gl_rbtree_oset.c: Likewise.
31540         * lib/gl_rbtree_oset.h: Likewise.
31541         * lib/gl_rbtreehash_list.c: Likewise.
31542         * lib/gl_rbtreehash_list.h: Likewise.
31543         * lib/gl_sublist.c: Likewise.
31544         * lib/gl_sublist.h: Likewise.
31545         * lib/group-member.c: Likewise.
31546         * lib/group-member.h: Likewise.
31547         * lib/hard-locale.c: Likewise.
31548         * lib/hard-locale.h: Likewise.
31549         * lib/hash-pjw.c: Likewise.
31550         * lib/hash-pjw.h: Likewise.
31551         * lib/hash-triple.c: Likewise.
31552         * lib/hash.c: Likewise.
31553         * lib/hash.h: Likewise.
31554         * lib/human.c: Likewise.
31555         * lib/human.h: Likewise.
31556         * lib/i-ring.c: Likewise.
31557         * lib/i-ring.h: Likewise.
31558         * lib/idcache.c: Likewise.
31559         * lib/imaxabs.c: Likewise.
31560         * lib/imaxdiv.c: Likewise.
31561         * lib/inet_pton.c: Likewise.
31562         * lib/inet_pton.h: Likewise.
31563         * lib/intprops.h: Likewise.
31564         * lib/inttostr.c: Likewise.
31565         * lib/inttostr.h: Likewise.
31566         * lib/inttypes.in.h: Likewise.
31567         * lib/isapipe.c: Likewise.
31568         * lib/isdir.c: Likewise.
31569         * lib/isnan.c: Likewise.
31570         * lib/isnan.h: Likewise.
31571         * lib/isnanf.c: Likewise.
31572         * lib/isnanf.h: Likewise.
31573         * lib/isnanl-nolibm.h: Likewise.
31574         * lib/isnanl.c: Likewise.
31575         * lib/isnanl.h: Likewise.
31576         * lib/javacomp.c: Likewise.
31577         * lib/javacomp.h: Likewise.
31578         * lib/javaexec.c: Likewise.
31579         * lib/javaexec.h: Likewise.
31580         * lib/javaversion.c: Likewise.
31581         * lib/javaversion.h: Likewise.
31582         * lib/javaversion.java: Likewise.
31583         * lib/lbrkprop.h: Likewise.
31584         * lib/lchmod.h: Likewise.
31585         * lib/lchown.c: Likewise.
31586         * lib/ldexpl.c: Likewise.
31587         * lib/linebreak.c: Likewise.
31588         * lib/linebreak.h: Likewise.
31589         * lib/linebuffer.c: Likewise.
31590         * lib/linebuffer.h: Likewise.
31591         * lib/locale.in.h: Likewise.
31592         * lib/logl.c: Likewise.
31593         * lib/long-options.c: Likewise.
31594         * lib/long-options.h: Likewise.
31595         * lib/lstat.c: Likewise.
31596         * lib/lstat.h: Likewise.
31597         * lib/math.in.h: Likewise.
31598         * lib/mbchar.c: Likewise.
31599         * lib/mbchar.h: Likewise.
31600         * lib/mbfile.h: Likewise.
31601         * lib/mbiter.h: Likewise.
31602         * lib/mbscasecmp.c: Likewise.
31603         * lib/mbscasestr.c: Likewise.
31604         * lib/mbschr.c: Likewise.
31605         * lib/mbscspn.c: Likewise.
31606         * lib/mbslen.c: Likewise.
31607         * lib/mbsncasecmp.c: Likewise.
31608         * lib/mbsnlen.c: Likewise.
31609         * lib/mbspbrk.c: Likewise.
31610         * lib/mbspcasecmp.c: Likewise.
31611         * lib/mbsrchr.c: Likewise.
31612         * lib/mbssep.c: Likewise.
31613         * lib/mbsspn.c: Likewise.
31614         * lib/mbsstr.c: Likewise.
31615         * lib/mbstok_r.c: Likewise.
31616         * lib/mbswidth.c: Likewise.
31617         * lib/mbswidth.h: Likewise.
31618         * lib/mbuiter.h: Likewise.
31619         * lib/memcasecmp.c: Likewise.
31620         * lib/memcasecmp.h: Likewise.
31621         * lib/memchr.c: Likewise.
31622         * lib/memcmp.c: Likewise.
31623         * lib/memcoll.c: Likewise.
31624         * lib/memcoll.h: Likewise.
31625         * lib/memcpy.c: Likewise.
31626         * lib/memrchr.c: Likewise.
31627         * lib/mkancesdirs.c: Likewise.
31628         * lib/mkdir-p.c: Likewise.
31629         * lib/mkdir-p.h: Likewise.
31630         * lib/mkdir.c: Likewise.
31631         * lib/mkdirat.c: Likewise.
31632         * lib/mkdtemp.c: Likewise.
31633         * lib/mkstemp-safer.c: Likewise.
31634         * lib/mkstemp.c: Likewise.
31635         * lib/modechange.c: Likewise.
31636         * lib/modechange.h: Likewise.
31637         * lib/mountlist.c: Likewise.
31638         * lib/mountlist.h: Likewise.
31639         * lib/mpsort.c: Likewise.
31640         * lib/nanosleep.c: Likewise.
31641         * lib/obstack.c: Likewise.
31642         * lib/obstack.h: Likewise.
31643         * lib/open-safer.c: Likewise.
31644         * lib/open.c: Likewise.
31645         * lib/openat-die.c: Likewise.
31646         * lib/openat-priv.h: Likewise.
31647         * lib/openat-proc.c: Likewise.
31648         * lib/openat.c: Likewise.
31649         * lib/openat.h: Likewise.
31650         * lib/pagealign_alloc.c: Likewise.
31651         * lib/pagealign_alloc.h: Likewise.
31652         * lib/physmem.c: Likewise.
31653         * lib/physmem.h: Likewise.
31654         * lib/pipe-safer.c: Likewise.
31655         * lib/pipe.c: Likewise.
31656         * lib/pipe.h: Likewise.
31657         * lib/posixtm.c: Likewise.
31658         * lib/posixtm.h: Likewise.
31659         * lib/posixver.c: Likewise.
31660         * lib/printf-frexp.c: Likewise.
31661         * lib/printf-frexp.h: Likewise.
31662         * lib/printf-frexpl.c: Likewise.
31663         * lib/printf-frexpl.h: Likewise.
31664         * lib/printf.c: Likewise.
31665         * lib/progname.c: Likewise.
31666         * lib/progname.h: Likewise.
31667         * lib/progreloc.c: Likewise.
31668         * lib/putenv.c: Likewise.
31669         * lib/quote.c: Likewise.
31670         * lib/quote.h: Likewise.
31671         * lib/quotearg.c: Likewise.
31672         * lib/quotearg.h: Likewise.
31673         * lib/raise.c: Likewise.
31674         * lib/readline.c: Likewise.
31675         * lib/readline.h: Likewise.
31676         * lib/readlink.c: Likewise.
31677         * lib/readtokens.c: Likewise.
31678         * lib/readtokens.h: Likewise.
31679         * lib/readtokens0.c: Likewise.
31680         * lib/readtokens0.h: Likewise.
31681         * lib/readutmp.c: Likewise.
31682         * lib/readutmp.h: Likewise.
31683         * lib/realloc.c: Likewise.
31684         * lib/relocwrapper.c: Likewise.
31685         * lib/rename-dest-slash.c: Likewise.
31686         * lib/rename.c: Likewise.
31687         * lib/rmdir.c: Likewise.
31688         * lib/rpmatch.c: Likewise.
31689         * lib/safe-read.c: Likewise.
31690         * lib/safe-read.h: Likewise.
31691         * lib/safe-write.c: Likewise.
31692         * lib/safe-write.h: Likewise.
31693         * lib/same-inode.h: Likewise.
31694         * lib/same.c: Likewise.
31695         * lib/same.h: Likewise.
31696         * lib/save-cwd.c: Likewise.
31697         * lib/save-cwd.h: Likewise.
31698         * lib/savedir.c: Likewise.
31699         * lib/savedir.h: Likewise.
31700         * lib/savewd.c: Likewise.
31701         * lib/savewd.h: Likewise.
31702         * lib/search.in.h: Likewise.
31703         * lib/setenv.c: Likewise.
31704         * lib/setenv.h: Likewise.
31705         * lib/settime.c: Likewise.
31706         * lib/sh-quote.c: Likewise.
31707         * lib/sh-quote.h: Likewise.
31708         * lib/sig2str.c: Likewise.
31709         * lib/sig2str.h: Likewise.
31710         * lib/signal.in.h: Likewise.
31711         * lib/signbitd.c: Likewise.
31712         * lib/signbitf.c: Likewise.
31713         * lib/signbitl.c: Likewise.
31714         * lib/sigprocmask.c: Likewise.
31715         * lib/sincosl.c: Likewise.
31716         * lib/sleep.c: Likewise.
31717         * lib/sprintf.c: Likewise.
31718         * lib/sqrtl.c: Likewise.
31719         * lib/stat-time.h: Likewise.
31720         * lib/stdio--.h: Likewise.
31721         * lib/stdio-safer.h: Likewise.
31722         * lib/stdlib--.h: Likewise.
31723         * lib/stdlib-safer.h: Likewise.
31724         * lib/stdlib.in.h: Likewise.
31725         * lib/stpcpy.c: Likewise.
31726         * lib/stpncpy.c: Likewise.
31727         * lib/strchrnul.c: Likewise.
31728         * lib/strcspn.c: Likewise.
31729         * lib/strerror.c: Likewise.
31730         * lib/strftime.c: Likewise.
31731         * lib/strftime.h: Likewise.
31732         * lib/striconveh.c: Likewise.
31733         * lib/striconveh.h: Likewise.
31734         * lib/striconveha.c: Likewise.
31735         * lib/striconveha.h: Likewise.
31736         * lib/stripslash.c: Likewise.
31737         * lib/strnlen1.c: Likewise.
31738         * lib/strnlen1.h: Likewise.
31739         * lib/strtod.c: Likewise.
31740         * lib/strtoimax.c: Likewise.
31741         * lib/strtok_r.c: Likewise.
31742         * lib/strtol.c: Likewise.
31743         * lib/strtoll.c: Likewise.
31744         * lib/strtoul.c: Likewise.
31745         * lib/strtoull.c: Likewise.
31746         * lib/sysexits.in.h: Likewise.
31747         * lib/tempname.c: Likewise.
31748         * lib/tempname.h: Likewise.
31749         * lib/timespec.h: Likewise.
31750         * lib/tls.c: Likewise.
31751         * lib/tls.h: Likewise.
31752         * lib/tmpdir.c: Likewise.
31753         * lib/tmpdir.h: Likewise.
31754         * lib/tmpfile-safer.c: Likewise.
31755         * lib/tmpfile.c: Likewise.
31756         * lib/trigl.c: Likewise.
31757         * lib/trigl.h: Likewise.
31758         * lib/trim.c: Likewise.
31759         * lib/trim.h: Likewise.
31760         * lib/trunc.c: Likewise.
31761         * lib/truncf.c: Likewise.
31762         * lib/truncl.c: Likewise.
31763         * lib/tsearch.c: Likewise.
31764         * lib/unicodeio.c: Likewise.
31765         * lib/unicodeio.h: Likewise.
31766         * lib/unistd--.h: Likewise.
31767         * lib/unistd-safer.h: Likewise.
31768         * lib/unistdio/ulc-fprintf.c: Likewise.
31769         * lib/unistdio/ulc-vfprintf.c: Likewise.
31770         * lib/unlinkdir.c: Likewise.
31771         * lib/unlinkdir.h: Likewise.
31772         * lib/unlocked-io.h: Likewise.
31773         * lib/unsetenv.c: Likewise.
31774         * lib/userspec.c: Likewise.
31775         * lib/utime.c: Likewise.
31776         * lib/utimecmp.c: Likewise.
31777         * lib/utimecmp.h: Likewise.
31778         * lib/utimens.c: Likewise.
31779         * lib/verify.h: Likewise.
31780         * lib/verror.c: Likewise.
31781         * lib/verror.h: Likewise.
31782         * lib/version-etc-fsf.c: Likewise.
31783         * lib/version-etc.c: Likewise.
31784         * lib/version-etc.h: Likewise.
31785         * lib/vfprintf.c: Likewise.
31786         * lib/vprintf.c: Likewise.
31787         * lib/vsprintf.c: Likewise.
31788         * lib/w32spawn.h: Likewise.
31789         * lib/wait-process.c: Likewise.
31790         * lib/wait-process.h: Likewise.
31791         * lib/wcwidth.c: Likewise.
31792         * lib/write-any-file.c: Likewise.
31793         * lib/xalloc-die.c: Likewise.
31794         * lib/xalloc.h: Likewise.
31795         * lib/xasprintf.c: Likewise.
31796         * lib/xgetcwd.c: Likewise.
31797         * lib/xgetcwd.h: Likewise.
31798         * lib/xgetdomainname.c: Likewise.
31799         * lib/xgetdomainname.h: Likewise.
31800         * lib/xgethostname.c: Likewise.
31801         * lib/xmalloc.c: Likewise.
31802         * lib/xmalloca.c: Likewise.
31803         * lib/xmalloca.h: Likewise.
31804         * lib/xmemcoll.c: Likewise.
31805         * lib/xnanosleep.c: Likewise.
31806         * lib/xreadlink.c: Likewise.
31807         * lib/xreadlink.h: Likewise.
31808         * lib/xsetenv.c: Likewise.
31809         * lib/xsetenv.h: Likewise.
31810         * lib/xstriconv.c: Likewise.
31811         * lib/xstriconv.h: Likewise.
31812         * lib/xstrndup.c: Likewise.
31813         * lib/xstrndup.h: Likewise.
31814         * lib/xstrtod.c: Likewise.
31815         * lib/xstrtod.h: Likewise.
31816         * lib/xstrtol-error.c: Likewise.
31817         * lib/xstrtol.c: Likewise.
31818         * lib/xstrtol.h: Likewise.
31819         * lib/xtime.h: Likewise.
31820         * lib/xvasprintf.c: Likewise.
31821         * lib/xvasprintf.h: Likewise.
31822         * lib/yesno.c: Likewise.
31823         * lib/yesno.h: Likewise.
31824         * posix-modules: Likewise.
31825         * tests/test-alloca-opt.c: Likewise.
31826         * tests/test-arcfour.c: Likewise.
31827         * tests/test-arctwo.c: Likewise.
31828         * tests/test-argmatch.c: Likewise.
31829         * tests/test-argp-2.sh: Likewise.
31830         * tests/test-argp.c: Likewise.
31831         * tests/test-arpa_inet.c: Likewise.
31832         * tests/test-array_list.c: Likewise.
31833         * tests/test-array_oset.c: Likewise.
31834         * tests/test-atexit.c: Likewise.
31835         * tests/test-avltree_list.c: Likewise.
31836         * tests/test-avltree_oset.c: Likewise.
31837         * tests/test-avltreehash_list.c: Likewise.
31838         * tests/test-base64.c: Likewise.
31839         * tests/test-binary-io.c: Likewise.
31840         * tests/test-byteswap.c: Likewise.
31841         * tests/test-c-ctype.c: Likewise.
31842         * tests/test-c-strcasecmp.c: Likewise.
31843         * tests/test-c-strcasestr.c: Likewise.
31844         * tests/test-c-strncasecmp.c: Likewise.
31845         * tests/test-c-strstr.c: Likewise.
31846         * tests/test-canonicalize-lgpl.c: Likewise.
31847         * tests/test-canonicalize.c: Likewise.
31848         * tests/test-carray_list.c: Likewise.
31849         * tests/test-ceilf.c: Likewise.
31850         * tests/test-ceill.c: Likewise.
31851         * tests/test-count-one-bits.c: Likewise.
31852         * tests/test-crc.c: Likewise.
31853         * tests/test-dirname.c: Likewise.
31854         * tests/test-fbufmode.c: Likewise.
31855         * tests/test-fcntl.c: Likewise.
31856         * tests/test-fflush.c: Likewise.
31857         * tests/test-floorf.c: Likewise.
31858         * tests/test-floorl.c: Likewise.
31859         * tests/test-fopen.c: Likewise.
31860         * tests/test-fprintf-posix.c: Likewise.
31861         * tests/test-fprintf-posix.h: Likewise.
31862         * tests/test-fpurge.c: Likewise.
31863         * tests/test-freadable.c: Likewise.
31864         * tests/test-freadahead.c: Likewise.
31865         * tests/test-freading.c: Likewise.
31866         * tests/test-freopen.c: Likewise.
31867         * tests/test-frexp.c: Likewise.
31868         * tests/test-frexpl.c: Likewise.
31869         * tests/test-fseek.c: Likewise.
31870         * tests/test-fseeko.c: Likewise.
31871         * tests/test-fseterr.c: Likewise.
31872         * tests/test-fstrcmp.c: Likewise.
31873         * tests/test-ftell.c: Likewise.
31874         * tests/test-ftello.c: Likewise.
31875         * tests/test-fwritable.c: Likewise.
31876         * tests/test-fwriting.c: Likewise.
31877         * tests/test-getaddrinfo.c: Likewise.
31878         * tests/test-getpass.c: Likewise.
31879         * tests/test-gettimeofday.c: Likewise.
31880         * tests/test-hmac-md5.c: Likewise.
31881         * tests/test-hmac-sha1.c: Likewise.
31882         * tests/test-iconv.c: Likewise.
31883         * tests/test-iconvme.c: Likewise.
31884         * tests/test-inttypes.c: Likewise.
31885         * tests/test-isnan.c: Likewise.
31886         * tests/test-isnanf.c: Likewise.
31887         * tests/test-isnanl-nolibm.c: Likewise.
31888         * tests/test-isnanl.c: Likewise.
31889         * tests/test-isnanl.h: Likewise.
31890         * tests/test-ldexpl.c: Likewise.
31891         * tests/test-linked_list.c: Likewise.
31892         * tests/test-linkedhash_list.c: Likewise.
31893         * tests/test-locale.c: Likewise.
31894         * tests/test-localename.c: Likewise.
31895         * tests/test-lock.c: Likewise.
31896         * tests/test-lseek.c: Likewise.
31897         * tests/test-malloca.c: Likewise.
31898         * tests/test-math.c: Likewise.
31899         * tests/test-mbscasecmp.c: Likewise.
31900         * tests/test-mbscasestr1.c: Likewise.
31901         * tests/test-mbscasestr2.c: Likewise.
31902         * tests/test-mbscasestr3.c: Likewise.
31903         * tests/test-mbscasestr4.c: Likewise.
31904         * tests/test-mbschr.c: Likewise.
31905         * tests/test-mbscspn.c: Likewise.
31906         * tests/test-mbsncasecmp.c: Likewise.
31907         * tests/test-mbspbrk.c: Likewise.
31908         * tests/test-mbspcasecmp.c: Likewise.
31909         * tests/test-mbsrchr.c: Likewise.
31910         * tests/test-mbsspn.c: Likewise.
31911         * tests/test-mbsstr1.c: Likewise.
31912         * tests/test-mbsstr2.c: Likewise.
31913         * tests/test-mbsstr3.c: Likewise.
31914         * tests/test-md5.c: Likewise.
31915         * tests/test-memmem.c: Likewise.
31916         * tests/test-netinet_in.c: Likewise.
31917         * tests/test-open.c: Likewise.
31918         * tests/test-printf-frexp.c: Likewise.
31919         * tests/test-printf-frexpl.c: Likewise.
31920         * tests/test-printf-posix.c: Likewise.
31921         * tests/test-printf-posix.h: Likewise.
31922         * tests/test-rbtree_list.c: Likewise.
31923         * tests/test-rbtree_oset.c: Likewise.
31924         * tests/test-rbtreehash_list.c: Likewise.
31925         * tests/test-read-file.c: Likewise.
31926         * tests/test-rijndael.c: Likewise.
31927         * tests/test-search.c: Likewise.
31928         * tests/test-signbit.c: Likewise.
31929         * tests/test-sleep.c: Likewise.
31930         * tests/test-snprintf-posix.c: Likewise.
31931         * tests/test-snprintf-posix.h: Likewise.
31932         * tests/test-snprintf.c: Likewise.
31933         * tests/test-sprintf-posix.c: Likewise.
31934         * tests/test-sprintf-posix.h: Likewise.
31935         * tests/test-stat-time.c: Likewise.
31936         * tests/test-stdbool.c: Likewise.
31937         * tests/test-stdint.c: Likewise.
31938         * tests/test-stdio.c: Likewise.
31939         * tests/test-stdlib.c: Likewise.
31940         * tests/test-stpncpy.c: Likewise.
31941         * tests/test-strcasestr.c: Likewise.
31942         * tests/test-striconv.c: Likewise.
31943         * tests/test-striconveh.c: Likewise.
31944         * tests/test-striconveha.c: Likewise.
31945         * tests/test-string.c: Likewise.
31946         * tests/test-sys_select.c: Likewise.
31947         * tests/test-sys_socket.c: Likewise.
31948         * tests/test-sys_stat.c: Likewise.
31949         * tests/test-sys_time.c: Likewise.
31950         * tests/test-sysexits.c: Likewise.
31951         * tests/test-time.c: Likewise.
31952         * tests/test-tls.c: Likewise.
31953         * tests/test-trunc.c: Likewise.
31954         * tests/test-truncf.c: Likewise.
31955         * tests/test-truncl.c: Likewise.
31956         * tests/test-unistd.c: Likewise.
31957         * tests/test-vasnprintf-posix.c: Likewise.
31958         * tests/test-vasnprintf-posix2.c: Likewise.
31959         * tests/test-vasnprintf.c: Likewise.
31960         * tests/test-vasprintf-posix.c: Likewise.
31961         * tests/test-vasprintf.c: Likewise.
31962         * tests/test-verify.c: Likewise.
31963         * tests/test-vfprintf-posix.c: Likewise.
31964         * tests/test-vprintf-posix.c: Likewise.
31965         * tests/test-vsnprintf-posix.c: Likewise.
31966         * tests/test-vsnprintf.c: Likewise.
31967         * tests/test-vsprintf-posix.c: Likewise.
31968         * tests/test-wchar.c: Likewise.
31969         * tests/test-wctype.c: Likewise.
31970         * tests/test-wcwidth.c: Likewise.
31971         * tests/test-xstrtol.c: Likewise.
31972         * tests/test-xvasprintf.c: Likewise.
31973         * tests/uniconv/test-u16-conv-from-enc.c: Likewise.
31974         * tests/uniconv/test-u16-conv-to-enc.c: Likewise.
31975         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
31976         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
31977         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
31978         * tests/uniconv/test-u32-conv-to-enc.c: Likewise.
31979         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
31980         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
31981         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
31982         * tests/uniconv/test-u8-conv-to-enc.c: Likewise.
31983         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
31984         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
31985         * tests/uniname/test-uninames.c: Likewise.
31986         * tests/unistdio/test-u16-asnprintf1.c: Likewise.
31987         * tests/unistdio/test-u16-asnprintf1.h: Likewise.
31988         * tests/unistdio/test-u16-printf1.h: Likewise.
31989         * tests/unistdio/test-u16-vasnprintf1.c: Likewise.
31990         * tests/unistdio/test-u16-vasnprintf2.c: Likewise.
31991         * tests/unistdio/test-u16-vasnprintf3.c: Likewise.
31992         * tests/unistdio/test-u16-vasprintf1.c: Likewise.
31993         * tests/unistdio/test-u16-vsnprintf1.c: Likewise.
31994         * tests/unistdio/test-u16-vsprintf1.c: Likewise.
31995         * tests/unistdio/test-u32-asnprintf1.c: Likewise.
31996         * tests/unistdio/test-u32-asnprintf1.h: Likewise.
31997         * tests/unistdio/test-u32-printf1.h: Likewise.
31998         * tests/unistdio/test-u32-vasnprintf1.c: Likewise.
31999         * tests/unistdio/test-u32-vasnprintf2.c: Likewise.
32000         * tests/unistdio/test-u32-vasnprintf3.c: Likewise.
32001         * tests/unistdio/test-u32-vasprintf1.c: Likewise.
32002         * tests/unistdio/test-u32-vsnprintf1.c: Likewise.
32003         * tests/unistdio/test-u32-vsprintf1.c: Likewise.
32004         * tests/unistdio/test-u8-asnprintf1.c: Likewise.
32005         * tests/unistdio/test-u8-asnprintf1.h: Likewise.
32006         * tests/unistdio/test-u8-printf1.h: Likewise.
32007         * tests/unistdio/test-u8-vasnprintf1.c: Likewise.
32008         * tests/unistdio/test-u8-vasnprintf2.c: Likewise.
32009         * tests/unistdio/test-u8-vasnprintf3.c: Likewise.
32010         * tests/unistdio/test-u8-vasprintf1.c: Likewise.
32011         * tests/unistdio/test-u8-vsnprintf1.c: Likewise.
32012         * tests/unistdio/test-u8-vsprintf1.c: Likewise.
32013         * tests/unistdio/test-ulc-asnprintf1.c: Likewise.
32014         * tests/unistdio/test-ulc-asnprintf1.h: Likewise.
32015         * tests/unistdio/test-ulc-printf1.h: Likewise.
32016         * tests/unistdio/test-ulc-vasnprintf1.c: Likewise.
32017         * tests/unistdio/test-ulc-vasnprintf2.c: Likewise.
32018         * tests/unistdio/test-ulc-vasnprintf3.c: Likewise.
32019         * tests/unistdio/test-ulc-vasprintf1.c: Likewise.
32020         * tests/unistdio/test-ulc-vsnprintf1.c: Likewise.
32021         * tests/unistdio/test-ulc-vsprintf1.c: Likewise.
32022         * tests/uniwidth/test-u16-strwidth.c: Likewise.
32023         * tests/uniwidth/test-u16-width.c: Likewise.
32024         * tests/uniwidth/test-u32-strwidth.c: Likewise.
32025         * tests/uniwidth/test-u32-width.c: Likewise.
32026         * tests/uniwidth/test-u8-strwidth.c: Likewise.
32027         * tests/uniwidth/test-u8-width.c: Likewise.
32028         * tests/uniwidth/test-uc_width.c: Likewise.
32029         * config/srclist-update: Likewise.
32030         (fixlicense): Update to GPLv3+.
32031
32032         Change copyright notice from LGPLv2.1+ to LGPLv3+.
32033         * tests/test-tsearch.c: Change copyright notice.
32034
32035         Change copyright notice from LGPLv2.0+ to LGPLv3+.
32036         * lib/c-strcaseeq.h: Change copyright notice.
32037         * lib/streq.h: Likewise.
32038         * lib/uniconv.h: Likewise.
32039         * lib/uniconv/u-conv-from-enc.h: Likewise.
32040         * lib/uniconv/u-conv-to-enc.h: Likewise.
32041         * lib/uniconv/u-strconv-from-enc.h: Likewise.
32042         * lib/uniconv/u-strconv-to-enc.h: Likewise.
32043         * lib/uniconv/u16-conv-from-enc.c: Likewise.
32044         * lib/uniconv/u16-conv-to-enc.c: Likewise.
32045         * lib/uniconv/u16-strconv-from-enc.c: Likewise.
32046         * lib/uniconv/u16-strconv-from-locale.c: Likewise.
32047         * lib/uniconv/u16-strconv-to-enc.c: Likewise.
32048         * lib/uniconv/u16-strconv-to-locale.c: Likewise.
32049         * lib/uniconv/u32-conv-from-enc.c: Likewise.
32050         * lib/uniconv/u32-conv-to-enc.c: Likewise.
32051         * lib/uniconv/u32-strconv-from-enc.c: Likewise.
32052         * lib/uniconv/u32-strconv-from-locale.c: Likewise.
32053         * lib/uniconv/u32-strconv-to-enc.c: Likewise.
32054         * lib/uniconv/u32-strconv-to-locale.c: Likewise.
32055         * lib/uniconv/u8-conv-from-enc.c: Likewise.
32056         * lib/uniconv/u8-conv-to-enc.c: Likewise.
32057         * lib/uniconv/u8-strconv-from-enc.c: Likewise.
32058         * lib/uniconv/u8-strconv-from-locale.c: Likewise.
32059         * lib/uniconv/u8-strconv-to-enc.c: Likewise.
32060         * lib/uniconv/u8-strconv-to-locale.c: Likewise.
32061         * lib/uniname.h: Likewise.
32062         * lib/uniname/uniname.c: Likewise.
32063         * lib/unistdio.h: Likewise.
32064         * lib/unistdio/u-asnprintf.h: Likewise.
32065         * lib/unistdio/u-asprintf.h: Likewise.
32066         * lib/unistdio/u-printf-args.c: Likewise.
32067         * lib/unistdio/u-printf-args.h: Likewise.
32068         * lib/unistdio/u-printf-parse.h: Likewise.
32069         * lib/unistdio/u-snprintf.h: Likewise.
32070         * lib/unistdio/u-sprintf.h: Likewise.
32071         * lib/unistdio/u-vasprintf.h: Likewise.
32072         * lib/unistdio/u-vsnprintf.h: Likewise.
32073         * lib/unistdio/u-vsprintf.h: Likewise.
32074         * lib/unistdio/u16-asnprintf.c: Likewise.
32075         * lib/unistdio/u16-asprintf.c: Likewise.
32076         * lib/unistdio/u16-printf-parse.c: Likewise.
32077         * lib/unistdio/u16-snprintf.c: Likewise.
32078         * lib/unistdio/u16-sprintf.c: Likewise.
32079         * lib/unistdio/u16-u16-asnprintf.c: Likewise.
32080         * lib/unistdio/u16-u16-asprintf.c: Likewise.
32081         * lib/unistdio/u16-u16-snprintf.c: Likewise.
32082         * lib/unistdio/u16-u16-sprintf.c: Likewise.
32083         * lib/unistdio/u16-u16-vasnprintf.c: Likewise.
32084         * lib/unistdio/u16-u16-vasprintf.c: Likewise.
32085         * lib/unistdio/u16-u16-vsnprintf.c: Likewise.
32086         * lib/unistdio/u16-u16-vsprintf.c: Likewise.
32087         * lib/unistdio/u16-vasnprintf.c: Likewise.
32088         * lib/unistdio/u16-vasprintf.c: Likewise.
32089         * lib/unistdio/u16-vsnprintf.c: Likewise.
32090         * lib/unistdio/u16-vsprintf.c: Likewise.
32091         * lib/unistdio/u32-asnprintf.c: Likewise.
32092         * lib/unistdio/u32-asprintf.c: Likewise.
32093         * lib/unistdio/u32-printf-parse.c: Likewise.
32094         * lib/unistdio/u32-snprintf.c: Likewise.
32095         * lib/unistdio/u32-sprintf.c: Likewise.
32096         * lib/unistdio/u32-u32-asnprintf.c: Likewise.
32097         * lib/unistdio/u32-u32-asprintf.c: Likewise.
32098         * lib/unistdio/u32-u32-snprintf.c: Likewise.
32099         * lib/unistdio/u32-u32-sprintf.c: Likewise.
32100         * lib/unistdio/u32-u32-vasnprintf.c: Likewise.
32101         * lib/unistdio/u32-u32-vasprintf.c: Likewise.
32102         * lib/unistdio/u32-u32-vsnprintf.c: Likewise.
32103         * lib/unistdio/u32-u32-vsprintf.c: Likewise.
32104         * lib/unistdio/u32-vasnprintf.c: Likewise.
32105         * lib/unistdio/u32-vasprintf.c: Likewise.
32106         * lib/unistdio/u32-vsnprintf.c: Likewise.
32107         * lib/unistdio/u32-vsprintf.c: Likewise.
32108         * lib/unistdio/u8-asnprintf.c: Likewise.
32109         * lib/unistdio/u8-asprintf.c: Likewise.
32110         * lib/unistdio/u8-printf-parse.c: Likewise.
32111         * lib/unistdio/u8-snprintf.c: Likewise.
32112         * lib/unistdio/u8-sprintf.c: Likewise.
32113         * lib/unistdio/u8-u8-asnprintf.c: Likewise.
32114         * lib/unistdio/u8-u8-asprintf.c: Likewise.
32115         * lib/unistdio/u8-u8-snprintf.c: Likewise.
32116         * lib/unistdio/u8-u8-sprintf.c: Likewise.
32117         * lib/unistdio/u8-u8-vasnprintf.c: Likewise.
32118         * lib/unistdio/u8-u8-vasprintf.c: Likewise.
32119         * lib/unistdio/u8-u8-vsnprintf.c: Likewise.
32120         * lib/unistdio/u8-u8-vsprintf.c: Likewise.
32121         * lib/unistdio/u8-vasnprintf.c: Likewise.
32122         * lib/unistdio/u8-vasprintf.c: Likewise.
32123         * lib/unistdio/u8-vsnprintf.c: Likewise.
32124         * lib/unistdio/u8-vsprintf.c: Likewise.
32125         * lib/unistdio/ulc-asnprintf.c: Likewise.
32126         * lib/unistdio/ulc-asprintf.c: Likewise.
32127         * lib/unistdio/ulc-printf-parse.c: Likewise.
32128         * lib/unistdio/ulc-snprintf.c: Likewise.
32129         * lib/unistdio/ulc-sprintf.c: Likewise.
32130         * lib/unistdio/ulc-vasnprintf.c: Likewise.
32131         * lib/unistdio/ulc-vasprintf.c: Likewise.
32132         * lib/unistdio/ulc-vsnprintf.c: Likewise.
32133         * lib/unistdio/ulc-vsprintf.c: Likewise.
32134         * lib/unistr.h: Likewise.
32135         * lib/unistr/u-cpy-alloc.h: Likewise.
32136         * lib/unistr/u-cpy.h: Likewise.
32137         * lib/unistr/u-endswith.h: Likewise.
32138         * lib/unistr/u-move.h: Likewise.
32139         * lib/unistr/u-set.h: Likewise.
32140         * lib/unistr/u-startswith.h: Likewise.
32141         * lib/unistr/u-stpcpy.h: Likewise.
32142         * lib/unistr/u-stpncpy.h: Likewise.
32143         * lib/unistr/u-strcat.h: Likewise.
32144         * lib/unistr/u-strcpy.h: Likewise.
32145         * lib/unistr/u-strcspn.h: Likewise.
32146         * lib/unistr/u-strdup.h: Likewise.
32147         * lib/unistr/u-strlen.h: Likewise.
32148         * lib/unistr/u-strncat.h: Likewise.
32149         * lib/unistr/u-strncpy.h: Likewise.
32150         * lib/unistr/u-strnlen.h: Likewise.
32151         * lib/unistr/u-strpbrk.h: Likewise.
32152         * lib/unistr/u-strspn.h: Likewise.
32153         * lib/unistr/u-strstr.h: Likewise.
32154         * lib/unistr/u-strtok.h: Likewise.
32155         * lib/unistr/u16-check.c: Likewise.
32156         * lib/unistr/u16-chr.c: Likewise.
32157         * lib/unistr/u16-cmp.c: Likewise.
32158         * lib/unistr/u16-cpy-alloc.c: Likewise.
32159         * lib/unistr/u16-cpy.c: Likewise.
32160         * lib/unistr/u16-endswith.c: Likewise.
32161         * lib/unistr/u16-mblen.c: Likewise.
32162         * lib/unistr/u16-mbsnlen.c: Likewise.
32163         * lib/unistr/u16-mbtouc-aux.c: Likewise.
32164         * lib/unistr/u16-mbtouc-unsafe-aux.c: Likewise.
32165         * lib/unistr/u16-mbtouc-unsafe.c: Likewise.
32166         * lib/unistr/u16-mbtouc.c: Likewise.
32167         * lib/unistr/u16-mbtoucr.c: Likewise.
32168         * lib/unistr/u16-move.c: Likewise.
32169         * lib/unistr/u16-next.c: Likewise.
32170         * lib/unistr/u16-prev.c: Likewise.
32171         * lib/unistr/u16-set.c: Likewise.
32172         * lib/unistr/u16-startswith.c: Likewise.
32173         * lib/unistr/u16-stpcpy.c: Likewise.
32174         * lib/unistr/u16-stpncpy.c: Likewise.
32175         * lib/unistr/u16-strcat.c: Likewise.
32176         * lib/unistr/u16-strchr.c: Likewise.
32177         * lib/unistr/u16-strcmp.c: Likewise.
32178         * lib/unistr/u16-strcpy.c: Likewise.
32179         * lib/unistr/u16-strcspn.c: Likewise.
32180         * lib/unistr/u16-strdup.c: Likewise.
32181         * lib/unistr/u16-strlen.c: Likewise.
32182         * lib/unistr/u16-strmblen.c: Likewise.
32183         * lib/unistr/u16-strmbtouc.c: Likewise.
32184         * lib/unistr/u16-strncat.c: Likewise.
32185         * lib/unistr/u16-strncmp.c: Likewise.
32186         * lib/unistr/u16-strncpy.c: Likewise.
32187         * lib/unistr/u16-strnlen.c: Likewise.
32188         * lib/unistr/u16-strpbrk.c: Likewise.
32189         * lib/unistr/u16-strrchr.c: Likewise.
32190         * lib/unistr/u16-strspn.c: Likewise.
32191         * lib/unistr/u16-strstr.c: Likewise.
32192         * lib/unistr/u16-strtok.c: Likewise.
32193         * lib/unistr/u16-to-u32.c: Likewise.
32194         * lib/unistr/u16-to-u8.c: Likewise.
32195         * lib/unistr/u16-uctomb-aux.c: Likewise.
32196         * lib/unistr/u16-uctomb.c: Likewise.
32197         * lib/unistr/u32-check.c: Likewise.
32198         * lib/unistr/u32-chr.c: Likewise.
32199         * lib/unistr/u32-cmp.c: Likewise.
32200         * lib/unistr/u32-cpy-alloc.c: Likewise.
32201         * lib/unistr/u32-cpy.c: Likewise.
32202         * lib/unistr/u32-endswith.c: Likewise.
32203         * lib/unistr/u32-mblen.c: Likewise.
32204         * lib/unistr/u32-mbsnlen.c: Likewise.
32205         * lib/unistr/u32-mbtouc-unsafe.c: Likewise.
32206         * lib/unistr/u32-mbtouc.c: Likewise.
32207         * lib/unistr/u32-mbtoucr.c: Likewise.
32208         * lib/unistr/u32-move.c: Likewise.
32209         * lib/unistr/u32-next.c: Likewise.
32210         * lib/unistr/u32-prev.c: Likewise.
32211         * lib/unistr/u32-set.c: Likewise.
32212         * lib/unistr/u32-startswith.c: Likewise.
32213         * lib/unistr/u32-stpcpy.c: Likewise.
32214         * lib/unistr/u32-stpncpy.c: Likewise.
32215         * lib/unistr/u32-strcat.c: Likewise.
32216         * lib/unistr/u32-strchr.c: Likewise.
32217         * lib/unistr/u32-strcmp.c: Likewise.
32218         * lib/unistr/u32-strcpy.c: Likewise.
32219         * lib/unistr/u32-strcspn.c: Likewise.
32220         * lib/unistr/u32-strdup.c: Likewise.
32221         * lib/unistr/u32-strlen.c: Likewise.
32222         * lib/unistr/u32-strmblen.c: Likewise.
32223         * lib/unistr/u32-strmbtouc.c: Likewise.
32224         * lib/unistr/u32-strncat.c: Likewise.
32225         * lib/unistr/u32-strncmp.c: Likewise.
32226         * lib/unistr/u32-strncpy.c: Likewise.
32227         * lib/unistr/u32-strnlen.c: Likewise.
32228         * lib/unistr/u32-strpbrk.c: Likewise.
32229         * lib/unistr/u32-strrchr.c: Likewise.
32230         * lib/unistr/u32-strspn.c: Likewise.
32231         * lib/unistr/u32-strstr.c: Likewise.
32232         * lib/unistr/u32-strtok.c: Likewise.
32233         * lib/unistr/u32-to-u16.c: Likewise.
32234         * lib/unistr/u32-to-u8.c: Likewise.
32235         * lib/unistr/u32-uctomb.c: Likewise.
32236         * lib/unistr/u8-check.c: Likewise.
32237         * lib/unistr/u8-chr.c: Likewise.
32238         * lib/unistr/u8-cmp.c: Likewise.
32239         * lib/unistr/u8-cpy-alloc.c: Likewise.
32240         * lib/unistr/u8-cpy.c: Likewise.
32241         * lib/unistr/u8-endswith.c: Likewise.
32242         * lib/unistr/u8-mblen.c: Likewise.
32243         * lib/unistr/u8-mbsnlen.c: Likewise.
32244         * lib/unistr/u8-mbtouc-aux.c: Likewise.
32245         * lib/unistr/u8-mbtouc-unsafe-aux.c: Likewise.
32246         * lib/unistr/u8-mbtouc-unsafe.c: Likewise.
32247         * lib/unistr/u8-mbtouc.c: Likewise.
32248         * lib/unistr/u8-mbtoucr.c: Likewise.
32249         * lib/unistr/u8-move.c: Likewise.
32250         * lib/unistr/u8-next.c: Likewise.
32251         * lib/unistr/u8-prev.c: Likewise.
32252         * lib/unistr/u8-set.c: Likewise.
32253         * lib/unistr/u8-startswith.c: Likewise.
32254         * lib/unistr/u8-stpcpy.c: Likewise.
32255         * lib/unistr/u8-stpncpy.c: Likewise.
32256         * lib/unistr/u8-strcat.c: Likewise.
32257         * lib/unistr/u8-strchr.c: Likewise.
32258         * lib/unistr/u8-strcmp.c: Likewise.
32259         * lib/unistr/u8-strcpy.c: Likewise.
32260         * lib/unistr/u8-strcspn.c: Likewise.
32261         * lib/unistr/u8-strdup.c: Likewise.
32262         * lib/unistr/u8-strlen.c: Likewise.
32263         * lib/unistr/u8-strmblen.c: Likewise.
32264         * lib/unistr/u8-strmbtouc.c: Likewise.
32265         * lib/unistr/u8-strncat.c: Likewise.
32266         * lib/unistr/u8-strncmp.c: Likewise.
32267         * lib/unistr/u8-strncpy.c: Likewise.
32268         * lib/unistr/u8-strnlen.c: Likewise.
32269         * lib/unistr/u8-strpbrk.c: Likewise.
32270         * lib/unistr/u8-strrchr.c: Likewise.
32271         * lib/unistr/u8-strspn.c: Likewise.
32272         * lib/unistr/u8-strstr.c: Likewise.
32273         * lib/unistr/u8-strtok.c: Likewise.
32274         * lib/unistr/u8-to-u16.c: Likewise.
32275         * lib/unistr/u8-to-u32.c: Likewise.
32276         * lib/unistr/u8-uctomb-aux.c: Likewise.
32277         * lib/unistr/u8-uctomb.c: Likewise.
32278         * lib/unitypes.h: Likewise.
32279         * lib/uniwidth.h: Likewise.
32280         * lib/uniwidth/cjk.h: Likewise.
32281         * lib/uniwidth/u16-strwidth.c: Likewise.
32282         * lib/uniwidth/u16-width.c: Likewise.
32283         * lib/uniwidth/u32-strwidth.c: Likewise.
32284         * lib/uniwidth/u32-width.c: Likewise.
32285         * lib/uniwidth/u8-strwidth.c: Likewise.
32286         * lib/uniwidth/u8-width.c: Likewise.
32287         * lib/uniwidth/width.c: Likewise.
32288
32289 2007-10-07  Bruno Haible  <bruno@clisp.org>
32290
32291         * lib/inttypes.in.h: Change copyright notice from LGPL to GPL.
32292         The file is still under LGPL (see modules/inttypes).
32293
32294 2007-10-06  Bruno Haible  <bruno@clisp.org>
32295
32296         * modules/trunc (Dependencies): Add 'extensions'.
32297         * m4/trunc.m4 (gl_FUNC_TRUNC): Require gl_USE_SYSTEM_EXTENSIONS.
32298         Reported by Ben Pfaff <blp@gnu.org>.
32299
32300 2007-10-06  Bruno Haible  <bruno@clisp.org>
32301
32302         * modules/freopen-tests: New file.
32303         * tests/test-freopen.c: New file.
32304
32305         * modules/fopen-tests: New file.
32306         * tests/test-fopen.c: New file.
32307
32308         * modules/fopen: New file.
32309         * lib/fopen.c: New file.
32310         * m4/fopen.m4: New file.
32311         * modules/freopen: New file.
32312         * lib/freopen.c: New file.
32313         * m4/freopen.m4: New file.
32314         * lib/stdio.in.h (fopen, freopen): New declarations.
32315         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize also GNULIB_FOPEN,
32316         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
32317         * modules/stdio (Makefile.am): Substitute also GNULIB_FOPEN,
32318         GNULIB_FREOPEN, REPLACE_FOPEN, REPLACE_FREOPEN.
32319         * doc/functions/fopen.texi: Mention the 'fopen' module.
32320         * doc/functions/freopen.texi: Mention the 'freopen' module.
32321
32322 2007-10-06  Bruno Haible  <bruno@clisp.org>
32323
32324         * modules/open-tests: New file.
32325         * tests/test-open.c: New file.
32326
32327         * modules/open: New file.
32328         * lib/open.c: New file.
32329         * m4/open.m4: New file.
32330         * lib/fchdir.c (open): If the gnulib module 'open' is used, do what
32331         lib/open.c does.
32332         * lib/fcntl.in.h (open): Declare also if replaced by the 'open' module.
32333         * m4/fcntl_h.m4 (gl_FCNTL_MODULE_INDICATOR, gl_FCNTL_H_DEFAULTS): New
32334         macros.
32335         (gl_FCNTL_H): Require gl_FCNTL_H_DEFAULTS.
32336         * modules/fcntl (Makefile.am): Also substitute GNULIB_OPEN and
32337         REPLACE_OPEN.
32338         * doc/functions/open.texi: Mention the 'open' module.
32339
32340 2007-10-04  Bruno Haible  <bruno@clisp.org>
32341
32342         * modules/ceill-tests: New file.
32343         * tests/test-ceill.c: New file.
32344
32345         * modules/ceill: New file.
32346         * lib/ceill.c: Replace entire file.
32347         * m4/ceill.m4: New file.
32348         * lib/math.in.h (ceill): Replace declaration.
32349         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILL.
32350         * modules/math (Makefile.am): Substitute also GNULIB_CEILL.
32351         * doc/functions/ceill.texi: Mention the 'ceill' module.
32352         * modules/mathl (Files): Remove lib/ceill.c.
32353         (Depends-on): Add ceill.
32354
32355 2007-10-04  Bruno Haible  <bruno@clisp.org>
32356
32357         * modules/ceilf-tests: New file.
32358         * tests/test-ceilf.c: New file.
32359
32360         * modules/ceilf: New file.
32361         * lib/ceil.c: New file.
32362         * lib/ceilf.c: New file.
32363         * m4/ceilf.m4: New file.
32364         * lib/math.in.h (ceilf): New declaration.
32365         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_CEILF and
32366         HAVE_DECL_CEILF.
32367         * modules/math (Makefile.am): Substitute also GNULIB_CEILF and
32368         HAVE_DECL_CEILF.
32369         * doc/functions/ceilf.texi: Mention the 'ceilf' module.
32370
32371 2007-10-04  Bruno Haible  <bruno@clisp.org>
32372
32373         * modules/floorl-tests: New file.
32374         * tests/test-floorl.c: New file.
32375
32376         * modules/floorl: New file.
32377         * lib/floorl.c: Replace entire file.
32378         * m4/floorl.m4: New file.
32379         * lib/math.in.h (floorl): Replace declaration.
32380         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORL.
32381         * modules/math (Makefile.am): Substitute also GNULIB_FLOORL.
32382         * doc/functions/floorl.texi: Mention the 'floorl' module.
32383         * modules/mathl (Files): Remove lib/floorl.c.
32384         (Depends-on): Add floorl.
32385
32386 2007-10-04  Bruno Haible  <bruno@clisp.org>
32387
32388         * modules/floorf-tests: New file.
32389         * tests/test-floorf.c: New file.
32390
32391         * modules/floorf: New file.
32392         * lib/floor.c: New file.
32393         * lib/floorf.c: New file.
32394         * m4/floorf.m4: New file.
32395         * lib/math.in.h (floorf): New declaration.
32396         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FLOORF and
32397         HAVE_DECL_FLOORF.
32398         * modules/math (Makefile.am): Substitute also GNULIB_FLOORF and
32399         HAVE_DECL_FLOORF.
32400         * doc/functions/floorf.texi: Mention the 'floorf' module.
32401
32402 2007-10-04  Benoit Sigoure  <tsuna@lrde.epita.fr>
32403             Bruno Haible  <bruno@clisp.org>
32404
32405         Advertise for the Git server instead of the CVS server.
32406         * doc/gnulib-intro.texi (Steady Development): Mention the Git
32407         repository instead of the CVS one.
32408         * doc/gnulib-tool.texi (VCS Issues): Renamed from "CVS Issues". Talk
32409         about all VCS systems generically.
32410         * doc/gnulib.texi (Introduction): Capitalize `Git'.
32411
32412 2007-10-04  Bruno Haible  <bruno@clisp.org>
32413
32414         * doc/gnulib.texi (Function Substitutes): Explain what an absent module
32415         means.
32416         Reported by Benoît Sigoure <tsuna@lrde.epita.fr>.
32417
32418 2007-10-04  Bruno Haible  <bruno@clisp.org>
32419
32420         * modules/truncl-tests: New file.
32421         * tests/test-truncl.c: New file.
32422
32423         * modules/truncl: New file.
32424         * lib/truncl.c: New file.
32425         * m4/truncl.m4: New file.
32426         * lib/math.in.h (truncl): New declaration.
32427         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCL and
32428         HAVE_DECL_TRUNCL.
32429         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCL and
32430         HAVE_DECL_TRUNCL.
32431         * doc/functions/truncl.texi: Mention the 'truncl' module.
32432
32433 2007-10-04  Bruno Haible  <bruno@clisp.org>
32434
32435         * modules/truncf-tests: New file.
32436         * tests/test-truncf.c: New file.
32437
32438         * modules/truncf: New file.
32439         * lib/trunc.c: Make paramerizable through USE_* macros.
32440         * lib/truncf.c: New file.
32441         * m4/truncf.m4: New file.
32442         * lib/math.in.h (truncf): New declaration.
32443         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNCF and
32444         HAVE_DECL_TRUNCF.
32445         * modules/math (Makefile.am): Substitute also GNULIB_TRUNCF and
32446         HAVE_DECL_TRUNCF.
32447         * doc/functions/truncf.texi: Mention the 'truncf' module.
32448
32449 2007-10-03  Bruno Haible  <bruno@clisp.org>
32450
32451         * gnulib-tool (func_get_automake_snippet): Synthesize an EXTRA_DIST
32452         augmentation also for tests modules.
32453         * modules/argp-tests (Makefile.am): Remove EXTRA_DIST augmentation.
32454         * modules/atexit-tests (Makefile.am): Likewise.
32455         * modules/binary-io-tests (Makefile.am): Likewise.
32456         * modules/c-strcase-tests (Makefile.am): Likewise.
32457         * modules/canonicalize-lgpl-tests (Makefile.am): Likewise.
32458         * modules/canonicalize-tests (Makefile.am): Likewise.
32459         * modules/closein-tests (Makefile.am): Likewise.
32460         * modules/fprintf-posix-tests (Makefile.am): Likewise.
32461         * modules/freadahead-tests (Makefile.am): Likewise.
32462         * modules/fseek-tests (Makefile.am): Likewise.
32463         * modules/fseeko-tests (Makefile.am): Likewise.
32464         * modules/ftell-tests (Makefile.am): Likewise.
32465         * modules/ftello-tests (Makefile.am): Likewise.
32466         * modules/isnanl-nolibm-tests (Makefile.am): Likewise.
32467         * modules/isnanl-tests (Makefile.am): Likewise.
32468         * modules/lseek-tests (Makefile.am): Likewise.
32469         * modules/mbscasecmp-tests (Makefile.am): Likewise.
32470         * modules/mbscasestr-tests (Makefile.am): Likewise.
32471         * modules/mbschr-tests (Makefile.am): Likewise.
32472         * modules/mbscspn-tests (Makefile.am): Likewise.
32473         * modules/mbsncasecmp-tests (Makefile.am): Likewise.
32474         * modules/mbspbrk-tests (Makefile.am): Likewise.
32475         * modules/mbspcasecmp-tests (Makefile.am): Likewise.
32476         * modules/mbsrchr-tests (Makefile.am): Likewise.
32477         * modules/mbsspn-tests (Makefile.am): Likewise.
32478         * modules/mbsstr-tests (Makefile.am): Likewise.
32479         * modules/printf-posix-tests (Makefile.am): Likewise.
32480         * modules/snprintf-posix-tests (Makefile.am): Likewise.
32481         * modules/sprintf-posix-tests (Makefile.am): Likewise.
32482         * modules/tsearch-tests (Makefile.am): Likewise.
32483         * modules/uniname/uniname-tests (Makefile.am): Likewise.
32484         * modules/unistdio/u16-vasnprintf-tests (Makefile.am): Likewise.
32485         * modules/unistdio/u32-vasnprintf-tests (Makefile.am): Likewise.
32486         * modules/unistdio/u8-vasnprintf-tests (Makefile.am): Likewise.
32487         * modules/unistdio/ulc-vasnprintf-tests (Makefile.am): Likewise.
32488         * modules/vasnprintf-posix-tests (Makefile.am): Likewise.
32489         * modules/vfprintf-posix-tests (Makefile.am): Likewise.
32490         * modules/vprintf-posix-tests (Makefile.am): Likewise.
32491         * modules/vsnprintf-posix-tests (Makefile.am): Likewise.
32492         * modules/vsprintf-posix-tests (Makefile.am): Likewise.
32493         * modules/xstrtoimax-tests (Makefile.am): Likewise.
32494         * modules/xstrtol-tests (Makefile.am): Likewise.
32495         * modules/xstrtoumax-tests (Makefile.am): Likewise.
32496         * modules/yesno-tests (Makefile.am): Likewise.
32497
32498 2007-10-03  Bruno Haible  <bruno@clisp.org>
32499
32500         * modules/trunc-tests: New file.
32501         * tests/test-trunc.c: New file.
32502
32503         * modules/trunc: New file.
32504         * lib/trunc.c: New file.
32505         * m4/trunc.m4: New file.
32506         * lib/math.in.h (trunc): New declaration.
32507         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_TRUNC and
32508         HAVE_DECL_TRUNC.
32509         * modules/math (Makefile.am): Substitute also GNULIB_TRUNC and
32510         HAVE_DECL_TRUNC.
32511         * doc/functions/trunc.texi: Mention the 'trunc' module.
32512
32513 2007-10-03  Bruno Haible  <bruno@clisp.org>
32514
32515         * tests/test-fpending.c: New file, mostly copied
32516         from coreutils/lib/t-fpending.c.
32517         * modules/fpending-tests: New file.
32518
32519 2007-10-03  Bruno Haible  <bruno@clisp.org>
32520
32521         Port the stdio extensions to QNX (untested).
32522         * lib/fseterr.c (fseterr): Add support for QNX.
32523         * lib/fbufmode.c (fbufmode): Likewise.
32524         * lib/freadable.c (freadable): Likewise.
32525         * lib/fwritable.c (fwritable): Likewise.
32526         * lib/freading.c (freading): Likewise.
32527         * lib/fwriting.c (fwriting): Likewise.
32528         * lib/freadahead.c (freadahed): Likewise.
32529         * lib/fpurge.c (fpurge): Likewise.
32530         * lib/fseeko.c (rpl_fseeko): Likewise.
32531
32532 2007-10-03  Bruno Haible  <bruno@clisp.org>
32533             Jim Meyering  <jim@meyering.net>
32534             Eric Blake  <ebb9@byu.net>
32535
32536         * doc/relocatable.texi: Use @command instead of @program.
32537
32538 2007-10-02  Jim Meyering  <jim@meyering.net>
32539
32540         Perform one more "_.h" -> ".in.h" substitution.
32541         * modules/unistd (Makefile.am) [unistd.h]: Use unistd.h.in
32542         instead of unistd_.h here, too.
32543
32544 2007-10-01  Bruno Haible  <bruno@clisp.org>
32545
32546         * gnulib-tool (func_emit_initmacro_done): Special case for alloca.c.
32547         Needed for the alloca-opt module.
32548
32549 2007-09-30  Bruno Haible  <bruno@clisp.org>
32550
32551         * lib/alloca.in.h: Renamed from lib/alloca_.h.
32552         * modules/alloca-opt (Files, Makefile.am): Use alloca.in.h instead of
32553         alloca_.h.
32554         * lib/argz.in.h: Renamed from lib/argz_.h.
32555         * modules/argz (Files, Makefile.am): Use argz.in.h instead of argz_.h.
32556         * lib/byteswap.in.h: Renamed from lib/byteswap_.h.
32557         * modules/byteswap (Files, Makefile.am): Use byteswap.in.h instead of
32558         byteswap_.h.
32559         * lib/dirent.in.h: Renamed from lib/dirent_.h.
32560         * modules/fchdir (Files, Makefile.am): Use dirent.in.h instead of
32561         dirent_.h.
32562         * lib/fcntl.in.h: Renamed from lib/fcntl_.h.
32563         * modules/fcntl (Files, Makefile.am): Use fcntl.in.h instead of
32564         fcntl_.h.
32565         * lib/float.in.h: Renamed from lib/float_.h.
32566         * modules/float (Files, Makefile.am): Use float.in.h instead of
32567         float_.h.
32568         * lib/fnmatch.in.h: Renamed from lib/fnmatch_.h.
32569         * modules/fnmatch (Files, Makefile.am): Use fnmatch.in.h instead of
32570         fnmatch_.h.
32571         * lib/getopt.in.h: Renamed from lib/getopt_.h.
32572         * modules/getopt (Files, Makefile.am): Use getopt.in.h instead of
32573         getopt_.h.
32574         * lib/glob.in.h: Renamed from lib/glob_.h.
32575         * modules/glob (Files, Makefile.am): Use glob.in.h instead of glob_.h.
32576         * lib/iconv.in.h: Renamed from lib/iconv_.h.
32577         * modules/iconv_open (Files, Makefile.am): Use iconv.in.h instead of
32578         iconv_.h.
32579         * lib/inttypes.in.h: Renamed from lib/inttypes_.h.
32580         * modules/inttypes (Files, Makefile.am): Use inttypes.in.h instead of
32581         inttypes_.h.
32582         * lib/locale.in.h: Renamed from lib/locale_.h.
32583         * modules/locale (Files, Makefile.am): Use locale.in.h instead of
32584         locale_.h.
32585         * lib/math.in.h: Renamed from lib/math_.h.
32586         * modules/math (Files, Makefile.am): Use math.in.h instead of math_.h.
32587         * lib/netinet_in.in.h: Renamed from lib/netinet_in_.h.
32588         * modules/netinet_in (Files, Makefile.am): Use netinet_in.in.h instead
32589         of netinet_in_.h. Add dependency.
32590         * lib/poll.in.h: Renamed from lib/poll_.h.
32591         * modules/poll (Files, Makefile.am): Use poll.in.h instead of poll_.h.
32592         * lib/search.in.h: Renamed from lib/search_.h.
32593         * modules/search (Files, Makefile.am): Use search.in.h instead of
32594         search_.h.
32595         * lib/signal.in.h: Renamed from lib/signal_.h.
32596         * modules/signal (Files, Makefile.am): Use signal.in.h instead of
32597         _signal.h.
32598         * lib/stdbool.in.h: Renamed from lib/stdbool_.h.
32599         * modules/stdbool (Files, Makefile.am): Use stdbool.in.h instead of
32600         stdbool_.h.
32601         * lib/stdint.in.h: Renamed from lib/stdint_.h.
32602         * modules/stdint (Files, Makefile.am): Use stdint.in.h instead of
32603         stdint_.h.
32604         * lib/stdio.in.h: Renamed from lib/stdio_.h.
32605         * modules/stdio (Files, Makefile.am): Use stdio.in.h instead of
32606         stdio_.h.
32607         * lib/stdlib.in.h: Renamed from lib/stdlib_.h.
32608         * modules/stdlib (Files, Makefile.am): Use stdlib.in.h instead of
32609         stdlib_.h.
32610         * lib/string.in.h: Renamed from lib/string_.h.
32611         * modules/string (Files, Makefile.am): Use string.in.h instead of
32612         string_.h.
32613         * doc/gnulib-tool.texi (Initial import): Update.
32614         * lib/sys_select.in.h: Renamed from lib/sys_select_.h.
32615         * modules/sys_select (Files, Makefile.am): Use sys_select.in.h instead
32616         of sys_select_.h. Add dependency.
32617         * lib/sys_socket.in.h: Renamed from lib/sys_socket_.h.
32618         * modules/sys_socket (Files, Makefile.am): Use sys_socket.in.h instead
32619         of sys_socket_.h.
32620         * lib/sys_stat.in.h: Renamed from lib/sys_stat_.h.
32621         * modules/sys_stat (Files, Makefile.am): Use sys_stat.in.h instead of
32622         sys_stat_.h.
32623         * lib/sys_time.in.h: Renamed from lib/sys_time_.h.
32624         * modules/sys_time (Files, Makefile.am): Use sys_time.in.h instead of
32625         sys_time_.h.
32626         * lib/sysexits.in.h: Renamed from lib/sysexits_.h.
32627         * modules/sysexits (Files, Makefile.am): Use sysexits.in.h instead of
32628         sysexits_.h.
32629         * lib/time.in.h: Renamed from lib/time_.h.
32630         * modules/time (Files, Makefile.am): Use time.in.h instead of time_.h.
32631         * lib/unistd.in.h: Renamed from lib/unistd_.h.
32632         * modules/unistd (Files, Makefile.am): Use unistd.in.h instead of
32633         unistd_.h.
32634         * lib/wchar.in.h: Renamed from lib/wchar_.h.
32635         * modules/wchar (Files, Makefile.am): Use wchar.in.h instead of
32636         wchar_.h.
32637         * lib/wctype.in.h: Renamed from lib/wctype_.h.
32638         * modules/wctype (Files, Makefile.am): Use wctype.in.h instead of
32639         wctype_.h.
32640         * build-aux/bootstrap (slurp): Update.
32641         * lib/.cppi-disable: Update.
32642
32643 2007-09-30  Bruno Haible  <bruno@clisp.org>
32644
32645         * tests/test-getaddrinfo.c (AF_UNSPEC): Provide a fallback definition.
32646         Needed on BeOS.
32647
32648 2007-09-30  Bruno Haible  <bruno@clisp.org>
32649
32650         * modules/dirname-tests (check_PROGRAMS): Renamed from noinst_PROGRAMS.
32651
32652 2007-09-29  Bruno Haible  <bruno@clisp.org>
32653
32654         * lib/stdio_.h (getdelim, getline): Add identifiers. Doc tweak.
32655
32656 2007-09-29  Bruno Haible  <bruno@clisp.org>
32657
32658         * lib/xreadlink.c (xreadlink): Simplify to a wrapper around areadlink.
32659         * modules/xreadlink (Depends-on): Add areadlink, remove readlink etc.
32660         * build-aux/install-reloc: Compile also areadlink.c.
32661         * modules/relocatable-prog-wrapper (Files): Add lib/areadlink.[hc].
32662
32663 2007-09-29  Bruno Haible  <bruno@clisp.org>
32664
32665         * gnulib-tool (func_emit_initmacro_done): Indentation.
32666
32667 2007-09-29  Bruno Haible  <bruno@clisp.org>
32668
32669         * README: Add CVS checkout update instructions.
32670         Info from Bob Proulx <bob@proulx.com>.
32671
32672 2007-09-28  Eric Blake  <ebb9@byu.net>
32673
32674         Provide move-if-change.
32675         * build-aux/move-if-change: New file, based on best practice
32676         rather than any canonical upstream location.
32677
32678 2007-09-28  Jim Meyering  <jim@meyering.net>
32679
32680         Fix canonicalize loop-detection corner case.
32681         Do not attempt to stat the symlink values stored via seen_triple.
32682         Without this, coreutils' tests/misc/readlink-fp-loop test would fail
32683         on linux-2.6.18, (but not 2.6.22).
32684         * lib/canonicalize.c (seen_triple): Use triple_compare_ino_str, not
32685         triple_compare.  The former compares dev,ino,filename, while the latter
32686         would actually stat dirname(filename) when dev and ino were equal.
32687         * lib/hash-triple.c: Install <string.h>.
32688         (STREQ): Define.
32689         (triple_compare_ino_str): New function.
32690         * lib/hash-triple.h (triple_compare_ino_str): Declare it.
32691
32692 2007-09-28  Eric Blake  <ebb9@byu.net>
32693
32694         Enforce that AC_REPLACE_FUNCS files exist.
32695         * gnulib-tool (func_emit_initmacro_done): Make AC_LIBSOURCES
32696         override check for typos.
32697
32698         Fix test-closein on Solaris 10.
32699         * tests/test-closein.c (main): Don't assume stdin can be inherited
32700         closed on all systems.
32701         * tests/test-closein.sh: Likewise.
32702         Reported by Piotr Tarnowski.
32703
32704 2007-09-28  Jim Meyering  <jim@meyering.net>
32705
32706         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Fix typo in comment.
32707
32708 2007-09-27  Jim Meyering  <jim@meyering.net>
32709
32710         canonicalize: Avoid a false-positive cycle failure.
32711         * modules/canonicalize (Depends-on): Add file-set and hash-triple.
32712         Sort.  Remove cycle-check.
32713         * lib/canonicalize.c: Include file-set.h and hash-triple.h,
32714         not cycle-check.h.
32715         (seen_triple): New function.
32716         (canonicalize_filename_mode): Use it instead of cycle-check.
32717         * tests/test-canonicalize.c: Add a test for this bug.
32718         * tests/test-canonicalize.sh: Set up and run the test.
32719
32720         New module, file-set, from coreutils.
32721         * modules/file-set: Define it.
32722         * lib/file-set.c, lib/file-set.h: Implement.
32723
32724         New module, hash-triple, from coreutils.
32725         * modules/hash-triple: Define it.
32726         * lib/hash-triple.c, lib/hash-triple.h: Implement.
32727
32728 2007-09-25  Eric Blake  <ebb9@byu.net>
32729
32730         Fix strerror on Interix.
32731         * lib/string_.h (strerror): Declare replacement.
32732         * doc/functions/strerror.texi (strerror): Document the Interix
32733         shortcoming.
32734         * modules/string (Makefile.am): Support new hooks.
32735         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Add new hooks.
32736         * m4/strerror.m4 (gl_FUNC_STRERROR): Defer to
32737         gl_FUNC_STRERROR_SEPARATE.
32738         (gl_FUNC_STRERROR_SEPARATE): Check for Interix bug.
32739         * lib/strerror.c (rpl_strerror): Provide replacement.
32740         * modules/strerror (Depends-on): Add string.
32741         (configure.ac): Detect use of module.
32742         * tests/test-strerror.c: New file.
32743         * modules/strerror-tests: New test module.
32744         * modules/argp (Depends-on): Add strerror.
32745         * modules/error (Depends-on): Likewise.
32746         Reported by Martin Koeppe.
32747
32748 2007-09-24  Bruno Haible  <bruno@clisp.org>
32749
32750         * README: Update git instructions.
32751
32752 2007-09-24  Eric Blake  <ebb9@byu.net>
32753
32754         Revert fpending breakage from 2007-09-08.
32755         * m4/fpending.m4 (gl_FUNC_FPENDING): Don't require existence of
32756         __fpending.c.
32757
32758 2007-09-24  Jim Meyering  <jim@meyering.net>
32759
32760         filenamecat.c: Add a test.
32761         * lib/filenamecat.c (main) [TEST_FILE_NAME_CONCAT]: Add a test
32762         showing how the function works when DIR is the empty string.
32763
32764 2007-09-21  Simon Josefsson  <simon@josefsson.org>
32765
32766         * tests/test-canonicalize.sh: Turn on executable bit.
32767
32768 2007-09-19  Eric Blake  <ebb9@byu.net>
32769
32770         * README: Update CVS instructions.
32771
32772 2007-09-18  Bruno Haible  <bruno@clisp.org>
32773
32774         * modules/areadlink: New file.
32775         * lib/areadlink.h (areadlink): New declaration.
32776         * lib/areadlink.c: New file, based on lib/xreadlink.c.
32777
32778 2007-09-17  Jim Meyering  <jim@meyering.net>
32779
32780         * lib/savewd.c (ESTALE) [!defined]: Define.
32781         Reported to be required on Interix by Martin Koeppe.
32782
32783 2007-09-17  Bruno Haible  <bruno@clisp.org>
32784
32785         * gnulib-tool (func_version): Use $version.
32786
32787 2007-09-16  Bruno Haible  <bruno@clisp.org>
32788
32789         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE, gl_PRINTF_INFINITE,
32790         gl_PRINTF_INFINITE_LONG_DOUBLE): Increase buf's size from 100 to 10000.
32791         Needed on glibc-2.6.1 with -fstack-protector -D_FORTIFY_SOURCE=2.
32792         Reported by Greg Schafer <gschafer@zip.com.au>.
32793
32794 2007-09-15  Bruno Haible  <bruno@clisp.org>
32795
32796         * gnulib-tool (sed): Try a little harder to make bash understand the
32797         alias.
32798         Reported by Bruce Korb <bruce.korb@gmail.com>.
32799
32800 2007-09-13  Eric Blake  <ebb9@byu.net>
32801
32802         * ChangeLog: Remove conflict markers.
32803
32804 2007-09-13  Simon Josefsson  <simon@josefsson.org>
32805
32806         * lib/gc-gnulib.c (gc_hash_open): Catch NULL calloc return value.
32807         Reported by Bruno Haible <bruno@clisp.org>.
32808
32809 2007-09-12  Bruno Haible  <bruno@clisp.org>
32810
32811         * m4/lock.m4: Don't provide an AC_USE_SYSTEM_EXTENSIONS definition.
32812         (gl_LOCK_EARLY_BODY): Use AC_GNU_SOURCE when AC_USE_SYSTEM_EXTENSIONS
32813         is not defined.
32814
32815 2007-09-12  Eric Blake  <ebb9@byu.net>
32816
32817         Track CVS Autoconf on AC_USE_SYSTEM_EXTENSIONS.
32818         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Update to CVS
32819         Autoconf definition.
32820         * modules/euidaccess (Depends-on): Add extensions, for
32821         AC_USE_SYSTEM_EXTENSIONS with autoconf <= 2.59.
32822         * modules/fnmatch (Depends-on): Likewise.
32823         * modules/getaddrinfo (Depends-on): Likewise.
32824         * modules/getdelim (Depends-on): Likewise.
32825         * modules/getline (Depends-on): Likewise.
32826         * modules/getsubopt (Depends-on): Likewise.
32827         * modules/gettext (Depends-on): Likewise.
32828         * modules/group-member (Depends-on): Likewise.
32829         * modules/mbchar (Depends-on): Likewise.
32830         * modules/memmem (Depends-on): Likewise.
32831         * modules/mempcpy (Depends-on): Likewise.
32832         * modules/memrchr (Depends-on): Likewise.
32833         * modules/pagealign_alloc (Depends-on): Likewise.
32834         * modules/readutmp (Depends-on): Likewise.
32835         * modules/stpcpy (Depends-on): Likewise.
32836         * modules/stpncpy (Depends-on): Likewise.
32837         * modules/strchrnul (Depends-on): Likewise.
32838         * modules/strndup (Depends-on): Likewise.
32839         * modules/strsep (Depends-on): Likewise.
32840         * modules/strverscmp (Depends-on): Likewise.
32841         * modules/vasprintf (Depends-on): Likewise.
32842         * modules/wcwidth (Depends-on): Likewise.
32843         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): AC_GNU_SOURCE will be
32844         obsolete in Autoconf 2.62; use AC_USE_SYSTEM_EXTENSIONS instead.
32845         * m4/fnmatch.m4 (gl_FUNC_FNMATCH_GNU): Likewise.
32846         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDR_INFO): Likewise.
32847         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Likewise.
32848         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
32849         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Likewise.
32850         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
32851         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER): Likewise.
32852         * m4/mbchar.m4 (gl_MBCHAR): Likewise.
32853         * m4/memmem.m4 (gl_FUNC_MEMMEM): Likewise.
32854         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
32855         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
32856         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Likewise.
32857         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC): Likewise.
32858         * m4/readutmp.m4 (gl_READUTMP): Likewise.
32859         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
32860         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
32861         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
32862         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
32863         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
32864         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
32865         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
32866         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP): Likewise.
32867         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): Likewise.
32868         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
32869         * m4/lock.m4 (gl_LOCK_EARLY_BODY): Likewise, but provide fallback,
32870         so that lock.m4 can be used in gettext without extensions module.
32871
32872 2007-09-11  Bruno Haible  <bruno@clisp.org>
32873
32874         * m4/isc-posix.m4: Remove file.
32875         Suggested by Eric Blake.
32876
32877 2007-09-11  Eric Blake  <ebb9@byu.net>
32878
32879         * ChangeLog: Restore lines accidentally truncated 2007-04-06.
32880
32881 2007-09-10  Bruno Haible  <bruno@clisp.org>
32882
32883         * posix-modules: Fix typo in error message.
32884         Reported by Matt <mkraai@beckman.com>.
32885
32886 2007-09-09  Bruno Haible  <bruno@clisp.org>
32887
32888         * doc/functions/getdelim.texi: Update list of platforms lacking the
32889         function.
32890         * doc/functions/getline.texi: Likewise.
32891
32892 2007-09-09  Jim Meyering  <jim@meyering.net>
32893
32894         * lib/hash.c (hash_initialize): Detect calloc failure.
32895         Reported by Bruno Haible.
32896
32897 2007-09-09  Bruno Haible  <bruno@clisp.org>
32898
32899         * lib/canonicalize-lgpl.c (__realpath): Set errno to ENOMEM when
32900         malloc or realloc fails.
32901
32902 2007-09-09  Bruno Haible  <bruno@clisp.org>
32903
32904         * modules/getcwd (Depends-on): Add malloc-posix.
32905         * modules/glob (Depends-on): Likewise.
32906         * modules/putenv (Depends-on): Likewise.
32907         * modules/strdup (Depends-on): Likewise.
32908         * modules/getdelim (Depends-on): Add realloc-posix.
32909         * modules/read-file (Depends-on): Likewise.
32910
32911 2007-09-09  Bruno Haible  <bruno@clisp.org>
32912
32913         * m4/malloc.m4 (gl_CHECK_MALLOC_POSIX): New macro.
32914         (gl_FUNC_MALLOC_POSIX): Require it.
32915         * m4/realloc.m4 (gl_FUNC_REALLOC_POSIX): Likewise.
32916         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): Likewise.
32917         * modules/realloc (Files): Add m4/malloc.m4.
32918         * modules/calloc (Files): Likewise.
32919
32920 2007-09-09  Bruno Haible  <bruno@clisp.org>
32921
32922         * modules/malloc-posix: New file.
32923         * modules/malloc (Depends-on): Add malloc-posix.
32924         * lib/malloc.c: Include errno.h.
32925         (rpl_malloc): Merge the requirements of a glibc-compatible malloc
32926         and a POSIX-compatible malloc into a single function. Set ENOMEM
32927         when returning NULL.
32928         * m4/malloc.m4: New file.
32929         * doc/functions/malloc.texi: Mention the malloc-posix module.
32930         * lib/stdlib_.h (malloc): New declaration.
32931         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
32932         GNULIB_MALLOC_POSIX and HAVE_MALLOC_POSIX.
32933         * modules/stdlib (stdlib.h): Substitute also GNULIB_MALLOC_POSIX
32934         and HAVE_MALLOC_POSIX.
32935
32936 2007-09-09  Bruno Haible  <bruno@clisp.org>
32937
32938         * modules/realloc-posix: New file.
32939         * modules/realloc (Depends-on): Add realloc-posix.
32940         * lib/realloc.c: Include errno.h.
32941         (rpl_realloc): Merge the requirements of a glibc-compatible realloc
32942         and a POSIX-compatible realloc into a single function. Set ENOMEM
32943         when returning NULL.
32944         * m4/realloc.m4: New file.
32945         * doc/functions/realloc.texi: Mention the realloc-posix module.
32946         * lib/stdlib_.h (realloc): New declaration.
32947         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
32948         GNULIB_REALLOC_POSIX and HAVE_REALLOC_POSIX.
32949         * modules/stdlib (stdlib.h): Substitute also GNULIB_REALLOC_POSIX
32950         and HAVE_REALLOC_POSIX.
32951
32952 2007-09-09  Bruno Haible  <bruno@clisp.org>
32953
32954         * modules/calloc-posix: New file.
32955         * modules/calloc (Depends-on): Add calloc-posix.
32956         * lib/calloc.c: Include errno.h.
32957         (rpl_calloc): Merge the requirements of a glibc-compatible calloc
32958         and a POSIX-compatible calloc into a single function. Set ENOMEM
32959         when returning NULL.
32960         * m4/calloc.m4 (gl_FUNC_CALLOC_POSIX): New macro.
32961         * doc/functions/calloc.texi: Mention the calloc-posix module.
32962         * lib/stdlib_.h (calloc): New declaration.
32963         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize
32964         GNULIB_CALLOC_POSIX and HAVE_CALLOC_POSIX.
32965         * modules/stdlib (stdlib.h): Substitute also GNULIB_CALLOC_POSIX
32966         and HAVE_CALLOC_POSIX.
32967
32968 2007-09-09  Bruno Haible  <bruno@clisp.org>
32969
32970         Allow for modules to show an arbitrary notice.
32971         * modules/TEMPLATE-EXTENDED: Add 'Notice' field.
32972         * gnulib-tool: New option --extract-notice.
32973         (func_usage): Document it.
32974         (sed_extract_prog): Update.
32975         (func_get_notice): New function.
32976         (func_modules_notice): New function.
32977         (func_import, func_create_testdir): Invoke it.
32978         Suggested by Jim Meyering.
32979
32980 2007-09-09  Bruno Haible  <bruno@clisp.org>
32981
32982         * gnulib-tool: New options --verbose, --quiet.
32983         (func_usage): Document them.
32984         (verbose): New variable.
32985         (func_execute_command): New function.
32986         (func_import): Don't show the module list and the file list if
32987         $verbose < 0.
32988         (func_create_testdir): Likewise. Use func_execute_command.
32989         (func_create_megatestdir): Use func_execute_command.
32990
32991 2007-09-08  Bruno Haible  <bruno@clisp.org>
32992
32993         * gnulib-tool (func_import): Prefer rsync over wget when available,
32994         for fetching the PO files.
32995
32996 2007-09-08  Bruno Haible  <bruno@clisp.org>
32997
32998         * posix-modules: New file. Portions copied from gnulib-tool.
32999         * doc/gnulib.texi (POSIX Substitutes Library): New chapter.
33000
33001 2007-09-08  Jim Meyering  <jim@meyering.net>
33002
33003         Rename __fpending.c -> fpending.c and __fpending.h -> fpending.h
33004         * lib/fpending.h: Rename from __fpending.h.
33005         * lib/fpending.c: Rename from __fpending.c.
33006         Include "fpending.h", not "__fpending.h".
33007         * lib/__fpending.h, lib/__fpending.c: Remove files.
33008         * modules/fpending (Files): Reflect new file names.
33009         * lib/close-stream.c: Include "fpending.h", not "__fpending.h".
33010
33011 2007-09-08  Bruno Haible  <bruno@clisp.org>
33012
33013         * m4/inttypes-h.m4: Remove stub file.
33014
33015 2007-09-07  Simon Josefsson  <simon@josefsson.org>
33016
33017         * doc/headers/stdint.texi: Discuss #include_next issue.
33018
33019 2007-09-06  Paul Eggert  <eggert@cs.ucla.edu>
33020
33021         * build-aux/bootstrap: Remove obsolete comment about wget --help.
33022
33023 2007-09-06  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
33024
33025         * m4/time_h.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Fix misspelling
33026         in variable name.
33027
33028 2007-09-03  Jim Meyering  <jim@meyering.net>
33029
33030         New module: git-version-gen.
33031         * modules/git-version-gen: New file.
33032
33033         Import changes from coreutils for bootstrap script.
33034
33035         * build-aux/bootstrap (WGET_COMMAND): Remove code to set this variable.
33036
33037         bootstrap: uses rsync to download the .po files
33038         * build-aux/bootstrap (po_download_command_format): New global.
33039         (download_po_files): Use rsync.
33040         (update_po_files): Don't remove .po files after download,
33041         so future rsync runs can take advantage of the copies.
33042
33043         * build-aux/bootstrap (gnulib_tool): Make sha1sum check quietly.
33044
33045         Solve the unnecessary-.po-file-regeneration problem once and for all.
33046         * build-aux/bootstrap (download_po_files): New function, renamed from
33047         get_translations.  Now, downloads, but doesn't update LINGUAS.
33048         (update_po_files): New function.
33049
33050         bootstrap: Ignore more.
33051         * build-aux/bootstrap (symlink_to_dir): Add a directory name like
33052         uniwidth to e.g., lib/.gitignore.
33053         (slurp): Handle the sys_stat_.h -> sys mapping, too.
33054
33055         * build-aux/bootstrap: New setting: vc_ignore.
33056         (insert_sorted_if_absent): Create $file if absent.
33057         Adapt to new, possibly empty, list: $vc_ignore.
33058
33059         bootstrap: generate more ignorable names
33060         * build-aux/bootstrap (slurp): When generating ignorable names,
33061         also map .sin to .sed, .gperf to .c, and .y to .c.
33062
33063 2007-09-03  Jim Meyering  <jim@meyering.net>
33064
33065         * build-aux/git-version-gen: New file, from coreutils.  For details, see
33066         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commitdiff;h=bfe49f506
33067
33068 2007-09-02  Bruno Haible  <bruno@clisp.org>
33069
33070         Fix mis-recognition of 'mcs' on QNX 6.
33071         * m4/csharpcomp.m4 (gt_CSHARPCOMP): Test whether the "mcs --version"
33072         output contains the string "Mono".
33073         * lib/csharpcomp.c (compile_csharp_using_mono): Likewise.
33074         Reported by <kraai@ftbfs.org> at <https://savannah.gnu.org/bugs/?18337>.
33075
33076 2007-09-01  Bruno Haible  <bruno@clisp.org>
33077
33078         Fix collision between uniwidth/* and linebreak modules.
33079         * lib/linebreak.h (locale_charset, uc_width, u8_width, u16_width,
33080         u32_width): Remove declarations.
33081         * lib/linebreak.c: Include uniwidth.h, uniwidth/cjk.h, streq.h.
33082         (u32_mbtouc_unsafe, streq9, streq8, streq7, streq6, streq5, streq4,
33083         streq3, streq2, streq1, streq0): Remove functions.
33084         (STREQ): Remove macro.
33085         (is_cjk_encoding): Remove function.
33086         (nonspacing_table_data, nonspacing_table_ind): Remove constants.
33087         (uc_width, u8_width, u16_width, u32_width): Remove functions.
33088         * modules/linebreak (Depends-on): Add streq, uniwidth/width.
33089         * NEWS: Document the change.
33090
33091 2007-09-01  Bruno Haible  <bruno@clisp.org>
33092
33093         * lib/streq.h: Add double-inclusion guard.
33094
33095 2007-09-01  Karl Berry  <karl@gnu.org>
33096
33097         * MODULES.html.sh: Rename mreadlink_with_size to areadlink_with_size.
33098
33099 2007-08-28  Jim Meyering  <jim@meyering.net>
33100
33101         Rename mreadlink_with_size to areadlink_with_size.
33102         * NEWS: Document the change.
33103         * lib/mreadlink-with-size.c (mreadlink_with_size): Rename this to...
33104         * lib/areadlink-with-size.c (areadlink_with_size): ...this.
33105         * lib/mreadlink.h: Rename this to...
33106         * lib/areadlink.h: ...this.
33107         * modules/mreadlink-with-size: Rename this to...
33108         * modules/areadlink-with-size: ...this.
33109         * lib/canonicalize.c: Reflect the renaming.
33110         * modules/canonicalize: Likewise.
33111
33112 2007-08-26  Bruno Haible  <bruno@clisp.org>
33113
33114         * gnulib-tool (func_import): When deciding which files to remove,
33115         consider also dangling symbolic links.
33116         Reported by Eric Blake.
33117
33118 2007-08-26  Bruno Haible  <bruno@clisp.org>
33119
33120         * gnulib-tool (func_ln_if_changed): Use "test -h", not "test -L".
33121
33122 2007-08-23  Simon Josefsson  <simon@josefsson.org>
33123
33124         * lib/readline.c: Don't include getline.h, the prototype is now
33125         found in stdio.h.
33126
33127 2007-08-23  Jim Meyering  <jim@meyering.net>
33128
33129         Getdelim touchup.
33130         * lib/getdelim.c (getdelim): Don't bother to save/restore errno
33131         around the funlockfile call, since funlockfile never sets errno.
33132         Don't set errno upon failed realloc.
33133
33134 2007-08-22  Eric Blake  <ebb9@byu.net>
33135
33136         Getline touchups.
33137         * lib/getdelim.c (getdelim): Revert regression that required *n to
33138         be 0 when *lineptr is NULL.  Preserve errno across funlockfile.
33139         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Check for declaration of
33140         getdelim, rather than whether implementation is missing.
33141         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise for getline.
33142         * lib/stdio_.h (getline): Also declare if replacement is
33143         required.
33144         * doc/functions/getdelim.texi: New file.
33145         * doc/functions/getline.texi: Likewise.
33146         * doc/gnulib.texi (Function Substitutes): Add new files.
33147         Reported by Bruno Haible.
33148
33149 2007-08-22  Ludovic Courtès  <ludo@gnu.org>
33150
33151         * users.txt: Add Guile.
33152
33153 2007-08-22  Eric Blake  <ebb9@byu.net>
33154
33155         * tests/test-getdelim.c (main): Use remove, not unlink.
33156         * tests/test-getline.c (main): Likewise.
33157
33158         Move getline and getdelim into stdio.h, per POSIX 200x.
33159         * modules/getline (Files): Remove getline.h.
33160         (Depends-on): Add stdio.
33161         (configure.ac): Add module indicator.
33162         * modules/getdelim (Files): Remove getdelim.h.
33163         (Depends-on): Add stdio.
33164         (configure.ac): Add module indicator.
33165         * modules/stdio (Makefile.am): Work with new indicators.
33166         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Add new defaults.
33167         * m4/getdelim.m4 (gl_FUNC_GETDELIM): Work with stdio needs.
33168         * m4/getline.m4 (gl_FUNC_GETLINE): Likewise.
33169         * lib/getdelim.h: Delete.
33170         * lib/getline.h: Delete.
33171         * lib/stdio_.h (getdelim, getline): Declare.
33172         * modules/getdelim-tests: New module.
33173         * modules/getline-tests: Likewise.
33174         * tests/test-getdelim.c: New file.
33175         * tests/test-getline.c: Likewise.
33176         * NEWS: Document the change.
33177         * lib/getline.c: Update choice of header.
33178         * lib/csharpcomp.c: Likewise.
33179         * lib/getpass.c: Likewise.
33180         * lib/javacomp.c: Likewise.
33181         * lib/javaversion.c: Likewise.
33182         * lib/yesno.c: Likewise.
33183         * lib/getdelim.c: Likewise.
33184         (getdelim): Set errno on failure, and avoid memory leak.
33185
33186 2007-08-19  Bruno Haible  <bruno@clisp.org>
33187
33188         * modules/closein (Depends-on): Add freadahead.
33189         * lib/closein.c: Include freadahead.h.
33190         (close_stdin): Skip the fseeko and fflush calls if freadahead(stdin)
33191         is zero.
33192
33193 2007-08-19  Bruno Haible  <bruno@clisp.org>
33194
33195         * modules/freadahead-tests: New file.
33196         * tests/test-freadahead.sh: New file.
33197         * tests/test-freadahead.c: New file.
33198
33199         * modules/freadahead: New file.
33200         * lib/freadahead.h: New file.
33201         * lib/freadahead.c: New file.
33202         * MODULES.html.sh (File stream based Input/Output): Add freadahead,
33203         fbufmode, fpurge, freadable, fwritable.
33204
33205 2007-08-19  Eric Blake  <ebb9@byu.net>
33206
33207         Test yesno in combination with closein.
33208         * lib/yesno.c (yesno): Document use of stdin.
33209         * modules/yesno-tests (Files): New module.
33210         * tests/test-yesno.c (main): New file.
33211         * tests/test-yesno.sh: Likewise.
33212
33213 2007-08-19  Bruno Haible  <bruno@clisp.org>
33214
33215         * lib/fbufmode.c (fbufmode): Add tentative support for Solaris/AMD64.
33216         * lib/fseeko.c (rpl_fseeko): Likewise.
33217         * lib/fseterr.c (fseterr): Likewise.
33218
33219 2007-08-19  Bruno Haible  <bruno@clisp.org>
33220
33221         * tests/test-lseek.c (main): Disable a test for BeOS.
33222         * doc/functions/lseek.texi: Document the BeOS bug.
33223
33224 2007-08-19  Bruno Haible  <bruno@clisp.org>
33225             Eric Blake  <ebb9@byu.net>
33226
33227         * lib/lseek.c: Include <sys/stat.h>.
33228         (rpl_lseek): Add workaround code also for Unix platforms.
33229         Needed for BeOS.
33230         * m4/lseek.m4 (gl_FUNC_LSEEK): When cross-compiling, fail on BeOS.
33231         * doc/functions/lseek.texi: Document BeOS definiency.
33232
33233 2007-08-18  Bruno Haible  <bruno@clisp.org>
33234
33235         * modules/fstrcmp-tests: New file.
33236         * tests/test-fstrcmp.c: New file.
33237
33238 2007-08-18  Bruno Haible  <bruno@clisp.org>
33239
33240         * modules/fstrcmp: New file, from GNU gettext with modifications.
33241         * lib/fstrcmp.h: New file, from GNU gettext.
33242         * lib/fstrcmp.c: New file, from GNU gettext.
33243         * MODULES.html.sh (String handling): Add fstrcmp.
33244
33245 2007-08-18  Bruno Haible  <bruno@clisp.org>
33246
33247         * lib/diffseq.h (struct context): Change type of 'heuristic' field to
33248         'bool'.
33249         (diag, compareseq): Remove const from the ctxt argument.
33250         (USE_HEURISTIC): Undefine at the end.
33251
33252 2007-08-18  Jim Meyering  <jim@meyering.net>
33253
33254         New file: lib/idcache.h
33255         * NEWS: Mention the addition.
33256         * modules/idcache (Files): Add lib/idcache.h
33257         * lib/idcache.c: Include "idcache.h".
33258         Don't include <sys/types.h>.
33259         Add a FIXME comment.
33260         Move file-scoped "static" declarations to the top.
33261         * lib/idcache.h: New file.  Include <sys/types.h> here, instead.
33262
33263 2007-08-17  Bruno Haible  <bruno@clisp.org>
33264         and Paul Eggert  <eggert@cs.ucla.edu>
33265
33266         * MODULES.html.sh: Add diffseq.
33267         * modules/diffseq: New file.
33268         * lib/diffseq.h: New file, from GNU gettext with a few minor changes,
33269         extracted from GNU gettext's fstrcmp.c and GNU diff's analyze.c.
33270
33271 2007-08-15  Paul Eggert  <eggert@cs.ucla.edu>
33272
33273         Import changes from coreutils for bootstrap script.
33274
33275         2007-07-21  Paul Eggert  <eggert@cs.ucla.edu>
33276
33277         * build-aux/bootstrap (slurp): Work even in environments where
33278         "ls" defaults to "ls -A".  Put in a FIXME, though, since the
33279         current code does not slurp files whose names start with ".", and
33280         this looks like it might be a troublesome area.
33281
33282         2007-07-11  Jim Meyering  <jim@meyering.net>
33283
33284         If there's a GPL vN copyright comment, require that N == 3.
33285
33286         2007-07-08  Jim Meyering  <jim@meyering.net>
33287
33288         Run the coreutils-specific code only if tests/Makefile.am.in exists.
33289         * build-aux/bootstrap (mam_template): Move definition out of loop.
33290
33291         Create symlinks for gl/{lib,m4}/*, just as for gnulib/{lib,m4}/*.
33292
33293         * build-aux/bootstrap (symlink_to_dir): Rename function from
33294         symlink_to_gnulib.  Add a directory parameter.  Update all
33295         callers.
33296         (cp_mark_as_generated): Also check for -- and link to -- files in
33297         gl/.
33298
33299         2007-07-08  Jim Meyering  <jim@meyering.net>
33300
33301         Adapt to deeper hierarchy in gnulib.
33302         * build-aux/bootstrap (symlink_to_dir): If the destination
33303         directory doesn't exist, create it. This is required at least for
33304         "lib/uniwidth/cjk.h".
33305
33306         2007-05-15  Jim Meyering  <jim@meyering.net>
33307
33308         * build-aux/bootstrap: Now that generated Makefile.am files
33309         are no longer under version control, they must be created at
33310         bootstrap time.
33311
33312 2007-08-14  Ben Pfaff  <blp@gnu.org>
33313
33314         * lib/count-one-bits.h: Add comments.  From Bruno Haible.
33315
33316 2007-08-14  Paul Eggert  <eggert@cs.ucla.edu>
33317
33318         * lib/count-one-bits.h: Don't include <limits.h>; no longer needed
33319         given the changes below.
33320         (COUNT_ONE_BITS): Use 'verify' rather than 'verify_true'.  Work
33321         even on hosts that have padding bits beyond the supported 64.
33322
33323 2007-08-10  Paul Eggert  <eggert@cs.ucla.edu>
33324
33325         * NEWS: In xstrtol, remove STRTOL_FATAL_ERROR and add xstrtol_fatal.
33326         * lib/xstrtol.h: Don't include exitfail.h; that's now internal to
33327         xstrtol.c.  Include getopt.h, since xstrtol_fatal's signature
33328         depends on it.
33329         (xstrtol_error): Remove.
33330         (xstrtol_fatal): New decl, replacing the functionality of xstrtol_error
33331         but with a different signature.
33332         (ATTRIBUTE_NORETURN, __attribute__): New macros.
33333         * lib/xstrtol-error.c: Include exitfail.h.
33334         (xstrtol_fatal): New function, with a different signature from the
33335         old xstrtol_error, so that the caller need not worry about passing
33336         in an exit status, or about storage management of the option argument.
33337         (xstrtol_error): Now a static function.  Redo signature to
33338         implement xstrtol_fatal.  Output the correct number of hyphens in
33339         front of the option so that the caller need not worry about
33340         storage management.
33341         (N_): New macro.
33342         (_): Remove; not used now.
33343         * modules/xstrtol: Depend on getopt.
33344         * tests/test-xstrtol.c (main): Use new xstrtol_error function instead
33345         of old STRTOL_FATAL_ERROR macro.
33346         * tests/test-xstrtol.sh (t-xstrtol.xo): Adjust to match new behavior
33347         of test program.
33348         * tests/test-xstrtoimax.sh (t-xstrtoimax.xo): Likewise.
33349         * tests/test-xstrtoumax.sh (t-xstrtoumax.xo): Likewise.
33350
33351 2007-08-08  Eric Blake  <ebb9@byu.net>
33352
33353         * lib/xstrtol-error.c: Add missing include.
33354
33355         Move xstrtol messages into gnulib domain, when --pobase is used.
33356         * lib/xstrtol.h (_STRTOL_ERROR): Move messages out of macro...
33357         * lib/xstrtol-error.c (xstrtol_error): ...into new file.
33358         * modules/xstrtol (Files): Distribute new file.
33359         * m4/xstrtol.m4 (gl_XSTRTOL): Build new file.
33360         * lib/xstrtol.c (TESTING_XSTRTO): Move tests...
33361         * tests/test-xstrtol.c: ...into new file.
33362         * tests/test-xstrtoul.c: Also test xstrtoul.
33363         * tests/test-xstrtoimax.c: Also test xstrtoimax.
33364         * tests/test-xstrtoumax.c: Also test xstrtoumax.
33365         * tests/test-xstrtol.sh: Drive the tests.
33366         * tests/test-xstrtoimax.sh: Likewise.
33367         * tests/test-xstrtoumax.sh: Likewise.
33368         * modules/xstrtol-tests: New module.
33369         * modules/xstrtoimax-tests: Likewise.
33370         * modules/xstrtoumax-tests: Likewise.
33371
33372 2007-08-08  Jim Meyering  <jim@meyering.net>
33373
33374         New function: mfile_name_concat.
33375         * lib/filenamecat.c (mfile_name_concat): New function, just like
33376         file_name_concat, but return NULL upon failure rather than exiting
33377         with a diagnostic.
33378         * lib/filenamecat.h: Declare it.
33379
33380 2007-08-07  Bruno Haible  <bruno@clisp.org>
33381
33382         * m4/inttypes.m4 (gl_INTTYPES_H): Use GL_TRIGGER_STDC_LIMIT_MACROS
33383         instead of __STDC_LIMIT_MACROS_TRIGGER. This avoids a redefinition
33384         warning from gcc.
33385         Reported by Eric Blake.
33386
33387 2007-08-07  Simon Josefsson  <simon@josefsson.org>
33388
33389         * modules/crypto/arctwo (License): Use the synonymous term "LGPLv2+".
33390         * modules/crypto/arcfour (License): Likewise.
33391         * modules/crypto/des-tests (License): Likewise.
33392         * modules/crypto/gc-arctwo-tests (License): Likewise.
33393         * modules/crypto/gc-des-tests (License): Likewise.
33394         * modules/crypto/gc-hmac-md5-tests (License): Likewise.
33395         * modules/crypto/gc-hmac-sha1-tests (License): Likewise.
33396         * modules/crypto/gc-md2-tests (License): Likewise.
33397         * modules/crypto/gc-md4-tests (License): Likewise.
33398         * modules/crypto/gc-md5-tests (License): Likewise.
33399         * modules/crypto/gc-pbkdf2-sha1-tests (License): Likewise.
33400         * modules/crypto/gc-rijndael-tests (License): Likewise.
33401         * modules/crypto/gc-sha1-tests (License): Likewise.
33402         * modules/crypto/gc-tests (License): Likewise.
33403         * modules/crypto/hmac-md5 (License): Likewise.
33404         * modules/crypto/hmac-sha1 (License): Likewise.
33405         * modules/crypto/md2-tests (License): Likewise.
33406         * modules/crypto/md4-tests (License): Likewise.
33407         * modules/crypto/md5 (License): Likewise.
33408         * modules/crypto/rijndael (License): Likewise.
33409         * modules/crypto/sha1 (License): Likewise.
33410         * modules/memxor (License): Likewise.
33411
33412 2007-08-06  Paul Eggert  <eggert@cs.ucla.edu>
33413         and Bruno Haible  <bruno@clisp.org>
33414
33415         * NEWS: Describe interface changes to human, xstrtol.
33416         * lib/human.h: Include <xstrtol.h>.
33417         (human_options): Return enum strtol_error, not int.  Remove
33418         bool arg; take int * instead.
33419         * lib/human.c: Don't include "gettext.h".
33420         (_): Remove; no longer used.
33421         Don't include <xstrtol.h>, since human.h does it.
33422         (human_options): Adjust to abovementioned interface changes.
33423         Do not report error to stderr; that's now the caller's
33424         responsibility.
33425         * lib/xstrtol.c (main) [defined TESTING_XSTRTO]: Adjust to
33426         interface change.
33427         * lib/xstrtol.h (_STRTOL_ERROR): Take Option, Arg rather than
33428         Str, Argument_type_string.  All uses changed.  Put " argument"
33429         in diagnostics to make them clearer.  Change wording of suffix
33430         message for clarity.
33431         (STRTOL_FATAL_ERROR): Take Option, Arg rather than Str,
33432         Argument_type_string.
33433         (STRTOL_FATAL_WARN): Remove; no longer used.
33434         * modules/human (Depends-on): Remove gettext-h.
33435
33436 2007-08-06  Simon Josefsson  <simon@josefsson.org>
33437
33438         * build-aux/maint.mk, build-aux/GNUmakefile: Relicense to GPLv3+.
33439
33440 2007-07-31  Bruno Haible  <bruno@clisp.org>
33441
33442         * m4/stdint.m4 (gl_STDINT_H): Test whether WCHAR_MIN and WCHAR_MAX
33443         are defined by <stdint.h> (as opposed to <wchar.h>, as on Dragonfly).
33444         Reported by Joerg Sonnenberger <joerg@britannica.bec.de>.
33445
33446 2007-07-31  Bruno Haible  <bruno@clisp.org>
33447
33448         * lib/fflush.c (rpl_fflush): On BSD systems, use the __SNPT flag.
33449         Suggested by Joerg Sonnenberger <joerg@britannica.bec.de>.
33450
33451 2007-07-30  Bruno Haible  <bruno@clisp.org>
33452
33453         * modules/base64 (License): Use the synonymous term "LGPLv2+".
33454         * modules/c-ctype (License): Likewise.
33455         * modules/c-strcase (License): Likewise.
33456         * modules/check-version (License): Likewise.
33457         * modules/iconv (License): Likewise.
33458         * modules/iconv_open (License): Likewise.
33459         * modules/read-file (License): Likewise.
33460         * modules/striconv (License): Likewise.
33461         * modules/strverscmp (License): Likewise.
33462         * modules/vasprintf (License): Likewise.
33463         * modules/crypto/des (License): Likewise.
33464         * modules/crypto/gc (License): Likewise.
33465         * modules/crypto/gc-arcfour (License): Likewise.
33466         * modules/crypto/gc-arctwo (License): Likewise.
33467         * modules/crypto/gc-des (License): Likewise.
33468         * modules/crypto/gc-hmac-md5 (License): Likewise.
33469         * modules/crypto/gc-hmac-sha1 (License): Likewise.
33470         * modules/crypto/gc-md2 (License): Likewise.
33471         * modules/crypto/gc-md4 (License): Likewise.
33472         * modules/crypto/gc-md5 (License): Likewise.
33473         * modules/crypto/gc-pbkdf2-sha1 (License): Likewise.
33474         * modules/crypto/gc-random (License): Likewise.
33475         * modules/crypto/gc-rijndael (License): Likewise.
33476         * modules/crypto/gc-sha1 (License): Likewise.
33477         * modules/crypto/md2 (License): Likewise.
33478         * modules/crypto/md4 (License): Likewise.
33479
33480 2007-07-30  Jim Meyering  <jim@meyering.net>
33481
33482         * lib/fts.c (fts_read): Upon failure to chdir into a subdirectory,
33483         set fts_info to FTS_DNR, not to FTS_ERR, so that the caller knows
33484         it has valid stat data.  This bug would cause du not to count the
33485         sizes of inaccessible directories.
33486         Patch by Bryan Mason <bmason@redhat.com>, via Jose Maria Plans
33487         in <http://bugzilla.redhat.com/250077>.
33488
33489 2007-07-25  Peter O'Gorman  <peter@pogma.com>
33490             Bruno Haible  <bruno@clisp.org>
33491
33492         * m4/include_next.m4 (gl_INCLUDE_NEXT): Test whether #include_next
33493         really works. Needed because AIX 4.3 "xlc -E" doesn't understand
33494         #include_next, gives a diagnostic about it, but reports no error in
33495         the exit code.
33496         Reported by Gary V. Vaughan <gary@thewrittenword.com>.
33497
33498 2007-07-24  Ben Pfaff  <blp@gnu.org>
33499
33500         Improve name: "count-one-bits" is better than "popcount".
33501         * MODULES.html.sh: Update name.
33502         * lib/popcount.h: Renamed lib/count-one-bits.h.
33503         (popcount): Renamed count_one_bits.
33504         (popcountl): Renamed count_one_bits_l.
33505         (popcountll): Renamed count_one_bits_ll.
33506         * m4/popcount.m4: Renamed m4/count-one-bits.m4.
33507         * modules/popcount: Renamed module/count-one-bits.
33508         * modules/popcount-tests: Renamed module/count-one-bits-tests.
33509         * tests/test-popcount.c: Renamed tests/test-count-one-bits.c.
33510
33511 2007-07-23  Ben Pfaff  <blp@gnu.org>
33512
33513         * lib/popcount.h (popcount32): Reduce size of constants, to allow
33514         better code generation, and add U to large constants to avoid
33515         warnings, in non-GCC case.
33516         Suggested by Bruno Haible.
33517
33518 2007-07-23  Ben Pfaff  <blp@gnu.org>
33519
33520         * lib/popcount.h: Use verify_true instead of if...abort.
33521         * modules/popcount: Depend on verify module.
33522         Suggested by Jim Meyering.
33523
33524 2007-07-23  Bruno Haible  <bruno@clisp.org>
33525
33526         * gnulib-tool (func_import): Create a .cvsignore file also when the
33527         directory is not yet in CVS but the toplevel directory is. When
33528         creating a .cvsignore file, add ".deps" and ".dirstamp" to it.
33529         Reported by Karl Berry.
33530
33531 2007-07-22  Ben Pfaff  <blp@gnu.org>
33532
33533         * lib/popcount.h: Use faster, branchless algorithm for non-GCC
33534         case.
33535         Suggested by Eric Blake.
33536
33537 2007-07-22  Ben Pfaff  <blp@gnu.org>
33538
33539         New module: popcount.
33540         * MODULES.html.sh: Add popcount.
33541         * modules/popcount: New file.
33542         * modules/popcount-tests: New file.
33543         * tests/test-popcount.c: New file.
33544         * lib/popcount.h: New file.
33545         * m4/popcount.m4: New file.
33546
33547 2007-07-22  Paul Eggert  <eggert@cs.ucla.edu>
33548
33549         * build-aux/announce-gen: Update to GPLv3.
33550
33551         * build-aux/config.guess: Update from config.
33552
33553 2007-07-21  Bruno Haible  <bruno@clisp.org>
33554
33555         * lib/error.c (_) [ENABLE_NLS]: Define to gettext.
33556         * lib/verror.c (_) [ENABLE_NLS]: Likewise.
33557
33558 2007-07-20  Jim Meyering  <jim@meyering.net>
33559
33560         * check-module: Diagnose a self-dependency.
33561
33562 2007-07-19  Bruno Haible  <bruno@clisp.org>
33563
33564         * gnulib-tool (func_import): Don't abort if pobase or po_domain is
33565         empty.
33566         Reported by Eric Blake.
33567
33568 2007-07-18  Bruno Haible  <bruno@clisp.org>
33569
33570         * gnulib-tool: New options --po-base, --po-domain.
33571         (func_usage): Document them.
33572         (pobase, po_domain): New variables.
33573         (func_emit_lib_Makefile_am): Augment AM_CPPFLAGS, defining
33574         DEFAULT_TEXT_DOMAIN.
33575         (func_emit_po_Makevars, func_emit_po_POTFILES_in): New functions.
33576         (func_import): Consider pobase and po_domain. Create a po/ directory.
33577         (func_create_testdir): Set pobase and po_domain to empty.
33578         * build-aux/po/Makefile.in.in: New file, from GNU gettext 0.16.1.
33579         * build-aux/po/remove-potcdate.sin: New file, from GNU gettext 0.16.1.
33580
33581 2007-07-18  Bruno Haible  <bruno@clisp.org>
33582
33583         * gnulib-tool (func_get_automake_snippet): Synthesize also an
33584         EXTRA_DIST augmentation for files in build-aux/.
33585
33586 2007-07-16  Bruno Haible  <bruno@clisp.org>
33587
33588         * modules/lseek (License): Use the synonymous term "LGPLv2+".
33589         * modules/getdelim (License): Likewise.
33590
33591 2007-07-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
33592
33593         * modules/arpa_inet (License): Use the synonymous term LGPLv2+.
33594         * modules/d-type (License): Likewise.
33595         * modules/extensions (License): Likewise.
33596         * modules/fnmatch (License): Likewise.
33597         * modules/fseeko (License): Likewise.
33598         * modules/getaddrinfo (License): Likewise.
33599         * modules/getline (License): Likewise.
33600         * modules/getlogin_r (License): Likewise.
33601         * modules/getpass (License): Likewise.
33602         * modules/gettimeofday (License): Likewise.
33603         * modules/glob (License): Likewise.
33604         * modules/inet_ntop (License): Likewise.
33605         * modules/malloc (License): Likewise.
33606         * modules/malloca (License): Likewise.
33607         * modules/memmem (License): Likewise.
33608         * modules/mempcpy (License): Likewise.
33609         * modules/memset (License): Likewise.
33610         * modules/minmax (License): Likewise.
33611         * modules/mktime (License): Likewise.
33612         * modules/netinet_in (License): Likewise.
33613         * modules/pathmax (License): Likewise.
33614         * modules/poll (License): Likewise.
33615         * modules/regex (License): Likewise.
33616         * modules/snprintf (License): Likewise.
33617         * modules/stdbool (License): Likewise.
33618         * modules/stdint (License): Likewise.
33619         * modules/stdio (License): Likewise.
33620         * modules/strcase (License): Likewise.
33621         * modules/strcasestr (License): Likewise.
33622         * modules/strdup (License): Likewise.
33623         * modules/string (License): Likewise.
33624         * modules/strndup (License): Likewise.
33625         * modules/strnlen (License): Likewise.
33626         * modules/strpbrk (License): Likewise.
33627         * modules/strptime (License): Likewise.
33628         * modules/strsep (License): Likewise.
33629         * modules/sys_select (License): Likewise.
33630         * modules/sys_socket (License): Likewise.
33631         * modules/sys_stat (License): Likewise.
33632         * modules/sys_time (License): Likewise.
33633         * modules/time (License): Likewise.
33634         * modules/time_r (License): Likewise.
33635         * modules/timegm (License): Likewise.
33636         * modules/unistd (License): Likewise.
33637         * modules/vsnprintf (License): Likewise.
33638         * modules/wctype (License): Likewise.
33639
33640 2007-07-16  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
33641
33642         * modules/argz (License): LGPLv2+.
33643
33644 2007-07-15  Karl Berry  <karl@gnu.org>
33645
33646         * doc/gnulib.texi: revise node structure per new fdl.texi.
33647
33648 2007-07-14  Bruno Haible  <bruno@clisp.org>
33649
33650         * lib/uniname/gen-uninames.lisp (main): Emit a "do not edit" line to
33651         the output file.
33652         * lib/uniname/uninames.h: Regenerated.
33653
33654 2007-07-14  Karl Berry  <karl@gnu.org>
33655
33656         * doc/*gpl*.texi, doc/fdl.texi: new versions, consistently
33657         omitting sectioning and index commands.
33658
33659 2007-07-13  Bruno Haible  <bruno@clisp.org>
33660
33661         New gnulib-tool option --more-symlinks.
33662         * gnulib-tool (func_usage): Document --more-symlinks.
33663         (do_copyrights): New variable.
33664         Recognize option --more-symlinks.
33665         (func_import): Don't add a copyright notice transform to
33666         sed_transform_lib_file if do_copyrights is empty.
33667
33668 2007-07-13  Bruno Haible  <bruno@clisp.org>
33669
33670         * lib/vasnprintf.c (decimal_point_char): Define also if
33671         (NEED_PRINTF_LONG_DOUBLE || NEED_PRINTF_INFINITE_DOUBLE)
33672         && !NEED_PRINTF_DIRECTIVE_A.
33673         Reported by Clemens Koller <clemens.koller@anagramm.de> via
33674         Gary V. Vaughan <gary@gnu.org>.
33675
33676 2007-07-13  Paul Eggert  <eggert@cs.ucla.edu>
33677
33678         * lib/inttypes_.h: Undo previous change, since it was fixed
33679         in a different way in the 2007-07-02 fix to m4/inttypes.m4.
33680
33681 2007-07-13  Bruno Haible  <bruno@clisp.org>
33682
33683         * lib/stdint_.h: Fix typo: _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H was
33684         misspelled as _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H.
33685
33686 2007-07-13  Jim Meyering  <jim@meyering.net>
33687
33688         df: Don't fail for Tru64's "file-on-file mount".
33689         * m4/fsusage.m4 (gl_FSUSAGE): Reject Tru64's buggy statvfs,
33690         so we fall through and use statfs instead.  Details here:
33691         <http://thread.gmane.org/gmane.comp.gnu.coreutils.bugs/10878>
33692         Reported by Albert Chin.
33693
33694 2007-07-13  Bruno Haible  <bruno@clisp.org>
33695
33696         * modules/alloca-opt (License): Use the synonymous term "LGPLv2+".
33697         * modules/configmake (License): Likewise.
33698         * modules/gettext (License): Likewise.
33699         * modules/gettext-h (License): Likewise.
33700         * modules/include_next (License): Likewise.
33701         * modules/link-warning (License): Likewise.
33702         * modules/localcharset (License): Likewise.
33703         * modules/localename (License): Likewise.
33704         * modules/lock (License): Likewise.
33705         * modules/relocatable-lib-lgpl (License): Likewise.
33706         * modules/size_max (License): Likewise.
33707         * modules/vasnprintf (License): Likewise.
33708         * modules/wchar (License): Likewise.
33709         * modules/xsize (License): Likewise.
33710
33711 2007-07-13  Bruno Haible  <bruno@clisp.org>
33712
33713         * gnulib-tool (func_import): Treat LGPLv2 as synonymous to LGPL.
33714         (func_create_testdir): Handle copying terms "GPLv2+" and "LGPLv2+".
33715
33716 2007-07-12  Bruno Haible  <bruno@clisp.org>
33717
33718         * doc/gnulib-intro.texi (Copyright): Clarify the license abbreviations
33719         in the modules files.
33720
33721 2007-07-11  Karl Berry  <karl@gnu.org>
33722
33723         * MODULES.html.sh (func_module): use
33724          sed -e '\|^'"${includefile}"'$|d'
33725          instead of /.../d, to avoid errors on $includefile's containing /.
33726
33727 2007-07-10  Sergey Poznyakoff  <gray@gnu.org.ua>
33728
33729         * gnulib-tool (func_import): Avoid duplication of --avoid
33730         statements
33731         (func_dest_tmpfilename,func_create_testdir): Translate `-' in file
33732         names to `_' in variable names.
33733
33734 2007-07-10  Eric Blake  <ebb9@byu.net>
33735
33736         * lib/version-etc.c (version_etc_va): Default to GPLv3+.
33737         * NEWS: Document this change.
33738
33739 2007-07-08  Bruno Haible  <bruno@clisp.org>
33740
33741         Update to Unicode 5.0.
33742         * lib/uniwidth/width.c (nonspacing_table_data): Add U+00AD,
33743         U+0350..U+035F, U+05A2, U+05BA, U+05C5, U+05C7, U+0600..U+0603,
33744         U+0610..U+0615, U+0656..U+065E, U+07EB..U+07F3, U+0A01, U+0AE2..U+0AE3,
33745         U+0CBC. Remove U+0CBF, U+0CC6. Add U+0CE2..U+0CE3, U+135F,
33746         U+17B4..U+17B5, U+17DD. Remove U+180E. Add U+1920..U+1922,
33747         U+1927..U+192B, U+1932, U+1939..U+193B, U+1A17..U+1A18, U+1B00..U+1B03,
33748         U+1B34, U+1B36..U+1B3A, U+1B3C, U+1B42, U+1B6B..U+1B73, U+1DC0..U+1DCA,
33749         U+1DFE..U+1DFF, U+20EB..U+20EF, U+A802, U+A806, U+A80B, U+A825..U+A826,
33750         U+10A01..U+10A03, U+10A05..U+10A06, U+10A0C..U+10A0F, U+10A38..U+10A3A,
33751         U+10A3F, U+1D242..U+1D244.
33752         (nonspacing_table_ind): Update.
33753         (uc_width): Assign width 0 to U+E0100..U+E01EF. Assign width 1 to
33754         U+4DC0..U+4DFF. Assign width 2 to U+2329..U+232A, U+FE10..U+FE1F.
33755
33756 2007-07-08  Bruno Haible  <bruno@clisp.org>
33757
33758         Update to Unicode 5.0.
33759         * lib/uniname/gen-uninames.lisp (main): Add the range 0x12xxx to the
33760         code transform. Extend the name index field of unicode_name_to_code and
33761         unicode_code_to_name from 16 to 24 bits.
33762         * lib/uniname/uniname.c (unicode_character_name,
33763         unicode_name_character): Add the range 0x12xxx to the code transform.
33764         * lib/uniname/uninames.h: Regenerated.
33765         * tests/uniname/UnicodeDataNames.txt: Update to Unicode 5.0.
33766
33767 2007-07-07  Bruno Haible  <bruno@clisp.org>
33768
33769         * modules/wcwidth-tests: New file.
33770         * tests/test-wcwidth.c: New file.
33771
33772         Work around MacOS X wcwidth() bug.
33773         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Test against MacOS X 10.3 bug.
33774         * lib/wcwidth.c: Include localcharset.h, streq.h, uniwidth.h.
33775         (rpl_wcwidth): Special-case the UTF-8 locales. Fall back to the
33776         original wcwidth in non-UTF-8 locales.
33777         * modules/wcwidth (Depends-on): Add localcharset, streq,
33778         uniwidth/width.
33779         * doc/functions/wcwidth.texi: Update.
33780
33781 2007-07-07  Bruno Haible  <bruno@clisp.org>
33782
33783         * lib/wchar_.h: Include the GL_LINK_WARNING macro.
33784         (wcwidth): New declaration.
33785         * m4/wchar.m4 (gl_WCHAR_MODULE_INDICATOR, gl_WCHAR_H_DEFAULTS): New
33786         macros.
33787         (gl_WCHAR_H): Require gl_WCHAR_H_DEFAULTS. Don't set WCHAR_H to empty
33788         here. Prepare for creating <wchar.h> unconditionally.
33789         * modules/wchar (Depends-on): Add link-warning.
33790         (Makefile.am): Substitute also GNULIB_WCWIDTH, HAVE_DECL_WCWIDTH,
33791         REPLACE_WCWIDTH, and GL_LINK_WARNING.
33792         * lib/wcwidth.h: Remove file.
33793         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gl_WCHAR_H_DEFAULTS. Set
33794         HAVE_DECL_WCWIDTH, REPLACE_WCWIDTH, WCHAR_H.
33795         * modules/wcwidth (Files): Remove lib/wcwidth.h.
33796         (configure.ac): Invoke gl_WCHAR_MODULE_INDICATOR.
33797         (Include): Replace wcwidth.h with <wchar.h>.
33798         * lib/wcwidth.c: Include <wchar.h> instead of wcwidth.h.
33799         * lib/mbchar.h: Don't include wcwidth.h.
33800         * lib/mbswidth.c: Likewise.
33801         * NEWS: Mention the change.
33802
33803 2007-07-07  Bruno Haible  <bruno@clisp.org>
33804
33805         * lib/wcwidth.c: New file, extracted from lib/wcwidth.h.
33806         * lib/wcwidth.h: Don't include wctype.h. Replace inline function
33807         definition with an external declaration.
33808         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Use wcwidth.c when wcwidth is not
33809         defined as a function. Remove AC_C_INLINE requirement.
33810         * modules/wcwidth (Files): Add lib/wcwidth.c.
33811         (Makefile.am): Remove redundant statement.
33812
33813 2007-07-07  Bruno Haible  <bruno@clisp.org>
33814
33815         * MODULES.html.sh (Unicode string functions): Add the new modules.
33816
33817         * tests/uniwidth/test-u32-strwidth.c: New file.
33818         * modules/uniwidth/u32-strwidth-tests: New file.
33819
33820         * lib/uniwidth/u32-strwidth.c: New file.
33821         * modules/uniwidth/u32-strwidth: New file.
33822
33823         * tests/uniwidth/test-u16-strwidth.c: New file.
33824         * modules/uniwidth/u16-strwidth-tests: New file.
33825
33826         * lib/uniwidth/u16-strwidth.c: New file.
33827         * modules/uniwidth/u16-strwidth: New file.
33828
33829         * tests/uniwidth/test-u8-strwidth.c: New file.
33830         * modules/uniwidth/u8-strwidth-tests: New file.
33831
33832         * lib/uniwidth/u8-strwidth.c: New file.
33833         * modules/uniwidth/u8-strwidth: New file.
33834
33835         * tests/uniwidth/test-u32-width.c: New file.
33836         * modules/uniwidth/u32-width-tests: New file.
33837
33838         * lib/uniwidth/u32-width.c: New file.
33839         * modules/uniwidth/u32-width: New file.
33840
33841         * tests/uniwidth/test-u16-width.c: New file.
33842         * modules/uniwidth/u16-width-tests: New file.
33843
33844         * lib/uniwidth/u16-width.c: New file.
33845         * modules/uniwidth/u16-width: New file.
33846
33847         * tests/uniwidth/test-u8-width.c: New file.
33848         * modules/uniwidth/u8-width-tests: New file.
33849
33850         * lib/uniwidth/u8-width.c: New file.
33851         * modules/uniwidth/u8-width: New file.
33852
33853         * tests/uniwidth/test-uc_width.c: New file.
33854         * modules/uniwidth/width-tests: New file.
33855
33856         * lib/uniwidth/width.c: New file, from GNU libiconv.
33857         * lib/uniwidth/cjk.h: New file, from GNU libiconv.
33858         * modules/uniwidth/width: New file.
33859
33860         * lib/uniwidth.h: New file, from GNU libiconv.
33861         * modules/uniwidth/base: New file.
33862
33863 2007-07-07  Bruno Haible  <bruno@clisp.org>
33864
33865         * lib/uniname.h: New file, from GNU gettext.
33866         * lib/uniname/gen-uninames.lisp: New file, from GNU gettext.
33867         * lib/uniname/uninames.h: New file, from GNU gettext.
33868         * lib/uniname/uniname.c: New file, from GNU gettext.
33869         * tests/uniname/test-uninames.sh: New file.
33870         * tests/uniname/test-uninames.c: New file, from GNU gettext.
33871         * tests/uniname/UnicodeDataNames.txt: New file, from GNU gettext.
33872         * modules/uniname/base: New file.
33873         * modules/uniname/uniname: New file.
33874         * modules/uniname/uniname-tests: New file.
33875         * MODULES.html.sh (Unicode string functions): Add the new modules.
33876
33877 2007-07-06  Bruno Haible  <bruno@clisp.org>
33878
33879         * doc/Makefile (TEXI2HTML): Specify a --reference-limit.
33880
33881 2007-07-06  Bruno Haible  <bruno@clisp.org>
33882
33883         * lib/sys_time_.h: Use a recursion-safe inclusion guard rather than
33884         a split double-inclusion guard. Needed for cygwin, where <sys/time.h>
33885         includes <cygwin/sys_time.h> which includes <sys/select.h> which
33886         include <sys/time.h>.
33887         Reported by Eric Blake.
33888
33889 2007-07-06  Eric Blake  <ebb9@byu.net>
33890
33891         Fix testing canonicalize on cygwin.
33892         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
33893         Revert patch from 2007-06-19.
33894         * tests/test-canonicalize-lgpl.c (main): Instead, skip test when
33895         canonicalize module is also in use.
33896         * tests/test-canonicalize.c: New file.
33897         * tests/test-canonicalize.sh: Likewise.
33898         * modules/canonicalize-tests: Likewise.
33899
33900 2007-07-06  Jim Meyering  <jim@meyering.net>
33901
33902         * lib/getugroups.c (getugroups): Detect getgrent failure.
33903         Adjust comment to reflect reality: this function may return -1.
33904
33905 2007-07-05  Sergey Poznyakoff  <gray@gnu.org.ua>
33906
33907         * build-aux/bootstrap (TP_URL,get_translations): Update to use
33908         the new TP address.
33909         (usage): Fix typo
33910         (gnulib_mk): New variable.
33911
33912 2007-07-05  Jim Meyering  <jim@meyering.net>
33913
33914         Don't let endgrent clobber errno, no matter how improbable.
33915         * lib/getugroups.c (getugroups): Save and restore errno around
33916         endgrent call.
33917
33918         Close the group DB even when failing with 2^31 or more members.
33919         * lib/getugroups.c (getugroups): Don't return without calling endgrent.
33920
33921 2007-07-04  Jim Meyering  <jim@meyering.net>
33922
33923         * lib/getugroups.h: New file.
33924         * lib/getugroups.c: Include "getugroups.h".
33925         Remove uses of "register" keyword.
33926         Move local variable, "cp", down into scope where used.
33927         Give "username" parameter the "const" attribute.
33928         * modules/getugroups (Files): Add lib/getugroups.h
33929
33930 2007-07-04  Karl Berry  <karl@gnu.org>
33931
33932         * MODULES.html.sh (func_all_modules): Complete rename of
33933         gpl/lgpl to gpl-2.0 and lgpl-2.1, and add gpl-3.0.
33934
33935 2007-07-02  Bruno Haible  <bruno@clisp.org>
33936
33937         * m4/inttypes.m4 (gl_INTTYPES_H): Define __STDC_LIMIT_MACROS in C++
33938         mode, when inttypes.h comes from gnulib.
33939         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
33940
33941 2007-07-02  Simon Josefsson  <simon@josefsson.org>
33942
33943         * NEWS: Mention lgpl module name change.
33944
33945         * modules/lgpl-2.1: Renamed from lgpl.
33946
33947         * NEWS: Mention gpl module name change.
33948
33949         * modules/gpl-3.0: New file, based on gpl-2.0.
33950
33951         * modules/gpl-2.0: Renamed from gpl.
33952
33953         * modules/gpl: Fix filename, doc/gpl.texi is now found at
33954         doc/gpl-2.0.texi.
33955
33956 2007-07-02  Paul Eggert  <eggert@cs.ucla.edu>
33957
33958         * lib/inttypes_.h [defined __cplusplus&&!defined __STDC_LIMIT_MACROS]:
33959         #define __STDC_LIMIT_MACROS temporarily while including
33960         <stdint.h>, so that __STDC_LIMIT_MACROS is defined.
33961         Problem reported by Joel E. Denny in
33962         <http://lists.gnu.org/archive/html/bug-gnulib/2007-07/msg00008.html>.
33963
33964 2007-07-01  Bruno Haible  <bruno@clisp.org>
33965
33966         * lib/unistdio.h: New file.
33967         * lib/unistdio/u-asnprintf.h: New file.
33968         * lib/unistdio/u-asprintf.h: New file.
33969         * lib/unistdio/u-printf-args.c: New file.
33970         * lib/unistdio/u-printf-args.h: New file.
33971         * lib/unistdio/u-printf-parse.h: New file.
33972         * lib/unistdio/u-snprintf.h: New file.
33973         * lib/unistdio/u-sprintf.h: New file.
33974         * lib/unistdio/u-vasprintf.h: New file.
33975         * lib/unistdio/u-vsnprintf.h: New file.
33976         * lib/unistdio/u-vsprintf.h: New file.
33977         * lib/unistdio/ulc-asnprintf.c: New file.
33978         * lib/unistdio/ulc-asprintf.c: New file.
33979         * lib/unistdio/ulc-fprintf.c: New file, based on lib/fprintf.c.
33980         * lib/unistdio/ulc-printf-parse.c: New file.
33981         * lib/unistdio/ulc-snprintf.c: New file.
33982         * lib/unistdio/ulc-sprintf.c: New file.
33983         * lib/unistdio/ulc-vasnprintf.c: New file.
33984         * lib/unistdio/ulc-vasprintf.c: New file.
33985         * lib/unistdio/ulc-vfprintf.c: New file, based on lib/vfprintf.c.
33986         * lib/unistdio/ulc-vsnprintf.c: New file.
33987         * lib/unistdio/ulc-vsprintf.c: New file.
33988         * lib/unistdio/u8-asnprintf.c: New file.
33989         * lib/unistdio/u8-asprintf.c: New file.
33990         * lib/unistdio/u8-printf-parse.c: New file.
33991         * lib/unistdio/u8-snprintf.c: New file.
33992         * lib/unistdio/u8-sprintf.c: New file.
33993         * lib/unistdio/u8-vasnprintf.c: New file.
33994         * lib/unistdio/u8-vasprintf.c: New file.
33995         * lib/unistdio/u8-vsnprintf.c: New file.
33996         * lib/unistdio/u8-vsprintf.c: New file.
33997         * lib/unistdio/u8-u8-asnprintf.c: New file.
33998         * lib/unistdio/u8-u8-asprintf.c: New file.
33999         * lib/unistdio/u8-u8-snprintf.c: New file.
34000         * lib/unistdio/u8-u8-sprintf.c: New file.
34001         * lib/unistdio/u8-u8-vasnprintf.c: New file.
34002         * lib/unistdio/u8-u8-vasprintf.c: New file.
34003         * lib/unistdio/u8-u8-vsnprintf.c: New file.
34004         * lib/unistdio/u8-u8-vsprintf.c: New file.
34005         * lib/unistdio/u16-asnprintf.c: New file.
34006         * lib/unistdio/u16-asprintf.c: New file.
34007         * lib/unistdio/u16-printf-parse.c: New file.
34008         * lib/unistdio/u16-snprintf.c: New file.
34009         * lib/unistdio/u16-sprintf.c: New file.
34010         * lib/unistdio/u16-vasnprintf.c: New file.
34011         * lib/unistdio/u16-vasprintf.c: New file.
34012         * lib/unistdio/u16-vsnprintf.c: New file.
34013         * lib/unistdio/u16-vsprintf.c: New file.
34014         * lib/unistdio/u16-u16-asnprintf.c: New file.
34015         * lib/unistdio/u16-u16-asprintf.c: New file.
34016         * lib/unistdio/u16-u16-snprintf.c: New file.
34017         * lib/unistdio/u16-u16-sprintf.c: New file.
34018         * lib/unistdio/u16-u16-vasnprintf.c: New file.
34019         * lib/unistdio/u16-u16-vasprintf.c: New file.
34020         * lib/unistdio/u16-u16-vsnprintf.c: New file.
34021         * lib/unistdio/u16-u16-vsprintf.c: New file.
34022         * lib/unistdio/u32-asnprintf.c: New file.
34023         * lib/unistdio/u32-asprintf.c: New file.
34024         * lib/unistdio/u32-printf-parse.c: New file.
34025         * lib/unistdio/u32-snprintf.c: New file.
34026         * lib/unistdio/u32-sprintf.c: New file.
34027         * lib/unistdio/u32-vasnprintf.c: New file.
34028         * lib/unistdio/u32-vasprintf.c: New file.
34029         * lib/unistdio/u32-vsnprintf.c: New file.
34030         * lib/unistdio/u32-vsprintf.c: New file.
34031         * lib/unistdio/u32-u32-asnprintf.c: New file.
34032         * lib/unistdio/u32-u32-asprintf.c: New file.
34033         * lib/unistdio/u32-u32-snprintf.c: New file.
34034         * lib/unistdio/u32-u32-sprintf.c: New file.
34035         * lib/unistdio/u32-u32-vasnprintf.c: New file.
34036         * lib/unistdio/u32-u32-vasprintf.c: New file.
34037         * lib/unistdio/u32-u32-vsnprintf.c: New file.
34038         * lib/unistdio/u32-u32-vsprintf.c: New file.
34039         * tests/unistdio/test-ulc-asnprintf1.c: New file.
34040         * tests/unistdio/test-ulc-asnprintf1.h: New file.
34041         * tests/unistdio/test-ulc-printf1.h: New file.
34042         * tests/unistdio/test-ulc-vasnprintf1.c: New file.
34043         * tests/unistdio/test-ulc-vasnprintf2.c: New file.
34044         * tests/unistdio/test-ulc-vasnprintf2.sh: New file.
34045         * tests/unistdio/test-ulc-vasnprintf3.c: New file.
34046         * tests/unistdio/test-ulc-vasnprintf3.sh: New file.
34047         * tests/unistdio/test-ulc-vasprintf1.c: New file.
34048         * tests/unistdio/test-ulc-vsnprintf1.c: New file.
34049         * tests/unistdio/test-ulc-vsprintf1.c: New file.
34050         * tests/unistdio/test-u8-asnprintf1.c: New file.
34051         * tests/unistdio/test-u8-asnprintf1.h: New file.
34052         * tests/unistdio/test-u8-printf1.h: New file.
34053         * tests/unistdio/test-u8-vasnprintf1.c: New file.
34054         * tests/unistdio/test-u8-vasnprintf2.c: New file.
34055         * tests/unistdio/test-u8-vasnprintf2.sh: New file.
34056         * tests/unistdio/test-u8-vasnprintf3.c: New file.
34057         * tests/unistdio/test-u8-vasnprintf3.sh: New file.
34058         * tests/unistdio/test-u8-vasprintf1.c: New file.
34059         * tests/unistdio/test-u8-vsnprintf1.c: New file.
34060         * tests/unistdio/test-u8-vsprintf1.c: New file.
34061         * tests/unistdio/test-u16-asnprintf1.c: New file.
34062         * tests/unistdio/test-u16-asnprintf1.h: New file.
34063         * tests/unistdio/test-u16-printf1.h: New file.
34064         * tests/unistdio/test-u16-vasnprintf1.c: New file.
34065         * tests/unistdio/test-u16-vasnprintf2.c: New file.
34066         * tests/unistdio/test-u16-vasnprintf2.sh: New file.
34067         * tests/unistdio/test-u16-vasnprintf3.c: New file.
34068         * tests/unistdio/test-u16-vasnprintf3.sh: New file.
34069         * tests/unistdio/test-u16-vasprintf1.c: New file.
34070         * tests/unistdio/test-u16-vsnprintf1.c: New file.
34071         * tests/unistdio/test-u16-vsprintf1.c: New file.
34072         * tests/unistdio/test-u32-asnprintf1.c: New file.
34073         * tests/unistdio/test-u32-asnprintf1.h: New file.
34074         * tests/unistdio/test-u32-printf1.h: New file.
34075         * tests/unistdio/test-u32-vasnprintf1.c: New file.
34076         * tests/unistdio/test-u32-vasnprintf2.c: New file.
34077         * tests/unistdio/test-u32-vasnprintf2.sh: New file.
34078         * tests/unistdio/test-u32-vasnprintf3.c: New file.
34079         * tests/unistdio/test-u32-vasnprintf3.sh: New file.
34080         * tests/unistdio/test-u32-vasprintf1.c: New file.
34081         * tests/unistdio/test-u32-vsnprintf1.c: New file.
34082         * tests/unistdio/test-u32-vsprintf1.c: New file.
34083         * modules/unistdio/base: New file.
34084         * modules/unistdio/u-printf-args: New file.
34085         * modules/unistdio/ulc-asnprintf: New file.
34086         * modules/unistdio/ulc-asprintf: New file.
34087         * modules/unistdio/ulc-fprintf: New file.
34088         * modules/unistdio/ulc-printf-parse: New file.
34089         * modules/unistdio/ulc-snprintf: New file.
34090         * modules/unistdio/ulc-sprintf: New file.
34091         * modules/unistdio/ulc-vasnprintf: New file.
34092         * modules/unistdio/ulc-vasprintf: New file.
34093         * modules/unistdio/ulc-vfprintf: New file.
34094         * modules/unistdio/ulc-vsnprintf: New file.
34095         * modules/unistdio/ulc-vsprintf: New file.
34096         * modules/unistdio/u8-asnprintf: New file.
34097         * modules/unistdio/u8-asprintf: New file.
34098         * modules/unistdio/u8-printf-parse: New file.
34099         * modules/unistdio/u8-snprintf: New file.
34100         * modules/unistdio/u8-sprintf: New file.
34101         * modules/unistdio/u8-vasnprintf: New file.
34102         * modules/unistdio/u8-vasprintf: New file.
34103         * modules/unistdio/u8-vsnprintf: New file.
34104         * modules/unistdio/u8-vsprintf: New file.
34105         * modules/unistdio/u8-u8-asnprintf: New file.
34106         * modules/unistdio/u8-u8-asprintf: New file.
34107         * modules/unistdio/u8-u8-snprintf: New file.
34108         * modules/unistdio/u8-u8-sprintf: New file.
34109         * modules/unistdio/u8-u8-vasnprintf: New file.
34110         * modules/unistdio/u8-u8-vasprintf: New file.
34111         * modules/unistdio/u8-u8-vsnprintf: New file.
34112         * modules/unistdio/u8-u8-vsprintf: New file.
34113         * modules/unistdio/u16-asnprintf: New file.
34114         * modules/unistdio/u16-asprintf: New file.
34115         * modules/unistdio/u16-printf-parse: New file.
34116         * modules/unistdio/u16-snprintf: New file.
34117         * modules/unistdio/u16-sprintf: New file.
34118         * modules/unistdio/u16-vasnprintf: New file.
34119         * modules/unistdio/u16-vasprintf: New file.
34120         * modules/unistdio/u16-vsnprintf: New file.
34121         * modules/unistdio/u16-vsprintf: New file.
34122         * modules/unistdio/u16-u16-asnprintf: New file.
34123         * modules/unistdio/u16-u16-asprintf: New file.
34124         * modules/unistdio/u16-u16-snprintf: New file.
34125         * modules/unistdio/u16-u16-sprintf: New file.
34126         * modules/unistdio/u16-u16-vasnprintf: New file.
34127         * modules/unistdio/u16-u16-vasprintf: New file.
34128         * modules/unistdio/u16-u16-vsnprintf: New file.
34129         * modules/unistdio/u16-u16-vsprintf: New file.
34130         * modules/unistdio/u32-asnprintf: New file.
34131         * modules/unistdio/u32-asprintf: New file.
34132         * modules/unistdio/u32-printf-parse: New file.
34133         * modules/unistdio/u32-snprintf: New file.
34134         * modules/unistdio/u32-sprintf: New file.
34135         * modules/unistdio/u32-vasnprintf: New file.
34136         * modules/unistdio/u32-vasprintf: New file.
34137         * modules/unistdio/u32-vsnprintf: New file.
34138         * modules/unistdio/u32-vsprintf: New file.
34139         * modules/unistdio/u32-u32-asnprintf: New file.
34140         * modules/unistdio/u32-u32-asprintf: New file.
34141         * modules/unistdio/u32-u32-snprintf: New file.
34142         * modules/unistdio/u32-u32-sprintf: New file.
34143         * modules/unistdio/u32-u32-vasnprintf: New file.
34144         * modules/unistdio/u32-u32-vasprintf: New file.
34145         * modules/unistdio/u32-u32-vsnprintf: New file.
34146         * modules/unistdio/u32-u32-vsprintf: New file.
34147         * modules/unistdio/ulc-asnprintf-tests: New file.
34148         * modules/unistdio/ulc-vasnprintf-tests: New file.
34149         * modules/unistdio/ulc-vasprintf-tests: New file.
34150         * modules/unistdio/ulc-vsnprintf-tests: New file.
34151         * modules/unistdio/ulc-vsprintf-tests: New file.
34152         * modules/unistdio/u8-asnprintf-tests: New file.
34153         * modules/unistdio/u8-vasnprintf-tests: New file.
34154         * modules/unistdio/u8-vasprintf-tests: New file.
34155         * modules/unistdio/u8-vsnprintf-tests: New file.
34156         * modules/unistdio/u8-vsprintf-tests: New file.
34157         * modules/unistdio/u16-asnprintf-tests: New file.
34158         * modules/unistdio/u16-vasnprintf-tests: New file.
34159         * modules/unistdio/u16-vasprintf-tests: New file.
34160         * modules/unistdio/u16-vsnprintf-tests: New file.
34161         * modules/unistdio/u16-vsprintf-tests: New file.
34162         * modules/unistdio/u32-asnprintf-tests: New file.
34163         * modules/unistdio/u32-vasnprintf-tests: New file.
34164         * modules/unistdio/u32-vasprintf-tests: New file.
34165         * modules/unistdio/u32-vsnprintf-tests: New file.
34166         * modules/unistdio/u32-vsprintf-tests: New file.
34167         * MODULES.html.sh (Unicode string functions): Add the new modules.
34168
34169 2007-07-01  Bruno Haible  <bruno@clisp.org>
34170
34171         * lib/sprintf.c (sprintf): Limit the available length estimation,
34172         to avoid address wraparound.
34173         * lib/vsprintf.c (vsprintf): Likewise.
34174         * modules/sprintf-posix (Dependencies): Add stdint.
34175         * modules/vsprintf-posix (Dependencies): Likewise.
34176
34177 2007-07-01  Bruno Haible  <bruno@clisp.org>
34178
34179         * gnulib-tool (self_abspathname): Determine PATH_SEPARATOR and handle
34180         Windows PATH as well. Conservative double-quoting. Comments.
34181
34182 2007-07-01  Bruno Haible  <bruno@clisp.org>
34183             Eric Blake  <ebb9@byu.net>
34184             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
34185
34186         * gnulib-tool (self_abspathname): Fix algorithm to cope with
34187         empty components in $PATH, denoting '.'.
34188
34189 2007-07-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
34190
34191         * gnulib-tool: Fix indentation.
34192         (func_create_megatestdir): Likewise.
34193         Report by Bruno Haible.
34194
34195 2007-06-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
34196
34197         Sync from Automake.
34198         * build-aux/gnupload: Fix shell portability issues with for loops.
34199         Report by Karl Berry.
34200
34201 2007-06-29  Simon Josefsson  <simon@josefsson.org>
34202
34203         * build-aux/maint.mk (POURL): Use translationproject.org.
34204
34205 2007-06-27  Simon Josefsson  <simon@josefsson.org>
34206             Bruno Haible  <bruno@clisp.org>
34207
34208         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Require gl_HEADER_SYS_SOCKET
34209         before using HAVE_WS2TCPIP_H. Check for gai_strerror through an
34210         explicit link test, rather than AC_REPLACE_FUNCS - for mingw.
34211         (gl_PREREQ_GETADDRINFO): Require gl_HEADER_SYS_SOCKET before using
34212         HAVE_SYS_SOCKET_H and HAVE_WS2TCPIP_H.
34213
34214 2007-06-27  Bruno Haible  <bruno@clisp.org>
34215
34216         * build-aux/config.rpath: Upgrade to libtool-1.5.24.
34217         * build-aux/config.libpath: Upgrade to libtool-1.5.24.
34218
34219 2007-06-26  Karl Berry  <karl@gnu.org>
34220
34221         * MODULES.html.sh: remove xreadlink-with-size.
34222
34223 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
34224
34225         * lib/time_.h: Port to Solaris 8 with Sun Studio 11, using a
34226         method that I hope also handles the double-include problem noted
34227         by Bruno Haible in
34228         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00186.html>.
34229
34230 2007-06-23  Bruno Haible  <bruno@clisp.org>
34231
34232         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
34233         Don't let the 'mostlyclean' target fail if the last subdirectory could
34234         not be removed.
34235         Reported by Karl Berry.
34236
34237 2007-06-23  Bruno Haible  <bruno@clisp.org>
34238
34239         * gnulib-tool (echo): Add a speedier workaround for ksh.
34240         * tests/test-echo.sh: Likewise.
34241
34242 2007-06-23  Bruno Haible  <bruno@clisp.org>
34243
34244         * gnulib-tool (echo): Add workarounds also for bash versions < 2.04.
34245         * tests/test-echo.sh: Likewise.
34246
34247 2007-06-23  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
34248
34249         * gnulib-tool (IFS): Initialize early, so we don't set it to
34250         empty later.
34251         (self_abspathname): Rewrite algorithm to set it, reindent.
34252         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am)
34253         (func_create_megatestdir): Merge some sed scripts.
34254
34255 2007-06-23  Paul Eggert  <eggert@cs.ucla.edu>
34256
34257         * m4/include_next.m4 (gl_CHECK_NEXT_HEADERS): Check some typos
34258         exposed by Sun Studio 11 cc on Solaris 8.
34259
34260 2007-06-22  Bruno Haible  <bruno@clisp.org>
34261
34262         * gnulib-tool (echo): Ensure the echo primitive does not interpret
34263         backslashes.
34264         * tests/test-echo.sh: New file.
34265
34266 2007-06-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
34267
34268         * gnulib-tool (func_add_or_update, func_create_testdir): Do not
34269         simplify `sed_replace_build_aux' scripts, they are portable but
34270         echoing them with `echo' is not.
34271         Report and analysis by Fernando Ferreira <fernando.prog@netcabo.pt>.
34272
34273 2007-06-21  Karl Berry  <karl@gnu.org>
34274
34275         * config/srclist.txt: guess we can't handle the licenses via
34276         srclist at the moment.
34277
34278 2007-06-21  Paul Eggert  <eggert@cs.ucla.edu>
34279
34280         * MODULES.html.sh: Add include_next.
34281         * modules/include_next: New file.
34282
34283 2007-06-20  Paul Eggert  <eggert@cs.ucla.edu>
34284
34285         * m4/include_next.m4 (gl_INCLUDE_NEXT): Define and AC_SUBST
34286         INCLUDE_NEXT.
34287         (gl_CHECK_NEXT_HEADERS): New macro.
34288         * m4/fcntl_h.m4 (gl_FCNTL_H): use gl_CHECK_NEXT_HEADERS instead of
34289         the obsolescent gl_ABSOLUTE_HEADER.
34290         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Likewise.
34291         * m4/float_h.m4 (gl_FLOAT_H): Likewise.
34292         * m4/iconv_h.m4 (gl_ICONV_H): Likewise.
34293         * m4/inttypes.m4 (gl_INTTYPES_H): Likewise.
34294         * m4/locale_h.m4 (gl_LOCALE_H): Likewise.
34295         * m4/math_h.m4 (gl_MATH_H): Likewise.
34296         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Likewise.
34297         * m4/search_h.m4 (gl_SEARCH_H): Likewise.
34298         * m4/signal_h.m4 (gl_SIGNAL_H): Likewise.
34299         * m4/stdint.m4 (gl_STDINT_H): Likewise.
34300         * m4/stdio_h.m4 (gl_STDIO_H): Likewise.
34301         * m4/stdlib_h.m4 (gl_STDLIB_H): Likewise.
34302         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Likewise.
34303         * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Likewise.
34304         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Likewise.
34305         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Likewise.
34306         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Likewise.
34307         * m4/sysexits.m4 (gl_SYSEXITS): Likewise.
34308         * m4/time_h.m4 (gl_HEADER_TIME_H_BODY): Likewise.
34309         * m4/unistd_h.m4 (gl_UNISTD_H): Likewise.
34310         * m4/wchar.m4 (gl_WCHAR_H): Likewise.
34311         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
34312         * m4/inttypes.m4 (gl_INTTYPES_H): Define
34313         _GL_JUST_INCLUDE_SYSTEM_INTTYPES_H to avoid the problem of unclean
34314         builds, since ABSOLUTE_INTTYPES_H is no longer being defined.
34315         * m4/stdint.m4 (gl_STDINT_H): Likewise, for
34316         _GL_JUST_INCLUDE_SYSTEM_STDINT_H.
34317         * lib/fcntl_.h: Use @INCLUDE_NEXT@ @NEXT_foo_H@
34318         rather than @HAVE_INCLUDE_NEXT@ and @ABSOLUTE_foo_H@.
34319         * lib/float_.h: Likewise.
34320         * lib/inttypes_.h: Likewise.
34321         * lib/math_.h: Likewise.
34322         * lib/search_.h: Likewise.
34323         * lib/signal_.h: Likewise.
34324         * lib/stdint_.h: Likewise.
34325         * lib/stdio_.h: Likewise.
34326         * lib/stdlib_.h: Likewise.
34327         * lib/string_.h: Likewise.
34328         * lib/sys_stat_.h: Likewise.
34329         * lib/sys_time_.h: Likewise.
34330         * lib/time_.h: Likewise.
34331         * lib/unistd_.h: Likewise.
34332         * lib/wchar_.h: Likewise.
34333         * lib/wctype_.h: Likewise.
34334         * lib/dirent_.h: Likewise.
34335         * lib/iconv_.h: Likewise.
34336         * lib/locale_.h: Likewise.
34337         * lib/netinet_in_.h: Likewise.
34338         * lib/sys_select_.h: Likewise.
34339         * lib/sys_socket_.h: Likewise.
34340         * lib/sysexits_.h: Likewise.
34341         * modules/fcntl (Depends-on): Depend on include_next, not
34342         absolute_header.
34343         (Makefile): Substitute INCLUDE_NEXT and NEXT_foo_H, not
34344         HAVE_INCLUDE_NEXT and ABSOLUTE_foo_H.
34345         * modules/fchdir: Likewise.
34346         * modules/float: Likewise.
34347         * modules/iconv_open: Likewise.
34348         * modules/inttypes: Likewise.
34349         * modules/locale: Likewise.
34350         * modules/math: Likewise.
34351         * modules/netinet_in: Likewise.
34352         * modules/search: Likewise.
34353         * modules/signal: Likewise.
34354         * modules/stdint: Likewise.
34355         * modules/stdio: Likewise.
34356         * modules/stdlib: Likewise.
34357         * modules/string: Likewise.
34358         * modules/sys_select: Likewise.
34359         * modules/sys_socket: Likewise.
34360         * modules/sys_stat: Likewise.
34361         * modules/sys_time: Likewise.
34362         * modules/sysexits: Likewise.
34363         * modules/time: Likewise.
34364         * modules/unistd: Likewise.
34365         * modules/wchar: Likewise.
34366         * modules/wctype: Likewise.
34367         * modules/sys_stat: Change maintainer to "all".
34368         * modules/unistd: Likewise.
34369
34370 2007-06-20  Karl Berry  <karl@gnu.org>
34371
34372         * config/srclist.txt: track www changes in license files.
34373
34374 2007-06-20  Sergey Poznyakoff  <gray@gnu.org.ua>
34375
34376         * build-aux/bootstrap: Remove stray dot.
34377         Make sure build_aux settings are honored when linking
34378         gnulib_extra_files.
34379
34380 2007-06-19  Eric Blake  <ebb9@byu.net>
34381
34382         * modules/canonicalize-lgpl-tests (test_canonicalize_lgpl_LDADD):
34383         Allow compilation on cygwin.
34384
34385 2007-06-19  Jim Meyering  <jim@meyering.net>
34386
34387         xreadlink-with-size: Remove module.  No longer used.
34388         Ex-callers now use xreadlink or mreadlink-with-size.
34389         * modules/xreadlink-with-size: Remove module.
34390         * lib/xreadlink-with-size.c: Remove file.
34391         * lib/xreadlink.h (xreadlink_with_size): Remove prototype.
34392         (xreadlink): Remove inaccurate comment.  The one in xreadlink.c,
34393         just before the function definition *is* accurate.
34394
34395         Eliminate one way canonicalize_filename_mode could exit.
34396         * lib/canonicalize.c (canonicalize_filename_mode):
34397         Use mreadlink_with_size, not xreadlink_with_size.
34398
34399 2007-06-18  Paul Eggert  <eggert@cs.ucla.edu>
34400
34401         Detect porting problems to FreeBSD/arm, which has time_t wider than
34402         long int.  Original problem reported for GNU diff by Xin Li in
34403         <http://lists.gnu.org/archive/html/bug-gnu-utils/2007-06/msg00091.html>.
34404         * modules/getdate (Depends-on): Add intprops, verify.
34405         * lib/getdate.y: Include intprops.h, verify.h.  Verify that time_t
34406         is an integer type no wider than long int.
34407
34408 2007-06-18  Jim Meyering  <jim@meyering.net>
34409
34410         New module: mreadlink-with-size.
34411         * MODULES.html.sh: Add mreadlink-with-size.
34412         * modules/mreadlink-with-size: New module
34413         * modules/canonicalize (Depends-on): Depend on mreadlink-with-size,
34414         not xreadlink-with-size.
34415         * lib/mreadlink-with-size.c, lib/mreadlink.h: New files.
34416
34417 2007-06-16  Bruno Haible  <bruno@clisp.org>
34418
34419         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Catch the MacOS X 10.4 bug.
34420         * doc/functions/frexpl.texi: Document the MacOS X 10.4 bug.
34421         Reported by Gary V. Vaughan <gary@gnu.org>.
34422
34423 2007-06-15  Paul Eggert  <eggert@cs.ucla.edu>
34424
34425         Revamp lchown so that it lives in unistd.h where it belongs.
34426         * lib/lchown.h: Remove.
34427         * lib/dirchownmod.c: Don't include lib/lchown.h.
34428         * lib/fchownat.c: Likewise.
34429         * lib/openat.c: Likewise.
34430         * lib/lchown.c (REPLACE_CHOWN): Define to 0 if the system chown
34431         does not follow symlinks.
34432         (EOPNOTSUPP): Define if not defined.
34433         * lib/unistd_.h (chown): Do not replace if REPLADE_CHOWN
34434         is defined to 0.
34435         (lchown): New decl.
34436         * m4/lchown.m4 (gl_FUNC_LCHOWN): Require gl_UNISTD_H_DEFAULTS.
34437         Do not check for lchown decl.
34438         Set REPLACE_LCHOWN.
34439         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Set GNULIB_LCHOWN,
34440         REPLACE_LCHOWN.
34441         * modules/chown: Make it clear it follows symlinks.
34442         * modules/lchown: Make it clear it doesn't follow symlinks.
34443         (Files): Remove lib/lchown.h
34444         (Depends-on): Add unistd.
34445         (configure.ac): Add gl_UNISTD_MODULE_INDICATOR([lchown]).
34446         (Include): Include <unistd.h>, not "lchown.h".
34447         * modules/unistd (unistd.h): Substitude GNULIB_LCHOWN and
34448         REPLACE_LCHOWN.
34449
34450 2007-06-15  Jim Meyering  <jim@meyering.net>
34451
34452         Change license (GPL to LGPL) of fsusage and dependents.
34453         * modules/fsusage (License): Change to LGPL.
34454         * modules/full-read (License): Likewise.
34455         * modules/full-write (License): Likewise.
34456         * modules/safe-read (License): Likewise.
34457         * modules/safe-write (License): Likewise.
34458
34459 2007-06-14  Ben Pfaff  <blp@gnu.org>
34460
34461         Missing part of allocsa -> malloca transition.
34462         * modules/relocatable-prog-wrapper: gl_ALLOCSA should be
34463         gl_MALLOCA.
34464
34465 2007-06-12  Bruno Haible  <bruno@clisp.org>
34466
34467         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Guess no when cross-compiling
34468         to ia64, x86_64, i386.
34469         Reported by Eric Blake.
34470
34471 2007-06-12  Bruno Haible  <bruno@clisp.org>
34472
34473         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Guess no also when
34474         cross-compiling to x86_64.
34475
34476 2007-06-12  Paul Eggert  <eggert@cs.ucla.edu>
34477
34478         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Fix POSIX sed portability
34479         glitch reported by Ralf Wildenhues in
34480         <http://lists.gnu.org/archive/html/bug-gnulib/2007-06/msg00114.html>.
34481
34482         * m4/regex.m4 (gl_REGEX): Catch a bug with [[:alnum:]_-] reported by
34483         Vin Shelton.
34484
34485 2007-06-11  Bruno Haible  <bruno@clisp.org>
34486
34487         * lib/printf-args.c (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Fix NULL
34488         replacement string.
34489         Reported by Eric Blake.
34490
34491 2007-06-10  Bruno Haible  <bruno@clisp.org>
34492
34493         Prepare vasnprintf code for use with Unicode strings.
34494         * lib/printf-args.h (PRINTF_FETCHARGS): New macro.
34495         (arg_type) [ENABLE_UNISTDIO]: Define TYPE_U8_STRING, TYPE_U16_STRING,
34496         TYPE_U32_STRING.
34497         (argument) [ENABLE_UNISTDIO]: Add a_u8_string, a_u16_string,
34498         a_u32_string variants.
34499         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
34500         * lib/printf-args.c: Don't include config.h and the specification
34501         header if PRINTF_FETCHARGS is already defined.
34502         (PRINTF_FETCHARGS): Renamed from printf_fetchargs.
34503         (PRINTF_FETCHARGS) [ENABLE_UNISTDIO]: Add code for TYPE_U8_STRING,
34504         TYPE_U16_STRING, TYPE_U32_STRING.
34505         * lib/printf-parse.h [ENABLE_UNISTDIO] (u8_directive, u8_directives,
34506         u16_directive, u16_directives, u32_directive, u32_directives): New
34507         types.
34508         (ulc_printf_parse, u8_printf_parse, u16_printf_parse, u32_printf_parse):
34509         New declarations.
34510         * lib/printf-parse.c: Don't include config.h and the specification
34511         header if PRINTF_PARSE is already defined. Eliminate the set of
34512         parameters for WIDE_CHAR_VERSION; the user of this file must provide
34513         them now. Include c-ctype.h.
34514         (PRINTF_PARSE) [ENABLE_UNISTDIO]: Add code implementing the 'U'
34515         directive and CHAR_T_ONLY_ASCII.
34516         * lib/vasnprintf.c: Don't include config.h and the specification header
34517         if VASNPRINTF is already defined.
34518         (DCHAR_IS_TCHAR, DCHAR_CPY): New macros.
34519         (VASNPRINTF): Use PRINTF_FETCHARGS instead of printf_fetchargs. Use
34520         DCHAR_CPY. Handle the case that DCHAR_T and FCHAR_T are not the same
34521         type. Handle the case that TCHAR_T and FCHAR_T are not of the same
34522         size. Handle the case that DCHAR_T and TCHAR_T are not the same type,
34523         add a conversion from TCHAR_T[] to DCHAR_T[], and rework the padding
34524         code accordingly.
34525         (VASNPRINTF) [ENABLE_UNISTDIO]: Implement the 'U' directive. Enable
34526         pad_ourselves also in this case, with the 'c' and 's' directives, and
34527         with a different notion of "width".
34528         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_WITH_EXTRAS): New macros.
34529
34530 2007-06-10  Bruno Haible  <bruno@clisp.org>
34531
34532         * modules/unistr/u32-mbsnlen: New file.
34533         * lib/unistr/u32-mbsnlen.c: New file.
34534
34535         * modules/unistr/u16-mbsnlen: New file.
34536         * lib/unistr/u16-mbsnlen.c: New file.
34537
34538         * modules/unistr/u8-mbsnlen: New file.
34539         * lib/unistr/u8-mbsnlen.c: New file.
34540
34541         * lib/unistr.h (u8_mbsnlen, u16_mbsnlen, u32_mbsnlen): New
34542         declarations.
34543
34544 2007-06-10  Bruno Haible  <bruno@clisp.org>
34545
34546         * lib/string_.h (mbsnlen): New declaration.
34547         * lib/mbsnlen.c: New file.
34548         * m4/mbsnlen.m4: New file.
34549         * modules/mbsnlen: New file.
34550         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Set GNULIB_MBSNLEN.
34551         * modules/string (string.h): Substitute GNULIB_MBSNLEN.
34552         * MODULES.html.sh (Internationalization functions): Add mbsnlen.
34553
34554 2007-06-10  Bruno Haible  <bruno@clisp.org>
34555
34556         * lib/mbslen.c: Include <stdlib.h>, needed for MB_CUR_MAX.
34557
34558 2007-06-10  Bruno Haible  <bruno@clisp.org>
34559
34560         * lib/mbiter.h: Include <stddef.h>, needed for ptrdiff_t.
34561         * lib/mbuiter.h: Likewise.
34562
34563 2007-06-10  Bruno Haible  <bruno@clisp.org>
34564
34565         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Check for _snprintf
34566         declaration.
34567
34568 2007-06-10  Karl Berry  <karl@gnu.org>
34569
34570         * config/srclist.txt: remove gettext entries, Bruno prefers
34571         to update individually.
34572
34573 2007-06-10  Bruno Haible  <bruno@clisp.org>
34574
34575         * lib/vasnprintf.c (VASNPRINTF) [!USE_SNPRINTF]: Remove variable
34576         'maxlen'. Ensure only length + width bytes are allocated, not
34577         length + 1 + width.
34578
34579 2007-06-09  Bruno Haible  <bruno@clisp.org>
34580
34581         * lib/vasnprintf.c (FCHAR_T, DCHAR_T, TCHAR_T): New macros.
34582         (CHAR_T): Remove macro.
34583         (VASNPRINTF): Update.
34584
34585 2007-06-09  Bruno Haible  <bruno@clisp.org>
34586
34587         * MODULES.html.sh (Unicode string functions): Add the new modules.
34588
34589         * modules/uniconv/u32-conv-to-enc: New file.
34590         * lib/uniconv/u32-conv-to-enc.c: New file.
34591         * modules/uniconv/u32-conv-to-enc-tests: New file.
34592         * tests/uniconv/test-u32-conv-to-enc.c: New file.
34593
34594         * modules/uniconv/u16-conv-to-enc: New file.
34595         * lib/uniconv/u16-conv-to-enc.c: New file.
34596         * lib/uniconv/u-conv-to-enc.h: New file.
34597         * modules/uniconv/u16-conv-to-enc-tests: New file.
34598         * tests/uniconv/test-u16-conv-to-enc.c: New file.
34599
34600         * modules/uniconv/u8-conv-to-enc: New file.
34601         * lib/uniconv/u8-conv-to-enc.c: New file.
34602         * modules/uniconv/u8-conv-to-enc-tests: New file.
34603         * tests/uniconv/test-u8-conv-to-enc.c: New file.
34604
34605         * lib/uniconv.h (u8_conv_to_encoding, u16_conv_to_encoding,
34606         u32_conv_to_encoding): New declarations.
34607
34608 2007-06-09  Bruno Haible  <bruno@clisp.org>
34609
34610         * tests/uniconv/test-u32-strconv-to-enc.c (main): Remove unused code.
34611
34612 2007-06-09  Bruno Haible  <bruno@clisp.org>
34613
34614         Rename 'allocsa' -> 'malloca', 'freesa' -> 'freea'.
34615         * modules/malloca: Renamed from modules/allocsa, updated.
34616         * lib/malloca.h: Renamed from lib/allocsa.h, updated.
34617         * lib/malloca.c: Renamed from lib/allocsa.c, updated.
34618         * lib/malloca.valgrind: Renamed from lib/allocsa.valgrind, updated.
34619         * m4/malloca.m4: Renamed from m4/allocsa.m4, updated.
34620         * modules/malloca-tests: Renamed from modules/allocsa-tests, updated.
34621         * tests/test-malloca.c: Renamed from tests/test-allocsa.c, updated.
34622         * modules/xmalloca: Renamed from modules/xallocsa, updated.
34623         * lib/xmalloca.h: Renamed from lib/xallocsa.h, updated.
34624         * lib/xmalloca.c: Renamed from lib/xallocsa.c, updated.
34625         * modules/c-strcasestr (Depends-on): Update.
34626         * lib/c-strcasestr.c: Update.
34627         * modules/c-strstr (Depends-on): Update.
34628         * lib/c-strstr.c: Update.
34629         * modules/canonicalize-lgpl (Depends-on): Update.
34630         * lib/canonicalize-lgpl.c: Update.
34631         * modules/clean-temp (Depends-on): Update.
34632         * lib/clean-temp.c: Update.
34633         * modules/csharpcomp (Depends-on): Update.
34634         * lib/csharpcomp.c: Update.
34635         * modules/csharpexec (Depends-on): Update.
34636         * lib/csharpexec.c: Update.
34637         * modules/javacomp (Depends-on): Update.
34638         * lib/javacomp.c: Update.
34639         * modules/javaexec (Depends-on): Update.
34640         * lib/javaexec.c: Update.
34641         * modules/mbscasestr (Depends-on): Update.
34642         * lib/mbscasestr.c: Update.
34643         * modules/mbsstr (Depends-on): Update.
34644         * lib/mbsstr.c: Update.
34645         * modules/setenv (Depends-on): Update.
34646         * lib/setenv.c: Update.
34647         * modules/strcasestr (Depends-on): Update.
34648         * lib/strcasestr.c: Update.
34649         * modules/striconveha (Depends-on): Update.
34650         * lib/striconveha.c: Update.
34651         * modules/relocatable-prog-wrapper (Files): Update.
34652         * lib/relocwrapper.c: Update.
34653         * build-aux/install-reloc: Update.
34654         * MODULES.html.sh (Memory management functions <stdlib.h>): Update.
34655
34656 2007-06-08  Bruno Haible  <bruno@clisp.org>
34657
34658         Port to uClibc.
34659         * lib/fbufmode.c (fbufmode): Add special code for uClibc.
34660         * lib/fpurge.c (fpurge): Likewise.
34661         * lib/freading.c (freading): Likewise.
34662         * lib/fseeko.c (rpl_fseeko): Likewise.
34663         * lib/fseterr.c (fseterr): Likewise.
34664         * lib/fwriting.c (fwriting): Likewise.
34665         * tests/test-fflush.c (main): Avoid a failure on uClibc.
34666
34667 2007-06-08  Bruno Haible  <bruno@clisp.org>
34668
34669         * m4/intlmacosx.m4: New file, extracted from gettext.m4.
34670         * m4/gettext.m4 (gt_INTL_MACOSX): Remove macro, moved to intlmacosx.m4.
34671         * modules/gettext (Files): Add m4/intlmacosx.m4.
34672
34673 2007-06-07  Bruno Haible  <bruno@clisp.org>
34674
34675         * modules/localename-tests: New file.
34676         * tests/test-localename.c: New file.
34677
34678         New module 'localename'.
34679         * lib/localename.h: New file.
34680         * lib/localename.c: New file, from GNU gettext.
34681         * m4/localename.m4: New file.
34682         * modules/localename: New file.
34683
34684 2007-06-07  Bruno Haible  <bruno@clisp.org>
34685
34686         Work around the lack of <wchar.h> on some builds of uClibc.
34687         * doc/headers/wchar.texi: Update.
34688         * lib/wchar_.h: Include <wchar.h> only if it exists.
34689         * m4/wchar.m4 (gl_WCHAR_H): Check for <wchar.h>. Set HAVE_WCHAR_H.
34690         * m4/stdint.m4 (gl_STDINT_H): Check for <wchar.h>.
34691         (gl_STDINT_TYPE_PROPERTIES): Don't try to include <wchar.h> if it
34692         doesn't exist.
34693         * modules/wchar (wchar.h): Substitute HAVE_WCHAR_H.
34694         * modules/mbfile (Depends-on): Add wchar.
34695         * modules/mbiter (Depends-on): Likewise.
34696         * modules/mbuiter (Depends-on): Likewise.
34697         Reported by Simon Josefsson.
34698
34699 2007-06-06  Paul Eggert  <eggert@cs.ucla.edu>
34700
34701         Work around problem reported by Steven M. Schweda in
34702         <http://lists.gnu.org/archive/html/bug-tar/2007-06/msg00002.html>:
34703         Tru64 5.1B with the Compaq compiler environment installed declares
34704         an 'isblank' function but does not define it in the C library.
34705         * lib/fnmatch.c (isblank): Check for HAVE_ISBLANK, too.
34706         * lib/regex_internal.h (isblank): Likewise.
34707         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for isblank existence.
34708         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
34709
34710 2007-06-05  Bruno Haible  <bruno@clisp.org>
34711
34712         Fix *printf so that it recognizes non-IEEE numbers on i386, x86_64,
34713         ia64.
34714         * modules/printf-safe: New file.
34715         * modules/fprintf-posix (Depends-on): Add printf-safe.
34716         * modules/printf-posix (Depends-on): Likewise.
34717         * modules/snprintf-posix (Depends-on): Likewise.
34718         * modules/sprintf-posix (Depends-on): Likewise.
34719         * modules/vasnprintf-posix (Depends-on): Likewise.
34720         * modules/vasprintf-posix (Depends-on): Likewise.
34721         * modules/vfprintf-posix (Depends-on): Likewise.
34722         * modules/vprintf-posix (Depends-on): Likewise.
34723         * modules/vsnprintf-posix (Depends-on): Likewise.
34724         * modules/vsprintf-posix (Depends-on): Likewise.
34725         * m4/printf.m4 (gl_PRINTF_INFINITE_LONG_DOUBLE): Require
34726         AC_C_BIGENDIAN. Define CHECK_PRINTF_SAFE if printf-safe is used. Test
34727         non-IEEE numbers on i386, x86_64, ia64. When cross-compiling, guess
34728         "no" on i386, x86_64, ia64.
34729         * tests/test-snprintf-posix.h (LDBL80_WORDS): New macro.
34730         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
34731         on i386, x86_64, ia64.
34732         * tests/test-sprintf-posix.h (LDBL80_WORDS): New macro.
34733         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
34734         on i386, x86_64, ia64.
34735         * tests/test-vasnprintf-posix.c: Include float.h.
34736         (LDBL80_WORDS): New macro.
34737         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
34738         on i386, x86_64, ia64.
34739         * tests/test-vasprintf-posix.c: Include float.h.
34740         (LDBL80_WORDS): New macro.
34741         (test_function): Check result of %La, %Lf, %Le, %Lg on non-IEEE numbers
34742         on i386, x86_64, ia64.
34743         * tests/test-snprintf-posix.c: Include float.h.
34744         * tests/test-sprintf-posix.c: Likewise.
34745         * tests/test-vsnprintf-posix.c: Likewise.
34746         * tests/test-vsprintf-posix.c: Likewise.
34747
34748 2007-06-05  Bruno Haible  <bruno@clisp.org>
34749
34750         Fix isnanl so that it recognizes non-IEEE numbers on i386, x86_64, ia64.
34751         * m4/isnanl.m4 (gl_FUNC_ISNANL_WORKS): Require AC_C_BIGENDIAN. Test
34752         non-IEEE numbers on i386, x86_64, ia64.
34753         (gl_LONG_DOUBLE_EXPONENT_LOCATION): Require AC_C_BIGENDIAN.
34754         * lib/isnan.c (FUNC): Add special code for i386, x86_64, ia64.
34755         * tests/test-isnanl.h: Include float.h.
34756         (main): Check also non-IEEE numbers on i386, x86_64, ia64.
34757
34758 2007-06-05  Bruno Haible  <bruno@clisp.org>
34759
34760         * lib/vasnprintf.c (VASNPRINTF): Do the extra handling of NaN and Inf
34761         also the %a / %A. Handle the %a / %A code before this extra handling.
34762
34763 2007-06-05  Bruno Haible  <bruno@clisp.org>
34764
34765         * lib/vasnprintf.c [NEED_PRINTF_LONG_DOUBLE ||
34766         NEED_PRINTF_INFINITE_LONG_DOUBLE]: Include fpucw.h.
34767
34768 2007-06-05  Bruno Haible  <bruno@clisp.org>
34769
34770         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): Fix
34771         typo in variable name.
34772
34773 2007-06-05  Eric Blake  <ebb9@byu.net>
34774
34775         * m4/lseek.m4 (gl_FUNC_LSEEK): Work when cross-compiling.
34776         Reported by Simon Josefsson.
34777
34778 2007-06-04  Bruno Haible  <bruno@clisp.org>
34779
34780         Avoid test failures on some PowerPC platforms.
34781         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP):
34782         Define differently for PowerPC.
34783         * tests/test-frexpl.c (MIN_NORMAL_EXP): Likewise.
34784         Reported by Gary V. Vaughan <gary@gnu.org>.
34785
34786 2007-06-02  Bruno Haible  <bruno@clisp.org>
34787
34788         Fix test-stdint failure on FreeBSD/ia64.
34789         * m4/stdint.m4 (gl_STDINT_H): Check the values of PTRDIFF_MIN,
34790         PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN,
34791         WCHAR_MAX, WINT_MIN, WINT_MAX entirely, not only for plausibility.
34792         * doc/headers/stdint.texi: Update.
34793
34794 2007-06-01  Bruno Haible  <bruno@clisp.org>
34795
34796         * tests/test-binary-io.c (main): Pass a third argument to open().
34797         Reported by Gary V. Vaughan <gary@gnu.org>.
34798
34799 2007-06-01  Bruno Haible  <bruno@clisp.org>
34800
34801         * doc/functions/frexpl.texi: Update for mingw.
34802
34803 2007-06-01  Bruno Haible  <bruno@clisp.org>
34804
34805         * tests/test-lseek.c (main): Disable test of errno for invalid third
34806         argument.
34807         * doc/functions/lseek.texi: Update.
34808         Reported by Gary V. Vaughan <gary@gnu.org>.
34809
34810 2007-05-28  Bruno Haible  <bruno@clisp.org>
34811
34812         * m4/intl.m4 (AM_INTL_SUBDIR): Substitute variables WOE32, WINDRES.
34813
34814 2007-05-31  Eric Blake  <ebb9@byu.net>
34815
34816         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Guess no on mingw when
34817         cross compiling.
34818
34819 2007-05-30  Eric Blake  <ebb9@byu.net>
34820         and Bruno Haible  <bruno@clisp.org>
34821
34822         Work around mingw test failures exposed by m4-1.4.9b.
34823         * m4/stdint.m4 (gl_STDINT_H): Detect mingw bug.
34824         * tests/test-unistd.c: Disable uid_t and git_t tests for the
34825         moment.
34826
34827 2007-05-30  Bruno Haible  <bruno@clisp.org>
34828
34829         * tests/test-lseek.c: Explicitly close file descriptors 0 and 1 before
34830         assuming that they are closed. Needed on HP-UX 11.
34831
34832 2007-05-29  Bruno Haible  <bruno@clisp.org>
34833
34834         Fix a problem with #include_next.
34835         * lib/dirent_.h: Split the double-inclusion guard.
34836         * lib/fcntl_.h: Likewise.
34837         * lib/float_.h: Likewise.
34838         * lib/iconv_.h: Likewise.
34839         * lib/inttypes_.h: Likewise.
34840         * lib/locale_.h: Likewise.
34841         * lib/math_.h: Likewise.
34842         * lib/netinet_in_.h: Likewise.
34843         * lib/search_.h: Likewise.
34844         * lib/signal_.h: Likewise.
34845         * lib/stdint_.h: Likewise.
34846         * lib/stdio_.h: Likewise.
34847         * lib/stdlib_.h: Likewise.
34848         * lib/string_.h: Likewise.
34849         * lib/sys_select_.h: Likewise.
34850         * lib/sys_socket_.h: Likewise.
34851         * lib/sys_stat_.h: Likewise.
34852         * lib/sys_time_.h: Likewise.
34853         * lib/sysexits_.h: Likewise.
34854         * lib/time_.h: Likewise.
34855         * lib/unistd_.h: Likewise.
34856         * lib/wchar_.h: Likewise.
34857         * lib/wctype_.h: Likewise.
34858
34859 2007-05-29  Bruno Haible  <bruno@clisp.org>
34860
34861         * tests/test-unistd.c: Disable the tests for useconds_t and intptr_t
34862         for the moment.
34863
34864 2007-05-29  Bruno Haible  <bruno@clisp.org>
34865
34866         * m4/isnan.m4 (gl_DOUBLE_EXPONENT_LOCATION): Silence the AC_C_BIGENDIAN
34867         invocation.
34868         Reported by Eric Blake.
34869
34870 2007-05-29  Bruno Haible  <bruno@clisp.org>
34871
34872         * m4/isnanf.m4 (gl_FLOAT_EXPONENT_LOCATION): Fix typo in cross-
34873         compiling case.
34874
34875 2007-05-29  Eric Blake  <ebb9@byu.net>
34876             Bruno Haible  <bruno@clisp.org>
34877
34878         * m4/isnanf.m4 (gl_FUNC_ISNANF_NO_LIBM): Avoid syntax error on
34879         cross compiles.
34880
34881 2007-05-28  Eric Blake  <ebb9@byu.net>
34882
34883         * modules/closein-tests (test_closein_LDADD): Support test on
34884         cygwin with libtool.
34885
34886 2007-05-28  Bruno Haible  <bruno@clisp.org>
34887
34888         * tests/uniconv/test-u16-conv-from-enc.c: Remove #ifdef HAVE_CONFIG_H.
34889         * tests/uniconv/test-u16-strconv-from-enc.c: Likewise.
34890         * tests/uniconv/test-u16-strconv-to-enc.c: Likewise.
34891         * tests/uniconv/test-u32-conv-from-enc.c: Likewise.
34892         * tests/uniconv/test-u32-strconv-from-enc.c: Likewise.
34893         * tests/uniconv/test-u32-strconv-to-enc.c: Likewise.
34894         * tests/uniconv/test-u8-conv-from-enc.c: Likewise.
34895         * tests/uniconv/test-u8-strconv-from-enc.c: Likewise.
34896         * tests/uniconv/test-u8-strconv-to-enc.c: Likewise.
34897
34898 2007-05-28  Eric Blake  <ebb9@byu.net>
34899
34900         Unconditionally include <config.h> in unit tests.
34901         * tests/test-alloca-opt.c: Remove #ifdef HAVE_CONFIG_H.
34902         * tests/test-allocsa.c, tests/test-arcfour.c,
34903         tests/test-arctwo.c, tests/test-argmatch.c, tests/test-argp.c,
34904         tests/test-array_list.c, tests/test-array_oset.c,
34905         tests/test-atexit.c, test-avltree_list.c, test-avltree_oset.c,
34906         test-avltreehash_list.c, test-base64.c, test-binary-io.c,
34907         test-c-ctype.c, test-c-strcasecmp.c, test-c-strcasestr.c,
34908         test-c-strncasecmp.c, test-c-strstr.c, test-canonicalize-lgpl.c,
34909         test-carray_list.c, test-crc.c, test-des.c, test-dirname.c,
34910         test-fflush.c, test-fprintf-posix.c, test-gc-arcfour.c,
34911         test-gc-arctwo.c, test-gc-des.c, test-gc-hmac-md5.c,
34912         test-gc-hmac-sha1.c, test-gc-md2.c, test-gc-md4.c, test-gc-md5.c,
34913         test-gc-pbkdf2-sha1.c, test-gc-rijndael.c, test-gc-sha1.c,
34914         test-gc.c, test-getpass.c, test-hmac-md5.c, test-hmac-sha1.c,
34915         test-iconv.c, test-linked_list.c, test-linkedhash_list.c,
34916         test-lock.c, test-mbscasecmp.c, test-mbscasestr1.c,
34917         test-mbscasestr2.c, test-mbscasestr3.c, test-mbscasestr4.c,
34918         test-mbschr.c, test-mbscspn.c, test-mbsncasecmp.c, test-mbspbrk.c,
34919         test-mbspcasecmp.c, test-mbsrchr.c, test-mbsspn.c, test-mbsstr1.c,
34920         test-mbsstr2.c, test-mbsstr3.c, test-md2.c, test-md4.c,
34921         test-md5.c, test-memmem.c, test-printf-posix.c,
34922         test-rbtree_list.c, test-rbtree_oset.c, test-rbtreehash_list.c,
34923         test-read-file.c, test-rijndael.c, test-snprintf-posix.c,
34924         test-snprintf.c, test-sprintf-posix.c, test-stdint.c,
34925         test-strcasestr.c, test-striconv.c, test-striconveh.c,
34926         test-striconveha.c, test-tls.c, test-vasnprintf-posix.c,
34927         test-vasnprintf-posix2.c, test-vasnprintf.c,
34928         test-vasprintf-posix.c, test-vasprintf.c, test-verify.c,
34929         test-vfprintf-posix.c, test-vprintf-posix.c,
34930         test-vsnprintf-posix.c, test-vsnprintf.c, test-vsprintf-posix.c,
34931         test-xvasprintf.c: Likewise.
34932
34933 2007-05-28  Bruno Haible  <bruno@clisp.org>
34934
34935         * gnulib-tool (func_import): Remember the --with-tests command-line
34936         option through the macro gl_WITH_TESTS in the gnulib-cache.m4.
34937         Reported by Eric Blake.
34938
34939 2007-05-28  Bruno Haible  <bruno@clisp.org>
34940
34941         * modules/ftell-tests: New file.
34942         * tests/test-ftell.c: New file, based on tests/test-ftello.c.
34943         * tests/test-ftell.sh: New file, based on tests/test-ftello.sh.
34944
34945         * lib/ftell.c: New file.
34946         * modules/ftell: New file.
34947         * m4/ftell.m4: New file.
34948         * doc/functions/ftell.texi: Update.
34949         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELL,
34950         REPLACE_FTELL.
34951         * lib/stdio_.h (rpl_ftell): New declaration.
34952         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELL,
34953         REPLACE_FTELL.
34954
34955 2007-05-28  Eric Blake  <ebb9@byu.net>
34956
34957         * lib/allocsa.h (safe_alloca): Avoid compiler warning.
34958
34959 2007-05-28  Bruno Haible  <bruno@clisp.org>
34960
34961         * modules/fseek-tests: New file.
34962         * tests/test-fseek.c: New file, based on tests/test-fseeko.c.
34963         * tests/test-fseek.sh: New file, based on tests/test-fseeko.sh.
34964
34965         * lib/fseek.c: New file.
34966         * modules/fseek: New file.
34967         * m4/fseek.m4: New file.
34968         * doc/functions/fseek.texi: Update.
34969         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEK,
34970         REPLACE_FSEEK.
34971         * lib/stdio_.h (rpl_fseek): New declaration.
34972         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEK,
34973         REPLACE_FSEEK.
34974
34975 2007-05-28  Bruno Haible  <bruno@clisp.org>
34976
34977         * lib/stdio_.h (fflush): More comments.
34978
34979 2007-05-28  Bruno Haible  <bruno@clisp.org>
34980
34981         * m4/lseek.m4 (gl_FUNC_LSEEK): When not cross-compiling, perform a real
34982         runtime test.
34983
34984 2007-05-28  Eric Blake  <ebb9@byu.net>
34985
34986         Improve lseek module.
34987         * lib/lseek.c (rpl_lseek): Detect EBADF on mingw.
34988         * lib/unistd_.h (lseek): Scale back link warning message.
34989         * tests/test-lseek.c: Beef up test.
34990         * tests/test-lseek.sh: Exercise more facets of lseek.
34991         Reported by Bruno Haible.
34992
34993 2007-05-28  Bruno Haible  <bruno@clisp.org>
34994
34995         * tests/test-unistd.c: Test all the types that <unistd.h> is expected
34996         to define.
34997
34998 2007-05-27  Bruno Haible  <bruno@clisp.org>
34999
35000         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-31 patch.
35001
35002 2007-05-27  Bruno Haible  <bruno@clisp.org>
35003
35004         * modules/openmp: New file.
35005         * m4/openmp.m4: New file, taken from autoconf's CVS with changes by
35006         Noah Misch.
35007
35008 2007-05-26  Bruno Haible  <bruno@clisp.org>
35009
35010         * modules/chdir-long (Depends-on): Add fchdir.
35011         * modules/chdir-safer (Depends-on): Likewise.
35012         * modules/fts (Depends-on): Likewise.
35013         * modules/fts-lgpl (Depends-on): Likewise.
35014         * modules/openat (Depends-on): Likewise.
35015         * modules/savewd (Depends-on): Likewise.
35016
35017 2007-05-24  Eric Blake  <ebb9@byu.net>
35018
35019         Fix lseek on mingw.
35020         * modules/lseek: New module.
35021         * m4/lseek.m4: New file.
35022         * lib/lseek.c: New file.
35023         * modules/lseek-tests: New file.
35024         * tests/test-lseek.c: New file.
35025         * tests/test-lseek.sh: New file.
35026         * MODULES.html.sh: Document lseek module.
35027         * modules/fflush (Depends-on): Add lseek, fseeko.
35028         * modules/fseeko (Depends-on): Likewise.
35029         * modules/ftello (Depends-on): Likewise.
35030         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Replace fseek[o] if lseek is
35031         broken.
35032         * m4/ftello.m4 (gl_FUNC_FTELLO): Replace ftell[o] if lseek is
35033         broken.
35034         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Trigger fseeko module.
35035         * lib/fseeko.c (rpl_fseeko): Quit early on non-seekable files.
35036         * lib/ftello.c (rpl_ftello): Likewise.
35037         * tests/test-fseeko.c (main): Test this.
35038         * tests/test-fseeko.sh: Likewise.
35039         * tests/test-ftello.c (main): Likewise.
35040         * tests/test-ftello.sh: Likewise.
35041         * lib/stdio_.h (fseek, ftell): Simplify, since missing fseeko now
35042         implies replacing fseek.
35043         * modules/stdio (Makefile.am): No longer need HAVE_FSEEKO,
35044         HAVE_FTELLO.
35045         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add lseek info.
35046         * modules/unistd (Makefile.am): Likewise.
35047         * lib/unistd_.h (lseek): Declare a replacement.
35048         * doc/functions/lseek.texi (lseek): Document this fix.
35049         * doc/functions/fseek.texi (fseek): Likewise.
35050         * doc/functions/ftell.texi (ftell): Likewise.
35051
35052 2007-05-24  Bruno Haible  <bruno@clisp.org>
35053
35054         * tests/test-vasnprintf-posix.c (test_function): Allow up to 50 bytes
35055         in the printed representation of a NaN.
35056         * tests/test-vasprintf-posix.c (test_function): Likewise.
35057         * tests/test-snprintf-posix.h (test_function): Likewise.
35058         * tests/test-sprintf-posix.h (test_function): Likewise.
35059         Reported by Eric Blake.
35060
35061 2007-05-23  Eric Blake  <ebb9@byu.net>
35062
35063         Fix fseeko/ftello on cygwin 1.5.24.
35064         * doc/functions/fseeko.texi (fseeko): Document the fix.
35065         * doc/functions/ftello.texi (ftello): Document the fix.
35066         * doc/functions/stdin.texi (stdin): Document the cygwin bug.
35067         * doc/functions/stdout.text (stdout): New file.
35068         * doc/functions/stderr.text (stderr): New file.
35069         * doc/gnulib.texi (Function Substitutes): Use new files.
35070         * tests/test-fseeko.c (main): Check for broken fseeko on cygwin
35071         prior to 1.7.0.
35072         * tests/test-ftello.c (main): Likewise for ftello.
35073         * tests/test-fseeko.sh: New file.
35074         * tests/test-ftello.sh: New file.
35075         * modules/fseeko-tests (Makefile.am): Ensure test-fseeko is run
35076         with seekable stdin.
35077         * modules/ftello-tests (Makefile.am): Likewise for test-ftello.
35078         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Detect the cygwin bug.
35079         (gl_REPLACE_FSEEKO): New macro.
35080         * m4/ftello.m4 (gl_FUNC_FTELLO, gl_REPLACE_FTELLO): Likewise.
35081         * modules/fseeko (Files): Distribute fseeko.c.
35082         * modules/ftello (Files): Distribute ftello.c.
35083         * lib/fseeko.c (rpl_fseeko) [__CYGWIN__]: Convert stdin to 64-bit
35084         mode.
35085         * lib/ftello.c (rpl_ftello): New file.
35086         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Allow replacement of
35087         fseeko, ftello.
35088         (gl_STDIN_LARGE_OFFSET): New macro.
35089         * modules/stdio (Makefile.am): Perform the replacement.
35090         * lib/stdio_.h (rpl_fseeko, rpl_ftello): Define when needed.
35091
35092 2007-05-23  Bruno Haible  <bruno@clisp.org>
35093
35094         * lib/stdio_.h (fseeko, ftello): Provide a link warning only if
35095         GNULIB_POSIXCHECK is defined.
35096
35097 2007-05-21  Bruno Haible  <bruno@clisp.org>
35098
35099         * m4/printf.m4 (gl_PRINTF_INFINITE, gl_PRINTF_INFINITE_LONG_DOUBLE):
35100         Check also the output for NaN arguments. When cross-compiling, guess
35101         no on IRIX.
35102         * lib/vasnprintf.c: Update comments.
35103         * tests/test-vasnprintf-posix.c (strisnan): New function.
35104         (test_function): Use it.
35105         * tests/test-vasprintf-posix.c (strisnan): New function.
35106         (test_function): Use it.
35107         * tests/test-snprintf-posix.h (strisnan): New function.
35108         (test_function): Use it.
35109         * tests/test-sprintf-posix.h (strisnan): New function.
35110         (test_function): Use it.
35111         Reported by Eric Blake.
35112
35113 2007-05-20  Bruno Haible  <bruno@clisp.org>
35114
35115         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Add test for large finite
35116         numbers that fails on BeOS.
35117         * doc/functions/frexpl.texi: Update.
35118
35119 2007-05-20  Jim Meyering  <jim@meyering.net>
35120
35121         * NEWS: Mention the incompatible change (s/futimens/gl_futimens/)
35122         forced upon us by glibc-2.6.
35123
35124 2007-05-20  Bruno Haible  <bruno@clisp.org>
35125
35126         Fix *printf result for NaN, Inf on AIX, Solaris, OSF/1.
35127         * m4/printf.m4 (gl_PRINTF_INFINITE): Update cross-compiling guesses.
35128         (gl_PRINTF_INFINITE_LONG_DOUBLE): New macro.
35129         * lib/vasnprintf.c: Use NEED_PRINTF_INFINITE_DOUBLE instead of
35130         NEED_PRINTF_INFINITE.
35131         (is_infinitel): New function.
35132         (VASNPRINTF): Handle NEED_PRINTF_INFINITE_LONG_DOUBLE case.
35133         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE): Renamed from
35134         gl_PREREQ_VASNPRINTF_INFINITE.
35135         (gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE): New macro.
35136         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
35137         gl_PRINTF_INFINITE_LONG_DOUBLE and test its result. Invoke
35138         gl_PREREQ_VASNPRINTF_INFINITE_DOUBLE and
35139         gl_PREREQ_VASNPRINTF_INFINITE_LONG_DOUBLE instead of
35140         gl_PREREQ_VASNPRINTF_INFINITE.
35141         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
35142         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
35143         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
35144         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
35145         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
35146         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
35147         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
35148         * doc/functions/fprintf.texi: Update.
35149         * doc/functions/printf.texi: Update.
35150         * doc/functions/snprintf.texi: Update.
35151         * doc/functions/sprintf.texi: Update.
35152         * doc/functions/vfprintf.texi: Update.
35153         * doc/functions/vprintf.texi: Update.
35154         * doc/functions/vsnprintf.texi: Update.
35155         * doc/functions/vsprintf.texi: Update.
35156
35157 2007-05-20  Bruno Haible  <bruno@clisp.org>
35158
35159         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): Set REPLACE_FREXPL if frexpl
35160         was not found in libc.
35161         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Likewise.
35162
35163 2007-05-20  Bruno Haible  <bruno@clisp.org>
35164
35165         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
35166         printed as "-nan" instead of "nan".
35167         * tests/test-vasprintf-posix.c (test_function): Likewise.
35168         * tests/test-snprintf-posix.h (test_function): Likewise.
35169         * tests/test-sprintf-posix.h (test_function): Likewise.
35170         Needed for HP-UX 11.
35171
35172 2007-05-20  Jim Meyering  <jim@meyering.net>
35173
35174         Fix buggy test for the fchownat-deref bug.
35175         * m4/openat.m4 (gl_FUNC_FCHOWNAT_DEREF_BUG): Create the dangling
35176         symlink required for the run-test.  Without it, this test would
35177         always declare that fchownat doesn't work, and client code would
35178         unnecessarily use the replacement function with fixed libc.
35179         (gl_FUNC_FCHOWNAT): Eliminate a variable that wasn't initialized.
35180         Reported by Greg Schafer.
35181
35182 2007-05-19  Bruno Haible  <bruno@clisp.org>
35183
35184         * m4/isnanf.m4 (gl_ISNANF_WORKS): New macro.
35185         (gl_FUNC_ISNANF_NO_LIBM): Invoke it.
35186         * lib/isnan.c (FUNC): Use run-time expressions for SGI compiler.
35187         Needed for IRIX 6.5 and Solaris 2.5.1.
35188
35189 2007-05-19  Bruno Haible  <bruno@clisp.org>
35190
35191         * tests/test-vasnprintf-posix.c (have_minus_zero): New function.
35192         (test_function): Skip tests involving -0.0 on platforms where
35193         -0.0 = 0.0.
35194         * tests/test-vasprintf-posix.c (have_minus_zero): New function.
35195         (test_function): Skip tests involving -0.0 on platforms where
35196         -0.0 = 0.0.
35197         * tests/test-snprintf-posix.h (have_minus_zero): New function.
35198         (test_function): Skip tests involving -0.0 on platforms where
35199         -0.0 = 0.0.
35200         * tests/test-sprintf-posix.h (have_minus_zero): New function.
35201         (test_function): Skip tests involving -0.0 on platforms where
35202         -0.0 = 0.0.
35203         * tests/test-fprintf-posix.h (test_function): Remove all -0.0 related
35204         tests.
35205         * tests/test-printf-posix.h (test_function): Likewise.
35206         * tests/test-printf-posix.output: Remove all -0.0 related results.
35207         Needed for IRIX 6.5.
35208
35209 2007-05-19  Bruno Haible  <bruno@clisp.org>
35210
35211         * tests/test-vasnprintf-posix.c (test_function): Allow NaN to be
35212         printed as "nan0x7fffffff" instead of "nan".
35213         * tests/test-vasprintf-posix.c (test_function): Likewise.
35214         * tests/test-snprintf-posix.h (test_function): Likewise.
35215         * tests/test-sprintf-posix.h (test_function): Likewise.
35216         * tests/test-fprintf-posix.h (NaN): Remove macro.
35217         (test_function): Remove all NaN related tests.
35218         * tests/test-printf-posix.h (NaN): Remove macro.
35219         (test_function): Remove all NaN related tests.
35220         * tests/test-printf-posix.output: Remove all NaN related results.
35221         Needed for IRIX 6.5.
35222
35223 2007-05-19  Bruno Haible  <bruno@clisp.org>
35224
35225         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Fix C89 syntax error in test code.
35226         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Likewise.
35227
35228 2007-05-19  Bruno Haible  <bruno@clisp.org>
35229
35230         * lib/float_.h: New file.
35231         * m4/float_h.m4: New file.
35232         * modules/float: New file.
35233         * modules/isnanl (Dependencies): Add float.
35234         * modules/isnanl-nolibm (Dependencies): Likewise.
35235         * modules/mathl (Dependencies): Likewise.
35236         * modules/printf-frexpl (Dependencies): Likewise.
35237         * modules/signbit (Dependencies): Likewise.
35238         * modules/vasnprintf (Dependencies): Likewise.
35239         * doc/headers/float.texi: Update.
35240
35241 2007-05-19  Jim Meyering  <jim@meyering.net>
35242
35243         * lib/utimens.c (gl_futimens): Rename from futimens,
35244         now that glibc-2.6 declares futimens.
35245         * lib/utimens.h: Likewise.
35246
35247 2007-05-19  Bruno Haible  <bruno@clisp.org>
35248
35249         Avoid test failures on mingw.
35250         * tests/test-fprintf-posix.sh: Convert CR/LF to LF in output.
35251         * tests/test-printf-posix.sh: Likewise.
35252         * tests/test-vfprintf-posix.sh: Likewise.
35253         * tests/test-vprintf-posix.sh: Likewise.
35254
35255 2007-05-19  Bruno Haible  <bruno@clisp.org>
35256
35257         Fix *printf result for NaN, Inf, -0.0 on mingw.
35258         * m4/printf.m4 (gl_PRINTF_INFINITE): New macro.
35259         * lib/vasnprintf.c: Include math.h and isnan.h.
35260         (is_infinite_or_zero): New function.
35261         (VASNPRINTF): Fix also the handling of infinite or zero 'double'
35262         values in the %f, %F, %e, %E, %g, %G directives.
35263         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_INFINITE): New macro.
35264         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
35265         gl_PRINTF_INFINITE and test its result. Invoke
35266         gl_PREREQ_VASNPRINTF_INFINITE.
35267         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
35268         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
35269         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
35270         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
35271         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
35272         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
35273         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
35274         * doc/functions/fprintf.texi: Update.
35275         * doc/functions/printf.texi: Update.
35276         * doc/functions/snprintf.texi: Update.
35277         * doc/functions/sprintf.texi: Update.
35278         * doc/functions/vfprintf.texi: Update.
35279         * doc/functions/vprintf.texi: Update.
35280         * doc/functions/vsnprintf.texi: Update.
35281         * doc/functions/vsprintf.texi: Update.
35282
35283 2007-05-19  Bruno Haible  <bruno@clisp.org>
35284
35285         * lib/vasnprintf.c (convert_to_decimal): Add an extra_zeroes argument.
35286         (scale10_round_decimal_long_double): Inline scale10_round_long_double.
35287         Instead of multiplying with 10^k, set extra_zeroes to k.
35288         (scale10_round_long_double): Remove function.
35289
35290 2007-05-18  Bruno Haible  <bruno@clisp.org>
35291
35292         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Fix logic bug
35293         introduced on 2007-05-06.
35294
35295 2007-05-18  Bruno Haible  <bruno@clisp.org>
35296
35297         * tests/test-vasnprintf-posix.c (test_function): Also test the %e and
35298         %g directives.
35299         * tests/test-vasprintf-posix.c (test_function): Likewise.
35300         * tests/test-snprintf-posix.h (test_function): Likewise.
35301         * tests/test-sprintf-posix.h (test_function): Likewise.
35302
35303 2007-05-18  Bruno Haible  <bruno@clisp.org>
35304
35305         * tests/test-vasnprintf-posix.c (SIZEOF): New macro.
35306         (strmatch): New function.
35307         (test_function): Test the %f directive on numbers of various exponents.
35308         * tests/test-vasprintf-posix.c (SIZEOF): New macro.
35309         (strmatch): New function.
35310         (test_function): Test the %f directive on numbers of various exponents.
35311         * tests/test-snprintf-posix.h (strmatch): New function.
35312         (test_function): Test the %f directive on numbers of various exponents.
35313         * tests/test-sprintf-posix.h (strmatch): New function.
35314         (test_function): Test the %f directive on numbers of various exponents.
35315         * tests/test-snprintf-posix.c (SIZEOF): New macro.
35316         * tests/test-sprintf-posix.c (SIZEOF): New macro.
35317         * tests/test-vsnprintf-posix.c (SIZEOF): New macro.
35318         * tests/test-vsprintf-posix.c (SIZEOF): New macro.
35319
35320 2007-05-18  Bruno Haible  <bruno@clisp.org>
35321
35322         Add support for 'long double' number output.
35323         * m4/printf.m4 (gl_PRINTF_LONG_DOUBLE): New macro.
35324         * lib/vasnprintf.c: Include math.h and float+.h.
35325         (mp_limb_t): New type.
35326         (GMP_LIMB_BITS): New macro.
35327         (mp_twolimb_t): New type.
35328         (GMP_TWOLIMB_BITS): New macro.
35329         (mpn_t): New type.
35330         (multiply, divide, convert_to_decimal, decode_long_double,
35331         scale10_round_long_double, scale10_round_decimal_long_double,
35332         floorlog10l): New functions.
35333         (VASNPRINTF) [NEED_PRINTF_LONG_DOUBLE]: Implement 'long double' support
35334         for the %f, %F, %e, %E, %g, %G directives.
35335         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_LONG_DOUBLE): New macro.
35336         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
35337         gl_PRINTF_LONG_DOUBLE and test its result. Invoke
35338         gl_PREREQ_VASNPRINTF_LONG_DOUBLE.
35339         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
35340         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
35341         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
35342         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
35343         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
35344         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
35345         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
35346         * modules/fprintf-posix (Depends-on): Add frexpl-nolibm.
35347         * modules/snprintf-posix (Depends-on): Likewise.
35348         * modules/sprintf-posix (Depends-on): Likewise.
35349         * modules/vasnprintf-posix (Depends-on): Likewise.
35350         * modules/vasprintf-posix (Depends-on): Likewise.
35351         * modules/vfprintf-posix (Depends-on): Likewise.
35352         * modules/vsnprintf-posix (Depends-on): Likewise.
35353         * modules/vsprintf-posix (Depends-on): Likewise.
35354         * modules/vasnprintf (Files): Add lib/float+.h.
35355         * doc/functions/fprintf.texi: Update.
35356         * doc/functions/printf.texi: Update.
35357         * doc/functions/snprintf.texi: Update.
35358         * doc/functions/sprintf.texi: Update.
35359         * doc/functions/vfprintf.texi: Update.
35360         * doc/functions/vprintf.texi: Update.
35361         * doc/functions/vsnprintf.texi: Update.
35362         * doc/functions/vsprintf.texi: Update.
35363
35364 2007-05-18  Bruno Haible  <bruno@clisp.org>
35365
35366         * lib/vasnprintf.c (USE_SNPRINTF): Define to 0 on BeOS.
35367
35368 2007-05-18  Bruno Haible  <bruno@clisp.org>
35369
35370         * lib/vasnprintf.c (VASNPRINTF) [WIN32]: Use %I64d instead of %lld
35371         for printing 64-bit integers. Needed for mingw.
35372
35373 2007-05-18  Bruno Haible  <bruno@clisp.org>
35374
35375         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
35376         gl_FUNC_FREXPL_WORKS.
35377         * modules/printf-frexpl (Files): Add m4/frexpl.m4.
35378
35379 2007-05-18  Bruno Haible  <bruno@clisp.org>
35380
35381         * modules/frexpl-nolibm-tests: New file.
35382
35383         * modules/frexpl-nolibm: New file.
35384         * m4/frexpl.m4 (gl_FUNC_FREXPL_NO_LIBM): New macro.
35385
35386 2007-05-17  Paul Eggert  <eggert@cs.ucla.edu>
35387
35388         * lib/dirent_.h: Prefer #include_next <foo.h> to #include
35389         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
35390         GCC 4.2, which otherwise issues a lot of warnings.
35391         * lib/iconv_.h, lib/locale_.h, lib/netinet_in_.h, lib/sys_select_.h:
35392         * lib/sys_socket_.h, lib/sys_stat_.h, lib/sysexits_.h, lib/unistd_.h:
35393         Likewise.
35394         * modules/fchdir (dirent.h): Substitute @HAVE_INCLUDE_NEXT@.
35395         * modules/iconv_open (iconv.h): Likewise.
35396         * modules/locale (locale.h): Likewise.
35397         * modules/netinet_in (netinet/in.h): Likewise.
35398         * modules/sys_select (sys_select.h): Likewise.
35399         * modules/sys_socket (sys/socket.h): Likewise.
35400         * modules/sys_stat (sys/stat.h): Likewise.
35401         * modules/sysexits (sysexits.h): Likewise.
35402         * modules/unistd (unistd.h): Likewise.
35403
35404 2007-05-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
35405
35406         * modules/closein-tests (Makefile.am): Distribute
35407         `test-closein.sh'.
35408
35409 2007-05-17  Bruno Haible  <bruno@clisp.org>
35410
35411         * tests/test-printf-posix.output: Renamed from
35412         tests/test-fprintf-posix.out.
35413         * modules/fprintf-posix-tests: Update.
35414         * modules/printf-posix-tests: Update.
35415         * modules/vfprintf-posix-tests: Update.
35416         * modules/vprintf-posix-tests: Update.
35417         * tests/test-fprintf-posix.sh: Update.
35418         * tests/test-printf-posix.sh: Update.
35419         * tests/test-vfprintf-posix.sh: Update.
35420         * tests/test-vprintf-posix.sh: Update.
35421         Reported by Ralf Wildenhues.
35422
35423 2007-05-16  Paul Eggert  <eggert@cs.ucla.edu>
35424
35425         * lib/fcntl_.h: Prefer #include_next <foo.h> to #include
35426         @ABSOLUTE_FOO_H@ if @HAVE_INCLUDE_NEXT@.  This works better with
35427         GCC 4.2, which otherwise issues a lot of warnings.
35428         * lib/inttypes_.h, lib/math_.h, lib/search_.h, lib/signal_.h:
35429         * lib/stdint_.h, lib/stdio_.h, lib/stdlib_.h, lib/string_.h:
35430         * lib/sys_time_.h, lib/time_.h, lib/wchar_.h, lib/wctype_.h: Likewise.
35431         * lib/stdlib_.h: Don't bother with #pragma GCC system_header, as
35432         it should no longer be needed.
35433         * lib/string_.h: Likewise.
35434         * modules/absolute-header (HAVE_INCLUDE_NEXT): New 'make' define.
35435         * modules/fcntl (fcntl.h): Substitute @HAVE_INCLUDE_NEXT@.
35436         * modules/inttypes (inttypes.h): Likewise.
35437         * modules/math (math.h): Likewise.
35438         * modules/search (search.h): Likewise.
35439         * modules/signal (signal.h): Likewise.
35440         * modules/stdint (stdint.h): Likewise.
35441         * modules/stdio (stdio.h): Likewise.
35442         * modules/stdlib (stdlib.h): Likewise.
35443         * modules/string (string.h): Likewise.
35444         * modules/sys_time (sys/time.h): Likewise.
35445         * modules/time (time.h): Likewise.
35446         * modules/wchar (wchar.h): Likewise.
35447         * modules/wctype (wtype.h): Likewise.
35448
35449 2007-05-16  Thien-Thi Nguyen  <ttn@gnuvola.org>  (tiny change)
35450
35451         * doc/gnulib-tool.texi (CVS Issues): Fix typo.
35452
35453 2007-05-13  Bruno Haible  <bruno@clisp.org>
35454
35455         * stpcpy.m4 (gl_FUNC_STPCPY): Require AC_C_RESTRICT.
35456         * stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
35457         * strsep.m4 (gl_FUNC_STRSEP): Likewise.
35458         * strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
35459         (gl_PREREQ_STRTOK_R): Don't require it here.
35460
35461 2007-05-13  Bruno Haible  <bruno@clisp.org>
35462
35463         * lib/stdlib_.h (mkdtemp, mkstemp): Comment out argument name. Needed
35464         when used in C++ mode.
35465
35466 2007-05-12  Bruno Haible  <bruno@clisp.org>
35467
35468         * lib/linebuffer.h: Tweak doc.
35469         * lib/linebuffer.c: Likewise.
35470
35471 2007-05-12  James Youngman  <jay@gnu.org>
35472
35473         * lib/linebuffer.c (readlinebuffer_delim): New function,
35474         like readlinebuffer, but use a caller-specified delimiter.
35475         (readlinebuffer): Just call readlinebuffer_delim with '\n'
35476         as the delimiter.
35477         * lib/linebuffer.h (readlinebuffer_delim): Declare it.
35478
35479 2007-05-12  Sergey Poznyakoff  <gray@gnu.org.ua>
35480
35481         * m4/openat.m4 (gl_FUNC_OPENAT): Do not require openat-die.
35482         * modules/openat (Files): Remove openat-die.c.
35483         (Depends-on): Add openat-die.
35484         * modules/openat-die: New module.
35485
35486 2007-05-06  Bruno Haible  <bruno@clisp.org>
35487
35488         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING, gl_VSNPRINTF_ZEROSIZE_C99):
35489         Update with info about Cygwin.
35490         * doc/functions/fprintf.texi: Update.
35491         * doc/functions/printf.texi: Update.
35492         * doc/functions/snprintf.texi: Update.
35493         * doc/functions/sprintf.texi: Update.
35494         * doc/functions/vfprintf.texi: Update.
35495         * doc/functions/vprintf.texi: Update.
35496         * doc/functions/vsnprintf.texi: Update.
35497         * doc/functions/vsprintf.texi: Update.
35498         Reported by Eric Blake.
35499
35500 2007-05-06  Bruno Haible  <bruno@clisp.org>
35501
35502         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_ZERO]: Perform the
35503         padding ourselves for the floating-point directives.
35504         * m4/printf.m4 (gl_PRINTF_FLAG_ZERO): New macro.
35505         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_ZERO): New macro.
35506         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
35507         gl_PRINTF_FLAG_ZERO and test its result. Invoke
35508         gl_PREREQ_VASNPRINTF_FLAG_ZERO.
35509         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
35510         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
35511         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
35512         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
35513         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
35514         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
35515         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
35516         * tests/test-snprintf-posix.h (test_function): Also check the width
35517         and some flags in the %f directive.
35518         * tests/test-sprintf-posix.h (test_function): Likewise.
35519         * tests/test-vasnprintf-posix.c (test_function): Likewise.
35520         * tests/test-vasprintf-posix.c (test_function): Likewise.
35521         * doc/functions/fprintf.texi: Update.
35522         * doc/functions/printf.texi: Update.
35523         * doc/functions/snprintf.texi: Update.
35524         * doc/functions/sprintf.texi: Update.
35525         * doc/functions/vfprintf.texi: Update.
35526         * doc/functions/vprintf.texi: Update.
35527         * doc/functions/vsnprintf.texi: Update.
35528         * doc/functions/vsprintf.texi: Update.
35529
35530 2007-05-06  Bruno Haible  <bruno@clisp.org>
35531
35532         * lib/vasnprintf.c (VASNPRINTF) [NEED_PRINTF_FLAG_GROUPING]: Don't
35533         pass the ' flag character to sprintf or snprintf.
35534         * m4/printf.m4 (gl_PRINTF_FLAG_GROUPING): New macro.
35535         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_FLAG_GROUPING): New macro.
35536         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
35537         gl_PRINTF_FLAG_GROUPING and test its result. Invoke
35538         gl_PREREQ_VASNPRINTF_FLAG_GROUPING.
35539         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
35540         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Likewise.
35541         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
35542         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
35543         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
35544         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
35545         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
35546         * tests/test-snprintf-posix.h (test_function): Also check the grouping
35547         flag.
35548         * tests/test-sprintf-posix.h (test_function): Likewise.
35549         * tests/test-vasnprintf-posix.c (test_function): Likewise.
35550         * tests/test-vasprintf-posix.c (test_function): Likewise.
35551         * doc/functions/fprintf.texi: Update.
35552         * doc/functions/printf.texi: Update.
35553         * doc/functions/snprintf.texi: Update.
35554         * doc/functions/sprintf.texi: Update.
35555         * doc/functions/vfprintf.texi: Update.
35556         * doc/functions/vprintf.texi: Update.
35557         * doc/functions/vsnprintf.texi: Update.
35558         * doc/functions/vsprintf.texi: Update.
35559
35560 2007-05-01  Bruno Haible  <bruno@clisp.org>
35561
35562         * tests/test-argp-2.sh (func_compare): Drop .exe suffix.
35563
35564 2007-05-03  Paul Eggert  <eggert@cs.ucla.edu>
35565
35566         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Use better
35567         comment for D_INO_IN_DIRENT.  Problem reported by James Youngman.
35568
35569 2007-05-02  Paul Eggert  <eggert@cs.ucla.edu>
35570
35571         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Test whether
35572         readdir returns garbage in d_ino.  Problem reported by Kaz Sasayama in
35573         <http://lists.gnu.org/archive/html/bug-gnulib/2007-05/msg00021.html>.
35574
35575 2007-05-02  Sergey Poznyakoff  <gray@gnu.org.ua>
35576
35577         * lib/argp-help.c (struct hol_entry): New member `ord'.
35578         (HOL_ENTRY_PTRCMP): Use ord for comparison
35579         (hol_sort): Initialize ord.
35580
35581 2007-05-01  Bruno Haible  <bruno@clisp.org>
35582
35583         * doc/functions/_Exit_C99.texi: Renamed from doc/functions/_Exit.texi.
35584         Reported by Eric Blake.
35585         * doc/gnulib.texi (Function Substitutes): Update.
35586
35587 2007-05-01  Bruno Haible  <bruno@clisp.org>
35588
35589         * doc/functions.texi: Remove file, now redundant through
35590         doc/functions/*.texi.
35591
35592 2007-05-01  Bruno Haible  <bruno@clisp.org>
35593
35594         * modules/argp (Depends-on): Add sleep.
35595
35596 2007-05-01  Bruno Haible  <bruno@clisp.org>
35597
35598         * modules/sleep-tests: New file.
35599         * tests/test-sleep.c: New file.
35600
35601         * modules/sleep: New file.
35602         * lib/sleep.c: New file.
35603         * m4/sleep.m4: New file.
35604         * lib/unistd_.h (sleep): New declaration.
35605         * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_SLEEP,
35606         HAVE_SLEEP.
35607         * modules/unistd (Makefile.am): Substitute GNULIB_SLEEP, HAVE_SLEEP.
35608         * doc/functions/sleep.texi: Document the sleep module.
35609
35610 2007-05-01  Bruno Haible  <bruno@clisp.org>
35611
35612         * lib/sigprocmask.h: Remove file.
35613         * lib/signal_.h: Incorporate the previous contents of sigprocmask.h.
35614         * lib/sigprocmask.c: Include <signal.h> instead of sigprocmask.h.
35615         * m4/signal_h.m4 (gl_SIGNAL_H_DEFAULTS): Substitute GNULIB_SIGPROCMASK,
35616         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T.
35617         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Require
35618         gl_SIGNAL_H_DEFAULTS. Set HAVE_POSIX_SIGNALBLOCKING as a shell variable.
35619         (gl_PREREQ_SIGPROCMASK): Require gl_SIGNAL_H_DEFAULTS. Set
35620         HAVE_SIGSET_T as a shell variable.
35621         * modules/signal (Makefile.am): Substitute GNULIB_SIGPROCMASK,
35622         HAVE_POSIX_SIGNALBLOCKING, HAVE_SIGSET_T into signal.h.
35623         * modules/sigprocmask (Files): Remove lib/sigprocmask.h.
35624         (Depends-on): Add signal. Remove verify.
35625         (configure.ac): Invoke gl_SIGNAL_MODULE_INDICATOR.
35626         (Include): Mention <signal.h> instead of sigprocmask.h.
35627         * NEWS: Mention the change.
35628         * lib/fatal-signal.c: Don't include sigprocmask.h.
35629
35630 2007-05-01  Bruno Haible  <bruno@clisp.org>
35631
35632         * modules/signal: New file.
35633         * lib/signal_.h: New file.
35634         * m4/signal_h.m4: New file.
35635
35636 2007-05-01  Bruno Haible  <bruno@clisp.org>
35637
35638         * lib/wctype_.h: Test HAVE_ISWCNTRL at configure time.
35639         * m4/wctype.m4 (gl_WCTYPE_H): Substitute HAVE_ISWCNTRL.
35640         * modules/wctype (Makefile.am): Substitute HAVE_ISWCNTRL instead of
35641         HAVE_WCTYPE_CTMP_BUG into wctype.h.
35642
35643 2007-05-01  Bruno Haible  <bruno@clisp.org>
35644
35645         * lib/sys_stat_.h: Test HAVE_LSTAT, HAVE_DECL_MKDIR, HAVE_IO_H at
35646         configure time.
35647         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Substitute HAVE_LSTAT,
35648         HAVE_DECL_MKDIR, HAVE_IO_H via AC_SUBST.
35649         * modules/sys_stat (Makefile.am): Substitute their values into
35650         sys/stat.h.
35651
35652 2007-05-01  Bruno Haible  <bruno@clisp.org>
35653
35654         * lib/glob_.h: Test HAVE_SYS_CDEFS_H at configure time.
35655         * m4/glob.m4 (gl_PREREQ_GLOB): Substitute HAVE_SYS_CDEFS_H via AC_SUBST.
35656         * modules/glob (Makefile.am): Put HAVE_SYS_CDEFS_H value into glob.h.
35657
35658 2007-05-01  Bruno Haible  <bruno@clisp.org>
35659
35660         * doc/header/assert.texi: Undo last change: don't mention the gnulib
35661         'assert' module here.
35662
35663 2007-05-01  Bruno Haible  <bruno@clisp.org>
35664
35665         * doc/functions/*.texi: New files.
35666         * doc/functions/google-ranking.txt: New file.
35667         * doc/gnulib.texi (Function Substitutes): New chapter.
35668         (ctime, inet_ntoa): Remove sections.
35669         * doc/ctime.texi: Remove file.
35670         * doc/inet_ntoa.texi: Remove file.
35671         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Update
35672         dependencies.
35673         (%.info): New rule, specifying a --reference-limit.
35674
35675 2007-05-01  Bruno Haible  <bruno@clisp.org>
35676
35677         * MODULES.html.sh (posix_functions): Remove 'exec', 'toc'.
35678
35679 2007-05-01  Bruno Haible  <bruno@clisp.org>
35680
35681         * modules/mkdir (Depends-on): Add sys_stat, because sys_stat provides
35682         the portability of 'mkdir' to mingw systems.
35683
35684 2007-05-01  Bruno Haible  <bruno@clisp.org>
35685
35686         * doc/headers/google-ranking.txt: New file.
35687
35688 2007-04-30  Eric Blake  <ebb9@byu.net>
35689
35690         Prefer fseeko to fseek.
35691         * modules/getpass (Depends-on): Add fseeko.
35692         * lib/getpass.c (getpass): Use fseeko, not fseek.
35693
35694 2007-04-30  Sergey Poznyakoff  <gray@gnu.org.ua>
35695
35696         * lib/argp-help.c (hol_entry_cmp): Option sorting algorithm
35697         assumes the sorting is stable, while most qsort implementations
35698         are not.  Use argument addresses to ensure they never compare as
35699         equal.
35700
35701         * tests/test-argp-2.sh (usage-indent test): Fix output
35702         (func_compare): Restore diff options
35703         * tests/test-argp.c: Restore #include "progname.h"
35704
35705 2007-04-29  Bruno Haible  <bruno@clisp.org>
35706
35707         * m4/printf.m4 (gl_VSNPRINTF_ZEROSIZE_C99): New macro.
35708         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
35709         gl_VSNPRINTF_ZEROSIZE_C99. Test gl_cv_func_vsnprintf_zerosize_c99.
35710         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
35711         * modules/snprintf-posix-tests (Files): Add tests/test-snprintf.c.
35712         (configure.ac): Define CHECK_SNPRINTF_POSIX.
35713         (TESTS, check_PROGRAMS): Add test-snprintf.
35714         * modules/vsnprintf-posix-tests (Files): Add tests/test-vsnprintf.c.
35715         (configure.ac): Define CHECK_VSNPRINTF_POSIX.
35716         (TESTS, check_PROGRAMS): Add test-vsnprintf.
35717         * tests/test-snprintf.c (main) [!CHECK_SNPRINTF_POSIX]: Disable
35718         assertions that fail on HP-UX, OSF/1, or IRIX.
35719         * tests/test-vsnprintf.c (main) [!CHECK_VSNPRINTF_POSIX]: Likewise.
35720
35721 2007-04-29  Bruno Haible  <bruno@clisp.org>
35722
35723         * MODULES.html.sh (posix_functions): Remove 'contents'.
35724
35725 2007-04-29  Karl Berry  <karl@gnu.org>
35726
35727         * config/srclist.txt (gendocs_template_min): new entry.
35728
35729 2007-04-29  Bruno Haible  <bruno@clisp.org>
35730
35731         Work around fpurge bug on BSD systems.
35732         * modules/fpurge (Makefile.am): Compile fpurge.c unconditionally.
35733         * m4/fpurge.m4 (gl_FUNC_FPURGE): Don't invoke AC_LIBOBJ.
35734         * lib/fpurge.h (fpurge): Don't handle __fpurge wrapper here. Define
35735         fpurge to rpl_fpurge if the system already has this function.
35736         * lib/fpurge.c (fpurge): Handle also the __fpurge wrapper case and
35737         the case where the system already has this function. Correct invariants
35738         on BSD systems.
35739         * lib/fseeko.c (rpl_fseeko): Update recognition of preceding fflush on
35740         BSD systems.
35741
35742 2007-04-29  Sergey Poznyakoff  <gray@gnu.org.ua>
35743
35744         * lib/argp-help.c (hol_cluster_cmp): Reverse comparison.  Change
35745         proposed by Sven Verdoolaege.
35746
35747         * tests/test-argp.c: Fix option ordering.  Test deeply clustered
35748         options.
35749         * tests/test-argp-2.sh (func_compare): Use diff instead of cmp.
35750         (usage and help tests): Update
35751
35752 2007-04-29  Bruno Haible  <bruno@clisp.org>
35753
35754         * tests/test-fflush.c (main): Use a file of size 17, not 10.
35755         Print more information in case of failure. Disable a test on BeOS.
35756
35757 2007-04-29  Bruno Haible  <bruno@clisp.org>
35758
35759         * tests/**/test-*.[hc] (ASSERT): Use fprintf to show the line number.
35760         This helps debugging on systems on which no gdb is available.
35761
35762 2007-04-29  Bruno Haible  <bruno@clisp.org>
35763
35764         * lib/freading.h: Improve comments.
35765         * lib/fwriting.h: Likewise.
35766         * tests/test-freading.c (main): Don't check freading immediately after
35767         repositioning. Needed for glibc.
35768
35769 2007-04-29  Bruno Haible  <bruno@clisp.org>
35770
35771         * lib/freading.c (freading): Trivial simplification.
35772
35773 2007-04-28  Bruno Haible  <bruno@clisp.org>
35774
35775         * tests/test-fwriting.c (main): Also test the interaction between
35776         fflush and fwriting.
35777         * modules/fwriting-tests (Depends-on): Add fflush.
35778
35779         * tests/test-freading.c (main): Also test the interaction between
35780         fflush and freading.
35781         * modules/freading-tests (Depends-on): Add fflush.
35782
35783 2007-04-28  Bruno Haible  <bruno@clisp.org>
35784
35785         * lib/stdio_.h (fseek, ftell): Provide link warnings suggesting to use
35786         fseeko and ftello.
35787         Suggested by Eric Blake.
35788
35789 2007-04-28  Jim Meyering  <jim@meyering.net>
35790
35791         Avoid false-negative in gl_STDINT_H's C99 conformance test.
35792         * m4/stdint.m4 (gl_STDINT_H): When checking whether stdint.h conforms
35793         to C99, include all of gl_STDINT_INCLUDES, not just <stddef.h>.
35794
35795 2007-04-27  Eric Blake  <ebb9@byu.net>
35796
35797         * doc/headers/assert.texi (assert.h): Document assert module use.
35798
35799 2007-04-27  Bruno Haible  <bruno@clisp.org>
35800
35801         * doc/headers/*.texi: New files.
35802         * doc/gnulib.texi (Header File Substitutes): New chapter.
35803         * doc/Makefile (gnulib.info, gnulib.html, gnulib.dvi): Specify
35804         dependencies.
35805         (standards.info ,standards.html, standards.dvi): Update dependencies.
35806         (mostlyclean, clean): New targets.
35807
35808 2007-04-27  Bruno Haible  <bruno@clisp.org>
35809
35810         * lib/sysexits_.h: Renamed from lib/sysexit_.h.
35811         * modules/sysexits (Files, Makefile.am): Update.
35812
35813         * lib/sys_socket_.h: Renamed from lib/socket_.h.
35814         * modules/sys_socket (Files, Makefile.am): Update.
35815
35816         * lib/sys_stat_.h: Renamed from lib/stat_.h.
35817         * modules/sys_stat (Files, Makefile.am): Update.
35818
35819 2007-04-27  Eric Blake  <ebb9@byu.net>
35820
35821         * lib/freading.h: Improve comments.
35822         * lib/fwriting.h: Likewise.
35823         * lib/fflush.c: Likewise.
35824
35825         Fix closein for mingw.
35826         * modules/closein-tests: Add tests for closein.
35827         * tests/test-closein.c: New file.
35828         * tests/test-closein.sh: Likewise.
35829         * lib/unistd_.h [!SEEK_CUR]: Mingw also needs stdlib.h for _exit.
35830         * lib/closein.c (close_stdin): Don't fflush non-seekable streams.
35831
35832 2007-04-27  Bruno Haible  <bruno@clisp.org>
35833
35834         * lib/inttypes_.h [_DECC]: Don't use #include_next if the compiler
35835         version is < 6.
35836         * lib/math_.h [__DECC]: Likewise.
35837         * lib/stdio_.h [__DECC]: Likewise.
35838         * lib/stdlib_.h [__DECC]: Likewise.
35839         * lib/string_.h [__DECC]: Likewise.
35840         * lib/time_.h [__DECC]: Likewise.
35841         * lib/wchar_.h [__DECC]: Likewise.
35842         * lib/wctype_.h [__DECC]: Likewise.
35843
35844 2007-04-27  Bruno Haible  <bruno@clisp.org>
35845
35846         * tests/test-fbufmode.c (main): Relax test, to avoid failure on mingw.
35847
35848 2007-04-27  Bruno Haible  <bruno@clisp.org>
35849
35850         * lib/fflush.c: Add comments.
35851         * modules/fpurge-tests (Depends-on): Add fflush.
35852         * modules/freadable-tests (Depends-on): Likewise.
35853         * modules/fwritable-tests (Depends-on): Likewise.
35854
35855 2007-04-27  Charles Wilson  <libtool@cwilson.fastmail.fm>
35856
35857         * m4/argz.m4 (gl_FUNC_ARGZ): Use !HAVE_WORKING_ARGZ instead of
35858         SYSTEM_ARGZ_IS_BROKEN.  Also, minor stylistic improvements.
35859         Report by Bruno Haible <bruno@clisp.org>.
35860
35861 2007-04-26  Eric Blake  <ebb9@byu.net>
35862
35863         Fix fflush on mingw.
35864         * modules/fflush (Depends-on): Add freading.
35865         * lib/fflush.c (rpl_fflush): Use freading to avoid losing buffered
35866         but unread data.
35867
35868 2007-04-26  Eric Blake  <ebb9@byu.net>
35869         and Bruno Haible  <bruno@clisp.org>
35870
35871         Implement freading and fwriting.
35872         * lib/freading.c: New file.
35873         * lib/freading.h: Likewise.
35874         * m4/freading.m4: Likewise.
35875         * modules/freading: Likewise.
35876         * modules/freading-tests: Likewise.
35877         * tests/test-freading.c: Likewise.
35878         * lib/fwriting.c: New file.
35879         * lib/fwriting.h: Likewise.
35880         * m4/fwriting.m4: Likewise.
35881         * modules/fwriting: Likewise.
35882         * modules/fwriting-tests: Likewise.
35883         * tests/test-fwriting.c: Likewise.
35884         * MODULES.html.sh (File stream based Input/Output): Mention them.
35885
35886 2007-04-26  Bruno Haible  <bruno@clisp.org>
35887
35888         * lib/stdio_.h (fseeko, ftello): Check that off_t has the same size as
35889         'long' when we assume it.
35890         Suggested by Eric Blake.
35891
35892 2007-04-26  Bruno Haible  <bruno@clisp.org>
35893
35894         Ensure fseeko, ftello are declared on glibc systems.
35895         * modules/fflush (configure.ac-early): Require AC_FUNC_FSEEKO.
35896         * modules/fseeko (configure.ac-early): Likewise.
35897         * modules/ftello (configure.ac-early): Likewise.
35898         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Don't define HAVE_FSEEKO, rely on
35899         AC_FUNC_FSEEKO for this.
35900         * m4/fseeko.m4 (gl_FUNC_FSEEKO): Inline gl_CHECK_FSEEKO.
35901         (gl_CHECK_FSEEKO): Remove macro.
35902
35903 2007-04-26  Bruno Haible  <bruno@clisp.org>
35904
35905         * tests/test-fflush.c (main): Also check the ftell result after
35906         fflush and fseek/fseeko.
35907         * lib/fflush.c (rpl_fflush): For BSD implementations, update the
35908         file descriptor position cache in the stream.
35909         * lib/fseeko.c (rpl_fseeko): Likewise.
35910
35911 2007-04-26  Bruno Haible  <bruno@clisp.org>
35912
35913         * modules/fflush-tests (Depends-on): Add fseeko.
35914
35915 2007-04-25  Charles Wilson  <libtool@cwilson.fastmail.fm>
35916             Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
35917
35918         * lib/argz_.h: ensure error_t definition is obtained in same
35919         mechanism system argz.h would have.
35920         * m4/argz.m4 (gl_FUNC_ARGZ): add new test to check if $host's
35921         argz facilities are known bad.  Err on the side of caution if
35922         cross-compiling.
35923
35924 2007-04-25  Eric Blake  <ebb9@byu.net>
35925
35926         * lib/fpurge.c (includes): Use stdlib.h for free.
35927         * tests/test-fflush.c (main): Also test fflush-fseeko.
35928
35929 2007-04-25  Bruno Haible  <bruno@clisp.org>
35930
35931         Make fflush+fseek POSIX-compliant on FreeBSD and MacOS X.
35932         * lib/fseeko.c: New file.
35933         * lib/stdio_.h: Include <sys/types.h> when off_t is needed.
35934         (fseeko, fseek): Define to replacements if REPLACE_FFLUSH.
35935         * m4/fseeko.m4 (gl_CHECK_FSEEKO): New macro, extracted from
35936         gl_FUNC_FSEEKO.
35937         (gl_FUNC_FSEEKO): Invoke it.
35938         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Arrange to compile fseeko.c. Invoke
35939         gl_CHECK_FSEEKO. Define HAVE_FSEEKO.
35940         * modules/fflush (Files): Add lib/fseeko.c, m4/fseeko.m4.
35941
35942 2007-04-25  Bruno Haible  <bruno@clisp.org>
35943
35944         * modules/fflush (Depends-on): Add ftello.
35945
35946 2007-04-25  Bruno Haible  <bruno@clisp.org>
35947
35948         * modules/ftello-tests: New file.
35949         * tests/test-ftello.c: New file.
35950
35951         * modules/ftello: New file.
35952         * m4/ftello.m4: New file.
35953         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FTELLO,
35954         HAVE_FTELLO.
35955         * lib/stdio_.h (ftello): New declaration.
35956         * modules/stdio (Makefile.am): Substitute also GNULIB_FTELLO,
35957         HAVE_FTELLO.
35958
35959 2007-04-25  Bruno Haible  <bruno@clisp.org>
35960
35961         * modules/fseeko-tests: New file.
35962         * tests/test-fseeko.c: New file.
35963
35964         * modules/fseeko: New file.
35965         * m4/fseeko.m4: New file.
35966         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FSEEKO,
35967         HAVE_FSEEKO.
35968         * lib/stdio_.h (fseeko): New declaration.
35969         * modules/stdio (Makefile.am): Substitute also GNULIB_FSEEKO,
35970         HAVE_FSEEKO.
35971
35972 2007-04-25  Bruno Haible  <bruno@clisp.org>
35973
35974         * lib/stdio_.h (fflush): Add support for GNULIB_POSIXCHECK.
35975
35976 2007-04-25  Bruno Haible  <bruno@clisp.org>
35977
35978         * lib/unistd_.h: Include <stdio.h> if needed to get the SEEK_* macros.
35979         * tests/test-stdio.c: Check that the various SEEK_* macros are defined.
35980         * tests/test-unistd.c: Likewise.
35981         * tests/test-fcntl.c: Likewise.
35982
35983 2007-04-23  Eric Blake  <ebb9@byu.net>
35984
35985         * lib/fflush.c: Fix missing include.
35986         Reported by Bruno Haible.
35987
35988 2007-04-23  Bruno Haible  <bruno@clisp.org>
35989
35990         * lib/fpurge.c (fpurge) [glibc, BSD]: Free a malloc()ed ungetc buffer.
35991         Reported by Eric Blake.
35992
35993 2007-04-23  Bruno Haible  <bruno@clisp.org>
35994
35995         * lib/fbufmode.c (fbufmode): Port to Solaris/SPARC64.
35996
35997 2007-04-23  Bruno Haible  <bruno@clisp.org>
35998
35999         * lib/fseterr.c (fseterr): Don't hardcode the value of _IOERR.
36000
36001 2007-04-23  Bruno Haible  <bruno@clisp.org>
36002
36003         * tests/test-fbufmode.c (main): Be prepared to a failure of setvbuf.
36004         Needed on HP-UX 11.
36005
36006 2007-04-16  Eric Blake  <ebb9@byu.net>
36007
36008         Make fflush rely on fpurge.
36009         * lib/fflush.c (rpl_fflush): Rely on fpurge module, rather than
36010         open coding all variants.
36011         * modules/fflush (Depends-on): Add fpurge and unistd.
36012         * modules/fflush-tests (Depends-on): Unistd is no longer extra.
36013         * m4/fflush.m4 (gl_REPLACE_FFLUSH): Simplify.
36014
36015         Fix --with-tests compilation on cygwin.
36016         * modules/argmatch-tests (Makefile.am): List gnulib library first
36017         in LDADD.
36018         * modules/argp-tests (Makefile.am): Likewise.
36019         * modules/array-list-tests (Makefile.am): Likewise.
36020         * modules/array-oset-tests (Makefile.am): Likewise.
36021         * modules/avltree-list-tests (Makefile.am): Likewise.
36022         * modules/avltree-oset-tests (Makefile.am): Likewise.
36023         * modules/avltreehash-list-tests (Makefile.am): Likewise.
36024         * modules/carray-list-tests (Makefile.am): Likewise.
36025         * modules/dirname-tests (Makefile.am): Likewise.
36026         * modules/frexp-tests (Makefile.am): Likewise.
36027         * modules/isnanl-tests (Makefile.am): Likewise.
36028         * modules/linked-list-tests (Makefile.am): Likewise.
36029         * modules/linkedhash-list-tests (Makefile.am): Likewise.
36030         * modules/lock-tests (Makefile.am): Likewise.
36031         * modules/rbtree-list-tests (Makefile.am): Likewise.
36032         * modules/rbtree-oset-tests (Makefile.am): Likewise.
36033         * modules/rbtreehash-list-tests (Makefile.am): Likewise.
36034         * modules/tls-tests (Makefile.am): Likewise.
36035         * modules/tsearch-tests (Makefile.am): Likewise.
36036         * modules/xvasprintf-tests (Makefile.am): Likewise.
36037
36038         Fix fpurge for cygwin.
36039         * lib/fpurge.c (fpurge): Fix order of operation flub, and return a
36040         value.
36041         * modules/fpurge-tests (Depends-on): Clean up trash.
36042
36043 2007-04-16  Simon Josefsson  <simon@josefsson.org>
36044
36045         * lib/gc-libgcrypt.c (gc_hash_open): Shut up compiler warnings.
36046
36047         * m4/autobuild.m4: Re-indent.
36048
36049 2007-04-13  Bruno Haible  <bruno@clisp.org>
36050
36051         * modules/fpurge-tests: New file.
36052         * tests/test-fpurge.c: New file.
36053
36054         * modules/fpurge: New file.
36055         * lib/fpurge.h: New file.
36056         * lib/fpurge.c: New file.
36057         * m4/fpurge.m4: New file.
36058
36059 2007-04-13  Bruno Haible  <bruno@clisp.org>
36060
36061         * modules/fbufmode-tests: New file.
36062         * tests/test-fbufmode.c: New file.
36063
36064         * modules/fbufmode: New file.
36065         * lib/fbufmode.h: New file.
36066         * lib/fbufmode.c: New file.
36067         * m4/fbufmode.m4: New file.
36068
36069 2007-04-13  Bruno Haible  <bruno@clisp.org>
36070
36071         * modules/fwritable-tests: New file.
36072         * tests/test-fwritable.c: New file.
36073
36074         * modules/fwritable: New file.
36075         * lib/fwritable.h: New file.
36076         * lib/fwritable.c: New file.
36077         * m4/fwritable.m4: New file.
36078
36079 2007-04-13  Bruno Haible  <bruno@clisp.org>
36080
36081         * modules/freadable-tests: New file.
36082         * tests/test-freadable.c: New file.
36083
36084         * modules/freadable: New file.
36085         * lib/freadable.h: New file.
36086         * lib/freadable.c: New file.
36087         * m4/freadable.m4: New file.
36088
36089 2007-04-13  Bruno Haible  <bruno@clisp.org>
36090
36091         * modules/fflush-tests (Makefile.am): Remove EXTRA_DIST. Augment
36092         MOSTLYCLEANFILES.
36093
36094 2007-04-13  Paul Eggert  <eggert@cs.ucla.edu>
36095
36096         * build-aux/bootstrap (gnulib_tool_option_extras): New var, used by
36097         gzip bootstrap.conf to avoid dragging in i18n machinery.
36098         (gnulib_tool_option): Use it.
36099
36100 2007-04-13  Bruno Haible  <bruno@clisp.org>
36101
36102         * tests/test-vasnprintf-posix.c (test_function): Add tests for %f and
36103         %F directives.
36104         * tests/test-vasprintf-posix.c (test_function): Likewise.
36105         * tests/test-snprintf-posix.h (test_function): Likewise.
36106         * tests/test-sprintf-posix.h (test_function): Likewise.
36107         * tests/test-fprintf-posix.h (test_function): Likewise.
36108         * tests/test-printf-posix.h (test_function): Likewise.
36109         * tests/test-fprintf-posix.out: Likewise.
36110
36111 2007-04-13  Bruno Haible  <bruno@clisp.org>
36112
36113         * modules/lock-tests (configure.ac): For LIBSCHED, try also -lposix4.
36114         * modules/tls-tests (configure.ac): Likewise.
36115         Reported by Arto C. Nirkko <anirkko@insel.ch>.
36116
36117 2007-04-13  Bruno Haible  <bruno@clisp.org>
36118
36119         * lib/tls.c (glthread_tls_get): Fix return type.
36120         Patch by Arto C. Nirkko <anirkko@insel.ch>.
36121
36122 2007-04-12  Eric Blake  <ebb9@byu.net>
36123
36124         * modules/gettime (Depends-on): Remove gettime.
36125         Reported by Dmitry V. Levin.
36126
36127 2007-04-12  Bruno Haible  <bruno@clisp.org>
36128
36129         * modules/fflush (Include): Mention <stdio.h>.
36130         * modules/strtoimax (Include): Mention <inttypes.h>.
36131         * modules/strtoumax (Include): Likewise.
36132
36133 2007-04-12  Eric Blake  <ebb9@byu.net>
36134
36135         * .cvsignore: New file.
36136         * .gitignore: Likewise.
36137
36138 2007-04-12  Bruno Haible  <bruno@clisp.org>
36139
36140         * modules/iconv-tests (test_iconv_LDADD): Mention -liconv after LDADD,
36141         not before, since $(LDADD) often contains libgnu.a.
36142         * modules/striconv-tests (test_striconv_LDADD): Likewise.
36143         * modules/striconveh-tests (test_striconveh_LDADD): Likewise.
36144         * modules/striconveha-tests (test_striconveha_LDADD): Likewise.
36145         Needed on Cygwin.
36146
36147 2007-04-12  Eric Blake  <ebb9@byu.net>
36148
36149         Work around glibc's failure to flush stdin on fclose.
36150         * lib/closein.c (close_stdin): Flush stdin before closing.
36151
36152         Work around glibc's failure to reset seekable stdin on exit.
36153         * modules/closein: New module.
36154         * lib/closein.c: New file.
36155         * lib/closein.h: Likewise.
36156         * m4/closein.m4: Likewise.
36157         * MODULES.html.sh (File stream based Input/Output): Document it.
36158
36159 2007-04-12  Simon Josefsson  <simon@josefsson.org>
36160
36161         * gnulib-tool: Rename generated 'autobuild' script to
36162         'do-autobuild' in --create-megatestdir output.
36163
36164         * doc/gnulib.texi (Build robot for gnulib): Fix.
36165
36166 2007-04-12  Simon Josefsson  <simon@josefsson.org>
36167
36168         * modules/sysexits (Depends-on): Add absolute-header.
36169
36170 2007-04-12  Eric Blake  <ebb9@byu.net>
36171
36172         No need to preserve errno on success.
36173         * lib/fflush.c (rpl_fflush): Simplify errno tracking.
36174         Reported by Bruno Haible.
36175
36176 2007-04-12  Simon Josefsson  <simon@josefsson.org>
36177
36178         * MODULES.html.sh (Support for maintaining and releasing
36179         projects): Add autobuild.  Suggested by Eric Blake <ebb9@byu.net>.
36180
36181 2007-04-12  Simon Josefsson  <simon@josefsson.org>
36182
36183         * gnulib-tool (func_modules_add_dummy): Respect --avoid=dummy.
36184
36185 2007-04-12  Simon Josefsson  <simon@josefsson.org>
36186
36187         * modules/autobuild: New module.
36188
36189         * m4/autobuild.m4: New file.
36190
36191 2007-04-11  Bruno Haible  <bruno@clisp.org>
36192
36193         * lib/vasnprintf.c (VASNPRINTF): Implement the %F directive using the
36194         %f directive, if NEED_PRINTF_DIRECTIVE_F is defined.
36195         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_F): New macro.
36196         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_F): New macro.
36197         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke
36198         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
36199         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
36200         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Invoke
36201         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
36202         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
36203         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Invoke
36204         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
36205         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
36206         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Invoke
36207         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
36208         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
36209         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Invoke
36210         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
36211         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
36212         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Invoke
36213         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
36214         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
36215         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Invoke
36216         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
36217         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
36218         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Invoke
36219         gl_PRINTF_DIRECTIVE_F. Test gl_cv_func_printf_directive_f. Invoke
36220         gl_PREREQ_VASNPRINTF_DIRECTIVE_F for the replacement.
36221         Reported by Eric Blake.
36222
36223 2007-04-11  Bruno Haible  <bruno@clisp.org>
36224
36225         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Fix test. It always failed.
36226
36227 2007-04-10  Bruno Haible  <bruno@clisp.org>
36228
36229         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct result
36230         for NaN and Infinity. Needed on FreeBSD 6.1.
36231         * tests/test-vasnprintf-posix.c (test_function): Undo last change
36232         regarding results for "%010a" of Infinity and NaN.
36233         * tests/test-vasprintf-posix.c (test_function): Likewise.
36234         * tests/test-snprintf-posix.h (test_function): Likewise.
36235         * tests/test-sprintf-posix.h (test_function): Likewise.
36236         * tests/test-fprintf-posix.h (test_function): Likewise.
36237         * tests/test-printf-posix.h (test_function): Likewise.
36238         * tests/test-fprintf-posix.out: Likewise.
36239
36240 2007-04-10  Bruno Haible  <bruno@clisp.org>
36241
36242         * modules/locale-tests: New file.
36243         * tests/test-locale.c: New file.
36244
36245         * modules/locale: New file.
36246         * lib/locale_.h: New file.
36247         * m4/locale_h.m4: New file.
36248
36249 2007-04-10  Paul Eggert  <eggert@cs.ucla.edu>
36250             Bruno Haible  <bruno@clisp.org>
36251
36252         * m4/signbit.m4 (gl_SIGNBIT): When the sign bit position could not
36253         be determined, test for availability of the copysignf, copysign,
36254         copysignl functions.
36255         * lib/signbitf.c (gl_signbitf): Use copysignf if available in libc.
36256         * lib/signbitd.c (gl_signbitd): Use copysign if available in libc.
36257         * lib/signbitl.c (gl_signbitl): Use copysignl if available in libc.
36258
36259 2007-04-09  Eric Blake  <ebb9@byu.net>
36260
36261         * lib/stdio_.h [REPLACE_FFLUSH]: Declare rpl_fflush.
36262         * modules/stdio (Makefile.am): Support fflush.
36263         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Likewise.
36264         * modules/fflush: New file.
36265         * lib/fflush.c: Likewise.
36266         * m4/fflush.m4: Likewise.
36267         * modules/fflush-tests: New test.
36268         * tests/test-fflush.c: Likewise.
36269         * MODULES.html.sh (Input/output <stdio.h>): Document new module.
36270
36271 2007-04-06  Bruno Haible  <bruno@clisp.org>
36272
36273         * lib/vasnprintf.c: Include <math.h>. Don't include float+.h.
36274         (VASNPRINTF): Use signbit for faster determination whether to print a
36275         minus sign.
36276         * modules/vasnprintf (Files): Remove lib/float+.h.
36277         * modules/fprintf-posix (Depends-on): Add signbit.
36278         * modules/snprintf-posix (Depends-on): Likewise.
36279         * modules/sprintf-posix (Depends-on): Likewise.
36280         * modules/vasnprintf-posix (Depends-on): Likewise.
36281         * modules/vasprintf-posix (Depends-on): Likewise.
36282         * modules/vfprintf-posix (Depends-on): Likewise.
36283         * modules/vsnprintf-posix (Depends-on): Likewise.
36284         * modules/vsprintf-posix (Depends-on): Likewise.
36285
36286 2007-04-06  Bruno Haible  <bruno@clisp.org>
36287
36288         * tests/test-frexp.c (main): Test also the sign bit of zero results.
36289         * tests/test-frexpl.c (main): Likewise.
36290         * tests/test-ldexpl.c (main): Likewise.
36291         * modules/frexp-tests (Depends-on): Add signbit.
36292         * modules/frexpl-tests (Depdends-on): Likewise.
36293         * modules/ldexpl-tests (Depdends-on): Likewise.
36294
36295 2007-04-06  Bruno Haible  <bruno@clisp.org>
36296
36297         * modules/signbit-tests: New file.
36298         * tests/test-signbit.c: New file.
36299
36300         * modules/signbit: New file.
36301         * lib/signbitf.c: New file.
36302         * lib/signbitd.c: New file.
36303         * lib/signbitl.c: New file.
36304         * m4/signbit.m4: New file.
36305         * lib/math_.h (gl_signbitf, gl_signbitd, gl_signbitl): New declarations.
36306         (signbit): New macro.
36307         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_SIGNBIT and
36308         REPLACE_SIGNBIT.
36309         * modules/math (Makefile.am) Substibute also GNULIB_SIGNBIT and
36310         REPLACE_FREXPL into math.h.
36311
36312 2007-04-06  Bruno Haible  <bruno@clisp.org>
36313
36314         * modules/isnanf-nolibm-tests: New file.
36315         * tests/test-isnanf.c: New file.
36316
36317         * modules/isnanf-nolibm: New file.
36318         * lib/isnanf.h: New file.
36319         * lib/isnanf.c: New file.
36320         * lib/isnan.c: Consider the USE_FLOAT macro.
36321         * m4/isnanf.m4: New file.
36322
36323 2007-04-06  Bruno Haible  <bruno@clisp.org>
36324
36325         * modules/gettext-h (configure.ac): AC_SUBST LIBINTL and LTLIBINTL.
36326         (Link): New section.
36327
36328         * modules/canonicalize-lgpl-tests (Makefile.am): Undo last change.
36329
36330 2007-04-06  Bruno Haible  <bruno@clisp.org>
36331
36332         Assume the 'long double' type.
36333         * m4/longdouble.m4: Remove file.
36334         * config/srclist.txt: Don't mention longdouble.m4.
36335         * lib/allocsa.h: Assume HAVE_LONG_DOUBLE to be true.
36336         * lib/float+.h: Likewise.
36337         * lib/frexp.c: Likewise.
36338         * lib/printf-args.h: Likewise.
36339         * lib/printf-args.c: Likewise.
36340         * lib/printf-frexp.c: Likewise.
36341         * lib/printf-parse.c: Likewise.
36342         * lib/vasnprintf.c: Likewise.
36343         * m4/allocsa.m4: Remove gt_TYPE_LONGDOUBLE invocation.
36344         * m4/intl.m4: Likewise.
36345         * m4/isnanl.m4: Likewise.
36346         * m4/printf.m4: Likewise.
36347         * m4/printf-frexpl.m4: Likewise.
36348         * m4/vasnprintf.m4: Likewise.
36349         * modules/allocsa (Files): Remove m4/longdouble.m4.
36350         * modules/gettext (Files): Likewise.
36351         * modules/relocatable-prog-wrapper (Files): Likewise.
36352         * modules/vasnprintf (Files): Likewise.
36353         * modules/isnanl (Files): Likewise.
36354         (Include): Simplify.
36355         * modules/isnanl-nolibm (Files): Remove m4/longdouble.m4.
36356         (Include): Simplify.
36357         * modules/printf-frexpl (Files): Remove m4/longdouble.m4.
36358         (Include): Simplify.
36359         * modules/snprintf-posix-tests (Files): Remove m4/longdouble.m4.
36360         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
36361         * modules/sprintf-posix-tests (Files): Remove m4/longdouble.m4.
36362         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
36363         * modules/vasnprintf-posix-tests (Files): Remove m4/longdouble.m4.
36364         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
36365         * modules/vasprintf-posix-tests (Files): Remove m4/longdouble.m4.
36366         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
36367         * modules/vsnprintf-posix-tests (Files): Remove m4/longdouble.m4.
36368         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
36369         * modules/vsprintf-posix-tests (Files): Remove m4/longdouble.m4.
36370         (configure.ac): Remove gt_TYPE_LONGDOUBLE invocation.
36371         * tests/test-isnanl-nolibm.c: Assume HAVE_LONG_DOUBLE to be true.
36372         * tests/test-isnanl.c: Likewise.
36373         * tests/test-snprintf-posix.h: Likewise.
36374         * tests/test-sprintf-posix.h: Likewise.
36375         * tests/test-vasnprintf-posix.c: Likewise.
36376         * tests/test-vasnprintf-posix2.c: Likewise.
36377         * tests/test-vasprintf-posix.c: Likewise.
36378
36379 2007-04-06  Bruno Haible  <bruno@clisp.org>
36380
36381         Fix problem with Compaq (ex-DEC) Desktop C compiler on Tru64.
36382         * lib/math_.h [__DECC]: Include the overridden include file through
36383         #include_next, outside the double-inclusion guard.
36384         * lib/stdio_.h [__DECC]: Likewise.
36385         * lib/stdlib_.h [__DECC]: Likewise.
36386         * lib/string_.h [__DECC]: Likewise.
36387         * lib/time_.h [__DECC]: Likewise.
36388         * lib/wchar_.h [__DECC]: Likewise.
36389         * lib/wctype_.h [__DECC]: Likewise.
36390         * lib/inttypes_.h [__DECC]: Likewise.
36391         Reported by Albert Chin <china@thewrittenword.com> in
36392         <http://lists.gnu.org/archive/html/bug-gnulib/2007-04/msg00088.html>.
36393
36394 2007-04-04  Eric Blake  <ebb9@byu.net>
36395
36396         * m4/stdint.m4 (gl_STDINT_H): Detect WINT_MAX bug in cygwin
36397         1.5.x.
36398
36399 2007-04-04  Bruno Haible  <bruno@clisp.org>
36400
36401         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Add a test for correct
36402         rounding. Don't assume that FreeBSD 6 and NetBSD 4 pass this test.
36403
36404 2007-04-04  Bruno Haible  <bruno@clisp.org>
36405
36406         * tests/test-vasnprintf-posix.c (test_function): Allow two possible
36407         results for "%010a" of Infinity and NaN.
36408         * tests/test-vasprintf-posix.c (test_function): Likewise.
36409         * tests/test-snprintf-posix.h (test_function): Likewise.
36410         * tests/test-sprintf-posix.h (test_function): Likewise.
36411         * tests/test-fprintf-posix.h (test_function): Remove these tests.
36412         * tests/test-printf-posix.h (test_function): Likewise.
36413         * tests/test-fprintf-posix.out: Update.
36414         Needed for FreeBSD 6.1.
36415
36416 2007-04-04  Bruno Haible  <bruno@clisp.org>
36417
36418         * DEPENDENCIES: Remove mentions of tar and gzip, since they are not
36419         directly used by the gnulib modules nor by gnulib-tool.
36420
36421 2007-04-04  Paul Eggert  <eggert@cs.ucla.edu>
36422
36423         * DEPENDENCIES: Give overall description of version dependency
36424         desirability.  Use more-typical names for apps.
36425         Add shell, coreutils, diffutils, grep, tar, gzip.
36426
36427 2007-04-04  Simon Josefsson  <simon@josefsson.org>
36428
36429         * MODULES.html.sh: Rename crypto modules.  Remove iconvme.
36430
36431 2007-04-04  Karl Berry  <karl@gnu.org>
36432
36433         * MODULES.html.sh (func_module): missing '.
36434
36435 2007-04-03  Bruno Haible  <bruno@clisp.org>
36436
36437         * modules/argmatch-tests (Makefile.am): New variable
36438         test_argmatch_LDADD.
36439         * modules/argp-tests (Makefile.am): New variable test_argp_LDADD.
36440         * modules/array-list-tests (Makefile.am): New variable
36441         test_array_list_LDADD.
36442         * modules/array-oset-tests (Makefile.am): New variable
36443         test_array_oset_LDADD.
36444         * modules/avltree-list-tests (Makefile.am): New variable
36445         test_avltree_list_LDADD.
36446         * modules/avltree-oset-tests (Makefile.am): New variable
36447         test_avltree_oset_LDADD.
36448         * modules/avltreehash-list-tests (Makefile.am): New variable
36449         test_avltreehash_list_LDADD.
36450         * modules/canonicalize-lgpl-tests (Makefile.am): New variable
36451         test_canonicalize_lgpl_LDADD.
36452         * modules/carray-list-tests (Makefile.am): New variable
36453         test_carray_list_LDADD.
36454         * modules/dirname-tests (Makefile.am): New variable
36455         test_dirname_LDADD.
36456         * modules/linked-list-tests (Makefile.am): New variable
36457         test_linked_list_LDADD.
36458         * modules/linkedhash-list-tests (Makefile.am): New variable
36459         test_linkedhash_list_LDADD.
36460         * modules/rbtree-list-tests (Makefile.am): New variable
36461         test_rbtree_list_LDADD.
36462         * modules/rbtree-oset-tests (Makefile.am): New variable
36463         test_rbtree_oset_LDADD.
36464         * modules/rbtreehash-list-tests (Makefile.am): New variable
36465         test_rbtreehash_list_LDADD.
36466         * modules/xvasprintf-tests (Makefile.am): New variable
36467         test_xvasprintf_LDADD.
36468         Reported by Eric Blake.
36469
36470 2007-04-03  Eric Blake  <ebb9@byu.net>
36471
36472         * DEPENDENCIES: Weaken m4 requirements.
36473
36474 2007-04-03  Bruno Haible  <bruno@clisp.org>
36475
36476         * modules/frexp-tests (configure.ac): Remove AC_SUBST.
36477         * modules/isnanl-tests (configure.ac): Likewise.
36478
36479 2007-04-03  Ben Pfaff  <blp@gnu.org>
36480
36481         * modules/iconv_open: Add $(srcdir)/ to source directory
36482         references in Makefile fragments that call gperf, to fix VPATH
36483         builds.
36484
36485 2007-04-03  Bruno Haible  <bruno@clisp.org>
36486
36487         * modules/ldexpl (Depends-on): Add isnanl, remove isnanl-nolibm.
36488         * lib/ldexpl.c: Undo last change.
36489
36490 2007-04-03  Bruno Haible  <bruno@clisp.org>
36491
36492         * modules/printf-frexpl (Depends-on): Undo last change.
36493         (Files): Add m4/ldexpl.m4.
36494
36495 2007-04-03  Bruno Haible  <bruno@clisp.org>
36496
36497         * m4/isnanl.m4 (gl_FUNC_ISNANL): Substitute ISNANL_LIBM.
36498         * modules/isnanl (Link): New section.
36499
36500         * m4/frexp.m4 (gl_FUNC_FREXP): Substitute FREXP_LIBM.
36501         * modules/frexp (Link): New section.
36502
36503         * m4/frexpl.m4 (gl_FUNC_FREXPL): Substitute FREXPL_LIBM.
36504         * modules/frexpl (Link): New section.
36505
36506         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Substitute LDEXPL_LIBM.
36507         * modules/ldexpl (Link): New section.
36508
36509 2007-04-03  Bruno Haible  <bruno@clisp.org>
36510
36511         * modules/TEMPLATE-EXTENDED: New file.
36512         * gnulib-tool (func_all_modules, func_verify_module): Exclude it.
36513
36514 2007-04-03  Bruno Haible  <bruno@clisp.org>
36515
36516         * DEPENDENCIES: New file.
36517         Suggested by Simon Josefsson.
36518
36519 2007-04-03  Bruno Haible  <bruno@clisp.org>
36520
36521         * doc/gnulib.texi: Escape @.
36522
36523 2007-04-03  James Youngman  <jay@gnu.org>
36524         and Paul Eggert  <eggert@cs.ucla.edu>
36525
36526         * lib/stat-time.h (get_stat_birthtime): Check for zero-valued
36527         birthtime on all systems that have birthtime, not just those which
36528         use st_birthtimensec rather than st_birthtim.  Putting zero in
36529         st_birthtim.tv_sec is how (for example) FreeBSD/x86 6.1 indicates
36530         that the birth time is not available for files on an NFS mount.
36531
36532 2007-04-03  Simon Josefsson  <simon@josefsson.org>
36533
36534         * modules/memxor: Move back from crypto/, suggested by Bruno.
36535         * modules/crypto/hmac-sha1: Fix memxor dependency.
36536
36537         * modules/crypto/gc: Moved from ../.
36538
36539 2007-04-02  Eric Blake  <ebb9@byu.net>
36540
36541         * lib/ldexpl.c (includes): Avoid libm.
36542
36543         * modules/printf-frexpl (Depends-on): Depend on ldexpl.
36544
36545 2007-04-02  Bruno Haible  <bruno@clisp.org>
36546
36547         * lib/sysexit_.h (EX_OK): Disable the EX_OK definition from <unistd.h>
36548         on IRIX.
36549
36550 2007-04-02  Bruno Haible  <bruno@clisp.org>
36551
36552         * m4/intdiv0.m4 (gt_INTDIV0): Avoid performing the test for real on
36553         x86 or x86_64 platforms running MacOS X.
36554         Reported by Ryan Schmidt <@ryandesign.com>.
36555
36556 2007-04-02  Bruno Haible  <bruno@clisp.org>
36557
36558         * m4/intdiv0.m4 (gt_INTDIV0): When cross-compiling, treat x86_64 like
36559         i386.
36560
36561 2007-04-01  Simon Josefsson  <simon@josefsson.org>
36562
36563         * modules/crypto/arcfour: Moved from ../.
36564         * modules/crypto/arcfour-tests: Moved from ../.
36565         * modules/crypto/arctwo: Moved from ../.
36566         * modules/crypto/arctwo-tests: Moved from ../.
36567         * modules/crypto/des: Moved from ../.
36568         * modules/crypto/des-tests: Moved from ../.
36569         * modules/crypto/gc-arcfour: Moved from ../.
36570         * modules/crypto/gc-arcfour-tests: Moved from ../.
36571         * modules/crypto/gc-arctwo: Moved from ../.
36572         * modules/crypto/gc-arctwo-tests: Moved from ../.
36573         * modules/crypto/gc-des: Moved from ../.
36574         * modules/crypto/gc-des-tests: Moved from ../.
36575         * modules/crypto/gc-hmac-md5: Moved from ../.
36576         * modules/crypto/gc-hmac-md5-tests: Moved from ../.
36577         * modules/crypto/gc-hmac-sha1: Moved from ../.
36578         * modules/crypto/gc-hmac-sha1-tests: Moved from ../.
36579         * modules/crypto/gc-md2: Moved from ../.
36580         * modules/crypto/gc-md2-tests: Moved from ../.
36581         * modules/crypto/gc-md4: Moved from ../.
36582         * modules/crypto/gc-md4-tests: Moved from ../.
36583         * modules/crypto/gc-md5: Moved from ../.
36584         * modules/crypto/gc-md5-tests: Moved from ../.
36585         * modules/crypto/gc-pbkdf2-sha1: Moved from ../.
36586         * modules/crypto/gc-pbkdf2-sha1-tests: Moved from ../.
36587         * modules/crypto/gc-random: Moved from ../.
36588         * modules/crypto/gc-rijndael: Moved from ../.
36589         * modules/crypto/gc-rijndael-tests: Moved from ../.
36590         * modules/crypto/gc-sha1: Moved from ../.
36591         * modules/crypto/gc-sha1-tests: Moved from ../.
36592         * modules/crypto/gc-tests: Moved from ../.
36593         * modules/crypto/hmac-md5: Moved from ../.
36594         * modules/crypto/hmac-md5-tests: Moved from ../.
36595         * modules/crypto/hmac-sha1: Moved from ../.
36596         * modules/crypto/hmac-sha1-tests: Moved from ../.
36597         * modules/crypto/md2: Moved from ../.
36598         * modules/crypto/md2-tests: Moved from ../.
36599         * modules/crypto/md4: Moved from ../.
36600         * modules/crypto/md4-tests: Moved from ../.
36601         * modules/crypto/md5: Moved from ../.
36602         * modules/crypto/md5-tests: Moved from ../.
36603         * modules/crypto/memxor: Moved from ../.
36604         * modules/crypto/rijndael: Moved from ../.
36605         * modules/crypto/rijndael-tests: Moved from ../.
36606         * modules/crypto/sha1: Moved from ../.
36607
36608 2007-03-30  James Youngman  <jay@gnu.org>
36609
36610         * tests/test-stat-time.c (prepare_test): use chmod() rather than
36611         rename() to change the ctime of a file (because ctime is unaffected
36612         by rename on jfs2 on AIX 5.1).
36613         (main): Start by doing cleanup, in case a previous run failed leaving
36614         test files behind.
36615
36616 2007-03-31  Bruno Haible  <bruno@clisp.org>
36617
36618         Support old proprietary implementations of iconv.
36619         * modules/iconv_open: New file.
36620         * lib/iconv_.h: New file.
36621         * m4/iconv_h.m4: New file.
36622         * lib/iconv_open.c: New file.
36623         * lib/iconv_open-aix.gperf: New file.
36624         * lib/iconv_open-hpux.gperf: New file.
36625         * lib/iconv_open-irix.gperf: New file.
36626         * lib/iconv_open-osf.gperf: New file.
36627         * m4/iconv_open.m4: New file.
36628         * modules/linebreak (Depends-on): Add iconv_open.
36629         * modules/striconv (Depends-on): Likewise.
36630         * modules/striconveh (Depends-on): Likewise.
36631         * modules/unicodeio (Depends-on): Likewise.
36632         * lib/striconveh.h (mem_cd_iconveh, str_cd_iconveh): Allow cd to be
36633         (iconv_t)(-1).
36634         * lib/striconveh.c (mem_cd_iconveh_internal): Use an indirect
36635         conversion if cd is (iconv_t)(-1).
36636         (mem_iconveh, str_iconveh): Don't fail just because a direct conversion
36637         is not possible.
36638
36639 2007-03-31  Bruno Haible  <bruno@clisp.org>
36640
36641         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
36642         work on Solaris either. Protect also second use of "autodetect_jp".
36643
36644 2007-03-31  Bruno Haible  <bruno@clisp.org>
36645
36646         * m4/frexpl.m4 (gl_FUNC_FREXPL): Set HAVE_DECL_FREXPL to 0 when
36647         the function is not present.
36648
36649 2007-03-31  Bruno Haible  <bruno@clisp.org>
36650
36651         * m4/ldexpl.m4 (gl_FUNC_LDEXPL): Set HAVE_DECL_LDEXPL to 0 when
36652         the function is not present.
36653
36654 2007-03-31  Bruno Haible  <bruno@clisp.org>
36655
36656         * m4/iconv.m4 (AM_ICONV_LINK): Fix 2007-03-29 patch. Test also against
36657         a bug in HP-UX iconv_open().
36658
36659 2007-03-31  Bruno Haible  <bruno@clisp.org>
36660
36661         * MODULES.html.sh (func_module): Don't show gnulib-common.m4.
36662         (Mathematics <math.h>): New section, add fpieee.
36663         (Input/output <stdio.h>): Add fseterr.
36664         (Mathematics <math.h>): New section, add printf-frexp.
36665         (Container data structures): Add sublist.
36666         (Core language properties): Add fpucw, inline.
36667         (Functions for greatest-width integer types <inttypes.h>): Add
36668         imaxabs, imaxdiv, inttypes.
36669         (Mathematics <math.h>): Add frexp, frexpl, isnan-nolibm, isnanl,
36670         isnanl-nolibm, ldexp.
36671         (Mathematics <math.h>): New section, add printf-frexpl.
36672         (Support for systems lacking POSIX:2001): Add fprintf-posix,
36673         printf-posix, snprintf-posix, sprintf-posix, string, search, socklen,
36674         sys_select, sys_socket, vasnprintf-posix, vasprintf-posix,
36675         vfprintf-posix, vprintf-posix, vsnprintf-posix, vsprintf-posix.
36676         (Unicode string functions): Add unistr/u*-mbtoucr.
36677         (Java): Add javacomp-script, javaexec-script.
36678         (C#): Add csharpcomp-script, csharpexec-script.
36679         (Support for building libraries and executables): Add havelib,
36680         relocatable-*.
36681         (Support for maintaining and releasing projects): Renamed from
36682         'Support for maintaining and release projects'. Add announce-gen.
36683
36684 2007-03-31  Bruno Haible  <bruno@clisp.org>
36685
36686         * README: Talk primarily about git.
36687         (git and CVS): Renamed from CVS.
36688         * doc/gnulib.texi (Introduction, Build robot for gnulib): Mention that
36689         gnulib is available through git.
36690         * doc/gnulib-tool.texi (CVS Issues): Mention git and svn as well.
36691
36692 2007-03-30  Bruno Haible  <bruno@clisp.org>
36693
36694         * lib/alloca_.h: Change prefix of double-inclusion guard macro to _GL_.
36695         * lib/poll_.h: Likewise.
36696         * lib/stat_.h: Likewise.
36697         * lib/sys_time_.h: Likewise.
36698         * lib/sysexit_.h: Likewise.
36699         * lib/glob_.h: Prefix double-inclusion guard macro with _GL_.
36700         * lib/stdbool_.h: Likewise.
36701         * lib/byteswap_.h: Add double-inclusion guard.
36702
36703 2007-03-30  Sergey Poznyakoff  <gray@mirddin.farlep.net>
36704
36705         * lib/sysexit_.h: Prefix double-inclusion guard macro with _GNULIB.
36706
36707 2007-03-30  Karl Berry  <karl@gnu.org>
36708
36709         * config/srclist-update: double space after USA in the license
36710         substitution, since that's how it's usually (?) written.
36711
36712 2007-03-30  Paul Eggert  <eggert@cs.ucla.edu>
36713
36714         * lib/write-any-file.c (can_write_any_file): Fix else-else bug
36715         reported by Bruno Haible.
36716
36717 2007-03-29  Bruno Haible  <bruno@clisp.org>
36718
36719         * m4/iconv.m4 (AM_ICONV_LINK): Require AC_CANONICAL_HOST. Test against
36720         a bug in AIX iconv().
36721
36722 2007-03-29  Bruno Haible  <bruno@clisp.org>
36723
36724         * modules/ldexpl-tests: New file.
36725         * tests/test-ldexpl.c: New file.
36726
36727 2007-03-29  Bruno Haible  <bruno@clisp.org>
36728
36729         * lib/ldexpl.c: Include fpucw.h.
36730         (ldexpl): Use BEGIN/END_LONG_DOUBLE_ROUNDING. Skip the last unneeded
36731         multiplication.
36732         * modules/ldexpl (Depends-on): Add fpucw.
36733
36734 2007-03-29  Bruno Haible  <bruno@clisp.org>
36735
36736         * modules/ldexpl: New file.
36737         * m4/ldexpl.m4: New file.
36738         * lib/math_.h (ldexpl): Define to a replacement if REPLACE_LDEXPL is
36739         set.
36740         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize also GNULIB_LDEXPL,
36741         REPLACE_LDEXPL.
36742         * modules/math (Makefile.am): Substitute also GNULIB_LDEXPL,
36743         REPLACE_LDEXPL.
36744         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Invoke
36745         gl_FUNC_LDEXPL_WORKS.
36746         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Remove test for ldexpl.
36747         * modules/mathl (Files): Remove lib/ldexpl.c.
36748         (Depends-on): Add ldexpl.
36749
36750 2007-03-29  Bruno Haible  <bruno@clisp.org>
36751
36752         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Declare frexpl.
36753
36754 2007-03-29  Bruno Haible  <bruno@clisp.org>
36755
36756         * tests/test-striconveh.c (main): Don't assume that a direct conversion
36757         between ISO-8859-1 and ISO-8859-2 is possible. Needed for OSF/1, IRIX
36758         and possibly also HP-UX.
36759         * tests/test-striconveha.c (main): Don't expect "autodetect_jp" to
36760         work on AIX, IRIX, HP-UX, OSF/1.
36761         * tests/uniconv/test-u16-conv-from-enc.c (main): Likewise.
36762         * tests/uniconv/test-u16-strconv-from-enc.c (main): Likewise.
36763         * tests/uniconv/test-u32-conv-from-enc.c (main): Likewise.
36764         * tests/uniconv/test-u32-strconv-from-enc.c (main): Likewise.
36765         * tests/uniconv/test-u8-conv-from-enc.c (main): Likewise.
36766         * tests/uniconv/test-u8-strconv-from-enc.c (main): Likewise.
36767
36768 2007-03-29  Bruno Haible  <bruno@clisp.org>
36769
36770         * tests/test-stat-time.c: Include <fcntl.h>, not <sys/fcntl.h>.
36771
36772 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
36773
36774         * lib/acl-internal.h (acl_get_fd, acl_set_fd): undef before defining,
36775         to work around a problem on OSF/1 5.1 reported by Bruno Haible.
36776
36777 2007-03-29  Eric Blake  <ebb9@byu.net>
36778
36779         * lib/acl-internal.h: Remove redundant include.
36780         (ACL_NOT_WELL_SUPPORTED): Also filter on EBUSY, returned by
36781         Cygwin when a file is locked.
36782
36783 2007-03-29  Bruno Haible  <bruno@clisp.org>
36784
36785         * lib/vasprintf.c [IN_LIBASPRINTF]: Include different specification
36786         file.
36787         * lib/asprintf.c [IN_LIBASPRINTF]: Likewise.
36788
36789 2007-03-29  Paul Eggert  <eggert@cs.ucla.edu>
36790
36791         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Don't bother to
36792         try to remove a parent directory if the child couldn't be removed
36793         (except for the first rmdir, which could fail because the child
36794         doesn't exist).  Problem reported by Jeff Blaine in
36795         <http://lists.gnu.org/archive/html/bug-tar/2007-03/msg00014.html>.
36796
36797 2007-03-28  Bruno Haible  <bruno@clisp.org>
36798
36799         * lib/striconveh.c (utf8conv_carefully): New function.
36800         (mem_cd_iconveh_internal): Invoke it.
36801
36802 2007-03-28  Bruno Haible  <bruno@clisp.org>
36803
36804         * lib/striconveh.c (mem_cd_iconveh_internal): Use u8_mbtoucr instead
36805         of u8_mbtouc in order to distinguish invalid and incomplete UTF-8
36806         input.
36807         * modules/striconveh (Depends-on): Add unistr/u8-mbtoucr. Replace
36808         utf8-ucs4 with unistr/u8-mbtouc. Replace ucs4-utf8 with
36809         unistr/u8-uctomb.
36810
36811 2007-03-28  Bruno Haible  <bruno@clisp.org>
36812
36813         * modules/unistr/u8-mbtoucr: New file.
36814         * lib/unistr/u8-mbtoucr.c: New file.
36815         * modules/unistr/u16-mbtoucr: New file.
36816         * lib/unistr/u16-mbtoucr.c: New file.
36817         * modules/unistr/u16-mbtoucr: New file.
36818         * lib/unistr/u16-mbtoucr.c: New file.
36819         * lib/unistr.h (u8_mbtoucr, u16_mbtoucr, u32_mbtoucr): New declarations.
36820
36821 2007-03-27  Simon Josefsson  <simon@josefsson.org>
36822             Bruno Haible  <bruno@clisp.org>
36823
36824         * m4/vasprintf.m4: Convert AC_SUBST into shell variable for
36825         REPLACE_VASPRINTF.  Set HAVE_VASPRINTF.  Add
36826         AC_REQUIRE([gl_STDIO_H_DEFAULTS]).
36827
36828         * m4/stdio_h.m4: Add stubs for vasprintf too.
36829
36830         * modules/stdio: Support vasprintf in sed command.
36831
36832         * modules/vasprintf: Depend on stdio for prototypes.  Remove
36833         vasprintf.h.  Add stdio module indicator.
36834
36835         * lib/stdio_.h: Declare asprintf and vasprintf, based on
36836         vasprintf.h.
36837
36838         * lib/vasprintf.h: File removed.
36839
36840         * lib/asprintf.c: Use stdio.h instead of vasprintf.h.
36841         * lib/vasprintf.c: Ditto.
36842         * lib/xvasprintf.c: Ditto.
36843         * tests/test-vasprintf-posix.c: Ditto.
36844         * tests/test-vasprintf.c: Ditto.
36845
36846 2007-03-27  Bruno Haible  <bruno@clisp.org>
36847
36848         Make vasnprintf multithread-safe.
36849         * lib/vasnprintf.c (decimal_point_char): New function.
36850         (VASNPRINTF): Use it.
36851         Suggested by Simon Josefsson.
36852
36853 2007-03-27  Eric Blake  <ebb9@byu.net>
36854
36855         Support sub-second birthtime on cygwin.
36856         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Also check for st_birthtim.
36857         * lib/stat-time.h (STAT_TIMESPEC): Adjust comments.
36858         (get_stat_birthtime): Also work with st_birthtim.
36859
36860 2007-03-27  Paul Eggert  <eggert@cs.ucla.edu>
36861
36862         * lib/stat-time.h (USE_BIRTHTIME): Remove.
36863         (get_stat_atime_ns, get_stat_ctime_ns, get_stat_mtime_ns):
36864         (get_stat_birthtime_ns): Do not try to use "spare" fields.
36865         (get_stat_birthtime_ns): Simplify compile-time tests.
36866         (get_stat_birthtime): Change the API to look like
36867         get_stat_mtime etc., except return a negative tv_nsec on error.
36868         * m4/stat-time.m4 (gl_STAT_TIME, gl_STAT_BIRTHTIME):
36869         Don't check for "spare" fields.
36870         (gl_STAT_BIRTHTIME): Don't check for struct stat.st_birthtimespec.tv_sec
36871         or for struct stat.st_birthtime, as these tests aren't used.
36872         * tests/test-stat-time.c (test_birthtime): Adjust to new API.
36873
36874 2007-03-27  Bruno Haible  <bruno@clisp.org>
36875
36876         * lib/stat-time.h: Include <sys/stat.h>.
36877
36878 2007-03-27  James Youngman  <jay@gnu.org>
36879
36880         * lib/stat-time.h (get_stat_birthtime): New function for
36881           retrieving st_birthtime as provided by UFS2 (hence *BSD).
36882         * m4/stat-time.m4 (gl_STAT_BIRTHTIME): Probe for st_birthtime
36883           and its variants.
36884         * modules/stat-time (configure.ac): call gl_STAT_BIRTHTIME.
36885         * modules/stat-time-test: New file.
36886         * tests/test-stat-time.c: New test, devised by Bruno Haible.
36887
36888 2007-03-26  Bruno Haible  <bruno@clisp.org>
36889
36890         Better support of signalling NaNs.
36891         * lib/atanl.c: Include isnanl.h.
36892         (atanl): Perform test for NaN at the beginning of the function and
36893         through a call to isnanl.
36894         * lib/cosl.c: Include isnanl.h.
36895         (cosl): Perform test for NaN at the beginning of the function and
36896         through a call to isnanl.
36897         * lib/ldexpl.c: Include isnanl.h.
36898         (ldexpl): Perform test for NaN through a call to isnanl.
36899         * lib/logl.c: Include isnanl.h.
36900         (logl): Perform test for NaN at the beginning of the function and
36901         through a call to isnanl.
36902         * lib/sinl.c: Include isnanl.h.
36903         (sinl): Perform test for NaN at the beginning of the function and
36904         through a call to isnanl.
36905         * lib/sqrtl.c: Include isnanl.h.
36906         (sqrtl): Perform test for NaN at the beginning of the function and
36907         through a call to isnanl.
36908         * lib/tanl.c: Include isnanl.h.
36909         (tanl): Perform test for NaN at the beginning of the function and
36910         through a call to isnanl.
36911         * lib/trigl.c (ieee754_rem_pio2l): Remove test for NaN.
36912         * modules/mathl (Depends-on): Add isnanl.
36913
36914 2007-03-26  Eric Blake  <ebb9@byu.net>
36915
36916         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Fix
36917         regression in logic sense of previous patch.
36918
36919 2007-03-26  Bruno Haible  <bruno@clisp.org>
36920
36921         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): Don't use
36922         unportable shell command "if ! ...".
36923         Reported by Ralf Wildenhues.
36924
36925 2007-03-25  Bruno Haible  <bruno@clisp.org>
36926
36927         * lib/sysexit_,h: If HAVE_SYSEXITS_H is defined, include the original
36928         <sysexits.h> file, and only add EX_CONFIG.
36929         * m4/sysexits.m4 (gl_SYSEXITS): If <sysexits.h> exists, check its
36930         absolute file name and whether it is sufficient. Substitute also
36931         HAVE_SYSEXITS_H and ABSOLUTE_SYSEXITS_H.
36932         * modules/sysexits (Makefile.am): Substitute HAVE_SYSEXITS_H and
36933         ABSOLUTE_SYSEXITS_H into sysexits.h.
36934
36935 2007-03-25  Bruno Haible  <bruno@clisp.org>
36936
36937         * lib/getaddrinfo.c (getaddrinfo): Don't access hints->ai_flags when
36938         hints is NULL.
36939
36940 2007-03-25  Bruno Haible  <bruno@clisp.org>
36941
36942         * lib/uniconv/u8-conv-from-enc.c (u8_conv_from_encoding): Add a cast.
36943         * lib/uniconv/u8-strconv-to-enc.c (u8_strconv_to_encoding): Likewise.
36944
36945 2007-03-25  Bruno Haible  <bruno@clisp.org>
36946
36947         * lib/vasnprintf.c: Include langinfo.h.
36948         (VASNPRINTF): Prefer nl_langinfo over localeconv, since it's more
36949         multithread-safe.
36950         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF_DIRECTIVE_A): New macro.
36951         * m4/fprintf-posix.m4 (gl_FUNC_FPRINTF_POSIX): Invoke it.
36952         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Likewise.
36953         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
36954         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
36955         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
36956         * m4/vfprintf-posix.m4 (gl_FUNC_VFPRINTF_POSIX): Likewise.
36957         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX: Likewise.
36958         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
36959         Reported by Simon Josefsson.
36960
36961 2007-03-25  Bruno Haible  <bruno@clisp.org>
36962
36963         * lib/printf-parse.c [!IN_LIBINTL]: Include <stdint.h>, for intmax_t.
36964         (PRINTF_PARSE): Make the support for size specifier 'j' unconditional.
36965         * modules/vasnprintf (Depends-on): Add stdint.
36966
36967 2007-03-25  Bruno Haible  <bruno@clisp.org>
36968
36969         * modules/fpieee: New file.
36970         * m4/fpieee.m4: New file.
36971         * modules/isnan-nolibm (Depends-on): Add fpieee.
36972         * modules/isnanl-nolibm (Depends-on): Add fpieee.
36973         * modules/isnanl (Depends-on): Add fpieee.
36974
36975 2007-03-25  Bruno Haible  <bruno@clisp.org>
36976
36977         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): Test also finite numbers.
36978
36979 2007-03-25  Bruno Haible  <bruno@clisp.org>
36980
36981         Avoid test failures on IRIX 6.5.
36982         * tests/test-frexpl.c (MIN_NORMAL_EXP): New macro.
36983         (main): Use it.
36984         * tests/test-printf-frexpl.c (MIN_NORMAL_EXP, MIN_SUBNORMAL_EXP): New
36985         macros.
36986         (main): Use them.
36987
36988 2007-03-25  Bruno Haible  <bruno@clisp.org>
36989
36990         * m4/frexpl.m4 (gl_FUNC_FREXPL_WORKS): New macro.
36991         (gl_FUNC_FREXPL): Invoke it. Set REPLACE_FREXPL to 1 if it frexpl
36992         exists but doesn't work.
36993         * lib/math_.h (frexpl): Define as a replacement macro if REPLACE_FREXPL
36994         is set. Don't provide a prototype if REPLACE_FREXPL is not set.
36995         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_FREXPL.
36996         * modules/math (Makefile.am) Substibute also REPLACE_FREXPL into math.h.
36997
36998 2007-03-25  Bruno Haible  <bruno@clisp.org>
36999
37000         * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Add check whether frexp(inf)
37001         returns inf. Needed on IRIX 6.5.
37002
37003 2007-03-25  Bruno Haible  <bruno@clisp.org>
37004
37005         * tests/test-frexpl.c: Include isnanl-nolibm.h.
37006         (main): Use isnanl instead of x != x idiom.
37007         * modules/frexpl-tests (Depends-on): Add isnanl-nolibm.
37008
37009         * tests/test-frexp.c: Include isnan.h.
37010         (main): Use isnan instead of x != x idiom.
37011         * modules/frexp-tests (Depends-on): Add isnan-nolibm.
37012
37013 2007-03-25  Bruno Haible  <bruno@clisp.org>
37014
37015         * tests/test-frexp.c (NaN): New function/macro.
37016         (main): Use it instead of 0.0 / 0.0.
37017         * tests/test-isnan.c (NaN): New function/macro.
37018         (main): Use it instead of 0.0 / 0.0.
37019         * tests/test-vasnprintf-posix.c (NaN): New function/macro.
37020         (test_function): Use it instead of 0.0 / 0.0.
37021         * tests/test-vasprintf-posix.c (NaN): New function/macro.
37022         (test_function): Use it instead of 0.0 / 0.0.
37023         * tests/test-snprintf-posix.h (NaN): New function/macro.
37024         (test_function): Use it instead of 0.0 / 0.0.
37025         * tests/test-sprintf-posix.h (NaN): New function/macro.
37026         (test_function): Use it instead of 0.0 / 0.0.
37027         * tests/test-fprintf-posix.h (NaN): New function/macro.
37028         (test_function): Use it instead of 0.0 / 0.0.
37029         * tests/test-printf-posix.h (NaN): New function/macro.
37030         (test_function): Use it instead of 0.0 / 0.0.
37031
37032         * lib/isnan.c (FUNC): Work around a DEC C compiler bug.
37033
37034 2007-03-25  Bruno Haible  <bruno@clisp.org>
37035
37036         * lib/glob_.h: Include <sys/stat.h>. Avoids warnings on AIX 5.1.
37037
37038 2007-03-25  Bruno Haible  <bruno@clisp.org>
37039
37040         * lib/regexec.c (merge_state_with_log): Make static.
37041
37042 2007-03-25  Bruno Haible  <bruno@clisp.org>
37043
37044         * lib/trigl.c (kernel_rem_pio2): Make static.
37045
37046 2007-03-25  Bruno Haible  <bruno@clisp.org>
37047
37048         * lib/sincosl.c (sincosl_table): Make static.
37049
37050 2007-03-25  Bruno Haible  <bruno@clisp.org>
37051
37052         * lib/argp.h (__restrict): Define to empty, rather than to 'restrict',
37053         if the compiler does not support C99.
37054
37055 2007-03-25  Bruno Haible  <bruno@clisp.org>
37056
37057         * modules/time (Makefile.am): Ensure all rule action lines start with a
37058         tab.
37059
37060 2007-03-24  Bruno Haible  <bruno@clisp.org>
37061
37062         * modules/tsearch-tests: New file.
37063         * tests/test-tsearch.sh: New file.
37064         * tests/test-tsearch.c: New file, mostly copied from glibc.
37065
37066         * modules/search-tests: New file.
37067         * tests/test-search.c: New file.
37068
37069         * modules/search: New file.
37070         * lib/search_.h: New file, incorporating lib/tsearch.h.
37071         * m4/search_h.m4: New file.
37072         * lib/tsearch.h: Remove file.
37073         * lib/tsearch.c: Include search.h instead of tsearch.h.
37074         * m4/tsearch.m4 (gl_FUNC_TSEARCH): Require gl_SEARCH_H_DEFAULTS. Set
37075         HAVE_TSEARCH.
37076         * modules/tsearch (Files): Remove lib/tsearch.h.
37077         (Depends-on): Add search.
37078         (configure.ac): Invoke gl_SEARCH_MODULE_INDICATOR.
37079         (Include): Change tsearch.h into search.h.
37080
37081 2007-03-24  Bruno Haible  <bruno@clisp.org>
37082
37083         * modules/fpucw: New file.
37084         * lib/fpucw.h: New file.
37085         * lib/frexp.c: Include fpucw.h.
37086         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
37087         (FUNC): Use them.
37088         * lib/printf-frexp.c: Include fpucw.h.
37089         (DECL_ROUNDING, BEGIN_ROUNDING, END_ROUNDING): New macros.
37090         (FUNC): Use them.
37091         * lib/vasnprintf.c: Include fpucw.h.
37092         (VASNPRINTF): Invoke BEGIN/END_LONG_DOUBLE_ROUNDING around the
37093         'long double' calculations.
37094         * tests/test-frexpl.c: Include fpucw.h.
37095         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
37096         * tests/test-printf-frexpl.c: Include fpucw.h.
37097         (main): Invoke BEGIN_LONG_DOUBLE_ROUNDING.
37098         * modules/frexpl (Depends-on): Add fpucw.
37099         * modules/printf-frexpl (Depends-on): Likewise.
37100         * modules/fprintf-posix (Depends-on): Likewise.
37101         * modules/snprintf-posix (Depends-on): Likewise.
37102         * modules/sprintf-posix (Depends-on): Likewise.
37103         * modules/vasnprintf-posix (Depends-on): Likewise.
37104         * modules/vasprintf-posix (Depends-on): Likewise.
37105         * modules/vfprintf-posix (Depends-on): Likewise.
37106         * modules/vsnprintf-posix (Depends-on): Likewise.
37107         * modules/vsprintf-posix (Depends-on): Likewise.
37108         * modules/frexpl-tests (Depends-on): Likewise.
37109         * modules/printf-frexpl-tests (Depends-on): Likewise.
37110
37111 2007-03-24  Bruno Haible  <bruno@clisp.org>
37112
37113         * lib/float+.h: New file.
37114         * lib/isnan.c: Include float+.h.
37115         (SIZE): New macro.
37116         (FUNC): Compare only SIZE bytes of the value.
37117         * lib/vasnprintf.c: Include float+.h.
37118         (VASNPRINTF): When comparing agains +0.0L or +0.0, compare only
37119         SIZEOF_LDBL or SIZEOF_DBL bytes.
37120         * modules/isnan-nolibm (Files): Add lib/float+.h.
37121         * modules/isnanl-nolibm (Files): Add lib/float+.h.
37122         * modules/isnanl (Files): Add lib/float+.h.
37123         * modules/vasnprintf (Files): Add lib/float+.h.
37124
37125 2007-03-24  Bruno Haible  <bruno@clisp.org>
37126
37127         * lib/vasnprintf.c [!HAVE_LONG_DOUBLE]: Include printf-frexp.h. Don't
37128         include isnanl-nolibm.h.
37129
37130 2007-03-24  Bruno Haible  <bruno@clisp.org>
37131
37132         * tests/test-read-file.c (main): Don't produce spurious output for
37133         expected situations. Make the test fail if it encountered unexpected
37134         results.
37135
37136 2007-03-24  Bruno Haible  <bruno@clisp.org>
37137
37138         * m4/locale-fr.m4 (gt_LOCALE_FR): Remove the special-casing of NetBSD,
37139         since its fr_FR.ISO8859-1 locale wouldn't pass the tests.
37140
37141 2007-03-24  Bruno Haible  <bruno@clisp.org>
37142
37143         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Fix last change.
37144
37145 2007-03-24  Bruno Haible  <bruno@clisp.org>
37146
37147         * modules/unistr/base (Depends-on): Remove utf8-ucs4-unsafe,
37148         utf16-ucs4-unsafe, utf8-ucs4, utf16-ucs4, ucs4-utf8, ucs4-utf16.
37149
37150         * modules/unistr/u8-mbtouc: Add source files from module utf8-ucs4.
37151         * modules/utf8-ucs4: Turn into a symbolic link to module
37152         unistr/u8-mbtouc.
37153
37154         * modules/unistr/u8-mbtouc-unsafe: Add source files from module
37155         utf8-ucs4-unsafe.
37156         * modules/utf8-ucs4-unsafe: Turn into a symbolic link to module
37157         unistr/u8-mbtouc-unsafe.
37158
37159         * modules/unistr/u16-mbtouc: Add source files from module utf16-ucs4.
37160         * modules/utf16-ucs4: Turn into a symbolic link to module
37161         unistr/u16-mbtouc.
37162
37163         * modules/unistr/u16-mbtouc-unsafe: Add source files from module
37164         utf16-ucs4-unsafe.
37165         * modules/utf16-ucs4-unsafe: Turn into a symbolic link to module
37166         unistr/u16-mbtouc-unsafe.
37167
37168         * modules/unistr/u8-uctomb: Add source files from module utf4-utf8.
37169         * modules/ucs4-utf8: Turn into a symbolic link to module
37170         unistr/u8-ubtomb.
37171
37172         * modules/unistr/u16-uctomb: Add source files from module utf4-utf16.
37173         * modules/ucs4-utf16: Turn into a symbolic link to module
37174         unistr/u16-ubtomb.
37175
37176 2007-03-24  Bruno Haible  <bruno@clisp.org>
37177
37178         * lib/unistr/u8-mbtouc-aux.c: Renamed from lib/unistr/utf8-ucs4.c.
37179         Enable the function only if HAVE_INLINE.
37180         * lib/unistr/u8-mbtouc-unsafe-aux.c: Renamed from
37181         lib/unistr/utf8-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
37182         * lib/unistr/u16-mbtouc-aux.c: Renamed from lib/unistr/utf16-ucs4.c.
37183         Enable the function only if HAVE_INLINE.
37184         * lib/unistr/u16-mbtouc-unsafe-aux.c: Renamed from
37185         lib/unistr/utf16-ucs4-unsafe.c. Enable the function only if HAVE_INLINE.
37186         * lib/unistr/u8-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf8.c.
37187         Enable the function only if HAVE_INLINE.
37188         * lib/unistr/u16-uctomb-aux.c: Renamed from lib/unistr/ucs4-utf16.c.
37189         Enable the function only if HAVE_INLINE.
37190         * modules/utf8-ucs4: Update.
37191         * modules/utf8-ucs4-unsafe: Update.
37192         * modules/utf16-ucs4: Update.
37193         * modules/utf16-ucs4-unsafe: Update.
37194         * modules/ucs4-utf8: Update.
37195         * modules/ucs4-utf16: Update.
37196
37197 2007-03-24  Bruno Haible  <bruno@clisp.org>
37198
37199         * lib/utf8-ucs4.h: Remove file.
37200         * lib/utf8-ucs4-unsafe.h: Remove file.
37201         * lib/utf16-ucs4.h: Remove file.
37202         * lib/utf16-ucs4-unsafe.h: Remove file.
37203         * lib/ucs4-utf8.h: Remove file.
37204         * lib/ucs4-utf16.h: Remove file.
37205         * lib/unistr.h: Include their previous contents.
37206         * m4/utf-ucs4.m4: Remove file.
37207         * m4/ucs4-utf.m4: Remove file.
37208         * modules/utf8-ucs4 (Files): Remove lib/utf8-ucs4.h.
37209         (Depends-on): Add unistr/base.
37210         (configure.ac): Remove gl_UTF_UCS4.
37211         (Makefile.am): Update.
37212         (Include): Change to unistr.h.
37213         * modules/utf8-ucs4-unsafe (Files): Remove lib/utf8-ucs4-unsafe.h.
37214         (Depends-on): Add unistr/base.
37215         (configure.ac): Remove gl_UTF_UCS4.
37216         (Makefile.am): Update.
37217         (Include): Change to unistr.h.
37218         * modules/utf16-ucs4 (Files): Remove lib/utf16-ucs4.h.
37219         (Depends-on): Add unistr/base.
37220         (configure.ac): Remove gl_UTF_UCS4.
37221         (Makefile.am): Update.
37222         (Include): Change to unistr.h.
37223         * modules/utf16-ucs4-unsafe (Files): Remove lib/utf16-ucs4-unsafe.h.
37224         (Depends-on): Add unistr/base.
37225         (configure.ac): Remove gl_UTF_UCS4.
37226         (Makefile.am): Update.
37227         (Include): Change to unistr.h.
37228         * modules/ucs4-utf8 (Files): Remove lib/ucs4-utf8.h.
37229         (Depends-on): Add unistr/base.
37230         (configure.ac): Remove gl_UCS4_UTF.
37231         (Makefile.am): Update.
37232         (Include): Change to unistr.h.
37233         * modules/ucs4-utf16 (Files): Remove lib/ucs4-utf16.h.
37234         (Depends-on): Add unistr/base.
37235         (configure.ac): Remove gl_UCS4_UTF.
37236         (Makefile.am): Update.
37237         (Include): Change to unistr.h.
37238         * lib/unistr/utf8-ucs4.c: Include unistr.h instead of utf8-ucs4.h.
37239         * lib/unistr/utf8-ucs4-unsafe.c: Include unistr.h instead of
37240         utf8-ucs4-unsafe.h.
37241         * lib/unistr/utf16-ucs4.c: Include unistr.h instead of utf16-ucs4.h.
37242         * lib/unistr/utf16-ucs4-unsafe.c: Include unistr.h instead of
37243         utf16-ucs4-unsafe.h.
37244         * lib/unistr/ucs4-utf8.c: Include unistr.h instead of ucs4-utf8.h.
37245         * lib/unistr/ucs4-utf16.c: Include unistr.h instead of ucs4-utf16.h.
37246         * lib/unistr/u8-chr.c: Don't include ucs4-utf8.h.
37247         * lib/unistr/u8-strchr.c: Likewise.
37248         * lib/unistr/u8-strrchr.c: Likewise.
37249         * lib/unistr/u16-chr.c: Don't include ucs4-utf16.h.
37250         * lib/unistr/u16-strchr.c: Likewise.
37251         * lib/unistr/u16-strrchr.c: Likewise.
37252         * lib/striconveh.c: Update.
37253         * lib/linebreak.c: Update.
37254
37255 2007-03-24  Bruno Haible  <bruno@clisp.org>
37256
37257         * lib/argp-help.c (fill_in_uparams, canon_doc_option): Cast the
37258         arguments of isspace, isalpha, isalnum, isdigit to 'unsigned char'.
37259
37260 2007-03-22  Bruno Haible  <bruno@clisp.org>
37261
37262         * lib/strptime.c (__strptime_internal): Use ANSI C syntax.
37263
37264 2007-03-23  Paul Eggert  <eggert@cs.ucla.edu>
37265
37266         * MODULES.html.sh (File system functions): New module write-any-file.
37267         * modules/write-any-file, lib/write-any-file.c, lib/write-any-file.h:
37268         * m4/write-any-file.m4: New files.
37269
37270 2007-03-23  Eric Blake  <ebb9@byu.net>
37271
37272         * gnulib-tool: Rearrange space-tab sequences, since some editors
37273         like to eat them.
37274
37275 2007-03-23  Eric Blake  <ebb9@byu.net>
37276
37277         * lib/version-etc.c (version_etc_va): Update license wording to
37278         be more concise.  Recommended by Richard Stallman.
37279
37280 2007-03-22  Bruno Haible  <bruno@clisp.org>
37281
37282         * lib/poll.c (MSG_PEEK): New fallback definition.
37283
37284 2007-03-22  Bruno Haible  <bruno@clisp.org>
37285
37286         * modules/sys_socket-tests (configure.ac): Check for shutdown function.
37287         * tests/test-sys_socket.c (a): Test only if shutdown() exists.
37288         (main): Update.
37289         Fixes a compilation error on BeOS.
37290
37291 2007-03-22  Bruno Haible  <bruno@clisp.org>
37292
37293         * modules/frexpl-tests: New file.
37294         * tests/test-frexpl.c: New file.
37295
37296         * modules/frexpl: New file.
37297         * m4/frexpl.m4: New file.
37298         * modules/math (Makefile.am): Also substitute GNULIB_FREXPL into math.h.
37299         * lib/math_.h (frexpl): Test GNULIB_FREXPL instead of GNULIB_MATHL.
37300         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_FREXPL.
37301         * modules/mathl (Files): Remove lib/frexpl.c, lib/frexp.c.
37302         (Depends-on): Add frexpl. Remove isnanl-nolibm.
37303         * m4/mathl.m4 (gl_FUNC_LONG_DOUBLE_MATH): Don't test for frexpl.
37304
37305 2007-03-22  Bruno Haible  <bruno@clisp.org>
37306
37307         * lib/frexpl.c: Share code with lib/frexp.c.
37308         * modules/mathl (Files): Add lib/frexp.c.
37309         (Depends-on): Add isnanl-nolibm.
37310
37311 2007-03-22  Bruno Haible  <bruno@clisp.org>
37312
37313         * modules/printf-frexp (Files): Add m4/frexp.m4.
37314         * m4/printf-frexp.m4 (gl_FUNC_PRINTF_FREXP): Define HAVE_FREXP_IN_LIBC
37315         only if the found frexp function actually works.
37316
37317 2007-03-22  Bruno Haible  <bruno@clisp.org>
37318
37319         * lib/frexp.c: Remove older implementation that uses divisions.
37320
37321 2007-03-21  Bruno Haible  <bruno@clisp.org>
37322
37323         * modules/frexp-tests: New file.
37324         * tests/test-frexp.c: New file.
37325
37326         * modules/frexp: New file.
37327         * lib/frexp.c: New file.
37328         * m4/frexp.m4: New file.
37329         * lib/math_.h (frexp): New declaration.
37330         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Also initialize GNULIB_FREXP and
37331         REPLACE_FREXP.
37332         * modules/math (math.h): Also substitute GNULIB_FREXP, REPLACE_FREXP.
37333
37334 2007-03-21  Bruno Haible  <bruno@clisp.org>
37335
37336         * modules/isnanl-tests: New file.
37337         * tests/test-isnanl.c: New file.
37338
37339         * modules/isnanl: New file.
37340         * lib/isnanl.h: New file.
37341         * m4/isnanl.m4 (gl_FUNC_ISNANL): New macro.
37342         (gl_FUNC_ISNANL_NO_LIBM): Invoke gl_HAVE_ISNANL_NO_LIBM,
37343         gl_FUNC_ISNANL_WORKS.
37344         (gl_HAVE_ISNANL_NO_LIBM, gl_HAVE_ISNANL_IN_LIBM, gl_FUNC_ISNANL_WORKS):
37345         New macros.
37346
37347 2007-03-21  Bruno Haible  <bruno@clisp.org>
37348
37349         * modules/isnanl-nolibm (Files): Add lib/isnanl-nolibm.h, remove
37350         lib/isnanl.h.
37351         (Include): Update.
37352         * lib/isnanl-nolibm.h: Renamed from lib/isnanl.h.
37353         * lib/vasnprintf.c: Update.
37354         * modules/isnanl-nolibm-tests (Files): Add tests/test-isnanl-nolibm.c,
37355         tests/test-isnanl.h, remove tests/test-isnanl.c.
37356         (Makefile.am): Update.
37357         * tests/test-isnanl-nolibm.c: New file.
37358         * tests/test-isnanl.h: New file.
37359         * tests/test-isnanl.c: Remove file.
37360
37361 2007-03-21  Jim Meyering  <jim@meyering.net>
37362
37363         When trying to open ".", treat ESTALE like EACCES.
37364         * lib/savewd.c (savewd_save): Resort to forking not just upon
37365         failure with EACCES, but also when errno is ESTALE.
37366
37367 2007-03-20  Bruno Haible  <bruno@clisp.org>
37368
37369         * lib/string_.h (strndup): Enable declaration also if HAVE_STRNDUP.
37370         Needed on AIX 5.1. Reported by Matthew Woehlke.
37371
37372 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
37373
37374         Suggestions by Bruno Haible:
37375         * lib/acl-internal.h: Include "gettext.h" rather than rolling
37376         our own.
37377         (ACL_NOT_WELL_SUPPORTED): Parenthesize arg when used.
37378         * modules/acl (Depends-on): Add gettext.
37379
37380 2007-03-19  Bruno Haible  <bruno@clisp.org>
37381
37382         * modules/iconvme: Remove file.
37383         * lib/iconvme.h: Remove file.
37384         * lib/iconvme.c: Remove file.
37385         * m4/iconvme.m4: Remove file.
37386
37387 2007-03-19  Bruno Haible  <bruno@clisp.org>
37388
37389         * doc/relocatable-maint.texi: Break long shell script line.
37390         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
37391
37392 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
37393
37394         Add limited support for Solaris 10 ZFS-style ACLs: just enough to
37395         handle file_has_acl.
37396         * lib/acl-internal.h, lib/acl_entries.c, lib/file-has-acl.c: New files.
37397         * lib/acl.c: Move header inclusions and related macro defns into
37398         lib/acl-internal.h.
37399         (S_ISLNK): Remove defn, since that's now done for us.
37400         (file_has_acl): Move to lib/file-has-acl.c.
37401         Call acl_trivial if available.  This is the crucial part of the fix.
37402         (acl_entries): Move to lib/acl_entries.c.  Now extern, since it's
37403         shared within the library.  Rewrite a bit, partly to make it compatible
37404         with the GNU coding style.
37405         * m4/acl.m4 (AC_FUNC_ACL): Add AC_LIBOBJ([file-has-acl]).
37406         Remove unnecessary double-quotes.
37407         Don't test for acl_to_text; the build will catch that.
37408         Replace acl_entries if it doesn't exist and it is needed.
37409         Check for -lsec and acl_trivial (as used on Solaris 10).
37410         * modules/acl (Files): Add lib/acl-internal.h, lib/acl_entries.c,
37411         lib/file-has-acl.c.
37412         (Depends-on): Add sys_stat, for S_ISLNK.
37413
37414 2007-03-19  Ben Pfaff  <blp@gnu.org>
37415
37416         * doc/gnulib.texi: Fix typos.
37417         Suggested by Thien-Thi Nguyen <ttn@gnuvola.org>.
37418
37419 2007-03-19  Paul Eggert  <eggert@cs.ucla.edu>
37420
37421         * lib/getcwd.c (__getcwd): Remove redundant comparison of buf to NULL.
37422         If size is zero here, buf must be zero.
37423
37424 2007-03-19  Simon Josefsson  <simon@josefsson.org>
37425
37426         * des.c: Remove weak_keys_chksum.  Reported by Bruno Haible
37427         <bruno@clisp.org>.
37428
37429 2007-03-18  Bruno Haible  <bruno@clisp.org>
37430
37431         * lib/vasnprintf.c (VASNPRINTF): Undo first part of last patch.
37432         Suggested by Eric Blake.
37433
37434 2007-03-18  Ben Pfaff  <blp@gnu.org>
37435
37436         * doc/relocatable.texi: Recommend using as prefix a directory
37437         that does not exist and will never be created.  Based on
37438         discussion with Bruno Haible, Ralf Wildenhues, Matthew Woehlke,
37439         and others.
37440
37441 2007-03-17  Bruno Haible  <bruno@clisp.org>
37442
37443         * lib/fchownat.c: Include lchown.h.
37444
37445 2007-03-17  Bruno Haible  <bruno@clisp.org>
37446
37447         Fix endless loop when the given allocated size was > INT_MAX.
37448         * lib/vasnprintf.c (EOVERFLOW): New fallback definition.
37449         (VASNPRINTF): Fail with EOVERFLOW when the given allocated size is
37450         larger than INT_MAX, or when it grow to a value larger than INT_MAX.
37451         * lib/vsprintf.c (vsprintf): Don't pass a size > INT_MAX to vasnprintf.
37452         * lib/sprintf.c (sprintf): Likewise.
37453
37454 2007-03-17  Bruno Haible  <bruno@clisp.org>
37455
37456         * tests/test-argp-2.sh (func_compare): Output a context diff.
37457
37458 2007-03-17  Bruno Haible  <bruno@clisp.org>
37459
37460         * m4/locale-fr.m4 (gt_LOCALE_FR, gt_LOCALE_FR_UTF8): Check also the
37461         locale's decimal-point character.
37462
37463 2007-03-17  Bruno Haible  <bruno@clisp.org>
37464
37465         * lib/vasnprintf.c (VASNPRINTF): Clear out the memory used for arg_mem
37466         before comparing it. Needed because on some platforms (e.g. x86) a
37467         'long double' occupies less bytes than sizeof (long double).
37468
37469 2007-03-17  Bruno Haible  <bruno@clisp.org>
37470
37471         * tests/test-crc.c (main): Make printf statements 64-bit clean.
37472         * tests/test-gc-pbkdf2-sha1.c (main): Likewise.
37473         * tests/test-getaddrinfo.c (simple): Likewise.
37474         * tests/test-read-file.c (main): Likewise.
37475
37476 2007-03-17  Bruno Haible  <bruno@clisp.org>
37477
37478         * tests/test-dirname.c (main): Make printf statements 64-bit clean.
37479
37480 2007-03-17  Bruno Haible  <bruno@clisp.org>
37481
37482         * tests/test-xvasprintf.c (test_xvasprintf, test_xasprintf): Remove
37483         unused variable.
37484
37485 2007-03-17  Bruno Haible  <bruno@clisp.org>
37486
37487         * tests/test-c-strcasecmp.c: Include c-strcase.h.
37488         * tests/test-c-strncasecmp.c: Likewise.
37489
37490 2007-03-17  Bruno Haible  <bruno@clisp.org>
37491
37492         * modules/stdlib (Depends-on): Add unistd.
37493         * lib/stdlib_.h: Include <unistd.h> if mkstemp is desired.
37494         Needed for MacOS X 10.3.
37495
37496 2007-03-17  Bruno Haible  <bruno@clisp.org>
37497
37498         * lib/unistr/u-strdup.h: Include <stdlib.h>.
37499
37500 2007-03-17  Bruno Haible  <bruno@clisp.org>
37501
37502         * lib/unistr/u-cpy-alloc.h: Include <stdlib.h>.
37503
37504 2007-03-17  Bruno Haible  <bruno@clisp.org>
37505
37506         * gnulib-tool (func_import): Update .cvsignore and .gitignore files
37507         to reflect files copied from gnulib (with or without modifications).
37508         Suggested by Jim Meyering.
37509
37510 2007-03-17  Eric Blake  <ebb9@byu.net>
37511
37512         * NEWS: Document stdlib change from 2007-02-18.
37513
37514 2007-03-17  Jim Meyering  <jim@meyering.net>
37515
37516         Detect use of AC_CONFIG_AUX_DIR also when its argument is quoted.
37517         * build-aux/bootstrap: Put ""s around use of $build_aux, in case
37518         someone uses a name containing shell meta-characters.
37519         Reported by Alfred M. Szmidt.
37520
37521         * build-aux/bootstrap: Don't use \> in grep regexp.  For HP-UX.
37522
37523 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
37524
37525         * build-aux/bootstrap (with_gettext): New variable.  Run autopoint
37526         and copy gettext configuration files only if configure.ac contains
37527         a use of AM_GNU_GETTEXT_VERSION.
37528
37529 2007-03-16  Alfred M. Szmidt  <ams@gnu.org>
37530
37531         * build-aux/bootstrap (gnulib_name): New variable.
37532         (gnulib_tool_options): Use it.
37533
37534 2007-03-13  Simon Josefsson  <simon@josefsson.org>
37535
37536         * tests/test-des.c: Use new namespace.
37537
37538 2007-03-15  Bruno Haible  <bruno@clisp.org>
37539
37540         * lib/dummy.c (gl_dummy_symbol): Renamed from 'dummy'.
37541         Reported by James Youngman <jay@gnu.org>.
37542
37543 2007-03-15  Bruno Haible  <bruno@clisp.org>
37544
37545         * lib/glob.c (glob): Add 'restrict' so that prototype matches the
37546         declared prototype. Needed with cc on OSF/1 5.1.
37547
37548 2007-03-15  Bruno Haible  <bruno@clisp.org>
37549
37550         * lib/gl_list.h (gl_listelement_dispose_fn): New type.
37551         (gl_list_create_empty, gl_list_create): Add dispose_fn argument.
37552         (struct gl_list_implementation): Add dispose_fn argument to the
37553         'create_empty', 'create' methods.
37554         (struct gl_list_impl_base): Add field 'dispose_fn'.
37555         * lib/gl_list.c (gl_list_create_empty, gl_list_create): Add dispose_fn
37556         argument.
37557         * lib/gl_array_list.c (gl_array_create_empty, gl_array_create): Add
37558         dispose_fn argument.
37559         (gl_array_remove_node, gl_array_remove_at, gl_array_list_free): Call
37560         dispose_fn on the dropped values.
37561         * lib/gl_carray_list.c (gl_carray_create_empty, gl_carray_create): Add
37562         dispose_fn argument.
37563         (gl_carray_remove_at, gl_carray_list_free): Call dispose_fn on the
37564         dropped values.
37565         * lib/gl_anyavltree_list2.h (gl_tree_create): Add dispose_fn argument.
37566         (gl_tree_remove_node): Call dispose_fn on the dropped value.
37567         * lib/gl_anyrbtree_list2.h (gl_tree_create): Add dispose_fn argument.
37568         (gl_tree_remove_node): Call dispose_fn on the dropped value.
37569         * lib/gl_anytree_list2.h (gl_tree_create_empty): Add dispose_fn
37570         argument.
37571         (gl_tree_list_free): Call dispose_fn on the dropped values.
37572         * lib/gl_anytreehash_list2.h (gl_tree_list_free): Call dispose_fn on
37573         the dropped values.
37574         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
37575         Add dispose_fn argument.
37576         (gl_linked_remove_node, gl_linked_remove_at, gl_linked_list_free):
37577         Call dispose_fn on the dropped values.
37578         * lib/gl_sublist.c (gl_sublist_create_empty, gl_sublist_create_fill):
37579         Add dispose_fn argument.
37580         (gl_sublist_create): Initialize the 'dispose_fn' field.
37581         * lib/clean-temp.c (create_temp_dir, register_fd): Update.
37582         * tests/test-array_list.c (main): Update.
37583         * tests/test-carray_list.c (main): Update.
37584         * tests/test-avltree_list.c (main): Update.
37585         * tests/test-rbtree_list.c (main): Update.
37586         * tests/test-avltreehash_list.c (main): Update.
37587         * tests/test-rbtreehash_list.c (main): Update.
37588         * tests/test-linked_list.c (main): Update.
37589         * tests/test-linkedhash_list.c (main): Update.
37590         * tests/test-array_oset.c (main): Update.
37591
37592 2007-03-15  Bruno Haible  <bruno@clisp.org>
37593
37594         * lib/gl_oset.h (gl_setelement_dispose_fn): New type.
37595         (gl_oset_create_empty): Add dispose_fn argument.
37596         (struct gl_oset_implementation): Add dispose_fn argument to
37597         'create_empty' method.
37598         (struct gl_oset_impl_base): Add dispose_fn field.
37599         * lib/gl_oset.c (gl_oset_create_empty): Add dispose_fn argument.
37600         * lib/gl_array_oset.c (gl_array_create_empty): Add dispose_fn argument.
37601         (gl_array_remove_at, gl_array_free): Call dispose_fn on the dropped
37602         values.
37603         * lib/gl_anytree_oset.h (gl_tree_create_empty): Add dispose_fn argument.
37604         (gl_tree_oset_free): Call dispose_fn on the dropped values.
37605         * lib/gl_avltree_oset.c (gl_tree_remove_node): Call dispose_fn on the
37606         dropped value.
37607         * lib/gl_rbtree_oset.c (gl_tree_remove_node): Call dispose_fn on the
37608         dropped value.
37609         * tests/test-array_oset.c (main): Update.
37610         * tests/test-avltree_oset.c (main): Update.
37611         * tests/test-rbtree_oset.c (main): Update.
37612         * lib/gl_anytreehash_list1.h (add_to_bucket): Update.
37613
37614 2007-03-13  Bruno Haible  <bruno@clisp.org>
37615
37616         * tests/test-stdbool.c (i): Update after last patch.
37617
37618 2007-03-12  Bruno Haible  <bruno@clisp.org>
37619
37620         * lib/quotearg.c: Include <wctype.h> early, before the definition of
37621         the iswprint macro. Needed on Solaris 2.5.1.
37622
37623 2007-03-12  Bruno Haible  <bruno@clisp.org>
37624
37625         * tests/test-printf-frexp.c (main): Declare x as volatile.
37626
37627 2007-03-12  Simon Josefsson  <simon@josefsson.org>
37628
37629         * doc/gnulib.texi (Build robot for gnulib): New section.
37630
37631 2007-03-12  Jim Meyering  <jim@meyering.net>
37632
37633         * build-aux/bootstrap: New file.
37634         * build-aux/bootstrap.conf: New file, from coreutils.
37635
37636 2007-03-11  Bruno Haible  <bruno@clisp.org>
37637
37638         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Require AC_C_INLINE.
37639
37640 2007-03-12  Simon Josefsson  <simon@josefsson.org>
37641
37642         * lib/des.h, lib/des.c, lib/gc-gnulib.c: Use gl_ namespace, to
37643         avoid collisions with 'des_setkey'.  Reported by Bruno Haible
37644         <bruno@clisp.org>.  Also change 'tripledes_' to '3des_'.
37645
37646 2007-03-11  Bruno Haible  <bruno@clisp.org>
37647
37648         * m4/locale-tr.m4 (gt_LOCALE_TR_UTF8): If the test program fails to
37649         compile, set LOCALE_TR_UTF8 to 'none' instead of empty.
37650
37651 2007-03-11  Bruno Haible  <bruno@clisp.org>
37652
37653         * lib/stdint_.h (INT64_MIN, INTMAX_MIN): Avoid using the ~INT..._MAX
37654         formula. Needed for SunPRO C 5.0.
37655
37656 2007-03-11  Bruno Haible  <bruno@clisp.org>
37657
37658         * modules/long-options (Depends-on): Add getopt.
37659
37660 2007-03-11  Bruno Haible  <bruno@clisp.org>
37661
37662         * modules/modechange (Depends-on): Add stdbool.
37663
37664 2007-03-11  Bruno Haible  <bruno@clisp.org>
37665
37666         * modules/i-ring (Depends-on): Add stdbool.
37667
37668 2007-03-11  Bruno Haible  <bruno@clisp.org>
37669
37670         * modules/gc-des (Depends-on): Add stdbool.
37671
37672 2007-03-11  Bruno Haible  <bruno@clisp.org>
37673
37674         * m4/mktime.m4 (gl_PREREQ_MKTIME): Require AC_C_INLINE.
37675
37676 2007-03-11  Bruno Haible  <bruno@clisp.org>
37677
37678         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Require AC_C_RESTRICT.
37679
37680 2007-03-11  Bruno Haible  <bruno@clisp.org>
37681
37682         * lib/unistr/u32-mbtouc-unsafe.c (u32_mbtouc_unsafe): Fix syntax error.
37683
37684 2007-03-11  Bruno Haible  <bruno@clisp.org>
37685
37686         * lib/vasnprintf.c (sprintf): Undefine.
37687
37688 2007-03-11  Bruno Haible  <bruno@clisp.org>
37689
37690         * lib/isnan.c (rpl_isnan, rpl_isnanl): Work around bug regarding
37691         initializers in SunPRO C and Compaq C compilers.
37692
37693 2007-03-11  Bruno Haible  <bruno@clisp.org>
37694
37695         * lib/gl_array_oset.c (gl_array_iterator_next): Make pointer
37696         decrementing code ANSI C compliant.
37697
37698 2007-03-11  Bruno Haible  <bruno@clisp.org>
37699
37700         * lib/dummy.c [__sun]: Define a dummy variable, not just a typedef.
37701         Needed for Solaris 2.5.1 ranlib and SunPRO C 5.0.
37702
37703 2007-03-11  Bruno Haible  <bruno@clisp.org>
37704
37705         * tests/test-stdbool.c (s, d, e, xlcbug): Disable checks that gnulib's
37706         <stdbool.h> substitute doesn't pass.
37707
37708 2007-03-11  Bruno Haible  <bruno@clisp.org>
37709
37710         * lib/vasnprintf.c (snprintf): Undefine. Avoids an endless recursion.
37711
37712 2007-03-11  Bruno Haible  <bruno@clisp.org>
37713
37714         * gnulib-tool (func_create_megatestdir): Create also an autobuild
37715         script, for submission to autobuild.josefsson.org.
37716
37717 2007-03-10  Bruno Haible  <bruno@clisp.org>
37718
37719         * modules/canonicalize-lgpl-tests: New file.
37720         * tests/test-canonicalize-lgpl.sh: New file.
37721         * tests/test-canonicalize-lgpl.c: New file.
37722
37723         * modules/c-strcase-tests: New file.
37724         * tests/test-c-strcase.sh: New file.
37725         * tests/test-c-strcasecmp.c: New file.
37726         * tests/test-c-strncasecmp.c: New file.
37727
37728         * modules/atexit-tests: New file.
37729         * tests/test-atexit.sh: New file.
37730         * tests/test-atexit.c: New file.
37731
37732 2007-03-10  Bruno Haible  <bruno@clisp.org>
37733
37734         * tests/test-binary-io.sh: Use temporary filenames that are not so
37735         likely to clash with those of other tests (in a parallel make).
37736         * tests/test-binary-io.c: Likewise.
37737
37738 2007-03-10  Bruno Haible  <bruno@clisp.org>
37739
37740         * lib/fseterr.c (fseterr): Port to Solaris/SPARC64. Deactivate the
37741         fallback; use #error instead.
37742         Suggested by Simon Josefsson.
37743
37744 2007-03-10  Bruno Haible  <bruno@clisp.org>
37745
37746         * gnulib-tool (func_create_testdir): Treat MOSTLYCLEANFILES like
37747         CLEANFILES. Put spaces in each line of $cleaned_files, not only the
37748         first and the last.
37749
37750 2007-03-10  Bruno Haible  <bruno@clisp.org>
37751
37752         * lib/stdint_.h (uint_least64_t): Fix typo in last patch.
37753
37754 2007-03-10  Bruno Haible  <bruno@clisp.org>
37755
37756         * modules/snprintf-posix-tests (EXTRA_DIST): New variable. Needed for
37757         "make distcheck".
37758         * modules/sprintf-posix-tests (EXTRA_DIST): Likewise.
37759         * modules/vsnprintf-posix-tests (EXTRA_DIST): Likewise.
37760         * modules/vsprintf-posix-tests (EXTRA_DIST): Likewise.
37761
37762 2007-03-10  Bruno Haible  <bruno@clisp.org>
37763
37764         * modules/allocsa-tests (test_allocsa_SOURCES): Remove redundant
37765         variable.
37766         * modules/dirname-tests (test_dirname_SOURCES): Remove redundant
37767         variable.
37768
37769 2007-03-09  Eric Blake  <ebb9@byu.net>
37770         and Matthew Woehlke  <mw_triad@users.sourceforge.net>  (tiny change)
37771
37772         * lib/stdint_.h (int64_t, uint64_t): Don't undefine if 64-bit
37773         types are not being provided by gnulib.
37774         (GL_INT64_T, GL_UINT64_T): New witnesses of whether gnulib 64-bit
37775         types are supported.
37776
37777 2007-03-10  Bruno Haible  <bruno@clisp.org>
37778
37779         * lib/stdio_.h (__attribute__): New macro.
37780         (fprintf, vfprintf, printf, vprintf, snprintf, vsnprintf, sprintf,
37781         vsprintf): Specify __attribute__ __format__ for GCC.
37782         Suggested by Eric Blake.
37783
37784 2007-03-09  Bruno Haible  <bruno@clisp.org>
37785
37786         * modules/printf-posix-tests: New file.
37787         * tests/test-printf-posix.sh: New file.
37788         * tests/test-printf-posix.c: New file.
37789
37790         * modules/printf-posix: New file.
37791         * lib/printf.c: New file.
37792         * m4/printf-posix-rpl.m4: New file.
37793         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_PRINTF_POSIX,
37794         REPLACE_PRINTF.
37795         * lib/stdio_.h (printf): New declaration.
37796         (format, __format__, ____printf____, ____scanf____, ____strftime____,
37797         ____strfmon____): New macros.
37798         * modules/stdio (Makefile.am): Substitute also GNULIB_PRINTF_POSIX,
37799         REPLACE_PRINTF.
37800
37801 2007-03-09  Bruno Haible  <bruno@clisp.org>
37802
37803         * tests/test-vasnprintf-posix2.sh: New file.
37804         * tests/test-vasnprintf-posix2.c: New file.
37805         * modules/vasnprintf-posix-tests (Files): Add them and m4/locale-fr.m4.
37806         (configure.ac): Invoke gt_LOCALE_FR and gt_LOCALE_FR_UTF8.
37807         (Makefile.am): Activate test-vasnprintf-posix2.sh.
37808
37809         * lib/vasnprintf.c (VASNPRINTF): For the 'a' and 'A' directives, use
37810         a locale dependent decimal point, rather than always '.'.
37811
37812 2007-03-09  Eric Blake  <ebb9@byu.net>
37813
37814         * lib/stdlib_.h (EXIT_FAILURE): GNU code expects this to be 1, in
37815         spite of platforms like Tandem/NSK that define it to -1.
37816
37817 2007-03-08  Bruno Haible  <bruno@clisp.org>
37818
37819         * modules/vprintf-posix-tests: New file.
37820         * tests/test-vprintf-posix.sh: New file.
37821         * tests/test-vprintf-posix.c: New file.
37822         * tests/test-printf-posix.h: New file.
37823
37824         * modules/vprintf-posix: New file.
37825         * lib/vprintf.c: New file.
37826         * m4/vprintf-posix.m4: New file.
37827         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VPRINTF_POSIX,
37828         REPLACE_VPRINTF.
37829         * lib/stdio_.h (vprintf): New declaration.
37830         * modules/stdio (Makefile.am): Substitute also GNULIB_VPRINTF_POSIX,
37831         REPLACE_VPRINTF.
37832
37833 2007-03-08  Bruno Haible  <bruno@clisp.org>
37834
37835         * modules/fprintf-posix-tests: New file.
37836         * tests/test-fprintf-posix.sh: New file.
37837         * tests/test-fprintf-posix.c: New file.
37838
37839         * modules/fprintf-posix: New file.
37840         * lib/fprintf.c: New file.
37841         * m4/fprintf-posix.m4: New file.
37842         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_FPRINTF_POSIX,
37843         REPLACE_FPRINTF.
37844         * lib/stdio_.h (fprintf): New declaration.
37845         * modules/stdio (Makefile.am): Substitute also GNULIB_FPRINTF_POSIX,
37846         REPLACE_FPRINTF.
37847
37848 2007-03-08  Bruno Haible  <bruno@clisp.org>
37849
37850         * modules/vfprintf-posix-tests: New file.
37851         * tests/test-vfprintf-posix.sh: New file.
37852         * tests/test-vfprintf-posix.c: New file.
37853         * tests/test-fprintf-posix.h: New file.
37854         * tests/test-fprintf-posix.out: New file.
37855
37856         * modules/vfprintf-posix: New file.
37857         * lib/vfprintf.c: New file.
37858         * m4/vfprintf-posix.m4: New file.
37859         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VFPRINTF_POSIX,
37860         REPLACE_VFPRINTF.
37861         * lib/stdio_.h (vfprintf): New declaration.
37862         * modules/stdio (Makefile.am): Substitute also GNULIB_VFPRINTF_POSIX,
37863         REPLACE_VFPRINTF.
37864
37865 2007-03-08  Bruno Haible  <bruno@clisp.org>
37866
37867         * lib/stdio_.h: Treat __need___FILE like __need_FILE.
37868
37869 2007-03-08  Bruno Haible  <bruno@clisp.org>
37870
37871         * m4/snprintf-posix.m4 (gl_FUNC_SNPRINTF_POSIX): Use 'case' statements
37872         instead of 'expr' invocations.
37873         * m4/sprintf-posix.m4 (gl_FUNC_SPRINTF_POSIX): Likewise.
37874         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Likewise.
37875         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): Likewise.
37876         * m4/vsnprintf-posix.m4 (gl_FUNC_VSNPRINTF_POSIX): Likewise.
37877         * m4/vsprintf-posix.m4 (gl_FUNC_VSPRINTF_POSIX): Likewise.
37878         Suggested by Paul Eggert.
37879
37880 2007-03-08  Bruno Haible  <bruno@clisp.org>
37881
37882         * modules/fseterr-tests: New file.
37883         * tests/test-fseterr.c: New file.
37884
37885         * modules/fseterr: New file.
37886         * lib/fseterr.h: New file.
37887         * lib/fseterr.c: New file.
37888
37889 2007-03-08  Bruno Haible  <bruno@clisp.org>
37890
37891         * lib/fnmatch_.h: Convert tabs in the middle of lines to spaces.
37892         * lib/getopt_.h: Likewise.
37893         * lib/mbswidth.h: Likewise.
37894         * lib/setenv.h: Likewise.
37895         * lib/vasnprintf.h: Likewise.
37896         * lib/vasprintf.h: Likewise.
37897         * lib/verror.h: Likewise.
37898         * lib/xsetenv.h: Likewise.
37899         * lib/xvasprintf.h: Likewise.
37900
37901 2007-03-08  Jim Meyering  <jim@meyering.net>
37902
37903         * users.txt: Add parted.
37904
37905         * ChangeLog: Restore 1500 lines mistakenly removed from the end.
37906
37907 2007-03-07  Bruno Haible  <bruno@clisp.org>
37908
37909         * m4/printf.m4: Make the shell script snippets copy&pastable.
37910
37911 2007-03-02  Bruno Haible  <bruno@clisp.org>
37912
37913         * lib/netinet_in_.h: New file.
37914         * m4/netinet_in_h.m4 (gl_HEADER_NETINET_IN): Test whether netinet/in.h
37915         is self-contained. Set ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H.
37916         * modules/netinet_in (Files): Add lib/netinet_in_.h.
37917         (Depends-on): Add absolute-header.
37918         (Makefile.am): Substitute ABSOLUTE_NETINET_IN_H, HAVE_NETINET_IN_H
37919         into netinet/in.h.
37920
37921 2007-03-03  Bruno Haible  <bruno@clisp.org>
37922
37923         * lib/sys_select_.h: New file.
37924         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SELECT): Test whether sys/select.h
37925         is self-contained. Set ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H.
37926         * modules/sys_select (Files): Add lib/sys_select_.h.
37927         (Depends-on): Add absolute-header.
37928         (Makefile.am): Substitute ABSOLUTE_SYS_SELECT_H, HAVE_SYS_SELECT_H
37929         into sys/select.h.
37930
37931 2007-03-02  Bruno Haible  <bruno@clisp.org>
37932
37933         * lib/socket_.h: If sys/socket.h exists, include that and <sys/types.h>
37934         before it. Turn HAVE_WINSOCK2_H and HAVE_WS2TCPIP_H into configute-time
37935         values.
37936         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Test also whether
37937         <sys/socket.h> is self-contained. Set ABSOLUTE_SYS_SOCKET_H,
37938         HAVE_SYS_SOCKET_H, HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H.
37939         * modules/sys_socket (Depends-on): Add absolute-header.
37940         (Makefile.am): Substitute ABSOLUTE_SYS_SOCKET_H, HAVE_SYS_SOCKET_H,
37941         HAVE_WINSOCK2_H, HAVE_WS2TCPIP_H into sys/socket.h.
37942         (Include): Remove requirement of inclusion of <sys/types.h>.
37943
37944 2007-03-02  Bruno Haible  <bruno@clisp.org>
37945
37946         * lib/byteswap_.h (bswap_32): Fix formula.
37947
37948 2007-03-06  Bruno Haible  <bruno@clisp.org>
37949
37950         * modules/sprintf-posix-tests: New file.
37951         * tests/test-sprintf-posix.c: New file.
37952
37953         * modules/sprintf-posix: New file.
37954         * lib/sprintf.c: New file.
37955         * m4/sprintf-posix.m4: New file.
37956         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_SPRINTF_POSIX,
37957         REPLACE_SPRINTF.
37958         * lib/stdio_.h (sprintf): New declaration.
37959         * modules/stdio (Makefile.am): Substitute also GNULIB_SPRINTF_POSIX,
37960         REPLACE_SPRINTF.
37961
37962 2007-03-06  Bruno Haible  <bruno@clisp.org>
37963
37964         * modules/vsprintf-posix-tests: New file.
37965         * tests/test-vsprintf-posix.c: New file.
37966         * tests/test-sprintf-posix.h: New file.
37967
37968         * modules/vsprintf-posix: New file.
37969         * lib/vsprintf.c: New file.
37970         * m4/vsprintf-posix.m4: New file.
37971         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also GNULIB_VSPRINTF_POSIX,
37972         REPLACE_VSPRINTF.
37973         * lib/stdio_.h (vsprintf): New declaration.
37974         * modules/stdio (Makefile.am): Substitute also GNULIB_VSPRINTF_POSIX,
37975         REPLACE_VSPRINTF.
37976
37977 2007-03-06  Bruno Haible  <bruno@clisp.org>
37978
37979         * modules/vsnprintf (Depend-on): Remove minmax.
37980
37981 2007-03-06  Bruno Haible  <bruno@clisp.org>
37982
37983         * modules/snprintf-posix-tests: New file.
37984         * tests/test-snprintf-posix.c: New file.
37985
37986         * modules/snprintf-posix: New file.
37987         * m4/snprintf-posix.m4: New file.
37988         * m4/snprintf.m4 (gl_REPLACE_SNPRINTF): New macro, extracted from
37989         gl_FUNC_SNPRINTF.
37990         (gl_FUNC_SNPRINTF): Invoke it.
37991         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_SNPRINTF.
37992         * lib/stdio_.h (snprintf): Define as a replacement if REPLACE_SNPRINTF
37993         is set.
37994         * modules/stdio (Makefile.am): Substitute also REPLACE_SNPRINTF.
37995
37996 2007-03-06  Bruno Haible  <bruno@clisp.org>
37997
37998         * modules/vsnprintf-posix-tests: New file.
37999         * tests/test-vsnprintf-posix.c: New file.
38000         * tests/test-snprintf-posix.h: New file.
38001
38002         * modules/vsnprintf-posix: New file.
38003         * m4/vsnprintf-posix.m4: New file.
38004         * m4/vsnprintf.m4 (gl_REPLACE_VSNPRINTF): New macro, extracted from
38005         gl_FUNC_VSNPRINTF.
38006         (gl_FUNC_VSNPRINTF): Invoke it.
38007         * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Set also REPLACE_VSNPRINTF.
38008         * lib/stdio_.h (vsnprintf): Define as a replacement if
38009         REPLACE_VSNPRINTF is set.
38010         * modules/stdio (Makefile.am): Substitute also REPLACE_VSNPRINTF.
38011
38012 2007-03-06  Bruno Haible  <bruno@clisp.org>
38013
38014         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Test for vasnprintf here.
38015         * m4/vasprintf-posix.m4 (gl_FUNC_VASPRINTF_POSIX): ... not here.
38016
38017 2007-03-06  Bruno Haible  <bruno@clisp.org>
38018
38019         * lib/math_.h (acosl): Declare also if HAVE_DECL_ACOSL is set.
38020         (asinl): Declare also if HAVE_DECL_ASINL is set.
38021         (atanl): Declare also if HAVE_DECL_ATANL is set.
38022         (ceill): Declare also if HAVE_DECL_CEILL is set.
38023         (cosl): Declare also if HAVE_DECL_COSL is set.
38024         (expl): Declare also if HAVE_DECL_EXPL is set.
38025         (floorl): Declare also if HAVE_DECL_FLOORL is set.
38026         (frexpl): Declare also if HAVE_DECL_FREXPL is set.
38027         (ldexpl): Declare also if HAVE_DECL_LDEXPL is set.
38028         (logl): Declare also if HAVE_DECL_LOGL is set.
38029         (sinl): Declare also if HAVE_DECL_SINL is set.
38030         (sqrtl): Declare also if HAVE_DECL_SQRTL is set.
38031         (tanl): Declare also if HAVE_DECL_TANL is set.
38032         * modules/math (Makefile.am): Substitute the values of HAVE_DECL_*.
38033         * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Set HAVE_DECL_* to 1.
38034         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Fix tests for the
38035         declaration of frexpl, ldexpl.
38036         * modules/printf-frexpl (Depends-on): Add math.
38037         * lib/printf-frexp.c (frexpl, ldexpl): Undo last change.
38038
38039 2007-03-05  Bruno Haible  <bruno@clisp.org>
38040
38041         * m4/printf-frexpl.m4 (gl_FUNC_PRINTF_FREXPL): Also test whether
38042         frexpl and ldexpl are declared.
38043         * lib/printf-frexp.c (frexpl, ldexpl): Provide fallback declarations.
38044
38045 2007-03-05  Bruno Haible  <bruno@clisp.org>
38046
38047         * gnulib-tool (func_get_automake_snippet): Don't synthesize an
38048         EXTRA_lib_SOURCES augmentation for the relocatable-prog-wrapper module.
38049
38050 2007-03-05  Bruno Haible  <bruno@clisp.org>
38051
38052         * lib/stdio_.h: Include <stddef.h>.
38053
38054 2007-03-05  Bruno Haible  <bruno@clisp.org>
38055
38056         * m4/printf.m4 (gl_SNPRINTF_DIRECTIVE_N): New macro.
38057
38058 2007-03-05  Bruno Haible  <bruno@clisp.org>
38059
38060         * m4/printf.m4: Update with info about OpenBSD 3.9, HP-UX 10.20,
38061         NetBSD 4, from Ralf Wildenhues.
38062
38063 2007-03-04  Bruno Haible  <bruno@clisp.org>
38064
38065         * lib/vasprintf.h: Update #if logic for the case when the functions
38066         exist but are overridden.
38067
38068 2007-03-04  Bruno Haible  <bruno@clisp.org>
38069
38070         * m4/printf.m4 (gl_PRINTF_DIRECTIVE_A): Exclude two buggy
38071         implementations: glibc-2.4 and MacOS X 10.3.
38072         * tests/test-vasnprintf-posix.c (test_function): Test also the case
38073         that exhibits the bugs in glibc-2.4 and MacOS X 10.3.
38074         * tests/test-vasprintf-posix.c (test_function): Likewise.
38075
38076 2007-03-04  Bruno Haible  <bruno@clisp.org>
38077
38078         * modules/vasprintf-posix-tests: New file.
38079         * tests/test-vasprintf-posix.c: New file.
38080
38081         * modules/vasprintf-posix: New file.
38082         * lib/vasprintf.h (asprintf, vasprintf): Rename if REPLACE_VASPRINTF is
38083         defined.
38084         * m4/vasprintf-posix.m4: New file.
38085         * m4/vasprintf.m4 (gl_REPLACE_VASPRINTF): New macro, extracted from
38086         gl_FUNC_VASPRINTF.
38087         (gl_FUNC_VASPRINTF): Invoke it.
38088         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): Define REPLACE_VASNPRINTF
38089         here.
38090         * m4/vasnprintf-posix.m4 (gl_FUNC_VASNPRINTF_POSIX): Not here.
38091
38092 2007-03-04  Bruno Haible  <bruno@clisp.org>
38093
38094         * lib/sys_time_.h: Rename GETTIMEOFDAY_REPLACEMENT to
38095         REPLACE_GETTIMEOFDAY.
38096         * modules/sys_time (Makefile.am): Likewise.
38097         * m4/sys_time_h.m4: Likewise.
38098         * m4/gettimeofday.m4: Likewise.
38099
38100 2007-03-04  Bruno Haible  <bruno@clisp.org>
38101
38102         * modules/vasnprintf-posix-tests: New file.
38103         * tests/test-vasnprintf-posix.c: New file.
38104
38105         * modules/vasnprintf-posix: New file.
38106         * lib/vasnprintf.c: Include isnan.h, isnanl.h, printf-frexp.h,
38107         printf-frexpl.h.
38108         (VASNPRINTF): Handle the 'a' and 'A' directives here, if needed.
38109         * lib/vasnprintf.h (asnprintf, vasnprintf): Rename if
38110         REPLACE_VASNPRINTF is defined.
38111         * m4/vasnprintf.m4 (gl_REPLACE_VASNPRINTF): New macro, extracted from
38112         gl_FUNC_VASNPRINTF.
38113         (gl_FUNC_VASNPRINTF): Invoke it.
38114         * m4/vasnprintf-posix.m4: New file.
38115         * m4/printf.m4: New file.
38116
38117 2007-03-04  Bruno Haible  <bruno@clisp.org>
38118
38119         Compile progreloc.c only if --enable-relocatable is specified.
38120         * m4/relocatable.m4 (gl_RELOCATABLE): Arrange to compile progreloc.c
38121         if --enable-relocatable was specified.
38122         * modules/relocatable-prog (Makefile.am): Remove progreloc.c from
38123         lib_SOURCES.
38124
38125 2007-03-04  Jim Meyering  <jim@meyering.net>
38126
38127         * lib/acl.c (ACL_NOT_WELL_SUPPORTED): New macro.
38128         Use it consistently, rather than enumerating errno constants.
38129
38130 2007-03-04  Bruno Haible  <bruno@clisp.org>
38131
38132         * modules/xvasprintf-tests: New file.
38133         * tests/test-xvasprintf.c: New file.
38134
38135         * modules/vasprintf-tests: New file.
38136         * tests/test-vasprintf.c: New file.
38137
38138         * modules/vasnprintf-tests: New file.
38139         * tests/test-vasnprintf.c: New file.
38140
38141         * modules/vsnprintf-tests: New file.
38142         * tests/test-vsnprintf.c: New file.
38143
38144         * modules/snprintf-tests: New file.
38145         * tests/test-snprintf.c: New file.
38146
38147 2007-03-04  Bruno Haible  <bruno@clisp.org>
38148
38149         Compile relocatable.c only if --enable-relocatable is specified.
38150         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY_BODY): Renamed from
38151         gl_RELOCATABLE_LIBRARY.
38152         (gl_RELOCATABLE_LIBRARY, gl_RELOCATABLE_LIBRARY_SEPARATE): New macros.
38153         * m4/relocatable.m4 (gl_RELOCATABLE): Invoke gl_RELOCATABLE_LIBRARY.
38154         (gl_RELOCATABLE_BODY): Require gl_RELOCATABLE_LIBRARY_BODY instead of
38155         gl_RELOCATABLE_LIBRARY.
38156         * modules/relocatable-lib (configure.ac): Invoke gl_RELOCATABLE_LIBRARY.
38157         (Makefile.am): Remove lib_SOURCES.
38158         * modules/relocatable-lib-lgpl (configure.ac): Invoke
38159         gl_RELOCATABLE_LIBRARY.
38160         (Makefile.am): Remove lib_SOURCES.
38161         * modules/relocatable-prog (Makefile.am): Don't compile relocatable.c
38162         always.
38163         * modules/relocatable-prog-wrapper (configure.ac): Invoke
38164         gl_RELOCATABLE_LIBRARY_SEPARATE instead of gl_RELOCATABLE_LIBRARY.
38165
38166 2007-03-04  Bruno Haible  <bruno@clisp.org>
38167
38168         * modules/argmatch-tests: New file.
38169         * tests/test-argmatch.c: New file.
38170
38171         * tests/test-allocsa.c (main): Halve the number of loop runs.
38172
38173         * modules/alloca-opt-tests: New file.
38174         * tests/test-alloca-opt.c: New file.
38175
38176 2007-03-04  Jim Meyering  <jim@meyering.net>
38177
38178         Work around difference between Linux ACLs and Solaris 10 ZFS.
38179         * lib/acl.c (set_acl): Revert to using chmod_or_fchmod also
38180         for EINVAL.
38181
38182 2007-03-03  Bruno Haible  <bruno@clisp.org>
38183
38184         * modules/relocatable-prog (Depends-on): Add back progreloc's
38185         dependencies: canonicalize-lgpl, xalloc, xreadlink, stdbool, unistd.
38186
38187 2007-03-03  Bruno Haible  <bruno@clisp.org>
38188
38189         * modules/relocatable-lib-lgpl: Renamed from modules/relocatable-lib.
38190         * modules/relocatable-lib: New file.
38191
38192 2007-03-03  Bruno Haible  <bruno@clisp.org>
38193
38194         * modules/relocatable-prog: Renamed from modules/relocatable.
38195         * doc/relocatable-maint.texi: Talk about module 'relocatable-prog'.
38196
38197 2007-03-03  Bruno Haible  <bruno@clisp.org>
38198
38199         * modules/relocatable-script (Files): Add doc/relocatable.texi,
38200         m4/relocatable-lib.m4.
38201         (Depends-on): Remove 'relocatable'.
38202         (configure.ac): Add gl_RELOCATABLE_NOP.
38203
38204 2007-03-03  Bruno Haible  <bruno@clisp.org>
38205
38206         * modules/relocatable-prog-wrapper: New file.
38207         * modules/relocatable (Depends-on): Add it. Remove all other
38208         dependencies except progname.
38209         (Files): Remove build-aux/install-reloc, lib/relocwrapper.c.
38210
38211         * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): New macro.
38212         (gl_FUNC_STRERROR): Nop.
38213         * lib/strerror.c: Compile the file only if !HAVE_STRERROR.
38214
38215         * m4/setenv.m4 (gl_FUNC_SETENV_SEPARATE): New macro.
38216         * lib/setenv.c: Compile the file only if _LIBC || !HAVE_SETENV.
38217
38218         * m4/readlink.m4 (gl_FUNC_READLINK_SEPARATE): New macro.
38219         (gl_FUNC_READLINK): Update.
38220
38221         * m4/canonicalize-lgpl.m4 (gl_CANONICALIZE_LGPL_SEPARATE): New macro.
38222
38223 2007-03-03  Bruno Haible  <bruno@clisp.org>
38224
38225         * lib/xreadlink.c: Include <unistd.h> unconditionally.
38226         * modules/xreadlink (Depends-on): Add unistd.
38227         * modules/xreadlink-with-size (Depends-on): Likewise.
38228
38229 2007-03-03  Bruno Haible  <bruno@clisp.org>
38230
38231         * m4/setenv.m4 (gl_FUNC_SETENV, gl_FUNC_UNSETENV): New macros,
38232         extracted from gt_FUNC_SETENV.
38233         (gt_FUNC_SETENV): Remove macro.
38234         * modules/setenv (configure.ac): Add gl_FUNC_SETENV, gl_FUNC_UNSETENV,
38235         remove gt_FUNC_SETENV.
38236
38237 2007-03-03  Bruno Haible  <bruno@clisp.org>
38238
38239         * m4/relocatable-lib.m4 (gl_RELOCATABLE_LIBRARY): Define
38240         ENABLE_RELOCATABLE here.
38241         * m4/relocatable.m4 (gl_RELOCATABLE_BODY): Don't define it here.
38242
38243 2007-03-03  Bruno Haible  <bruno@clisp.org>
38244
38245         * modules/rbtreehash-list-tests (Depends-on): Add progname.
38246         * tests/test-rbtreehash_list.c: Include progname.h.
38247         (main): Call set_program_name.
38248
38249         * modules/rbtree-oset-tests (Depends-on): Add progname.
38250         * tests/test-rbtree_oset.c: Include progname.h.
38251         (main): Call set_program_name.
38252
38253         * modules/rbtree-list-tests (Depends-on): Add progname.
38254         * tests/test-rbtree_list.c: Include progname.h.
38255         (main): Call set_program_name.
38256
38257         * modules/linked-list-tests (Depends-on): Add progname.
38258         * tests/test-linked_list.c: Include progname.h.
38259         (main): Call set_program_name.
38260
38261 2007-03-03  Bruno Haible  <bruno@clisp.org>
38262
38263         * lib/glob-libc.h (_Restrict_): New macro, copied from lib/regex.h.
38264         All uses of __restrict changed to _Restrict_.
38265         * lib/glob_.h (__restrict): Remove macro.
38266
38267 2007-03-02  Bruno Haible  <bruno@clisp.org>
38268
38269         * modules/gettext (configure.ac): Require gettext infrastructure
38270         from version 0.16.1.
38271
38272 2007-03-02  Bruno Haible  <bruno@clisp.org>
38273
38274         * modules/linkedhash-list-tests (Depends-on): Add progname.
38275         * tests/test-linkedhash_list.c: Include progname.h.
38276         (main): Call set_program_name.
38277
38278         * modules/carray-list-tests (Depends-on): Add progname.
38279         * tests/test-carray_list.c: Include progname.h.
38280         (main): Call set_program_name.
38281
38282         * modules/avltreehash-list-tests (Depends-on): Add progname.
38283         * tests/test-avltreehash_list.c: Include progname.h.
38284         (main): Call set_program_name.
38285
38286         * modules/avltree-oset-tests (Depends-on): Add progname.
38287         * tests/test-avltree_oset.c: Include progname.h.
38288         (main): Call set_program_name.
38289
38290         * modules/avltree-list-tests (Depends-on): Add progname.
38291         * tests/test-avltree_list.c: Include progname.h.
38292         (main): Call set_program_name.
38293
38294         * modules/array-oset-tests (Depends-on): Add progname.
38295         * tests/test-array_oset.c: Include progname.h.
38296         (main): Call set_program_name.
38297
38298         * modules/array-list-tests (Depends-on): Add progname.
38299         * tests/test-array_list.c: Include progname.h.
38300         (main): Call set_program_name.
38301
38302         * modules/argp-tests (Depends-on): Add progname.
38303         * tests/test-argp.c: Include argp.h first. Include progname.h.
38304         (main): Call set_program_name.
38305
38306 2007-03-02  Paul Eggert  <eggert@cs.ucla.edu>
38307
38308         * doc/gnulib-tool.texi (Initial import): Reword description of
38309         _FILE_OFFSET_BITS and _GNU_SOURCE, since they sometimes have a
38310         limited effect even if defined after the first system include.
38311
38312 2007-03-01  Bruno Haible  <bruno@clisp.org>
38313
38314         * build-aux/config.libpath: Update to libtool-1.5.22.
38315         Reported by Albert Chin <bug-gnulib@mlists.thewrittenword.com>.
38316
38317 2007-03-01  Bruno Haible  <bruno@clisp.org>
38318
38319         * doc/relocatable-maint.texi: Recommend to set foo_CPPFLAGS, not
38320         foo_CFLAGS.
38321         Reported by Ralf Wildenhues.
38322
38323 2007-03-01  Bruno Haible  <bruno@clisp.org>
38324
38325         * build-aux/install-reloc: Remove object files left over by some
38326         compilers.
38327         Reported by Ralf Wildenhues.
38328
38329 2007-03-01  Bruno Haible  <bruno@clisp.org>
38330
38331         * build-aux/install-reloc: Break long lines.
38332
38333 2007-03-01  Bruno Haible  <bruno@clisp.org>
38334
38335         * doc/relocatable.texi: Document that it may not work on OpenBSD.
38336         Reported by Ralf Wildenhues.
38337
38338 2007-03-01  Bruno Haible  <bruno@clisp.org>
38339
38340         * doc/gnulib-tool.texi (Initial import): Remove paragraph about
38341         include ordering constraints.
38342
38343 2007-03-01  Paul Eggert  <eggert@cs.ucla.edu>
38344
38345         Followup to the 2007-02-12 patch, using suggestions from Bruno Haible in
38346         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00136.html>.
38347         * doc/gnulib-tool.texi (Initial import): Mention _FILE_OFFSET_BITS
38348         as another example.
38349         * lib/time_.h: Fix misspelling.
38350         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
38351         Require gl_HEADER_TIME_H_DEFAULTS.
38352         * m4/strptime.m4 (gl_FUNC_STRPTIME): Likewise.
38353         * m4/time_r.m4 (gl_TIME_R): Likewise.
38354         * m4/timegm.m4 (gl_FUNC_TIMEGM): Likewise.
38355
38356 2007-03-01  Bruno Haible  <bruno@clisp.org>
38357
38358         * m4/utimecmp.m4 (gl_UTIMECMP): Don't require gl_TIMESPEC.
38359         * m4/utimens.m4 (gl_UTIMENS): Likewise.
38360
38361 2007-03-01  Jim Meyering  <jim@meyering.net>
38362
38363         * modules/xreadlink (Maintainer): Add my name.
38364         * modules/xreadlink-with-size (Depends-on): Alphabetize.
38365
38366 2007-02-26  Ben Pfaff  <blp@cs.stanford.edu>
38367             Bruno Haible  <bruno@clisp.org>
38368
38369         * build-aux/install-reloc: Compile also c-ctype.c.
38370         * build-aux/relocatable.sh.in: New file.
38371         * doc/relocatable.texi: New file.
38372         * doc/relocatable-maint.texi: New file.
38373         * doc/gnulib.texi: Include relocatable-maint.texi.
38374         * lib/progreloc.c: Include unistd.h unconditionally.
38375         * lib/relocwrapper.c: Include unistd.h unconditionally.
38376         Include c-ctype.h.
38377         (add_dotbin): Use c_tolower.
38378         * m4/relocatable-lib.m4: New file, extracted from m4/relocatable.m4.
38379         (gl_RELOCATABLE_LIBRARY): Renamed from AC_RELOCATABLE_LIBRARY.
38380         (gl_RELOCATABLE_NOP): Renamed from AC_RELOCATABLE_NOP.
38381         * m4/relocatable.m4 (AC_RELOCATABLE_LIBRARY, AC_RELOCATABLE_NOP): Move
38382         to m4/relocatable-lib.m4.
38383         (gl_RELOCATABLE): Renamed from AC_RELOCATABLE. Set also
38384         RELOCATABLE_CONFIG_H_DIR, RELOCATABLE_SRC_DIR, RELOCATABLE_BUILD_DIR.
38385         (gl_RELOCATABLE_BODY): Renamed from AC_RELOCATABLE_BODY. Don't
38386         require obsolete macro AC_EXEEXT. Don't check for unistd.h. Don't set
38387         SET_RELOCATABLE. Instead set RELOCATABLE_LDFLAGS, INSTALL_PROGRAM_ENV.
38388         * modules/relocatable: New file.
38389         * modules/relocatable-lib: New file.
38390         * modules/relocatable-script: New file.
38391
38392 2007-02-28  Bruno Haible  <bruno@clisp.org>
38393
38394         Import --enable-relocatable infrastructure.
38395         * build-aux/config.libpath: New file, from GNU gettext.
38396         * build-aux/install-reloc: New file, from GNU gettext.
38397         * build-aux/reloc-ldflags: New file, from GNU gettext.
38398         * lib/relocatable.h: New file, from GNU gettext.
38399         * lib/relocatable.c: New file, from GNU gettext.
38400         * lib/relocwrapper.c: New file, from GNU gettext.
38401         * m4/relocatable.m4: New file, from GNU gettext.
38402
38403 2007-02-28  Bruno Haible  <bruno@clisp.org>
38404
38405         * MODULES.html.sh (File system functions): Add xreadlink-with-size.
38406
38407         * modules/xreadlink: New file, from GNU gettext with modifications.
38408         * lib/xreadlink.c: New file, from GNU gettext.
38409         * lib/xreadlink.h: Add comments.
38410         (xreadlink): New declaration.
38411
38412         * modules/xreadlink-with-size: Renamed from modules/xreadlink.
38413         (Files): Remove m4/xreadlink.m4. Replace lib/xreadlink.c with
38414         lib/xreadlink-with-size.c.
38415         (configure.ac): Remove gl_XREADLINK invocation.
38416         (Makefile.am): Augment lib_SOURCES.
38417         * m4/xreadlink.m4: Remove file.
38418         * lib/xreadlink-with-size.c: Renamed from lib/xreadlink.c.
38419         (xreadlink_with_size): Renamed from xreadink.
38420         * lib/xreadlink.h (xreadlink_with_size): Renamed from xreadink.
38421         * modules/canonicalize (Depends-on): Replace xreadlink with
38422         xreadlink-with-size.
38423         * lib/canonicalize.c (canonicalize_filename_mode): Update.
38424
38425 2007-02-25  Jim Meyering  <jim@meyering.net>
38426
38427         * build-aux/announce-gen: When complaining about excess arguments,
38428         list them.
38429
38430 2007-02-25  Paul Eggert  <eggert@cs.ucla.edu>
38431
38432         * README: Document signed integer overflow situation more
38433         accurately.
38434
38435 2007-02-25  Bruno Haible  <bruno@clisp.org>
38436
38437         * lib/vasnprintf.c (VASNPRINTF): Fix estimate of size needed for a
38438         'a' or 'A' conversion.
38439
38440 2007-02-25  Bruno Haible  <bruno@clisp.org>
38441
38442         * modules/filename: Renamed from modules/pathname.
38443         (Files): Replace lib/pathname.h with lib/filename.h. Replace
38444         lib/concatpath.c with lib/concat-filename.c.
38445         (Makefile.am): Update.
38446         (Include): Replace pathname.h with filename.h.
38447         * lib/filename.h: Renamed from lib/pathname.h.
38448         (concatenated_filename): Renamed from concatenated_pathname.
38449         * lib/concat-filename.c: Renamed from lib/concatpath.c.
38450         (concatenated_filename): Renamed from concatenated_pathname.
38451         * lib/findprog.c: Include filename.h instead of pathname.h.
38452         (find_in_path): Update.
38453         * lib/javacomp.c: Include filename.h instead of pathname.h.
38454         (is_envjavac_gcj43_usable, is_envjavac_oldgcj_14_14_usable,
38455         is_envjavac_oldgcj_14_13_usable, is_envjavac_nongcj_usable,
38456         is_gcj_present, is_gcj43_usable, is_oldgcj_14_14_usable,
38457         is_oldgcj_14_13_usable, is_javac_usable): Update.
38458         * lib/javaexec.c: Include filename.h instead of pathname.h.
38459         (execute_java_class): Update.
38460         * modules/findprog: Update.
38461         * modules/javacomp: Update.
38462         * modules/javaexec: Update.
38463         * MODULES.html.sh (File system functions): Add 'filename', remove
38464         'pathname'.
38465
38466 2007-02-25  Bruno Haible  <bruno@clisp.org>
38467
38468         * modules/printf-frexpl-tests: New file.
38469         * tests/test-printf-frexpl.c: New file.
38470
38471         * modules/printf-frexpl: New file.
38472         * lib/printf-frexpl.h: New file.
38473         * lib/printf-frexpl.c: New file.
38474         * m4/printf-frexpl.m4: New file.
38475
38476 2007-02-25  Bruno Haible  <bruno@clisp.org>
38477
38478         * modules/printf-frexp-tests: New file.
38479         * tests/test-printf-frexp.c: New file.
38480
38481         * modules/printf-frexp: New file.
38482         * lib/printf-frexp.h: New file.
38483         * lib/printf-frexp.c: New file.
38484         * m4/printf-frexp.m4: New file.
38485
38486 2007-02-25  Bruno Haible  <bruno@clisp.org>
38487
38488         Assume automake >= 1.10 for the tests.
38489         * modules/arcfour-tests (TESTS): Remove $(EXEEXT) suffix.
38490         * modules/arctwo-tests: Likewise.
38491         * modules/argp-tests: Likewise.
38492         * modules/avltree-list-tests: Likewise.
38493         * modules/avltree-oset-tests: Likewise.
38494         * modules/avltreehash-list-tests: Likewise.
38495         * modules/carray-list-tests: Likewise.
38496         * modules/crc-tests: Likewise.
38497         * modules/des-tests: Likewise.
38498         * modules/gc-arcfour-tests: Likewise.
38499         * modules/gc-arctwo-tests: Likewise.
38500         * modules/gc-des-tests: Likewise.
38501         * modules/gc-hmac-md5-tests: Likewise.
38502         * modules/gc-hmac-sha1-tests: Likewise.
38503         * modules/gc-md2-tests: Likewise.
38504         * modules/gc-md4-tests: Likewise.
38505         * modules/gc-md5-tests: Likewise.
38506         * modules/gc-pbkdf2-sha1-tests: Likewise.
38507         * modules/gc-rijndael-tests: Likewise.
38508         * modules/gc-sha1-tests: Likewise.
38509         * modules/gc-tests: Likewise.
38510         * modules/getaddrinfo-tests: Likewise.
38511         * modules/hmac-md5-tests: Likewise.
38512         * modules/hmac-sha1-tests: Likewise.
38513         * modules/linked-list-tests: Likewise.
38514         * modules/linkedhash-list-tests: Likewise.
38515         * modules/lock-tests: Likewise.
38516         * modules/md2-tests: Likewise.
38517         * modules/md4-tests: Likewise.
38518         * modules/md5-tests: Likewise.
38519         * modules/rbtree-list-tests: Likewise.
38520         * modules/rbtree-oset-tests: Likewise.
38521         * modules/rbtreehash-list-tests: Likewise.
38522         * modules/read-file-tests: Likewise.
38523         * modules/rijndael-tests: Likewise.
38524         * modules/stdint-tests: Likewise.
38525         * modules/tls-tests: Likewise.
38526
38527 2007-02-24  Bruno Haible  <bruno@clisp.org>
38528
38529         * lib/isnanl.h (isnanl): Define through isnan if isnan is a macro.
38530         * m4/isnan.m4 (gl_FUNC_ISNAN_NO_LIBM): Don't check for isnan as a
38531         function; instead check whether isnan with a double argument links.
38532         * m4/isnanl.m4 (gl_FUNC_ISNANL_NO_LIBM): Don't check for isnanl as a
38533         function; instead check whether isnan with a 'long double' argument
38534         links.
38535         Reported by Eric Blake <ebb9@byu.net>.
38536
38537 2007-02-24  Bruno Haible  <bruno@clisp.org>
38538
38539         * lib/isnan.c: Support the 'long double' case if USE_LONG_DOUBLE is
38540         defined.
38541         * lib/isnanl.c: Remove all code. Just include isnan.c.
38542         * modules/isnanl-nolibm (Files): Add lib/isnan.c.
38543
38544 2007-02-25  Jim Meyering  <jim@meyering.net>
38545
38546         Avoid conflicting types for 'unsetenv' on FreeBSD.
38547         * lib/putenv.c (_unsetenv): Rename from "unsetenv", to avoid
38548         conflicting with FreeBSD's (5.0 and 6.1) function declaration
38549         in stdlib.h.
38550
38551 2007-02-24  Bruno Haible  <bruno@clisp.org>
38552
38553         * modules/isnanl-nolibm-tests: New file.
38554         * tests/test-isnanl.c: New file.
38555
38556         * modules/isnanl-nolibm: New file.
38557         * lib/isnanl.h: New file.
38558         * lib/isnanl.c: New file.
38559         * m4/isnanl.m4: New file.
38560
38561 2007-02-24  Bruno Haible  <bruno@clisp.org>
38562
38563         * modules/isnan-nolibm-tests: New file.
38564         * tests/test-isnan.c: New file.
38565
38566         * modules/isnan-nolibm: New file.
38567         * lib/isnan.h: New file.
38568         * lib/isnan.c: New file.
38569         * m4/isnan.m4: New file.
38570
38571 2007-02-24  Bruno Haible  <bruno@clisp.org>
38572
38573         * lib/frexpl.c (frexpl): Correct return values for x = 1.0L. Don't
38574         assume that an exponent fits in 20 bits.
38575
38576 2007-02-24  Jim Meyering  <jim@meyering.net>
38577
38578         * m4/regex.m4: Update the description of the configure-time option,
38579         --without-included-regex, to state accurately what the defaults are,
38580         and perhaps to give people an idea why using this option is risky.
38581
38582 2007-02-24  Paul Eggert  <eggert@cs.ucla.edu>
38583
38584         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check for a nanosleep that
38585         loops on small arguments.  This attempts to avoid the problem
38586         Bruno Haible reported for AIX 4.3.2 in
38587         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00309.html>.
38588
38589 2007-02-23  Bruno Haible  <bruno@clisp.org>
38590
38591         * m4/perl.m4 (gl_PERL): Require version 5.005, not 5.003.
38592         Needed for help2man.
38593
38594 2007-02-23  Karl Berry  <karl@gnu.org>
38595
38596         * doc/gnulib-tool.texi (CVS Issues): mention that when foo_.h
38597         exists, foo.h should be cvs-ignored, not committed.
38598
38599 2007-02-23  Eric Blake  <ebb9@byu.net>
38600
38601         * lib/getdate.h (includes):  Include <time.h>, not "timespec.h".
38602         * lib/stat-time.h (includes): Likewise.
38603         * lib/utimecmp.c (includes): Likewise.
38604         * lib/utimens.h (includes): Likewise.
38605         * lib/getdate.y (includes): Also include "timespec.h" for use
38606         internal to the module.
38607         * modules/utimens (Depends-on): Revert yesterday's patch.
38608         * modules/nanosleep (Depends-on): Add missing dependency.
38609
38610 2007-02-22  Bruno Haible  <bruno@clisp.org>
38611
38612         * lib/glob.c: Don't include getlogin_r.h.
38613
38614 2007-02-22  Jim Meyering  <jim@meyering.net>
38615
38616         * modules/utimens (Depends-on): Add timespec, required for
38617         utimens.h's inclusion of timespec.h.
38618
38619 2007-02-21  Paul Eggert  <eggert@cs.ucla.edu>
38620
38621         * lib/getcwd.c (__getcwd): Undo previous change; it mishandled
38622         long unreadable paths in GNU/Linux.  Problem reported by Andreas
38623         Schwab in
38624         <http://lists.gnu.org/archive/html/bug-gnulib/2007-02/msg00261.html>.
38625         I'll try to think of a better way to fix the Solaris problem.
38626
38627         * lib/getcwd.c (__getcwd): Don't assume getcwd (NULL, 0) works
38628         like glibc; on Solaris 10, it fails with errno == EINVAL.
38629         POSIX says the behavior is unspecified if the first argument is NULL,
38630         so play it safe and never pass NULL to the system getcwd.
38631
38632 2007-02-21  Jim Meyering  <jim@meyering.net>
38633
38634         * lib/gettimeofday.c (rpl_gettimeofday): Remove declaration
38635         of gettimeofday.  It would conflict with the one now always
38636         provided via sys_time_.h.  Reported by Matthew Woehlke, as
38637         an IRIX 6.5 build failure.
38638
38639 2007-02-20  Paul Eggert  <eggert@cs.ucla.edu>
38640
38641         Minor fixups to port to Solaris 10 with Sun C 5.8.
38642         * lib/getcwd.c [!_LIBC]: Include dirfd.h, since we use dirfd.
38643         * modules/getcwd (Depends-on): Add dirfd.
38644         * lib/putenv.c (putenv): #undef it.
38645         (rpl_putenv): New decl.
38646         (malloc, free): Include <stdlib.h> rather than prototyping separately.
38647
38648 2007-02-20  Bruno Haible  <bruno@clisp.org>
38649
38650         * modules/stdio-tests: New file.
38651         * tests/test-stdio.c: New file.
38652
38653         * modules/vsnprintf (Files): Remove lib/vsnprintf.h.
38654         (Depends-on): Add stdio.
38655         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
38656         (Include): Use <stdio.h> instead of vsnprintf.h.
38657         * m4/vsnprintf.m4 (gl_FUNC_VSNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
38658         HAVE_DECL_VSNPRINTF.
38659         * lib/vsnprintf.c: Include <stdio.h> instead of vsnprintf.h.
38660
38661         * modules/snprintf (Files): Remove lib/snprintf.h.
38662         (Depends-on): Add stdio.
38663         (configure.ac): Invoke gl_STDIO_MODULE_INDICATOR.
38664         (Include): Use <stdio.h> instead of snprintf.h.
38665         * m4/snprintf.m4 (gl_FUNC_SNPRINTF): Require gl_STDIO_H_DEFAULTS. Set
38666         HAVE_DECL_SNPRINTF.
38667         * lib/snprintf.c: Include <stdio.h> instead of snprintf.h.
38668         * lib/getaddrinfo.c: Likewise.
38669
38670         * modules/stdio: New file.
38671         * lib/stdio_.h: New file, incorporating snprintf.h and vsnprintf.h.
38672         * lib/snprintf.h: Remove file.
38673         * lib/vsnprintf.h: Remove file.
38674         * lib/.cppi-disable: Remove snprintf.h.
38675         * m4/stdio_h.m4: New file.
38676         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdio.
38677
38678 2007-02-20  Jim Meyering  <jim@meyering.net>
38679
38680         * lib/ftruncate.c [HAVE_CHSIZE]: Document that this code is
38681         used by e.g., mingw.  From Bruno Haible.
38682
38683 2007-02-19  Bruno Haible  <bruno@clisp.org>
38684
38685         * lib/string_.h: Use "#pragma GCC system_header" to suppress some gcc
38686         warnings.
38687         Reported by Ben Pfaff <blp@cs.stanford.edu>.
38688
38689 2007-02-19  Bruno Haible  <bruno@clisp.org>
38690
38691         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Don't request a complaint mail
38692         from mingw users.
38693
38694 2007-02-19  Bruno Haible  <bruno@clisp.org>
38695
38696         * lib/stdlib_.h: Use "#pragma GCC system_header" to suppress some gcc
38697         warnings.
38698         Reported by Joel E. Denny <jdenny@ces.clemson.edu> via Paul Eggert.
38699
38700 2007-02-19  Jim Meyering  <jim@meyering.net>
38701
38702         Don't use FD after a successful "fdopendir (fd)".
38703         * lib/getcwd.c (__getcwd) [AT_FDCWD]: fdopendir (fd) usually closes fd.
38704         Reset it by calling dirfd on the just-obtained DIR*.
38705
38706         * m4/ftruncate.m4: Adjust comment to give this module a 3-year reprieve.
38707         Prompted by a report from Bruno Haible that mingw lacks ftruncate.
38708
38709 2007-02-18  Bruno Haible  <bruno@clisp.org>
38710
38711         * lib/readlink.c: Include <unistd.h>.
38712         * m4/readlink.m4 (gl_FUNC_READLINK): Require gl_UNISTD_H_DEFAULTS. Set
38713         HAVE_READLINK.
38714         * modules/readlink (Depends-on): Add unistd.
38715         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
38716         (Include): Add <unistd.h>.
38717
38718         * lib/getlogin_r.h: Remove file.
38719         * lib/getlogin_r.c: Include <unistd.h> instead of getlogin_r.h.
38720         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE): Remove macro.
38721         (gl_GETLOGIN_R): Inline it here. Require gl_UNISTD_H_DEFAULTS. Set
38722         HAVE_DECL_GETLOGIN_R.
38723         * modules/getlogin_r (Files): Remove lib/getlogin_r.h.
38724         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
38725         (Include): Use <unistd.h> instead of getlogin_r.h.
38726
38727         * lib/getcwd.h: Remove file.
38728         * lib/getcwd.c: Include <unistd.h> instead of getcwd.h.
38729         * lib/xgetcwd.c: Likewise.
38730         * m4/getcwd.m4 (gl_FUNC_GETCWD): Require gl_UNISTD_H_DEFAULTS. Set
38731         REPLACE_GETCWD. Don't define __GETCWD_PREFIX.
38732         * modules/getcwd (Files): Remove lib/getcwd.h.
38733         (Depends-on): Add unistd.
38734         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
38735         (Include): Use <unistd.h> instad of getcwd.h.
38736
38737         * lib/ftruncate.c: Include <unistd.h> first.
38738         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): Require gl_UNISTD_H_DEFAULTS.
38739         Set HAVE_FTRUNCATE.
38740         * modules/ftruncate (Depends-on): Add unistd.
38741         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
38742
38743         * lib/fchdir.c: Include <unistd.h> first.
38744         * lib/dirent_.h: Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT.
38745         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_UNISTD_H_DEFAULTS instead
38746         of gl_HEADER_UNISTD_DEFAULTS. Set REPLACE_FCHDIR. Don't set UNISTD_H.
38747         * modules/fchdir (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
38748         (Makefile.am): Substitute also REPLACE_FCHDIR into dirent.h.
38749
38750         * lib/dup2.c: Include <unistd.h> first.
38751         * m4/dup2.m4 (gl_FUNC_DUP2): Require gl_UNISTD_H_DEFAULTS. Set
38752         HAVE_DUP2.
38753         * modules/dup2 (Depends-on): Add unistd.
38754         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
38755
38756         * lib/chown.c: Include <unistd.h> first. Undefine chown later.
38757         * m4/chown.m4 (gl_FUNC_CHOWN): Require gl_UNISTD_H_DEFAULTS. Set
38758         REPLACE_CHOWN. Don't define chown as a macro here.
38759         * modules/chown (Depends-on): Add unistd.
38760         (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
38761
38762         * lib/unistd_.h: Test HAVE_UNISTD_H determined at configure time.
38763         Add definition for GL_LINK_WARNING.
38764         (chown, dup2): New declarations.
38765         (fchdir): Test REPLACE_FCHDIR, not FCHDIR_REPLACEMENT. Provide optional
38766         link warning.
38767         (ftruncate): New declaration.
38768         (getcwd): New declaration, taken from old getcwd.h.
38769         (getlogin_r): New declaration, taken from old getlogin_r.h.
38770         (readlink): New declaration.
38771         * m4/unistd_h.m4 (gl_UNISTD_H): Renamed from gl_HEADER_UNISTD. Don't
38772         set UNISTD_H. Inline gl_PREREQ_UNISTD. Set HAVE_UNISTD_H.
38773         (gl_PREREQ_UNISTD): Remove macro.
38774         (gl_UNISTD_MODULE_INDICATOR): New macro.
38775         (gl_UNISTD_H_DEFAULTS): Renamed from gl_HEADER_UNISTD_DEFAULTS. Set
38776         many new variables. Don't set UNISTD_H.
38777         * modules/unistd (Description): Change.
38778         (Depends-on): Add link-warning.
38779         (configure.ac): Update.
38780         (Makefile.am): Create unistd.h always. Substitute many new variables
38781         into it.
38782
38783 2007-02-18  Bruno Haible  <bruno@clisp.org>
38784
38785         * lib/stdlib_.h (getsubopt): New declaration, copied from getsubopt.h.
38786         * modules/stdlib (stdlib.h): Also substitute GNULIB_GETSUBOPT and
38787         HAVE_GETSUBOPT.
38788         * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Also initialize
38789         GNULIB_GETSUBOPT and HAVE_GETSUBOPT.
38790         * lib/getsubopt.h: Remove file.
38791         * modules/getsubopt (Files): Remove lib/getsubopt.h.
38792         (Depends-on): Add stdlib.
38793         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
38794         (Includes): Use <stdlib.h> instead of getsubopt.h.
38795         * m4/getsubopt.m4 (gl_FUNC_GETSUBOPT): Require gl_STDLIB_H_DEFAULTS.
38796         Set HAVE_GETSUBOPT.
38797         * lib/getsubopt.c: Don't include getsubopt.h.
38798
38799 2007-02-18  Bruno Haible  <bruno@clisp.org>
38800
38801         * modules/fchdir (Depends-on): Add dup2.
38802
38803 2007-02-18  Bruno Haible  <bruno@clisp.org>
38804
38805         * lib/stdlib_.h: Handle glibc's special invocation convention
38806         specially.
38807
38808 2007-02-18  Bruno Haible  <bruno@clisp.org>
38809
38810         * modules/stdlib-tests: New file.
38811         * tests/test-stdlib.c: New file.
38812
38813         * modules/mkstemp (Files): Remove lib/mkstemp.h.
38814         (Depends-on): Add stdlib.
38815         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
38816         (Includes): Use <stdlib.h> instead of mkstemp.h.
38817         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require gl_STDLIB_H_DEFAULTS. Set
38818         REPLACE_MKSTEMP. Remove definition of __MKSTEMP_PREFIX.
38819         * lib/mkstemp.c: Don't include mkstemp.h.
38820         * lib/mkstemp-safer.c: Include <stdlib.h> instead of mkstemp.h.
38821         * lib/stdlib--.h: Don't include mkstemp.h.
38822
38823         * modules/mkdtemp (Files): Remove lib/mkdtemp.h.
38824         (Depends-on): Add stdlib.
38825         (configure.ac): Invoke gl_STDLIB_MODULE_INDICATOR.
38826         (Includes): Use <stdlib.h> instead of mkdtemp.h.
38827         * m4/mkdtemp.m4 (gt_FUNC_MKDTEMP): Require gl_STDLIB_H_DEFAULTS. Set
38828         HAVE_MKDTEMP.
38829         * lib/mkdtemp.c: Don't include mkdtemp.h.
38830         * lib/clean-temp.c: Don't include mkdtemp.h.
38831
38832         * modules/exit (Files): Remove lib/exit.h.
38833         (Depends-on): Add stdlib.
38834         (Makefile.am): Remove lib_SOURCES.
38835         (Include): Use <stdlib.h> instead of exit.h.
38836         * lib/argmatch.c: Don't include exit.h.
38837         * lib/execute.c: Likewise.
38838         * lib/pagealign_alloc.c: Likewise.
38839         * lib/pipe.c: Likewise.
38840         * lib/wait-process.c: Likewise.
38841         * lib/copy-file.c: Include <stdlib.h> instead of exit.h.
38842         * lib/exitfail.c: Likewise.
38843         * lib/savewd.c: Likewise.
38844         * lib/xsetenv.c: Likewise.
38845
38846         * modules/stdlib: New file.
38847         * lib/stdlib_.h: New file, incorporating exit.h, mkdtemp.h, mkstemp.h
38848         and extra comments about mkstemp().
38849         * lib/exit.h: Remove file.
38850         * lib/mkdtemp.h: Remove file.
38851         * lib/mkstemp.h: Remove file.
38852         * m4/stdlib_h.m4: New file.
38853         * MODULES.html.sh (Support for systems lacking ANSI C 89): Add stdlib.
38854
38855 2007-02-18  Bruno Haible  <bruno@clisp.org>
38856
38857         * modules/math-tests: New file.
38858         * tests/test-math.c: New file.
38859
38860         * modules/math: New file.
38861         * modules/mathl (Files): Remove lib/mathl.h.
38862         (Depends-on): Add math.
38863         (Makefile.am): Don't mention mathl.h.
38864         (Include): Use <math.h> instead of mathl.h.
38865         * lib/math_.h: New file.
38866         * lib/mathl.h: Remove file.
38867         * lib/acosl.c: Include <config.h> and <math.h> first. Don't include
38868         mathl.h.
38869         * lib/asinl.c: Likewise.
38870         * lib/atanl.c: Likewise.
38871         * lib/ceill.c: Likewise.
38872         * lib/cosl.c: Likewise.
38873         * lib/expl.c: Likewise.
38874         * lib/floorl.c: Likewise.
38875         * lib/frexpl.c: Likewise.
38876         * lib/ldexpl.c: Likewise.
38877         * lib/logl.c: Likewise.
38878         * lib/sincosl.c: Likewise.
38879         * lib/sinl.c: Likewise.
38880         * lib/sqrtl.c: Likewise.
38881         * lib/tanl.c: Likewise.
38882         * lib/trigl.c: Likewise.
38883         * m4/math_h.m4: New file.
38884         * MODULES.html.sh (Mathematics): Add math.
38885
38886 2007-02-17  Bruno Haible  <bruno@clisp.org>
38887
38888         * modules/wctype-tests: New file.
38889         * tests/test-wctype.c: New file.
38890
38891         * modules/wchar-tests: New file.
38892         * tests/test-wchar.c: New file.
38893
38894         * modules/unistd-tests: New file.
38895         * tests/test-unistd.c: New file.
38896
38897         * modules/time-tests: New file.
38898         * tests/test-time.c: New file.
38899
38900         * modules/sysexits-tests: New file.
38901         * tests/test-sysexits.c: New file.
38902
38903         * modules/sys_time-tests: New file.
38904         * tests/test-sys_time.c: New file.
38905
38906         * modules/sys_stat-tests: New file.
38907         * tests/test-sys_stat.c: New file.
38908
38909         * modules/sys_socket-tests: New file.
38910         * tests/test-sys_socket.c: New file.
38911
38912         * modules/sys_select-tests: New file.
38913         * tests/test-sys_select.c: New file.
38914
38915         * modules/string-tests: New file.
38916         * tests/test-string.c: New file.
38917
38918         * modules/stdbool-tests: New file.
38919         * tests/test-stdbool.c: New file.
38920
38921         * modules/netinet_in-tests: New file.
38922         * tests/test-netinet_in.c: New file.
38923
38924         * modules/inttypes-tests: New file.
38925         * tests/test-inttypes.c: New file.
38926
38927         * modules/fcntl-tests: New file.
38928         * tests/test-fcntl.c: New file.
38929
38930         * modules/byteswap-tests: New file.
38931         * tests/test-byteswap.c: New file.
38932
38933         * modules/arpa_inet-tests: New file.
38934         * tests/test-arpa_inet.c: New file.
38935
38936 2007-02-17  Bruno Haible  <bruno@clisp.org>
38937
38938         * lib/inttypes_.h: Add definition for GL_LINK_WARNING.
38939         (imaxabs, imaxdiv, strtoimax, strtoumax): Don't declare the function
38940         if the corresponding module is not enabled. Emit link warnings if
38941         the function is used nevertheless.
38942         * m4/inttypes.m4 (gl_INTTYPES_H): Never use the existing <inttypes.h>.
38943         Don't AC_SUBST HAVE_DECL_IMAXABS, HAVE_DECL_IMAXDIV,
38944         HAVE_DECL_STRTOIMAX, HAVE_DECL_STRTOUMAX.
38945         (gl_INTTYPES_MODULE_INDICATOR, gl_INTTYPES_H_DEFAULTS): New macros.
38946         * modules/inttypes (Depends-on): Add link-warning.
38947         (Makefile.am): Copy the contents of build-aux/link-warning.h into
38948         inttypes.h. Substitute also GNULIB_IMAXABS, GNULIB_IMAXDIV,
38949         GNULIB_STRTOIMAX, GNULIB_STRTOUMAX.
38950         * modules/imaxabs (configure.ac): Invoke gl_INTTYPES_MODULE_INDICATOR.
38951         * modules/imaxdiv (configure.ac): Likewise.
38952         * modules/strtoimax (configure.ac): Likewise.
38953         * modules/strtoumax (configure.ac): Likewise.
38954
38955 2007-02-17  Bruno Haible  <bruno@clisp.org>
38956
38957         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Include the contents of
38958         gl_STRING_MODULE_INDICATOR_DEFAULTS.
38959         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Remove macro.
38960         (gl_HEADER_STRING_H_BODY, gl_STRING_MODULE_INDICATOR): Update.
38961
38962 2007-02-17  Bruno Haible  <bruno@clisp.org>
38963
38964         * modules/link-warning: New file.
38965         * build-aux/link-warning.h: New file, extracted from lib/string_.h.
38966         * lib/string_.h (GL_LINK_WARNING): Remove definition.
38967         * modules/string (Depends-on): Add link-warning.
38968         (Makefile.am): Copy the contents of build-aux/link-warning.h into
38969         string.h.
38970         * MODULES.html.sh (Support for building libraries and executables): Add
38971         link-warning.
38972
38973 2007-02-17  Bruno Haible  <bruno@clisp.org>
38974
38975         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strcasecmp,
38976         strncasecmp, strchr, strchrnul, strdup, strndup, strnlen, strcspn,
38977         strpbrk, strspn, strrchr, strsep, strstr, strcasestr, strtok_r): Break
38978         long lines.
38979
38980 2007-02-17  Ben Pfaff  <blp@cs.stanford.edu>
38981             Bruno Haible  <bruno@clisp.org>
38982
38983         * modules/tmpfile: New file.
38984         * lib/tmpfile.c: New file.
38985         * m4/tmpfile.m4: New file.
38986         * MODULES.html.sh (func_all_modules): New section "Input/output".
38987
38988 2007-02-15  Bruno Haible  <bruno@clisp.org>
38989
38990         * lib/clean-temp.c [WIN32 && !CYGWIN]: Include <windows.h>.
38991         (supports_delete_on_close): New function.
38992         (open_temp, fopen_temp): Use _O_TEMPORARY when supported.
38993
38994 2007-02-14  Bruno Haible  <bruno@clisp.org>
38995
38996         * modules/mbspcasecmp-tests: New file.
38997         * tests/test-mbspcasecmp.sh: New file.
38998         * tests/test-mbspcasecmp.c: New file.
38999
39000         New module mbspcasecmp.
39001         * modules/mbspcasecmp: New file.
39002         * lib/mbspcasecmp.c: New file.
39003         * lib/string_.h (strncasecmp): Change warning message.
39004         (mbspcasecmp): New declaration.
39005         * m4/mbspcasecmp.m4: New file.
39006         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
39007         GNULIB_MBSPCASECMP.
39008         * modules/string (string.h): Also substitute GNULIB_MBSPCASECMP.
39009         * MODULES.html.sh (Internationalization functions): Add mbspcasecmp.
39010
39011 2007-02-14  Bruno Haible  <bruno@clisp.org>
39012
39013         * modules/mbsncasecmp-tests: New file.
39014         * tests/test-mbsncasecmp.sh: New file.
39015         * tests/test-mbsncasecmp.c: New file.
39016
39017         New module mbsncasecmp.
39018         * modules/mbsncasecmp: New file.
39019         * lib/mbsncasecmp.c: New file.
39020         * lib/string_.h (mbsncasecmp): New declaration.
39021         * m4/mbsncasecmp.m4: New file.
39022         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
39023         GNULIB_MBSNCASECMP.
39024         * modules/string (string.h): Also substitute GNULIB_MBSNCASECMP.
39025         * MODULES.html.sh (Internationalization functions): Add mbsncasecmp.
39026
39027 2007-02-14  Paul Eggert  <eggert@cs.ucla.edu>
39028
39029         * lib/exclude.c (FNM_EXTMATCH): Define if system does not.
39030         Verify that it doesn't overlap with our flags.
39031         (fnmatch_no_wildcards): Don't use strcasecmp or strncasecmp, which
39032         do not have the desired effect in multibyte locales; instead, use
39033         mbscasecmp.
39034         * modules/exclude (Depends-on): Depend on mbscasecmp, not strcase.
39035         Add dependency on xalloc.  Depend on fnmatch, not fnmatch-gnu, since
39036         we don't require GNU fnmatch ourselves (if our users require it, they
39037         should do so explicitly).
39038
39039         Fix regex code so it doesn't rely on strcasecmp.
39040         * lib/regex_internal.h: Include <langinfo.h> only if _LIBC is defined.
39041         Otherwise, include gnulib's langinfo.h.
39042         * lib/regcomp.c (init_dfa): Don't use strcasecmp, as it can have
39043         undesirable behavior in non-C locales.  Instead, rely on localecharset.
39044         * m4/regex.m4 (gl_PREREQ_REGEX): Don't require AM_LANGINFO_CODESET.
39045         * modules/regex (FILES): Remove m4/codeset.m4.
39046         (Depends-on): Add localcharset.  Remove strcase.
39047
39048 2007-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
39049
39050         * m4/unlinkdir.m4 (gl_UNLINKDIR): Fix m4 quoting bug.
39051         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Likewise.
39052
39053 2007-02-13  Bruno Haible  <bruno@clisp.org>
39054
39055         * m4/intdiv0.m4 (gt_INTDIV0): Assume ANSI C. Fix underquoting bug.
39056         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
39057
39058 2007-02-12  Bruno Haible  <bruno@clisp.org>
39059
39060         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
39061         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): If
39062         GNULIB_POSIXCHECK and the gnulib module not enabled, provoke a link-
39063         time warning rather than a link error.
39064
39065 2007-02-12  Bruno Haible  <bruno@clisp.org>
39066
39067         * m4/locale-fr.m4 (gt_LOCALE_FR): Fix m4 quoting bug.
39068         * m4/locale-zh.m4 (gt_LOCALE_ZH_CN): Likewise.
39069         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
39070
39071 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
39072
39073         * lib/string_.h (strncasecmp): Fix typo: this macro takes 3
39074         args, not 2.
39075
39076 2007-02-12  Paul Eggert  <eggert@cs.ucla.edu>
39077
39078         New module 'time', so that apps can include <time.h> as per
39079         POSIX and GNU instead of separate include files like time_r.h
39080         and timegm.h.  This implementation tries out a simpler approach
39081         for replacing decls in standard include files (as compared to
39082         the string module), somewhat as an experiment.
39083
39084         * config/srclist.txt: Comment out mktime.c for now.
39085         * doc/gnulib-tool.texi (Initial import): Don't use time_r as an example
39086         since it doesn't apply any more.  Use generic wording instead.
39087         * MODULES.html.sh (Support for systems lacking POSIX:2001): New module
39088         'time'.
39089         * lib/time_.h, m4/time_h.m4, modules/time: New files.
39090         * lib/strptime.h, lib/time_r.h, lib/timegm.h: Remove.
39091         * lib/mktime.c: Include config.h depending on _LIBC, not HAVE_CONFIG_H.
39092         Don't include <sys/types.h>; no longer needed since we assume C89.
39093         * lib/mktime.c: Don't include "time_r.h"; no longer needed.
39094         * lib/strftime.c: Likewise.
39095         * lib/time_r.c: Likewise.
39096         * lib/nanosleep.c (nanosleep): #undef after include files, not before.
39097         * lib/nanosleep.c: Include <time.h> first, to check interface.
39098         * lib/strptime.c: Likewise.
39099         * lib/time_r.c: Likewise.
39100         * lib/timegm.c: Likewise.
39101         * lib/strptime.c: Don't include strptime.h or time_r.h; no longer
39102         needed.
39103         * lib/timegm.c: Don't include timegm.h; no longer needed.
39104         * lib/timespec.h: Don't include <sys/time.h> before <time.h>;
39105         time.h now handles any problems in that area.
39106         (struct timespec, nanosleep): Remove; time.h now arranges for these.
39107         * lib/xnanosleep.c: Don't include timespec.h; no longer needed now
39108         that time.h defines struct timespec.
39109         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Check that nanosleep is declared.
39110         Set REPLACE_NANOSLEEP.  Don't AC_DEFINE nanosleep; the time module now
39111         handles that.
39112         * m4/strptime.m4 (gl_FUNC_STPRTIME): Set REPLACE_STRPTIME.
39113         * m4/time_r.m4 (gl_TIME_R): Don't define HAVE_TIME_R_POSIX; no longer
39114         needed.  Set REPLACE_LOCALTIME.
39115         * m4/timegm.m4 (gl_FUNC_TIMEGM): Set REPLACE_TIMEGM.
39116         * m4/timespec.m4 (gl_CHECK_TYPE_STRUCT_TIMESPEC): Move to time_h.m4.
39117         (gl_TIMESPEC): Don't check for sys/time.h or struct timespec or
39118         nanosleep; time_h.m4 now does that.  Don't require
39119         gl_USE_SYSTEM_EXTENSIONS; no longer needed directly, and the time
39120         module handles this now.
39121         * modules/getdate (Depends-on): Remove timespec.  Add time.
39122         * modules/nanosleep (Depends-on): Likewise.
39123         * modules/stat-time (Depends-on): Likewise.
39124         * modules/nanosleep (Include): Include time.h, not timespec.h.
39125         * modules/strptime (Files): Remove lib/strptime.h.
39126         (Depends-on): Add extensions, time.
39127         (Include): Include time.h, not strptime.h.
39128         * modules/time_r (Files): Remove lib/time_r.h.
39129         (Depends-on): Add time.
39130         (Include): Include time.h, not time_r.h.
39131         * modules/timegm: Likewise.
39132         * modules/timespec (Description): Now does timespec-related decls
39133         of our own, instead of struct timespec itself.
39134         (Depends-on): Add time; remove extensions.
39135         (Maintainer): Add self.
39136         * modules/utimecmp (Depends-on): Add time; remove timespec.
39137         * modules/utimens (Depends-on): Likewise.
39138         * modules/xnanosleep (Depends-on): Likewise.
39139
39140 2007-02-11  Bruno Haible  <bruno@clisp.org>
39141
39142         * lib/c-strstr.c: Include allocsa.h.
39143         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
39144         * lib/c-strcasestr.c: Include allocsa.h.
39145         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
39146         * lib/strcasestr.c: Include allocsa.h.
39147         (knuth_morris_pratt): Use allocsa/freesa instead of malloc/free.
39148         * lib/mbsstr.c: Include allocsa.h.
39149         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
39150         allocsa/freesa instead of malloc/free.
39151         * lib/mbscasestr.c: Include allocsa.h.
39152         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): Use
39153         allocsa/freesa instead of malloc/free.
39154         * modules/c-strstr (Depends-on): Add allocsa.
39155         * modules/c-strcasestr (Depends-on): Likewise.
39156         * modules/strcasestr (Depends-on): Likewise.
39157         * modules/mbsstr (Depends-on): Likewise.
39158         * modules/mbscasestr (Depends-on): Likewise.
39159
39160 2007-02-11  Bruno Haible  <bruno@clisp.org>
39161
39162         * lib/mbsspn.c (mbsspn): Fix bug. Remove unnecessary strlen call.
39163
39164         * modules/mbsspn-tests: New file.
39165         * tests/test-mbsspn.sh: New file.
39166         * tests/test-mbsspn.c: New file.
39167
39168 2007-02-11  Bruno Haible  <bruno@clisp.org>
39169
39170         * lib/mbspbrk.c (mbspbrk): Remove unneeded cast.
39171
39172         * modules/mbspbrk-tests: New file.
39173         * tests/test-mbspbrk.sh: New file.
39174         * tests/test-mbspbrk.c: New file.
39175
39176 2007-02-11  Bruno Haible  <bruno@clisp.org>
39177
39178         * lib/mbscspn.c (mbscspn): Remove unnecessary strlen call and
39179         unneeded cast.
39180
39181         * modules/mbscspn-tests: New file.
39182         * tests/test-mbscspn.sh: New file.
39183         * tests/test-mbscspn.c: New file.
39184
39185 2007-02-11  Bruno Haible  <bruno@clisp.org>
39186
39187         * modules/mbscasecmp-tests: New file.
39188         * tests/test-mbscasecmp.sh: New file.
39189         * tests/test-mbscasecmp.c: New file.
39190
39191 2007-02-11  Bruno Haible  <bruno@clisp.org>
39192
39193         Ensure O(n) worst-case complexity of mbscasestr.
39194         * lib/mbscasestr.c: Include stdbool.h.
39195         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
39196         functions.
39197         (mbscasestr): Add some bookkeeping. Invoke knuth_morris_pratt_* when
39198         the bookkeeping indicates that it's worth it.
39199         * modules/mbscasestr (Depends-on): Add stdbool, mbslen, strnlen.
39200
39201         * modules/mbscasestr-tests: New file.
39202         * tests/test-mbscasestr1.c: New file.
39203         * tests/test-mbscasestr2.sh: New file.
39204         * tests/test-mbscasestr2.c: New file.
39205         * tests/test-mbscasestr3.sh: New file.
39206         * tests/test-mbscasestr3.c: New file.
39207         * tests/test-mbscasestr4.sh: New file.
39208         * tests/test-mbscasestr4.c: New file.
39209         * m4/locale-tr.m4: New file.
39210
39211 2007-02-11  Bruno Haible  <bruno@clisp.org>
39212
39213         Ensure O(n) worst-case complexity of mbsstr.
39214         * lib/mbsstr.c: Include stdbool.h.
39215         (knuth_morris_pratt_unibyte, knuth_morris_pratt_multibyte): New
39216         functions.
39217         (mbsstr): Add some bookkeeping. Invoke knuth_morris_pratt_* when the
39218         bookkeeping indicates that it's worth it.
39219         * modules/mbsstr (Depends-on): Add stdbool, mbslen, strnlen.
39220
39221         * modules/mbsstr-tests: New file.
39222         * tests/test-mbsstr1.c: New file.
39223         * tests/test-mbsstr2.sh: New file.
39224         * tests/test-mbsstr2.c: New file.
39225         * tests/test-mbsstr3.sh: New file.
39226         * tests/test-mbsstr3.c: New file.
39227         * m4/locale-fr.m4: New file.
39228
39229 2007-02-11  Bruno Haible  <bruno@clisp.org>
39230
39231         * lib/mbsrchr.c (mbsrchr): Fix bug.
39232
39233         * modules/mbsrchr-tests: New file.
39234         * tests/test-mbsrchr.sh: New file.
39235         * tests/test-mbsrchr.c: New file.
39236
39237 2007-02-11  Bruno Haible  <bruno@clisp.org>
39238
39239         * lib/mbschr.c (mbschr): Fix bug.
39240
39241         * modules/mbschr-tests: New file.
39242         * tests/test-mbschr.sh: New file.
39243         * tests/test-mbschr.c: New file.
39244         * m4/locale-zh.m4: New file.
39245
39246 2007-02-11  Bruno Haible  <bruno@clisp.org>
39247
39248         Support for copying multibyte string iterators.
39249         * lib/mbiter.h: Include <string.h>.
39250         (mbiter_multi_copy): New function.
39251         (mbi_copy): New macro.
39252         * lib/mbuiter.h: Include <string.h>.
39253         (mbuiter_multi_copy): New function.
39254         (mbui_copy): New macro.
39255
39256 2007-02-11  Bruno Haible  <bruno@clisp.org>
39257
39258         New module mbslen.
39259         * modules/mbslen: New file.
39260         * lib/mbslen.c: New file.
39261         * lib/string_.h (mbslen): New declaration.
39262         * m4/mbslen.m4: New file.
39263         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
39264         GNULIB_MBSLEN.
39265         * modules/string (string.h): Also substitute GNULIB_MBSLEN.
39266         * MODULES.html.sh (Internationalization functions): Add mbslen.
39267
39268 2007-02-11  Bruno Haible  <bruno@clisp.org>
39269
39270         Ensure O(n) worst-case complexity of strcasestr substitute.
39271         * lib/strcasestr.c: Include stdbool.h.
39272         (knuth_morris_pratt): New function.
39273         (strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when the
39274         bookkeeping indicates that it's worth it.
39275         * modules/strcasestr (Depends-on): Add stdbool, strnlen.
39276
39277         * modules/strcasestr-tests: New file.
39278         * tests/test-strcasestr.c: New file.
39279
39280 2007-02-11  Bruno Haible  <bruno@clisp.org>
39281
39282         Ensure O(n) worst-case complexity of c_strcasestr.
39283         * lib/c-strcasestr.c: Include stdbool.h, string.h.
39284         (knuth_morris_pratt): New function.
39285         (c_strcasestr): Add some bookkeeping. Invoke knuth_morris_pratt when
39286         the bookkeeping indicates that it's worth it.
39287         * modules/c-strcasestr (Depends-on): Add stdbool, strnlen.
39288
39289         * modules/c-strcasestr-tests: New file.
39290         * tests/test-c-strcasestr.c: New file.
39291
39292 2007-02-11  Bruno Haible  <bruno@clisp.org>
39293
39294         Ensure O(n) worst-case complexity of c_strstr.
39295         * lib/c-strstr.c: Include stdbool.h, string.h.
39296         (knuth_morris_pratt): New function.
39297         (c_strstr): Add some bookkeeping. Invoke knuth_morris_pratt when the
39298         bookkeeping indicates that it's worth it.
39299         * modules/c-strstr (Depends-on): Add stdbool, strnlen.
39300
39301         * lib/c-strstr.c: Complete rewrite for maintainability.
39302
39303         * modules/c-strstr-tests: New file.
39304         * tests/test-c-strstr.c: New file.
39305
39306 2007-02-11  Bruno Haible  <bruno@clisp.org>
39307
39308         * m4/javacomp.m4 (gt_JAVACOMP): Work around a 'tr' bug in coreutils
39309         5.2.1 and earlier, whereby \055 was treated just like the range
39310         delimiter '-'.
39311         Reported by Joel E. Denny <jdenny@ces.clemson.edu>.
39312
39313 2007-02-08  Bruno Haible  <bruno@clisp.org>
39314
39315         * modules/regex (Depends-on): Add stdbool.
39316         Reported by Dalibor Topic <robilad@kaffe.org>.
39317
39318 2007-02-05  Paul Eggert  <eggert@cs.ucla.edu>
39319
39320         * m4/regex.m4 (gl_REGEX): Check for glibc bug #3957.
39321         Prefer returning from main to exiting from it.
39322         Remove unnecessary parens after sizeof.
39323
39324 2007-02-05  Bruno Haible  <bruno@clisp.org>
39325
39326         New module mbssep.
39327         * modules/mbssep: New file.
39328         * lib/mbssep.c: New file.
39329         * lib/string_.h (strsep): Add a conditional link warning.
39330         (mbssep): New declaration.
39331         * m4/mbssep.m4: New file.
39332         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
39333         GNULIB_MBSSEP.
39334         * modules/string (string.h): Also substitute GNULIB_MBSSEP.
39335         * MODULES.html.sh (Internationalization functions): Add mbssep.
39336
39337 2007-02-05  Bruno Haible  <bruno@clisp.org>
39338
39339         * lib/strsep.c (strsep): Fix actions in case of no delimiters.
39340         Optimize search in case of 1 delimiter.
39341
39342 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
39343
39344         * lib/acl.h: Include sys/types.h before sys/acl.h.
39345
39346 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
39347
39348         Merge upstream fix for glibc bugzilla #3957:
39349
39350         2007-02-05  Jakub Jelinek  <jakub@redhat.com>
39351
39352         * lib/regcomp.c (parse_bracket_exp): Set '\n' bit rather than '\0'
39353         bit for RE_HAT_LISTS_NOT_NEWLINE.
39354         (build_charclass_op): Remove bogus comment.
39355
39356 2007-02-05  Simon Josefsson  <simon@josefsson.org>
39357
39358         * lib/gc.h, lib/gc-libgcrypt.c: Support SHA-256/384/512.
39359
39360 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
39361
39362         * lib/getsubopt.c [!_LIBC]: Include config.h and getsubopt.h.
39363         * lib/memmem.c [!defined _LIBC]: Include config.h.
39364
39365 2007-02-04  Bruno Haible  <bruno@clisp.org>
39366
39367         * lib/string_.h (GL_LINK_WARNING2): Put the word "warning:" into the
39368         warning message.
39369
39370 2007-02-04  Bruno Haible  <bruno@clisp.org>
39371
39372         New module mbstok_r.
39373         * modules/mbstok_r: New file.
39374         * lib/mbstok_r.c: New file.
39375         * lib/string_.h (strtok_r): Change argument names to match the
39376         comments. Add a conditional link warning.
39377         (mbstok_r): New declaration.
39378         * m4/mbstok_r.m4: New file.
39379         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
39380         GNULIB_MBSTOK_R.
39381         * modules/string (string.h): Also substitute GNULIB_MBSTOK_R.
39382         * MODULES.html.sh (Internationalization functions): Add mbstok_r.
39383
39384 2007-02-04  Bruno Haible  <bruno@clisp.org>
39385
39386         New module mbsspn.
39387         * modules/mbsspn: New file.
39388         * lib/mbsspn.c: New file.
39389         * lib/string_.h (strspn): Add a conditional link warning.
39390         (mbsspn): New declaration.
39391         * m4/mbsspn.m4: New file.
39392         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
39393         GNULIB_MBSSPN.
39394         * modules/string (string.h): Also substitute GNULIB_MBSSPN.
39395         * MODULES.html.sh (Internationalization functions): Add mbsspn.
39396
39397 2007-02-04  Bruno Haible  <bruno@clisp.org>
39398
39399         New module mbspbrk.
39400         * modules/mbspbrk: New file.
39401         * lib/mbspbrk.c: New file.
39402         * lib/string_.h (strpbrk): Add a conditional link warning.
39403         (mbspbrk): New declaration.
39404         * m4/mbspbrk.m4: New file.
39405         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
39406         GNULIB_MBSPBRK.
39407         * modules/string (string.h): Also substitute GNULIB_MBSPBRK.
39408         * MODULES.html.sh (Internationalization functions): Add mbspbrk.
39409
39410 2007-02-04  Bruno Haible  <bruno@clisp.org>
39411
39412         New module mbscspn.
39413         * modules/mbscspn: New file.
39414         * lib/mbscspn.c: New file.
39415         * lib/string_.h (strcspn): Add a conditional link warning.
39416         (mbscspn): New declaration.
39417         * m4/mbscspn.m4: New file.
39418         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
39419         GNULIB_MBSCSPN.
39420         * modules/string (string.h): Also substitute GNULIB_MBSCSPN.
39421         * MODULES.html.sh (Internationalization functions): Add mbscspn.
39422
39423 2007-02-04  Bruno Haible  <bruno@clisp.org>
39424
39425         New module mbscasestr, reduced goal of strcasestr.
39426         * modules/mbscasestr: New file.
39427         * lib/mbscasestr.c: New file, copied from lib/strcasestr.c.
39428         (mbscasestr): Renamed from strcasestr.
39429         * lib/strcasestr.c: Don't include mbuiter.h.
39430         (strcasestr): Remove support for multibyte locales.
39431         * lib/string_.h (strcasestr): Don`t rename. Declare only if missing.
39432         Change the conditional link warning.
39433         (mbscasestr): New declaration.
39434         * m4/mbscasestr.m4: New file.
39435         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Enable the replacement only if
39436         the system does not have strcasestr. Set HAVE_STRCASESTR instead of
39437         REPLACE_STRCASESTR.
39438         (gl_PREREQ_STRCASESTR): Don't require gl_FUNC_MBRTOWC.
39439         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
39440         HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
39441         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSCASESTR.
39442         * modules/string (string.h): Also substitute GNULIB_MBSCASESTR.
39443         Substitute HAVE_STRCASESTR instead of REPLACE_STRCASESTR.
39444         * modules/strcasestr (Files): Remove m4/mbrtowc.m4.
39445         (Depends-on): Remove mbuiter.
39446         * MODULES.html.sh (Internationalization functions): Add mbscasestr.
39447
39448 2007-02-04  Bruno Haible  <bruno@clisp.org>
39449
39450         Simplify handling of strncasecmp.
39451         * lib/string_.h (strncasecmp): Remove test for GNULIB_STRCASE. Change
39452         the conditional link warning.
39453         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Initialize
39454         HAVE_STRCASECMP, not REPLACE_STRCASECMP.
39455         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Don't initialize GNULIB_STRCASE.
39456         * modules/strcase (configure.ac): Don't invoke
39457         gl_STRING_MODULE_INDICATOR.
39458         * modules/string (string.h): Don't substitute GNULIB_STRCASE.
39459
39460 2007-02-04  Bruno Haible  <bruno@clisp.org>
39461
39462         New module mbscasecmp, reduced goal of strcasecmp.
39463         * modules/mbscasecmp: New file.
39464         * lib/mbscasecmp.c: New file, copied from lib/strcasecmp.c.
39465         (mbscasecmp): Renamed from strcasecmp.
39466         * lib/strcasecmp.c: Don't include mbuiter.h.
39467         (strcasecmp): Remove support for multibyte locales.
39468         * lib/string_.h (strcasecmp): Don`t rename. Declare only if missing.
39469         Change the conditional link warning.
39470         (mbscasecmp): New declaration.
39471         * m4/mbscasecmp.m4: New file.
39472         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Enable the replacement only if
39473         the system lacks strcasecmp. Set HAVE_STRCASECMP instead of
39474         REPLACE_STRCASECMP.
39475         (gl_PREREQ_STRCASECMP): Don't require gl_FUNC_MBRTOWC.
39476         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
39477         GNULIB_MBSCASECMP.
39478         * modules/string (string.h): Also substitute GNULIB_MBSCASECMP.
39479         Substitute HAVE_STRCASECMP instead of REPLACE_STRCASECMP.
39480         * modules/strcase (Files): Remove m4/mbrtowc.m4.
39481         (Depends-on): Remove mbuiter.
39482         * MODULES.html.sh (Internationalization functions): Add mbscasecmp.
39483
39484 2007-02-04  Bruno Haible  <bruno@clisp.org>
39485
39486         New module mbsstr. Remove module strstr.
39487         * modules/mbsstr: New file.
39488         * modules/strstr: Remove file.
39489         * lib/mbsstr.c: Renamed from lib/strstr.c.
39490         (mbsstr): Renamed from strstr.
39491         * lib/string_.h (strstr): Remove declaration. Change the conditional
39492         link warning.
39493         (mbsstr): New declaration.
39494         * m4/mbsstr.m4: New file.
39495         * m4/strstr.m4: Remove file.
39496         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): Don't initialize
39497         REPLACE_STRSTR.
39498         (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize GNULIB_MBSSTR.
39499         Don't initialize GNULIB_STRSTR.
39500         * modules/string (string.h): Also substitute GNULIB_MBSSTR. Don't
39501         substitute GNULIB_STRSTR and REPLACE_STRSTR.
39502         * MODULES.html.sh (Internationalization functions): Add mbsstr.
39503         (Support for systems lacking ANSI C 89): Remove strstr.
39504
39505 2007-02-04  Bruno Haible  <bruno@clisp.org>
39506
39507         New module mbsrchr.
39508         * modules/mbsrchr: New file.
39509         * lib/mbsrchr.c: New file.
39510         * lib/string_.h (strrchr): Add a conditional link warning.
39511         (mbsrchr): New declaration.
39512         * m4/mbsrchr.m4: New file.
39513         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
39514         GNULIB_MBSRCHR.
39515         * modules/string (string.h): Also substitute GNULIB_MBSRCHR.
39516         * MODULES.html.sh (Internationalization functions): Add mbsrchr.
39517
39518 2007-02-04  Bruno Haible  <bruno@clisp.org>
39519
39520         New module mbschr.
39521         * modules/mbschr: New file.
39522         * lib/mbschr.c: New file.
39523         * lib/string_.h (strchr): Add a conditional link warning.
39524         (mbschr): New declaration.
39525         * m4/mbschr.m4: New file.
39526         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR_DEFAULTS): Initialize
39527         GNULIB_MBSCHR.
39528         * modules/string (string.h): Also substitute GNULIB_MBSCHR.
39529         * MODULES.html.sh (Internationalization functions): Add mbschr.
39530
39531 2007-02-04  Paul Eggert  <eggert@cs.ucla.edu>
39532
39533         * lib/stdbool_.h: Mention that bool bit-fields aren't supported.
39534
39535         * modules/stdarg (configure.ac-early): Require AC_PROG_CC_STDC.
39536
39537 2007-02-04  Bruno Haible  <bruno@clisp.org>
39538
39539         New module description section 'configure.ac-early'.
39540         * gnulib-tool (sed_extract_prog): Recognize configure.ac-early.
39541         (func_get_autoconf_early_snippet): New function.
39542         (func_import, func_create_testdir): Use it. Remove special cases for
39543         modules 'extensions' and 'lock'.
39544         * modules/extensions (configure.ac-early): Require
39545         gl_USE_SYSTEM_EXTENSIONS.
39546         * modules/lock (configure.ac-early): Require gl_LOCK_EARLY.
39547
39548 2007-02-04  Bruno Haible  <bruno@clisp.org>
39549
39550         Make use of gcj-4.3's -fsource and -ftarget option.
39551         * m4/javacomp.m4 (gt_JAVACOMP): Test whether gcj is in version >= 4.3,
39552         and if so try the options -fsource and -ftarget.
39553         * lib/javacomp.c (compile_using_gcj): Add fsource_option,
39554         source_version, ftarget_option, target_version arguments.
39555         (is_envjavac_gcj43, is_envjavac_gcj43_usable): New functions.
39556         (is_envjavac_oldgcj_14_14_usable): Renamed from
39557         is_envjavac_gcj_14_14_usable.
39558         (is_envjavac_oldgcj_14_13_usable): Renamed from
39559         is_envjavac_gcj_14_13_usable.
39560         (is_gcj_present): Update.
39561         (is_gcj_43, is_gcj43_usable): New functions.
39562         (is_oldgcj_14_14_usable): Renamed from is_gcj_14_14_usable. Update.
39563         (is_oldgcj_14_13_usable): Renamed from is_gcj_14_13_usable. Update.
39564         (compile_java_class): Test whether gcj is in version >= 4.3, and if so
39565         try the options -fsource and -ftarget.
39566
39567 2007-02-03  Paul Eggert  <eggert@cs.ucla.edu>
39568
39569         * lib/xalloc.h (x2nrealloc): Fix an unlikely bug in the overflow
39570         checking code.  Set N = ceil (1.5 * N) rather than to a slightly
39571         larger value.
39572
39573 2007-02-03  Jim Meyering  <jim@meyering.net>
39574
39575         Give tools a better chance to allocate space for very large buffers.
39576         * lib/xalloc.h (x2nrealloc): Use 3/2, not 2, as buffer size factor.
39577
39578         Make pwd and readlink work also when run with an unreadable parent dir
39579         on systems with openat support.
39580         * lib/getcwd.c (__getcwd) [HAVE_PARTLY_WORKING_GETCWD]: Use the system
39581         provided getcwd function, even when we have openat support.
39582         Reported by Dmitry V. Levin in <http://bugzilla.redhat.com/227168>.
39583
39584 2007-02-02  Bruno Haible  <bruno@clisp.org>
39585
39586         * lib/string_.h (memmem, mempcpy, memrchr, stpcpy, stpncpy, strchrnul,
39587         strdup, strndup, strnlen, strpbrk, strsep, strtok_r): Provoke a link
39588         error only if GNULIB_POSIXCHECK is defined. Needed to avoid artificial
39589         portability problems if one of these functions is only used on specific
39590         platforms.
39591         Reported by Paul Eggert.
39592
39593 2007-02-02  Paul Eggert  <eggert@cs.ucla.edu>
39594
39595         Avoid mempcpy in the regex code, as the string.h mempcpy stuff
39596         is causing more trouble than it's curing.
39597         * lib/regex_internal.h (__mempcpy): Remove.
39598         * lib/regcomp.c (regerror): Rewrite to avoid the need for mempcpy
39599         (and make the code a tad smaller to boot).
39600         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for mempcpy.
39601
39602 2007-02-02  Jim Meyering  <jim@meyering.net>
39603
39604         * modules/arpa_inet: Put AC_PROG_MKDIR_P in the configure.ac:
39605         section, not in the Makefile.am: one.
39606
39607 2007-02-02  Eric Blake  <ebb9@byu.net>
39608
39609         * lib/strchrnul.c: Always include config.h first.
39610
39611         * modules/mountlist (Depends-on): Revert 2007-01-31 change,
39612         gnulib strstr is not necessary here.
39613
39614 2007-02-02  Simon Josefsson  <simon@josefsson.org>
39615
39616         * m4/socklen.m4: Fix typo.
39617
39618 2007-02-02  Eric Blake  <ebb9@byu.net>
39619
39620         * modules/arpa_inet (Makefile.am): Use MKDIR_P to avoid races.
39621         * modules/netinet_in (Makefile.am): Likewise.
39622
39623 2007-02-01  Bruno Haible  <bruno@clisp.org>
39624
39625         * lib/string_.h (GL_LINK_WARNING): New macro.
39626         (strcasecmp, strstr, strcasestr): If provided by the system,
39627         conditionally define as a macro that leads to a warning instead of to
39628         an error.
39629         (strncasecmp): Conditionally define as a macro that leads to a warning.
39630
39631 2007-02-01  Karl Berry  <karl@gnu.org>
39632
39633         * config/srclist.txt (strtok_r.c): lose sync, no more strtok_r.h.
39634
39635 2007-02-01  Bruno Haible  <bruno@clisp.org>
39636
39637         * MODULES.html.sh (Unicode string functions): Update after 2007-01-27
39638         renamings.
39639
39640 2007-02-01  Eric Blake  <ebb9@byu.net>
39641
39642         * modules/regex (Depends-on): Revert dependence on mempcpy.
39643         * lib/regex_internal.h [! _LIBC && !__mempcpy]: Undo string
39644         module's definition of mempcpy.
39645         Reported by Paul Eggert.
39646
39647 2007-02-01  Paul Eggert  <eggert@cs.ucla.edu>
39648
39649         * lib/string_.h: If the gnulib module XYZ is not present, undefine
39650         the symbol XYZ before redefining it.  This fixes a problem with
39651         programs that don't use XYZ, when compiled on systems that define
39652         XYZ to something else.
39653
39654 2007-01-31  Paul Eggert  <eggert@cs.ucla.edu>
39655
39656         * lib/mkdir-p.c (make_dir_parents): Close a race condition that
39657         occurs when "mkdir -m foo" creates a setgid directory that is (1)
39658         writeable to group or other and (2) is intended to have a special
39659         mode bit that is set or cleared.  In such a case, the directory
39660         should be neither group- nor other-writeable until the special
39661         mode bits are right.
39662
39663 2007-01-31  Eric Blake  <ebb9@byu.net>
39664
39665         * modules/mountlist (Depends-on): Add strstr.
39666
39667         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): Correct m4 usage
39668         bug.
39669         * modules/string (Makefile.am): Remove redundant replacement.
39670         * modules/regex (Depends-on): Add mempcpy.
39671
39672 2007-01-31  Bruno Haible  <bruno@clisp.org>
39673
39674         New module description field 'Link'.
39675         * gnulib-tool (func_usage): Document --extract-link-directive.
39676         (sed_extract_prog): Recognize 'Link' directive.
39677         (func_get_link_directive): New function.
39678         (func_import): Show summary of link directives.
39679         Handle --extract-link-directive option.
39680         * modules/acl (Link): New section.
39681         * modules/clock-time (Link): New section.
39682         * modules/euidaccess (Link): New section.
39683         * modules/gettext (Link): New section.
39684         * modules/iconv (Link): New section.
39685         * modules/lock (Link): New section.
39686         * modules/nanosleep (Link): New section.
39687         * modules/readline (Link): New section.
39688
39689 2007-01-27  Bruno Haible  <bruno@clisp.org>
39690
39691         Enforce the use of gnulib modules for unportable <string.h> functions.
39692         * m4/string_h.m4 (gl_STRING_MODULE_INDICATOR): New macro.
39693         (gl_STRING_MODULE_INDICATOR_DEFAULTS): New macro.
39694         (gl_HEADER_STRING_H_BODY): Require it.
39695         * lib/string_.h: If the gnulib module XYZ is not present, redefine
39696         the symbol XYZ to one that gives a link error.
39697         * modules/string (Makefile.am): Also substitute the GNULIB_* variables.
39698         * modules/memmem (configure.ac): Invoke gl_STRING_MODULE_INDICATOR.
39699         * modules/mempcpy (configure.ac): Likewise.
39700         * modules/memrchr (configure.ac): Likewise.
39701         * modules/stpcpy (configure.ac): Likewise.
39702         * modules/stpncpy (configure.ac): Likewise.
39703         * modules/strcase (configure.ac): Likewise.
39704         * modules/strcasestr (configure.ac): Likewise.
39705         * modules/strchrnul (configure.ac): Likewise.
39706         * modules/strdup (configure.ac): Likewise.
39707         * modules/strndup (configure.ac): Likewise.
39708         * modules/strnlen (configure.ac): Likewise.
39709         * modules/strpbrk (configure.ac): Likewise.
39710         * modules/strsep (configure.ac): Likewise.
39711         * modules/strstr (configure.ac): Likewise.
39712         * modules/strtok_r (configure.ac): Likewise.
39713
39714 2007-01-31  Jean-Louis Martineau  <martineau@zmanda.com>  (tiny change)
39715
39716         * lib/gai_strerror.c (values): Add EAI_OVERFLOW.
39717
39718 2007-01-30  Jim Meyering  <jim@meyering.net>
39719
39720         * lib/mpsort.c (mpsort): Remove spurious "return" in void function.
39721
39722 2007-01-29  Bruno Haible  <bruno@clisp.org>
39723
39724         * lib/allocsa.h: Use '#if HAVE_*' instead of '#ifdef HAVE_*'.
39725         * lib/execute.c: Likewise.
39726         * lib/pipe.c: Likewise.
39727         * lib/printf-args.h: Likewise.
39728         * lib/printf-args.c: Likewise.
39729         * lib/printf-parse.c: Likewise.
39730         * lib/vasnprintf.c: Likewise.
39731
39732 2007-01-29  Eric Blake  <ebb9@byu.net>
39733
39734         * lib/memrchr.c: Assume <string.h> unconditionally, to pull in
39735         declaration.
39736
39737 2007-01-29  Paul Eggert  <eggert@cs.ucla.edu>
39738
39739         * lib/strptime.h (strptime): Use 'restrict' for args where
39740         POSIX requires this.
39741         * lib/strptime.c (strptime): Likewise.
39742         Change license notice from LGPL to GPL, since gnulib-tool will
39743         change this as needed.
39744         Include <config.h> if _LIBC is not defined, not if HAVE_CONFIG_H is
39745         defined.
39746         Include "strptime.h" first, to check interface.
39747         Do not #undef _LIBC and _NL_CURRENT.
39748         Do not include <stdlib.h>; no longer needed.
39749         Include "time_r.h" and declare ptime_locale_status
39750         only if _LIBC is not defined.
39751         (__P): Remove unused macro.
39752         (match_string): Bring back glibc version, but use it only if _LIBC
39753         is defined.
39754         (__strptime_internal): Compile tm_gmtoff code if _LIBC is defined, too.
39755         Remove unnecessary assertion and abort() call.
39756         Use #ifdef _NL_CURRENT rather than #if 0, for benefit of glibc.
39757         * m4/strptime.m4: Fix serial number comment.
39758         (gl_FUNC_STRPTIME): Require AC_C_RESTRICT, gl_TM_GMTOFF.
39759         * modules/strptime (Files): Add m4/tm_gmtoff.m4.
39760         (Depends-on): Add time_r.
39761
39762 2007-01-29  Bruno Haible  <bruno@clisp.org>
39763
39764         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
39765         strptime.
39766         * modules/strptime (Depends-on): Add stdbool.
39767         * lib/strptime.h: Include <time.h> always. Add comments.
39768
39769 2007-01-29  Yoann Vandoorselaere  <yoann@prelude-ids.org>
39770
39771         * modules/strptime: New file.
39772         * lib/strptime.h: New file.
39773         * lib/strptime.c: New file.
39774         * m4/strptime.m4: New file.
39775
39776 2007-01-28  Paul Eggert  <eggert@cs.ucla.edu>
39777
39778         * MODULES.html.sh: New module mpsort.
39779         * lib/mpsort.c, lib/mpsort.h, m4/mpsort.m4, modules/mpsort: New files.
39780
39781         * lib/regex.h (_Restrict_): Renamed from __restrict, to avoid
39782         a circularity problem with HP-UX ia64 reported by Bob Proulx in
39783         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00394.html>.
39784         All uses changed.
39785         (_Restrict_arr_): Renamed from __restrict_arr, for similar reasons.
39786         All uses changed.
39787         * lib/regcomp.c, lib/regexec.c: Change all uses from __restrict
39788         to _Restrict_.
39789         * lib/regexec.c (regexec): Declare pmatch with _Restrict_arr_, so that
39790         the parameter matches the prototype.
39791
39792 2007-01-28  Jim Meyering  <jim@meyering.net>
39793
39794         * modules/sys_time (Makefile.am) [MOSTLYCLEANFILES]: Do use
39795         sys/time.h here, reverting that part of the previous patch:
39796         <http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/8959>.
39797
39798 2007-01-28  Bruno Haible  <bruno@clisp.org>
39799
39800         * modules/sys_time (Makefile.am): Build sys/time.h only when it's the
39801         value of $(SYS_TIME_H).
39802         [MOSTLYCLEANFILES]: Now that sys/time.h is created only when needed,
39803         remove it conditionally, too. [added by Jim Meyering]
39804         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Set SYS_TIME_H.
39805         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
39806         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Set SYS_TIME_H when setting
39807         GETTIMEOFDAY_REPLACEMENT to 1.
39808
39809 2007-01-28  Bruno Haible  <bruno@clisp.org>
39810
39811         * m4/unistd_h.m4 (gl_HEADER_UNISTD_DEFAULTS): New macro.
39812         (gl_HEADER_UNISTD): Require it. Don't set UNISTD_H to empty here.
39813         * m4/fchdir.m4 (gl_FUNC_FCHDIR): Require gl_HEADER_UNISTD_DEFAULTS.
39814         Set UNISTD_H instead of UNISTD_H2.
39815         * modules/fchdir (BUILT_SOURCES): Drop $(UNISTD_H2).
39816
39817 2007-01-28  Bruno Haible  <bruno@clisp.org>
39818
39819         * modules/mbchar (Makefile.am): Add mbchar.c to lib_SOURCES.
39820         * m4/mbchar.m4 (gl_MBCHAR): Remove AC_LIBOBJ invocation.
39821
39822 2007-01-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
39823
39824         * gnulib-tool (func_emit_lib_Makefile_am, func_add_or_update)
39825         (func_create_testdir): Ensure C locale for `grep' and `tr'
39826         character ranges.
39827         (func_create_megatestdir): Avoid one `grep'.  Fix bug in
39828         ACLOCAL_AMFLAGS parsing state machine.
39829
39830 2007-01-27  Bruno Haible  <bruno@clisp.org>
39831
39832         * modules/unistr/base: Update.
39833
39834 2007-01-27  Bruno Haible  <bruno@clisp.org>
39835
39836         Rename u32-mbtouc -> u32-mbtouc-unsafe, u32-mbtouc-safe -> u32-mbtouc,
39837         u32_mbtouc -> u32_mbtouc_unsafe, u32_mbtouc_safe -> u32_mbtouc.
39838         * modules/unistr/u32-mbtouc-unsafe: Renamed from
39839         modules/unistr/u32-mbtouc.
39840         * lib/unistr/u32-mbtouc-unsafe.c: Renamed from lib/unistr/u32-mbtouc.c.
39841         * lib/unistr.h: Update.
39842         * lib/linebreak.c: Update.
39843         * modules/unistr/u32-mbtouc: Renamed from
39844         modules/unistr/u32-mbtouc-safe.
39845         * lib/unistr/u32-mbtouc.c: Renamed from lib/unistr/u32-mbtouc-safe.c.
39846         * lib/unistr.h: Update.
39847         * lib/unistr/u32-to-u8.c: Update.
39848         * lib/unistr/u32-to-u16.c: Update.
39849
39850 2007-01-27  Bruno Haible  <bruno@clisp.org>
39851
39852         Rename utf16-ucs4 -> utf16-ucs4-unsafe, utf16-ucs4-safe -> utf16-ucs4,
39853         u16_mbtouc -> u16_mbtouc_unsafe, u16_mbtouc_safe -> u16_mbtouc.
39854         * modules/utf16-ucs4-unsafe: Renamed from modules/utf16-ucs4.
39855         * lib/utf16-ucs4-unsafe.h: Renamed from lib/utf16-ucs4.h.
39856         * lib/unistr/utf16-ucs4-unsafe.c: Renamed from lib/unistr/utf16-ucs4.c.
39857         * modules/unistr/u16-mbtouc-unsafe: Renamed from
39858         modules/unistr/u16-mbtouc.
39859         * lib/unistr/u16-mbtouc-unsafe.c: Renamed from lib/unistr/u16-mbtouc.c.
39860         * lib/unistr.h: Update.
39861         * lib/linebreak.c: Update.
39862         * modules/linebreak: Update.
39863         * modules/utf16-ucs4: Renamed from modules/utf16-ucs4-safe.
39864         * lib/utf16-ucs4.h: Renamed from lib/utf16-ucs4-safe.h.
39865         * lib/unistr/utf16-ucs4.c: Renamed from lib/unistr/utf16-ucs4-safe.c.
39866         * modules/unistr/u16-mbtouc: Renamed from
39867         modules/unistr/u16-mbtouc-safe.
39868         * lib/unistr/u16-mbtouc.c: Renamed from lib/unistr/u16-mbtouc-safe.c.
39869         * lib/unistr.h: Update.
39870         * lib/unistr/u16-to-u8.c: Update.
39871         * modules/unistr/u16-to-u8: Update.
39872         * lib/unistr/u16-to-u32.c: Update.
39873         * modules/unistr/u16-to-u32: Update.
39874
39875 2007-01-27  Bruno Haible  <bruno@clisp.org>
39876
39877         Rename utf8-ucs4 -> utf8-ucs4-unsafe, utf8-ucs4-safe -> utf8-ucs4,
39878         u8_mbtouc -> u8_mbtouc_unsafe, u8_mbtouc_safe -> u8_mbtouc.
39879         * modules/utf8-ucs4-unsafe: Renamed from modules/utf8-ucs4.
39880         * lib/utf8-ucs4-unsafe.h: Renamed from lib/utf8-ucs4.h.
39881         * lib/unistr/utf8-ucs4-unsafe.c: Renamed from lib/unistr/utf8-ucs4.c.
39882         * modules/unistr/u8-mbtouc-unsafe: Renamed from
39883         modules/unistr/u8-mbtouc.
39884         * lib/unistr/u8-mbtouc-unsafe.c: Renamed from lib/unistr/u8-mbtouc.c.
39885         * lib/unistr.h: Update.
39886         * lib/striconveh.c: Update.
39887         * modules/striconveh: Update.
39888         * lib/linebreak.c: Update.
39889         * modules/linebreak: Update.
39890         * modules/utf8-ucs4: Renamed from modules/utf8-ucs4-safe.
39891         * lib/utf8-ucs4.h: Renamed from lib/utf8-ucs4-safe.h.
39892         * lib/unistr/utf8-ucs4.c: Renamed from lib/unistr/utf8-ucs4-safe.c.
39893         * modules/unistr/u8-mbtouc: Renamed from modules/unistr/u8-mbtouc-safe.
39894         * lib/unistr/u8-mbtouc.c: Renamed from lib/unistr/u8-mbtouc-safe.c.
39895         * lib/unistr.h: Update.
39896         * lib/striconveh.c: Update.
39897         * modules/striconveh: Update.
39898         * lib/unistr/u8-to-u16.c: Update.
39899         * modules/unistr/u8-to-u16: Update.
39900         * lib/unistr/u8-to-u32.c: Update.
39901         * modules/unistr/u8-to-u32: Update.
39902
39903 2007-01-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
39904
39905         Sync from Libtool.
39906         * lib/argz.c: Do not include strings.h nor memory.h, include
39907         string.h unconditionally.  Patch by Simon Josefsson.
39908
39909 2007-01-27  Bruno Haible  <bruno@clisp.org>
39910
39911         * m4/string_h.m4 (gl_HEADER_STRING_H_DEFAULTS): New macro, extracted
39912         from gl_HEADER_STRING_H_BODY.
39913         (gl_HEADER_STRING_H_BODY): Require it.
39914         * m4/memmem.m4 (gl_FUNC_MEMMEM): Require gl_HEADER_STRING_H_DEFAULTS.
39915         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Likewise.
39916         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Likewise.
39917         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Likewise.
39918         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Likewise.
39919         * m4/strcase.m4 (gl_FUNC_STRCASECMP, gl_FUNC_STRNCASECMP): Likewise.
39920         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Likewise.
39921         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Likewise.
39922         * m4/strdup.m4 (gl_FUNC_STRDUP): Likewise.
39923         * m4/strndup.m4 (gl_FUNC_STRNDUP): Likewise.
39924         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Likewise.
39925         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Likewise.
39926         * m4/strsep.m4 (gl_FUNC_STRSEP): Likewise.
39927         * m4/strstr.m4 (gl_FUNC_STRSTR): Likewise.
39928         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
39929
39930 2007-01-27  Bruno Haible  <bruno@clisp.org>
39931
39932         * gnulib-tool (func_emit_lib_Makefile_am): If $for_test is true, turn
39933         check_PROGRAMS into noinst_PROGRAMS.
39934         (func_emit_tests_Makefile_am): Likewise. Also don't initialize
39935         check_PROGRAMS in this case.
39936         (func_import): Set for_test to false.
39937         (func_create_testdir): Set for_test to true.
39938
39939 2007-01-27  Yoann Vandoorselaere <yoann.v@prelude-ids.com>
39940             Bruno Haible  <bruno@clisp.org>
39941
39942         * modules/strcasestr (Files): Remove lib/strcasestr.h.
39943         (Depends-on): Add string.
39944         (Includes): Use <string.h> instead of strcasestr.h.
39945         * modules/string (Makefile.am): Also substitute the value of
39946         REPLACE_STRCASESTR.
39947         * m4/strcasestr.m4 (gl_FUNC_STRCASESTR): Don't define strcasestr here;
39948         assume strcasestr is declared in <string.h> not <strings.h>. Also
39949         set REPLACE_STRCASESTR.
39950         * m4/string_h.m4 (gl_HEADER_STRING_H_BODY): Provide a default value for
39951         REPLACE_STRCASESTR.
39952         * lib/strcasestr.h: Remove file.
39953         * lib/strcasestr.c: Include <string.h> instead of strcasestr.h.
39954         * lib/string_.h (strcasestr): New declaration.
39955
39956 2007-01-27  Bruno Haible  <bruno@clisp.org>
39957
39958         * lib/string_.h: Use 'extern'.
39959
39960 2007-01-27  Jim Meyering  <jim@meyering.net>
39961
39962         * lib/regex_internal.c (re_string_reconstruct): Remove declaration
39963         of set-but-not-used local, "q".
39964
39965         * lib/mempcpy.c: Include <config.h> before <string.h>.
39966         This fixes a compilation error on HP-UX, due to the system's
39967         "restrict"-using mempcpy prototype.
39968
39969 2007-01-26  Bruno Haible  <bruno@clisp.org>
39970
39971         Small optimization.
39972         * lib/javacomp.c: Include c-strstr.h.
39973          (is_envjavac_gcj): Use c_strstr instead of strstr.
39974         * modules/javacomp (Depends-on): Add c-strstr, remove strstr.
39975
39976 2007-01-26  Bruno Haible  <bruno@clisp.org>
39977
39978         * MODULES.html.sh (Unicode string functions): Add the new modules.
39979
39980         * modules/uniconv/u32-strconv-to-locale: New file.
39981         * lib/uniconv/u32-strconv-to-locale.c: New file.
39982
39983         * modules/uniconv/u16-strconv-to-locale: New file.
39984         * lib/uniconv/u16-strconv-to-locale.c: New file.
39985
39986         * modules/uniconv/u8-strconv-to-locale: New file.
39987         * lib/uniconv/u8-strconv-to-locale.c: New file.
39988
39989         * modules/uniconv/u32-strconv-from-locale: New file.
39990         * lib/uniconv/u32-strconv-from-locale.c: New file.
39991
39992         * modules/uniconv/u16-strconv-from-locale: New file.
39993         * lib/uniconv/u16-strconv-from-locale.c: New file.
39994
39995         * modules/uniconv/u8-strconv-from-locale: New file.
39996         * lib/uniconv/u8-strconv-from-locale.c: New file.
39997
39998         * modules/uniconv/u32-strconv-to-enc: New file.
39999         * lib/uniconv/u32-strconv-to-enc.c: New file.
40000         * modules/uniconv/u32-strconv-to-enc-tests: New file.
40001         * tests/uniconv/test-u32-strconv-to-enc.c: New file.
40002
40003         * modules/uniconv/u16-strconv-to-enc: New file.
40004         * lib/uniconv/u16-strconv-to-enc.c: New file.
40005         * lib/uniconv/u-strconv-to-enc.h: New file.
40006         * modules/uniconv/u16-strconv-to-enc-tests: New file.
40007         * tests/uniconv/test-u16-strconv-to-enc.c: New file.
40008
40009         * modules/uniconv/u8-strconv-to-enc: New file.
40010         * lib/uniconv/u8-strconv-to-enc.c: New file.
40011         * modules/uniconv/u8-strconv-to-enc-tests: New file.
40012         * tests/uniconv/test-u8-strconv-to-enc.c: New file.
40013
40014         * modules/uniconv/u32-strconv-from-enc: New file.
40015         * lib/uniconv/u32-strconv-from-enc.c: New file.
40016         * modules/uniconv/u32-strconv-from-enc-tests: New file.
40017         * tests/uniconv/test-u32-strconv-from-enc.c: New file.
40018
40019         * modules/uniconv/u16-strconv-from-enc: New file.
40020         * lib/uniconv/u16-strconv-from-enc.c: New file.
40021         * modules/uniconv/u16-strconv-from-enc-tests: New file.
40022         * tests/uniconv/test-u16-strconv-from-enc.c: New file.
40023
40024         * modules/uniconv/u8-strconv-from-enc: New file.
40025         * lib/uniconv/u8-strconv-from-enc.c: New file.
40026         * lib/uniconv/u-strconv-from-enc.h: New file.
40027         * modules/uniconv/u8-strconv-from-enc-tests: New file.
40028         * tests/uniconv/test-u8-strconv-from-enc.c: New file.
40029
40030         * modules/uniconv/u32-conv-from-enc: New file.
40031         * lib/uniconv/u32-conv-from-enc.c: New file.
40032         * modules/uniconv/u32-conv-from-enc-tests: New file.
40033         * tests/uniconv/test-u32-conv-from-enc.c: New file.
40034
40035         * modules/uniconv/u16-conv-from-enc: New file.
40036         * lib/uniconv/u16-conv-from-enc.c: New file.
40037         * lib/uniconv/u-conv-from-enc.h: New file.
40038         * modules/uniconv/u16-conv-from-enc-tests: New file.
40039         * tests/uniconv/test-u16-conv-from-enc.c: New file.
40040
40041         * modules/uniconv/u8-conv-from-enc: New file.
40042         * lib/uniconv/u8-conv-from-enc.c: New file.
40043         * modules/uniconv/u8-conv-from-enc-tests: New file.
40044         * tests/uniconv/test-u8-conv-from-enc.c: New file.
40045
40046         * modules/uniconv/base: New file.
40047         * lib/uniconv.h: New file.
40048
40049 2007-01-26  Paul Eggert  <eggert@cs.ucla.edu>
40050
40051         * doc/gnulib-tool.texi (Initial import): Update to match current
40052         behavior with strdup module.
40053         * lib/.cppi-disable: Remove strcase.h, strdup.h, strndup.h, strnlen.h.
40054         * lib/memmem.h: Remove; all uses removed.  This is now done
40055         by <string.h>.
40056         * lib/mempcpy.h: Likewise.
40057         * lib/memrchr.h: Likewise.
40058         * lib/stpcpy.h: Likewise.
40059         * lib/stpncpy.h: Likewise.
40060         * lib/strcase.h: Likewise.
40061         * lib/strchrnul.h: Likewise.
40062         * lib/strdup.h: Likewise.
40063         * lib/strndup.h: Likewise.
40064         * lib/strnlen.h: Likewise.
40065         * lib/strpbrk.h: Likewise.
40066         * lib/strsep.h: Likewise.
40067         * lib/strstr.h: Likewise.
40068         * lib/strtok_r.h: Likewise.
40069         * lib/string_.h: New file.
40070         * lib/argp-namefrob.h: Don't include no-longer-existent include files.
40071         Rely on <string.h> instead.
40072         * lib/canon-host.c: Likewise.
40073         * lib/chdir-long.c: Likewise.
40074         * lib/concatpath.c: Likewise.
40075         * lib/exclude.c: Likewise.
40076         * lib/fchdir.c: Likewise.
40077         * lib/getaddrinfo.c: Likewise.
40078         * lib/getcwd.c: Likewise.
40079         * lib/getsubopt.c: Likewise.
40080         * lib/glob.c: Likewise.
40081         * lib/hard-locale.c: Likewise.
40082         * lib/iconvme.c: Likewise.
40083         * lib/javacomp.c: Likewise.
40084         * lib/mempcpy.c: Likewise.
40085         * lib/memrchr.c: Likewise.
40086         * lib/regex_internal.h: Likewise.
40087         * lib/stpncpy.c: Likewise.
40088         * lib/strcasecmp.c: Likewise.
40089         * lib/strchrnul.c: Likewise.
40090         * lib/strdup.c: Likewise.
40091         * lib/striconv.c: Likewise.
40092         * lib/striconveh.c: Likewise.
40093         * lib/striconveha.c: Likewise.
40094         * lib/strncasecmp.c: Likewise.
40095         * lib/strndup.c: Likewise.
40096         * lib/strnlen.c: Likewise.
40097         * lib/strsep.c: Likewise.
40098         * lib/strstr.c: Likewise.
40099         * lib/strtok_r.c: Likewise.
40100         * lib/userspec.c: Likewise.
40101         * lib/w32spawn.h: Likewise.
40102         * lib/xstrndup.c: Likewise.
40103         * lib/mountlist.c (strstr): Remove decl.
40104         * m4/string_h.m4: New file.
40105         * m4/memmem.m4 (gl_FUNC_MEMMEM): Set HAVE_DECL_MEMMEM if necessary.
40106         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY): Set HAVE_MEMPCPY if necessary.
40107         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Set HAVE_MEMRCHR
40108         * m4/stpcpy.m4 (gl_FUNC_STPCPY): Set HAVE_STPCPY if necessary.
40109         * m4/stpncpy.m4 (gl_PREREQ_STPNCPY): Set HAVE_STPNCPY if necessary.
40110         * m4/strcase.m4 (gl_FUNC_STRCASECMP):
40111         Set REPLACE_STRCASECMP if necessary.
40112         (gl_FUNC_STRNCASECMP): Set HAVE_DECL_STRNCASECMP if necessary.
40113         * m4/strchrnul.m4 (gl_FUNC_STRCHRNUL): Set HAVE_STRCHRNUL if necessary.
40114         * m4/strdup.m4 (gl_FUNC_STRDUP): Set HAVE_DECL_STRDUP if necessary.
40115         * m4/strndup.m4 (gl_FUNC_STRNDUP): Set HAVE_DECL_STRNLEN and
40116         HAVE_DECL_STRDUP if necessary.
40117         (gl_PREREQ_STRNLEN): Don't bother to check for strnlen decl,
40118         since gl_FUNC_STRNDUP does that now.
40119         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Set HAVE_DECL_STRNLEN if necessary.
40120         Check for decl here...
40121         (gl_PREREQ_STRNLEN): ... not here.
40122         * m4/strpbrk.m4 (gl_FUNC_STRPBRK): Set HAVE_STRPBRK if necessary.
40123         * m4/strsep.m4 (gl_FUNC_STRSEP): Set HAVE_STRSEP if necessary.
40124         * m4/strstr.m4 (gl_FUNC_STRSTR): Set REPLACE_STRSTR if necessary.
40125         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Set HAVE_DECL_STRTOK_R if
40126         necessary.
40127         * modules/string: New file.
40128         * modules/memmem (Files): Remove special-purpose include file.
40129         (Depends-on): Add string.
40130         (Include): Include <string.h>, not the removed file.
40131         * modules/mempcpy: Likewise.
40132         * modules/memrchr: Likewise.
40133         * modules/stpcpy: Likewise.
40134         * modules/stpncpy: Likewise.
40135         * modules/strcase: Likewise.
40136         * modules/strchrnul: Likewise.
40137         * modules/strdup: Likewise.
40138         * modules/strndup: Likewise.
40139         * modules/strnlen: Likewise.
40140         * modules/strpbrk: Likewise.
40141         * modules/strsep: Likewise.
40142         * modules/strstr: Likewise.
40143         * modules/strtok_r: Likewise.
40144         * tests/test-dirname.c: Don't include "strdup.h", since
40145         <string.h> now suffices.
40146         * tests/test-memmem.c: Don't include "memmem.h", since
40147         <string.h> now suffices.
40148
40149 2007-01-25  Bruno Haible  <bruno@clisp.org>
40150
40151         * lib/striconveh.c (mem_cd_iconveh_internal): Ignore *lengthp if
40152         *resultp is 0.
40153
40154         * lib/unistr/u16-to-u8.c (u16_to_u8): Fix u8_uctomb invocation.
40155         * lib/unistr/u32-to-u8.c (u32_to_u8): Likewise.
40156         * lib/unistr/u8-to-u16.c (u8_to_u16): Fix u16_uctomb invocation.
40157         * lib/unistr/u32-to-u16.c (u32_to_u16): Likewise.
40158
40159         * modules/unistr/u8-to-u16 (Depends-on): Add missing modules.
40160         * modules/unistr/u8-to-u32 (Depends-on): Add missing modules.
40161         * modules/unistr/u16-to-u8 (Depends-on): Add missing modules.
40162         * modules/unistr/u16-to-u32 (Depends-on): Add missing modules.
40163         * modules/unistr/u32-to-u8 (Depends-on): Add missing modules.
40164         * modules/unistr/u32-to-u16 (Depends-on): Add missing modules.
40165
40166 2007-01-24  Bruno Haible  <bruno@clisp.org>
40167
40168         Don't AC_REQUIRE autoconf macros that invoke AC_LIBOBJ. See
40169         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00279.html>.
40170         * m4/argp.m4 (gl_ARGP): Invoke, don't require, gl_GETOPT_SUBSTITUTE.
40171         * m4/fts.m4 (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): Invoke, don't require,
40172         gl_FUNC_FTS_CORE.
40173         (gl_FUNC_FTS_CORE): Invoke, don't require, gl_FUNC_OPENAT.
40174         * m4/lstat.m4 (gl_FUNC_LSTAT): Invoke, don't require,
40175         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
40176         * m4/memcmp.m4 (gl_FUNC_MEMCMP): Invoke, don't require, AC_FUNC_MEMCMP.
40177         * m4/mktime.m4 (gl_FUNC_MKTIME): Invoke, don't require, AC_FUNC_MKTIME.
40178         * m4/openat.m4 (gl_FUNC_OPENAT): Invoke, don't require,
40179         gl_FUNC_FCHOWNAT.
40180         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Invoke, don't require,
40181         gl_FUNC_STRFTIME.
40182         * m4/strtod.m4 (gl_FUNC_STRTOD): Invoke, don't require, AC_FUNC_STRTOD.
40183         Reported by Ralf Wildenhues.
40184
40185 2007-01-24  Bruno Haible  <bruno@clisp.org>
40186
40187         Drop AC_REQUIRE calls that are redundant with the module dependencies.
40188         * m4/canon-host.m4 (gl_PREREQ_CANON_HOST): Don't require
40189         gl_GETADDRINFO.
40190         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Don't require AM_STDBOOL_H,
40191         gl_FUNC_MEMPCPY, gl_FUNC_OPENAT, gl_FUNC_MEMRCHR.
40192         * m4/openat.m4 (gl_PREREQ_OPENAT): Don't require gl_SAVE_CWD.
40193
40194 2007-01-24  Paul Eggert  <eggert@cs.ucla.edu>
40195
40196         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Add test for glibc bug 361.
40197         Don't use 'exit'; just return from 'main'.
40198         (_AC_LIBOBJ_FNMATCH): Check for headers and functions just once.
40199
40200         * lib/fnmatch_.h: Readjust white space and comments to match
40201         glibc, to avoid spurious diffs.
40202
40203 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
40204
40205         * lib/fnmatch_loop.c (internal_fnmatch) [!_LIBC]: #if-out the
40206         2004-12-01 change by Jakub Jelinek, since this code won't compile
40207         if !LIBC.  Problem reported by Bob Proulx.
40208
40209 2007-01-23  Bruno Haible  <bruno@clisp.org>
40210
40211         * lib/striconveh.c: Include c-strcaseeq.h.
40212         (mem_iconveh, str_iconveh): Use STRCASEEQ instead of c_strcasecmp.
40213         * modules/striconveh (Depends-on): Add c-strcaseeq.
40214
40215 2007-01-23  Bruno Haible  <bruno@clisp.org>
40216
40217         * MODULES.html.sh (String handling): Add streq, c-strcaseeq.
40218
40219         * modules/c-strcaseeq: New file.
40220         * lib/c-strcaseeq.h: New file.
40221
40222         * modules/streq: New file.
40223         * lib/streq.h: New file.
40224
40225 2007-01-23  Bruno Haible  <bruno@clisp.org>
40226
40227         * modules/striconveha-tests: New file.
40228         * tests/test-striconveha.c: New file.
40229
40230         * lib/striconveha.h: Include <stdbool.h>.
40231         (mem_iconveha, str_iconveha): Add 'transliterate' argument.
40232         * lib/striconveha.c: Include allocsa.h, strdup.h, c-strcase.h.
40233         (mem_iconveha_notranslit): Renamed from mem_iconveha.
40234         (mem_iconveha): New function.
40235         (str_iconveha_notranslit): Renamed from str_iconveha.
40236         (str_iconveha): New function.
40237         * modules/striconveha (Depends-on): Add stdbool, allocsa, strdup,
40238         c-strcase.
40239
40240 2007-01-23  Bruno Haible  <bruno@clisp.org>
40241
40242         * lib/striconveha.c (mem_iconveha): Fix endless recursion. Try all
40243         encodings without forgiving before trying any encoding with handler.
40244         (str_iconveha): Try all encodings without forgiving before trying any
40245         encoding with handler.
40246
40247 2007-01-23  Paul Eggert  <eggert@cs.ucla.edu>
40248
40249         Import the following changes from libc.
40250
40251         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
40252
40253         * lib/fnmatch_loop.c: Adjust for changed secondary hash function.
40254
40255         2004-12-01  Jakub Jelinek  <jakub@redhat.com>
40256
40257         * lib/fnmatch_loop.c (internal_fnmatch): Clear is_seqval after
40258         normal_bracket label.
40259
40260         2004-09-01  Jakub Jelinek  <jakub@redhat.com>
40261
40262         [BZ #361]
40263         * lib/fnmatch_loop.c (FCT): For backslash between brackets, branch
40264         to normal_bracket after fetching the next character.
40265
40266 2007-01-22  Bruno Haible  <bruno@clisp.org>
40267
40268         * lib/striconveh.h (mem_cd_iconveh, mem_iconveh): Add 'offsets'
40269         argument.
40270         * lib/striconveh.c (iconv_carefully_1): New function.
40271         (mem_cd_iconveh_internal, mem_cd_iconveh, mem_iconveh): Add 'offsets'
40272         argument.
40273         (str_cd_iconveh): Update.
40274         * lib/striconveha.h (mem_iconveha): Add 'offsets' argument.
40275         * lib/striconveha.c (mem_iconveha): Add 'offsets' argument.
40276         * tests/test-striconveh.c (MAGIC): New macro.
40277         (new_offsets): New function.
40278         (main): Test call with and without offsets.
40279
40280 2007-01-22  Bruno Haible  <bruno@clisp.org>
40281
40282         * modules/sys_stat (Makefile.am): Use @MKDIR_P@ instead of $(MKDIR_P).
40283         * modules/sys_select (Makefile.am): Likewise.
40284         * modules/sys_socket (Makefile.am): Likewise.
40285         * modules/sys_time (Makefile.am): Likewise.
40286
40287 2007-01-22  Paul Eggert  <eggert@cs.ucla.edu>
40288
40289         * modules/gettimeofday (License): Change from GPL to LGPL, since
40290         gettimeofday is a library function.
40291
40292 2007-01-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
40293
40294         * lib/poll.c (rpl_poll): Don't check against FD_SETSIZE under Win32.
40295
40296 2007-01-21  Bruno Haible  <bruno@clisp.org>
40297
40298         * m4/gnulib-common.m4 (AC_PROG_MKDIR_P): New macro.
40299
40300 2007-01-21  Bruno Haible  <bruno@clisp.org>
40301
40302         * modules/striconveha: New file.
40303         * lib/striconveha.h: New file.
40304         * lib/striconveha.c: New file.
40305         * MODULES.html.sh (Internationalization functions): Add striconveha.
40306         * lib/striconv.c (str_iconv): Optimize the case of an empty input
40307         string.
40308         * lib/striconveh.c (mem_iconveh, str_iconveh): Likewise.
40309
40310 2007-01-21  Bruno Haible  <bruno@clisp.org>
40311
40312         * lib/striconv.c (str_iconv): Guarantee errno is set when strdup fails.
40313         * lib/striconveh.c (str_iconveh): Likewise.
40314
40315 2007-01-21  Bruno Haible  <bruno@clisp.org>
40316
40317         * lib/striconveh.h (mem_iconveh): New declaration.
40318         * lib/striconveh.c (mem_iconveh): New function.
40319         * tests/test-striconveh.c (main): Add tests for mem_iconveh.
40320
40321 2007-01-21  Bruno Haible  <bruno@clisp.org>
40322
40323         * lib/xstriconv.h (xmem_cd_iconv): Change specification.
40324
40325         * lib/striconveh.h (mem_cd_iconveh): Change specification.
40326         * lib/striconveh.c (mem_cd_iconveh): Don't free the user-supplied
40327         original result buffer.
40328         (str_cd_iconveh): Update.
40329         * tests/test-striconveh.c (main): Update.
40330
40331         * lib/striconv.h (mem_cd_iconv): Change specification.
40332         * lib/striconv.c (mem_cd_iconv): Don't free the user-supplied original
40333         result buffer.
40334         (str_cd_iconv): Update.
40335         * tests/test-striconv.c (main): Update.
40336
40337 2007-01-21  Bruno Haible  <bruno@clisp.org>
40338
40339         * gnulib-tool: Fix test whether sed is GNU sed supporting --posix.
40340
40341 2007-01-20  Jim Meyering  <jim@meyering.net>
40342
40343         * lib/userspec.c (parse_with_separator): If a user or group string
40344         starts with "+", skip the corresponding name-to-ID look-up, since
40345         such a look-up must fail: user and group names may not include "+".
40346
40347 2007-01-19  Paul Eggert  <eggert@cs.ucla.edu>
40348
40349         * lib/poll.c: Include sys/time.h and time.h unconditionally,
40350         since we now assume the sys_time module.
40351         * m4/poll.m4 (gl_PREREQ_POLL): Don't require AC_HEADER_TIME or
40352         check for sys/time.h; no longer needed.
40353         * modules/poll (Depends-on): Depend on sys_time.
40354
40355 2007-01-18  Bruno Haible  <bruno@clisp.org>
40356
40357         * m4/mktime.m4 (AC_FUNC_MKTIME): Remove test for <sys/time.h>.
40358         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
40359
40360         * m4/tempname.m4 (gl_PREREQ_TEMPNAME): Remove tests for sys/time.h and
40361         gettimeofday.
40362
40363         * tests/test-gettimeofday.c: Include <time.h>.
40364         (dummy): Remove variable.
40365
40366         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Renamed from
40367         gl_HEADER_SYS_TIME_H.
40368         (gl_HEADER_SYS_TIME_H): New macro.
40369
40370         * lib/sys_time_.h: Test GETTIMEOFDAY_REPLACEMENT instead of
40371         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
40372         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY,
40373         gl_FUNC_GETTIMEOFDAY_CLOBBER): Set GETTIMEOFDAY_REPLACEMENT instead of
40374         HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
40375         * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H): Initialize
40376         GETTIMEOFDAY_REPLACEMENT instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE
40377         and GETTIMEOFDAY_CLOBBERS_LOCALTIME.
40378         * modules/sys_time (sys/time.h): Substitute GETTIMEOFDAY_REPLACEMENT
40379         instead of HAVE_GETTIMEOFDAY_POSIX_SIGNATURE and
40380         GETTIMEOFDAY_CLOBBERS_LOCALTIME.
40381
40382         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Undo the
40383         last change; it caused a compilation error when cross-compiling to
40384         Cygwin.
40385
40386 2007-01-18  Jim Meyering  <jim@meyering.net>
40387
40388         Use "$(MKDIR_P) sys", not race-prone "test -d sys || mkdir sys".
40389         * modules/sys_stat (Makefile.am): Use "$(MKDIR_P) sys", rather
40390         than the race-prone "test -d sys || mkdir sys".
40391         (configure.ac): Use AC_PROG_MKDIR_P.
40392         * modules/sys_select: Likewise.
40393         * modules/sys_socket: Likewise.
40394         * modules/sys_time: Likewise.
40395
40396 2007-01-18  Eric Blake  <ebb9@byu.net>
40397
40398         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Also
40399         replace gettimeofday.
40400         * lib/gettimeofday.c (rpl_gettimeofday): Declare with replacement
40401         name, to avoid infinite recursion.
40402
40403 2007-01-17  Paul Eggert  <eggert@cs.ucla.edu>
40404
40405         * MODULES.html.sh (Support for systems lacking POSIX:2001): New
40406         module sys_time.
40407         * lib/gethrxtime.c: Include <sys/time.h>, since we can no longer
40408         assume timespec.h defines struct timeval.
40409         * lib/settime.c: Likewise.
40410         * lib/utimens.c: Likewise.
40411         * lib/gettime.c (gettime): Remove test against HAVE_GETTIMEOFDAY,
40412         since we now assume the gettimeofday module.
40413         * lib/tempname.c (__gen_tempname): Likewise.
40414         * lib/gettimeofday.h: Remove.
40415         * lib/gettimeofday.c: Include <sys/time.h> instead of "gettimeofday.h".
40416         Don't include <sys/types.h> and <stdlib.h>; shouldn't be needed.
40417         Include <time.h>, for 'time()'.
40418         (localtime_buffer_addr): Also use this workaround if
40419         TZSET_CLOBBERS_LOCALTIME.  Set to a dummy static variable by default,
40420         to simplify the uses.  All uses changed.
40421         (localtime, gmtime, tzset, gettimeofday): Reformat slightly so
40422         that #undef is inside {}, and 'const' follows type name consistently.
40423         (tzset): Define replacement only if TZSET_CLOBBERS_LOCALTIME.
40424         (gettimeofday): Do not use the maximum possible value for
40425         tv->tv_usec, since that might break usages other than ls.c.
40426         Instead, we'll leave ls.c alone.  This undoes today's patch
40427         by Bruno.  Add a compile-time warning for 1s-clock resolution;
40428         we've never observed the problem but might as well keep the
40429         canary.
40430         * lib/nanosleep.c: Include timespec.h first, for interface check.
40431         * lib/nanosleep.c: Include <sys/time.h> unconditionally, since we
40432         now assume the sys_time module.
40433         * lib/tempname.c: Likewise.
40434         * lib/timespec.h: Likewise.
40435         * lib/nanosleep.c: Don't worry about TIME_WITH_SYS_TIME; no longer
40436         needed.
40437         * lib/strftime.c: Likewise.
40438         * lib/timespec.h: Likewise.
40439         * lib/posixtm.c: Include posixtm.h first, for interface check.
40440         Don't worry about TM_IN_SYS_TIME; that's wayyy obsolete.
40441         * lib/posixtm.h: Include stdbool.h and time.h, for proper interface.
40442         * lib/strftime.c: Don't include <sys/types.h>; shouldn't be needed.
40443         * lib/sys_time_.h: New file.
40444         * lib/timespec.h (struct timespec): Use long int, not long.
40445         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY):
40446         (gl_FUNC_GETTIMEOFDAY_CLOBBER, gl_PREREQ_GETTIMEOFDAY):
40447         Remove obsolescent call to AC_HEADER_TIME.
40448         * m4/mktime.m4 (AC_FUNC_MKTIME): Likewise.
40449         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
40450         * m4/strftime.m4 (gl_FUNC_STRFTIME): Likewise.
40451         * m4/timespec.m4 (gl_TIMESPEC, gl_CHECK_TYPE_STRUCT_TIMESPEC):
40452         Likewise.
40453         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Likewise.
40454         * m4/utimbuf.m4 (gl_CHECK_TYPE_STRUCT_UTIMBUF): Likewise.
40455         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): Move sys/time.h tests
40456         into the sys_time module.  Check for gettimeofday just once.
40457         Prefix our variables with gl_, not with ac_ or jm_.  Tighten test
40458         for gettimeofday signature to just check the signature.  Merely
40459         compile it, since linking doesn't test signature.  Improve test for
40460         whether gettimeofday.o is actually needed.
40461         (gl_FUNC_GETTIMEOFDAY_CLOBBER): Renamed from
40462         AC_FUNC_GETTIMEOFDAY_CLOBBER.  All uses changed.  Use
40463         AC_RUN_IFELSE rather than AC_TRY_RUN.  If clobbering, set
40464         and define GETTIMEOFDAY_CLOBBERS_LOCALTIME.
40465         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Don't define
40466         GETTIMEOFDAY_CLOBBERS_LOCALTIME; that's gl_FUNC_GETTIMEOFDAY_CLOBBER's
40467         job.  Don't define tzset; that's gl_FUNC_TZSET_CLOBBER's job.
40468         * m4/mktime.m4 (AC_FUNC_MKTIME): Just include <time.h> rather
40469         than worrying about sys/time.h.
40470         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
40471         Don't bother worrying about TIME_WITH_SYS_TIME.
40472         * m4/stat-time.m4 (gl_STAT_TIME): Likewise.
40473         * m4/posixtm.m4 (gl_POSIXTM): Remove obsolescent call to AC_STRUCT_TM.
40474         * m4/sys_time_h.m4: New file.
40475         * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): Require gl_HEADER_SYS_TIME_H.
40476         Don't include sys/time.h.  Return from main rather than exiting.
40477         Define TZSET_CLOBBERS_LOCALTIME, for consistency with other names;
40478         all uses changed.
40479         * modules/gethrxtime (Depends-on): Add sys_time.
40480         * modules/gettime (Depends-on): Likewise.
40481         * modules/gettimeofday (Depends-on): Likewise.
40482         * modules/nanosleep (Depends-on): Likewise.
40483         * modules/settime (Depends-on): Likewise.
40484         * modules/tempname (Depends-on): Likewise.
40485         * modules/utimens (Depends-on): Likewise.
40486         * modules/gettimeofday (Files): Remove lib/gettimeofday.h.
40487         (Include:) Change back to <sys/time.h>.
40488         (Maintainer:) Add self.
40489         * modules/sys_time: New file.
40490         * modules/tempname (Depends-on): Add gettimeofday.
40491         * tests/test-gettimeofday.c: Include <sys/time.h>
40492         rather than gettimeofday.h.
40493
40494 2007-01-17  Bruno Haible  <bruno@clisp.org>
40495
40496         * gnulib-tool (func_get_license): Revert last patch. Instead, let
40497         the license default to GPL.
40498         (func_create_testdir): Don't complain if a module is LGPL and its
40499         tests module depends on GPLed modules.
40500
40501 2007-01-17  Bruno Haible  <bruno@clisp.org>
40502
40503         * lib/gettimeofday.c (gettimeofday): Add code for the case
40504         HAVE_GETTIMEOFDAY && !GETTIMEOFDAY_CLOBBERS_LOCALTIME. Use the
40505         maximum possible value for tv->tv_usec, rather than the minimum one.
40506
40507 2005-10-08  Martin Lambers  <marlam@marlam.de>
40508 2005-10-08  Paul Eggert  <eggert@cs.ucla.edu>
40509 2007-01-16  Bruno Haible  <bruno@clisp.org>
40510
40511         * modules/gettimeofday (Files): Add lib/gettimeofday.h.
40512         (configure.ac): Remove AC_FUNC_GETTIMEOFDAY_CLOBBER. Add
40513         gl_FUNC_GETTIMEOFDAY.
40514         (Include): Add gettimeofday.h.
40515         * m4/gettimeofday.m4 (gl_FUNC_GETTIMEOFDAY): New macro.
40516         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't invoke gl_PREREQ_GETTIMEOFDAY.
40517         (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Define
40518         GETTIMEOFDAY_CLOBBERS_LOCALTIME. Invoke gl_PREREQ_GETTIMEOFDAY here.
40519         (gl_PREREQ_GETTIMEOFDAY): Check for <sys/timeb.h> and _ftime.
40520         * lib/gettimeofday.h: New file.
40521         * lib/gettimeofday.c: Include <sys/timeb.h>.
40522         (localtime_buffer_addr, rpl_localtime, rpl_gmtime, rpl_tzset): Define
40523         only if GETTIMEOFDAY_CLOBBERS_LOCALTIME.
40524         (rpl_gettimeofday) [!HAVE_GETTIMEOFDAY]: Use _ftime() when available;
40525         fall back on time().
40526
40527         * tests/test-gettimeofday.c: New file.
40528         * modules/gettimeofday-tests: New file.
40529
40530 2007-01-16  Eric Blake  <ebb9@byu.net>
40531
40532         * modules/fnmatch (Depends-on): Depend on wchar.
40533         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Assume <wchar.h>.
40534         * m4/fnmatch.m4: Likewise.
40535         * modules/mbchar (Makefile.am): Assume <wchar.h>.
40536         * m4/mbchar.m4: Likewise.
40537         * modules/mbswidth (Depends-on): Depend on wchar.
40538         * lib/mbswidth.c: Assume <wchar.h>.
40539         * m4/mbswidth.m4: Likewise.
40540         * modules/quotearg (Depends-on): Depend on wchar.
40541         * lib/quotearg.c: Assume <wchar.h>.
40542         * m4/quotearg.m4: Likewise.
40543         * modules/regex (Depends-on): Depend on wchar.
40544         * lib/regex_internal.h: Assume <wchar.h>.
40545         * m4/regex.m4: Likewise.
40546         * modules/stdint (Depends-on): Depend on wchar.
40547         * lib/stdint_.h [!defined WCHAR_MIN]: Assume <wchar.h>.
40548         * m4/stdint.m4: Likewise.
40549         * tests/test-stdint.c [HAVE_WINT_T]: Likewise.
40550         * modules/strftime (Depends-on): Depend on wchar.
40551         * lib/strftime.c (DO_MULTIBYTE): Assume <wchar.h>.
40552         * modules/strtol (Depends-on): Depend on wchar.
40553         * lib/strtol.c: Assume <wchar.h>.
40554         * modules/wcwidth (Depends-on): Depend on wchar.
40555         * lib/wcwidth.h: Assume <wchar.h>.
40556         * m4/wcwidth.m4: Likewise.
40557
40558 2007-01-16  Bruno Haible  <bruno@clisp.org>
40559
40560         * modules/csharpexec-script: New, created from...
40561         * modules/csharpexec: ... this.
40562
40563 2007-01-16  Paolo Bonzini  <bonzini@gnu.org>
40564
40565         * modules/javaexec-script: New, created from...
40566         * modules/javaexec: ... this.
40567
40568 2007-01-16  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
40569
40570         * modules/poll (Dependencies): Add sys_select.
40571
40572 2007-01-15  Jim Meyering  <jim@meyering.net>
40573
40574         * m4/readutmp.m4 (gl_READUTMP): Work around AIX 4.3 struct-
40575         redefinition bug when using both <utmp.h> and <utmpx.h> headers.
40576         * lib/readutmp.h: Likewise.  Reported by Daniel Richard G. in
40577         <http://article.gmane.org/gmane.comp.gnu.core-utils.bugs/9415>.
40578
40579 2007-01-15  Bruno Haible  <bruno@clisp.org>
40580
40581         * modules/striconveh: New file.
40582         * lib/striconveh.h: New file.
40583         * lib/striconveh.c: New file.
40584         * MODULES.html.sh (Internationalization functions): Add striconveh.
40585
40586         * modules/striconveh-tests: New file.
40587         * tests/test-striconveh.c: New file.
40588
40589 2007-01-15  Bruno Haible  <bruno@clisp.org>
40590
40591         * lib/striconv.c (str_cd_iconv): Use the first algorithm if iconv is
40592         not from GNU libiconv or GNU libc.
40593
40594 2007-01-15  Bruno Haible  <bruno@clisp.org>
40595
40596         * doc/gnulib-intro.texi (Copyright): Explain the different license
40597         terms for module descriptions, autoconf macros, tests, documentation.
40598
40599 2007-01-14  Bruno Haible  <bruno@clisp.org>
40600
40601         * modules/striconv-tests: New file.
40602         * tests/test-striconv.c: New file.
40603
40604 2007-01-14  Bruno Haible  <bruno@clisp.org>
40605
40606         * modules/iconv-tests: New file.
40607         * tests/test-iconv.c: New file.
40608
40609 2007-01-14  Bruno Haible  <bruno@clisp.org>
40610
40611         * gnulib-tool (func_get_license): For test modules, use the license of
40612         the main module.
40613
40614 2007-01-14  Bruno Haible  <bruno@clisp.org>
40615
40616         * modules/iconv (Include): Clarify that <iconv.h> can only be included
40617         if iconv is found to exist.
40618
40619 2007-01-14  Bruno Haible  <bruno@clisp.org>
40620
40621         * modules/c-ctype-tests: New file.
40622         * tests/test-c-ctype.c: New file.
40623
40624 2007-01-14  Bruno Haible  <bruno@clisp.org>
40625
40626         * modules/binary-io-tests: New file.
40627         * tests/test-binary-io.sh: New file.
40628         * tests/test-binary-io.c: New file.
40629
40630 2007-01-14  Bruno Haible  <bruno@clisp.org>
40631
40632         * modules/array-oset-tests: New file.
40633         * tests/test-array_oset.c: New file.
40634
40635 2007-01-14  Bruno Haible  <bruno@clisp.org>
40636
40637         * modules/array-list-tests: New file.
40638         * tests/test-array_list.c: New file.
40639
40640 2007-01-14  Bruno Haible  <bruno@clisp.org>
40641
40642         * gnulib-tool (func_create_testdir): Don't unnecessarily run configure
40643         and make.
40644         Reported by Simon Josefsson in
40645         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00139.html>
40646
40647 2007-01-14  Bruno Haible  <bruno@clisp.org>
40648
40649         * modules/allocsa-tests: New file.
40650         * tests/test-allocsa.c: New file.
40651
40652 2007-01-14  Bruno Haible  <bruno@clisp.org>
40653
40654         * modules/fchdir (Depends-on): Add absolute-header.
40655         * modules/unistd (Depends-on): Likewise.
40656
40657 2006-12-30  Bruno Haible  <bruno@clisp.org>
40658
40659         * modules/fchdir: New file.
40660         * modules/unistd (Files): Add lib/unistd_.h.
40661         (Makefile.am): Generate unistd.h from unistd_.h.
40662         * lib/fchdir.c: New file.
40663         * lib/dirent_.h: New file.
40664         * lib/unistd_.h: New file.
40665         * lib/fcntl_.h (open) [FCHDIR_REPLACEMENT]: New replacement.
40666         * m4/fchdir.m4: New file.
40667         * m4/unistd_h.m4 (gl_PREREQ_UNISTD): New macro.
40668         (gl_HEADER_UNISTD): Invoke it.
40669         * lib/dup-safer.c (dup_safer) [FCHDIR_REPLACEMENT]: Use the dup
40670         function.
40671         * lib/backupfile.c (opendir, closedir): Undefine.
40672         * lib/chown.c (open, close): Undefine.
40673         * lib/clean-temp.c (open, close): Undefine.
40674         * lib/copy-file.c (open, close): Undefine.
40675         * lib/execute.c (open, close): Undefine.
40676         * lib/fsusage.c (open, close): Undefine.
40677         * lib/gc-gnulib.c (open, close): Undefine.
40678         * lib/getcwd.c (opendir, closedir): Undefine.
40679         * lib/glob.c (opendir, closedir): Undefine.
40680         * lib/javacomp.c (open, close): Undefine.
40681         * lib/mountlist.c (open, close, opendir, closedir): Undefine.
40682         * lib/openat-proc.c (open, close): Undefine.
40683         * lib/pagealign_alloc.c (open, close): Undefine.
40684         * lib/pipe.c (open, close): Undefine.
40685         * lib/progreloc.c (open, close): Undefine.
40686         * lib/savedir.c (opendir, closedir): Undefine.
40687         * lib/utime.c (open, close): Undefine.
40688         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add fchdir.
40689
40690 2007-01-10  Bruno Haible  <bruno@clisp.org>
40691
40692         * lib/striconv.c (mem_cd_iconv): Align the temporary buffer.
40693
40694 2007-01-12  Eric Blake  <ebb9@byu.net>
40695
40696         Provide a robust <wchar.h>.  Further simplifications are now
40697         possible in other modules, but not included here.
40698         * modules/wchar: New module.
40699         * m4/wchar.m4: New file.
40700         * lib/wchar_.h: Likewise.
40701         * modules/mbchar (Depends-on): Depend on wchar, as the first use
40702         of the new module.
40703         * MODULES.html.sh (Extended multibyte and wide character utilities):
40704         New section.
40705
40706 2007-01-12  Paul Eggert  <eggert@cs.ucla.edu>
40707
40708         * lib/xreadlink.c (SYMLINK_MAX) [!defined SYMLINK_MAX]: Define
40709         to a reasonable default for memory allocation.
40710         (xreadlink): Don't allocate a huge buffer, to work around a buggy
40711         file system that reports garbage st_size values for symlinks.
40712         Problem reported by Liyang Hu.
40713
40714 2007-01-11  Simon Josefsson  <simon@josefsson.org>
40715
40716         * gnulib-tool (func_all_modules): Exclude all .* files (e.g.,
40717         Emacs .#* auto-save files).
40718
40719 2007-01-11  Bruno Haible  <bruno@clisp.org>
40720
40721         * gnulib-tool (func_all_modules): Exclude all files inside the CVS
40722         directory.
40723
40724 2007-01-10  Paul Eggert  <eggert@cs.ucla.edu>
40725
40726         Use @...@ consistently in lib/wctype_.h.
40727         * lib/wctype_.h [HAVE_WINT_T]: Go back to using @...@, but rely
40728         on it being set to 1 or 0.
40729         * m4/wctype.m4 (gl_WCTYPE_H): Set HAVE_WINT_T to 1 or 0, and
40730         go back to AC_SUBSTing it.
40731         * modules/wctype (Makefile.am): Undo previous change.
40732
40733 2007-01-10  Eric Blake  <ebb9@byu.net>
40734
40735         * lib/wctype_.h [HAVE_WINT_T]: Rely on AC_DEFINE.
40736         * m4/wctype.m4 (gl_WCTYPE_H): No need to AC_SUBST(HAVE_WINT_T).
40737         * modules/wctype (Makefile.am): Likewise.
40738         Reported by Chris McGuire.
40739
40740 2007-01-10  Jim Meyering  <jim@meyering.net>
40741
40742         fts.c: a small readability/maintainability improvement
40743         * lib/fts.c (fts_read): Make this code slightly more readable and
40744         maintainable by hoisting the "sp->fts_cur = p" assignments to
40745         immediately follow the statements that set P.  Derived from
40746         the patch by Miloslav Trmac in http://bugzilla.redhat.com/222089.
40747
40748 2007-01-10  Eric Blake  <ebb9@byu.net>
40749
40750         * lib/wctype_.h [HAVE_WINT_T]: Include <stddef.h> before
40751         <wchar.h>, to work around BSDI bug in BSD/OS 4.0.1.
40752         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
40753         * m4/wint_t.m4 (gt_TYPE_WINT_T): Likewise.
40754         Reported by Chris McGuire.
40755
40756 2007-01-09  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
40757
40758         * gnulib-tool (func_all_modules): Use POSIX conforming escaping
40759         in sed script.
40760
40761 2007-01-09  Bruno Haible  <bruno@clisp.org>
40762
40763         * MODULES.html.sh: Accept options --cvs-urls, --git-urls.
40764         (repo_url_prefix, repo_url_suffix, repo_url_suffix_repl): New
40765         variables.
40766         (func_module): Use them.
40767
40768 2007-01-09  Bruno Haible  <bruno@clisp.org>
40769
40770         * modules/unistr/base: New file.
40771         * lib/unistr.h: New file.
40772
40773         * modules/unistr/u8-to-u16: New file.
40774         * lib/unistr/u8-to-u16.c: New file.
40775
40776         * modules/unistr/u8-to-u32: New file.
40777         * lib/unistr/u8-to-u32.c: New file.
40778
40779         * modules/unistr/u16-to-u8: New file.
40780         * lib/unistr/u16-to-u8.c: New file.
40781
40782         * modules/unistr/u16-to-u32: New file.
40783         * lib/unistr/u16-to-u32.c: New file.
40784
40785         * modules/unistr/u32-to-u8: New file.
40786         * lib/unistr/u32-to-u8.c: New file.
40787
40788         * modules/unistr/u32-to-u16: New file.
40789         * lib/unistr/u32-to-u16.c: New file.
40790
40791         * modules/unistr/u8-check: New file.
40792         * modules/unistr/u16-check: New file.
40793         * modules/unistr/u32-check: New file.
40794         * lib/unistr/u8-check.c: New file.
40795         * lib/unistr/u16-check.c: New file.
40796         * lib/unistr/u32-check.c: New file.
40797
40798         * modules/unistr/u8-chr: New file.
40799         * modules/unistr/u16-chr: New file.
40800         * modules/unistr/u32-chr: New file.
40801         * lib/unistr/u8-chr.c: New file.
40802         * lib/unistr/u16-chr.c: New file.
40803         * lib/unistr/u32-chr.c: New file.
40804
40805         * modules/unistr/u8-cmp: New file.
40806         * modules/unistr/u16-cmp: New file.
40807         * modules/unistr/u32-cmp: New file.
40808         * lib/unistr/u8-cmp.c: New file.
40809         * lib/unistr/u16-cmp.c: New file.
40810         * lib/unistr/u32-cmp.c: New file.
40811
40812         * modules/unistr/u8-cpy: New file.
40813         * modules/unistr/u16-cpy: New file.
40814         * modules/unistr/u32-cpy: New file.
40815         * lib/unistr/u8-cpy.c: New file.
40816         * lib/unistr/u16-cpy.c: New file.
40817         * lib/unistr/u32-cpy.c: New file.
40818         * lib/unistr/u-cpy.h: New file.
40819
40820         * modules/unistr/u8-cpy-alloc: New file.
40821         * modules/unistr/u16-cpy-alloc: New file.
40822         * modules/unistr/u32-cpy-alloc: New file.
40823         * lib/unistr/u8-cpy-alloc.c: New file.
40824         * lib/unistr/u16-cpy-alloc.c: New file.
40825         * lib/unistr/u32-cpy-alloc.c: New file.
40826         * lib/unistr/u-cpy-alloc.h: New file.
40827
40828         * modules/unistr/u8-endswith: New file.
40829         * modules/unistr/u16-endswith: New file.
40830         * modules/unistr/u32-endswith: New file.
40831         * lib/unistr/u8-endswith.c: New file.
40832         * lib/unistr/u16-endswith.c: New file.
40833         * lib/unistr/u32-endswith.c: New file.
40834         * lib/unistr/u-endswith.h: New file.
40835
40836         * modules/unistr/u8-mblen: New file.
40837         * modules/unistr/u16-mblen: New file.
40838         * modules/unistr/u32-mblen: New file.
40839         * lib/unistr/u8-mblen.c: New file.
40840         * lib/unistr/u16-mblen.c: New file.
40841         * lib/unistr/u32-mblen.c: New file.
40842
40843         * modules/unistr/u8-mbtouc: New file.
40844         * modules/unistr/u16-mbtouc: New file.
40845         * modules/unistr/u32-mbtouc: New file.
40846         * lib/unistr/u8-mbtouc.c: New file.
40847         * lib/unistr/u16-mbtouc.c: New file.
40848         * lib/unistr/u32-mbtouc.c: New file.
40849
40850         * modules/unistr/u8-mbtouc-safe: New file.
40851         * modules/unistr/u16-mbtouc-safe: New file.
40852         * modules/unistr/u32-mbtouc-safe: New file.
40853         * lib/unistr/u8-mbtouc-safe.c: New file.
40854         * lib/unistr/u16-mbtouc-safe.c: New file.
40855         * lib/unistr/u32-mbtouc-safe.c: New file.
40856
40857         * modules/unistr/u8-move: New file.
40858         * modules/unistr/u16-move: New file.
40859         * modules/unistr/u32-move: New file.
40860         * lib/unistr/u8-move.c: New file.
40861         * lib/unistr/u16-move.c: New file.
40862         * lib/unistr/u32-move.c: New file.
40863         * lib/unistr/u-move.h: New file.
40864
40865         * modules/unistr/u8-next: New file.
40866         * modules/unistr/u16-next: New file.
40867         * modules/unistr/u32-next: New file.
40868         * lib/unistr/u8-next.c: New file.
40869         * lib/unistr/u16-next.c: New file.
40870         * lib/unistr/u32-next.c: New file.
40871
40872         * modules/unistr/u8-prev: New file.
40873         * modules/unistr/u16-prev: New file.
40874         * modules/unistr/u32-prev: New file.
40875         * lib/unistr/u8-prev.c: New file.
40876         * lib/unistr/u16-prev.c: New file.
40877         * lib/unistr/u32-prev.c: New file.
40878
40879         * modules/unistr/u8-set: New file.
40880         * modules/unistr/u16-set: New file.
40881         * modules/unistr/u32-set: New file.
40882         * lib/unistr/u8-set.c: New file.
40883         * lib/unistr/u16-set.c: New file.
40884         * lib/unistr/u32-set.c: New file.
40885         * lib/unistr/u-set.h: New file.
40886
40887         * modules/unistr/u8-startswith: New file.
40888         * modules/unistr/u16-startswith: New file.
40889         * modules/unistr/u32-startswith: New file.
40890         * lib/unistr/u8-startswith.c: New file.
40891         * lib/unistr/u16-startswith.c: New file.
40892         * lib/unistr/u32-startswith.c: New file.
40893         * lib/unistr/u-startswith.h: New file.
40894
40895         * modules/unistr/u8-stpcpy: New file.
40896         * modules/unistr/u16-stpcpy: New file.
40897         * modules/unistr/u32-stpcpy: New file.
40898         * lib/unistr/u8-stpcpy.c: New file.
40899         * lib/unistr/u16-stpcpy.c: New file.
40900         * lib/unistr/u32-stpcpy.c: New file.
40901         * lib/unistr/u-stpcpy.h: New file.
40902
40903         * modules/unistr/u8-stpncpy: New file.
40904         * modules/unistr/u16-stpncpy: New file.
40905         * modules/unistr/u32-stpncpy: New file.
40906         * lib/unistr/u8-stpncpy.c: New file.
40907         * lib/unistr/u16-stpncpy.c: New file.
40908         * lib/unistr/u32-stpncpy.c: New file.
40909         * lib/unistr/u-stpncpy.h: New file.
40910
40911         * modules/unistr/u8-strcat: New file.
40912         * modules/unistr/u16-strcat: New file.
40913         * modules/unistr/u32-strcat: New file.
40914         * lib/unistr/u8-strcat.c: New file.
40915         * lib/unistr/u16-strcat.c: New file.
40916         * lib/unistr/u32-strcat.c: New file.
40917         * lib/unistr/u-strcat.h: New file.
40918
40919         * modules/unistr/u8-strchr: New file.
40920         * modules/unistr/u16-strchr: New file.
40921         * modules/unistr/u32-strchr: New file.
40922         * lib/unistr/u8-strchr.c: New file.
40923         * lib/unistr/u16-strchr.c: New file.
40924         * lib/unistr/u32-strchr.c: New file.
40925
40926         * modules/unistr/u8-strcmp: New file.
40927         * modules/unistr/u16-strcmp: New file.
40928         * modules/unistr/u32-strcmp: New file.
40929         * lib/unistr/u8-strcmp.c: New file.
40930         * lib/unistr/u16-strcmp.c: New file.
40931         * lib/unistr/u32-strcmp.c: New file.
40932
40933         * modules/unistr/u8-strcpy: New file.
40934         * modules/unistr/u16-strcpy: New file.
40935         * modules/unistr/u32-strcpy: New file.
40936         * lib/unistr/u8-strcpy.c: New file.
40937         * lib/unistr/u16-strcpy.c: New file.
40938         * lib/unistr/u32-strcpy.c: New file.
40939         * lib/unistr/u-strcpy.h: New file.
40940
40941         * modules/unistr/u8-strcspn: New file.
40942         * modules/unistr/u16-strcspn: New file.
40943         * modules/unistr/u32-strcspn: New file.
40944         * lib/unistr/u8-strcspn.c: New file.
40945         * lib/unistr/u16-strcspn.c: New file.
40946         * lib/unistr/u32-strcspn.c: New file.
40947         * lib/unistr/u-strcspn.h: New file.
40948
40949         * modules/unistr/u8-strdup: New file.
40950         * modules/unistr/u16-strdup: New file.
40951         * modules/unistr/u32-strdup: New file.
40952         * lib/unistr/u8-strdup.c: New file.
40953         * lib/unistr/u16-strdup.c: New file.
40954         * lib/unistr/u32-strdup.c: New file.
40955         * lib/unistr/u-strdup.h: New file.
40956
40957         * modules/unistr/u8-strlen: New file.
40958         * modules/unistr/u16-strlen: New file.
40959         * modules/unistr/u32-strlen: New file.
40960         * lib/unistr/u8-strlen.c: New file.
40961         * lib/unistr/u16-strlen.c: New file.
40962         * lib/unistr/u32-strlen.c: New file.
40963         * lib/unistr/u-strlen.h: New file.
40964
40965         * modules/unistr/u8-strmblen: New file.
40966         * modules/unistr/u16-strmblen: New file.
40967         * modules/unistr/u32-strmblen: New file.
40968         * lib/unistr/u8-strmblen.c: New file.
40969         * lib/unistr/u16-strmblen.c: New file.
40970         * lib/unistr/u32-strmblen.c: New file.
40971
40972         * modules/unistr/u8-strmbtouc: New file.
40973         * modules/unistr/u16-strmbtouc: New file.
40974         * modules/unistr/u32-strmbtouc: New file.
40975         * lib/unistr/u8-strmbtouc.c: New file.
40976         * lib/unistr/u16-strmbtouc.c: New file.
40977         * lib/unistr/u32-strmbtouc.c: New file.
40978
40979         * modules/unistr/u8-strncat: New file.
40980         * modules/unistr/u16-strncat: New file.
40981         * modules/unistr/u32-strncat: New file.
40982         * lib/unistr/u8-strncat.c: New file.
40983         * lib/unistr/u16-strncat.c: New file.
40984         * lib/unistr/u32-strncat.c: New file.
40985         * lib/unistr/u-strncat.h: New file.
40986
40987         * modules/unistr/u8-strncmp: New file.
40988         * modules/unistr/u16-strncmp: New file.
40989         * modules/unistr/u32-strncmp: New file.
40990         * lib/unistr/u8-strncmp.c: New file.
40991         * lib/unistr/u16-strncmp.c: New file.
40992         * lib/unistr/u32-strncmp.c: New file.
40993
40994         * modules/unistr/u8-strncpy: New file.
40995         * modules/unistr/u16-strncpy: New file.
40996         * modules/unistr/u32-strncpy: New file.
40997         * lib/unistr/u8-strncpy.c: New file.
40998         * lib/unistr/u16-strncpy.c: New file.
40999         * lib/unistr/u32-strncpy.c: New file.
41000         * lib/unistr/u-strncpy.h: New file.
41001
41002         * modules/unistr/u8-strnlen: New file.
41003         * modules/unistr/u16-strnlen: New file.
41004         * modules/unistr/u32-strnlen: New file.
41005         * lib/unistr/u8-strnlen.c: New file.
41006         * lib/unistr/u16-strnlen.c: New file.
41007         * lib/unistr/u32-strnlen.c: New file.
41008         * lib/unistr/u-strnlen.h: New file.
41009
41010         * modules/unistr/u8-strpbrk: New file.
41011         * modules/unistr/u16-strpbrk: New file.
41012         * modules/unistr/u32-strpbrk: New file.
41013         * lib/unistr/u8-strpbrk.c: New file.
41014         * lib/unistr/u16-strpbrk.c: New file.
41015         * lib/unistr/u32-strpbrk.c: New file.
41016         * lib/unistr/u-strpbrk.h: New file.
41017
41018         * modules/unistr/u8-strrchr: New file.
41019         * modules/unistr/u16-strrchr: New file.
41020         * modules/unistr/u32-strrchr: New file.
41021         * lib/unistr/u8-strrchr.c: New file.
41022         * lib/unistr/u16-strrchr.c: New file.
41023         * lib/unistr/u32-strrchr.c: New file.
41024
41025         * modules/unistr/u8-strspn: New file.
41026         * modules/unistr/u16-strspn: New file.
41027         * modules/unistr/u32-strspn: New file.
41028         * lib/unistr/u8-strspn.c: New file.
41029         * lib/unistr/u16-strspn.c: New file.
41030         * lib/unistr/u32-strspn.c: New file.
41031         * lib/unistr/u-strspn.h: New file.
41032
41033         * modules/unistr/u8-strstr: New file.
41034         * modules/unistr/u16-strstr: New file.
41035         * modules/unistr/u32-strstr: New file.
41036         * lib/unistr/u8-strstr.c: New file.
41037         * lib/unistr/u16-strstr.c: New file.
41038         * lib/unistr/u32-strstr.c: New file.
41039         * lib/unistr/u-strstr.h: New file.
41040
41041         * modules/unistr/u8-strtok: New file.
41042         * modules/unistr/u16-strtok: New file.
41043         * modules/unistr/u32-strtok: New file.
41044         * lib/unistr/u8-strtok.c: New file.
41045         * lib/unistr/u16-strtok.c: New file.
41046         * lib/unistr/u32-strtok.c: New file.
41047         * lib/unistr/u-strtok.h: New file.
41048
41049         * modules/unistr/u8-uctomb: New file.
41050         * modules/unistr/u16-uctomb: New file.
41051         * modules/unistr/u32-uctomb: New file.
41052         * lib/unistr/u8-uctomb.c: New file.
41053         * lib/unistr/u16-uctomb.c: New file.
41054         * lib/unistr/u32-uctomb.c: New file.
41055
41056         * MODULES.html.sh (Unicode string functions): Add the new modules.
41057
41058 2007-01-08  Bruno Haible  <bruno@clisp.org>
41059
41060         * gnulib-tool (func_all_modules): Use find, not ls, to traverse the
41061         modules directory. Filter out CVS, ChangeLog, COPYING, README also from
41062         subdirectories.
41063
41064 2007-01-08  Karl Berry  <karl@gnu.org>
41065
41066         * doc/error.texi: mention that main() fns must set program_name
41067         when progname is used.
41068
41069 2007-01-08  Paul Eggert  <eggert@cs.ucla.edu>
41070
41071         * m4/wctype.m4 (gl_WCTYPE_H): Compute ABSOLUTE_WCTYPE_H even if
41072         WCTYPE_H is empty, for the benefit of builds from non-distclean
41073         directories.  Problem reported by Eric Blake in
41074         <http://lists.gnu.org/archive/html/bug-gnulib/2007-01/msg00157.html>.
41075
41076 2007-01-08  Bruno Haible  <bruno@clisp.org>
41077
41078         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Remove
41079         PROVIDE_CANONICALIZE_FILENAME_MODE macro definition.
41080         * lib/canonicalize.h: Test GNULIB_CANONICALIZE instead of
41081         PROVIDE_CANONICALIZE_FILENAME_MODE.
41082         * modules/canonicalize (configure.ac): Use gl_MODULE_INDICATOR.
41083
41084 2007-01-08  Bruno Haible  <bruno@clisp.org>
41085
41086         * m4/fts.m4 (gl_FUNC_FTS_LGPL): Remove _LGPL_PACKAGE macro definition.
41087         * lib/fts_.h (_LGPL_PACKAGE): Remove macro.
41088         Use !GNULIB_FTS instead of _LGPL_PACKAGE.
41089         * lib/fts.c: Likewise.
41090         * modules/fts (configure.ac): Use gl_MODULE_INDICATOR.
41091
41092 2006-12-25  Bruno Haible  <bruno@clisp.org>
41093
41094         * modules/utf8-ucs4-safe: New file.
41095         * lib/utf8-ucs4-safe.h: New file.
41096         * lib/unistr/utf8-ucs4-safe.c: New file.
41097
41098         * modules/utf16-ucs4-safe: New file.
41099         * lib/utf16-ucs4-safe.h: New file.
41100         * lib/unistr/utf16-ucs4-safe.c: New file.
41101
41102         * MODULES.html.sh (Unicode string functions): Add the new modules.
41103
41104 2007-01-08  Bruno Haible  <bruno@clisp.org>
41105
41106         * modules/utf8-ucs4 (Files, lib_SOURCES): Add unistr/utf8-ucs4.c.
41107         (Depends-on): Add unitypes.
41108         * lib/utf8-ucs4.h: Add double-inclusion guard. Include unitypes.h.
41109         (u8_mbtouc_aux): Move out to separate file.
41110         (u8_mbtouc): Use ucs4_t, uint8_t types.
41111         * lib/unistr/utf8-ucs4.c: New file.
41112
41113         * modules/utf16-ucs4 (Files, lib_SOURCES): Add unistr/utf16-ucs4.c.
41114         (Depends-on): Add unitypes.
41115         * lib/utf16-ucs4.h: Add double-inclusion guard. Include unitypes.h.
41116         (u16_mbtouc_aux): Move out to separate file.
41117         (u16_mbtouc): Use ucs4_t, uint16_t types.
41118         * lib/unistr/utf16-ucs4.c: New file.
41119
41120         * modules/ucs4-utf8 (Files, lib_SOURCES): Add unistr/ucs4-utf8.c.
41121         (Depends-on): Add unitypes.
41122         * lib/ucs4-utf8.h: Add double-inclusion guard. Include unitypes.h.
41123         (u8_uctomb_aux): Move out to separate file.
41124         (u8_uctomb): Use ucs4_t, uint8_t types.
41125         * lib/unistr/ucs4-utf8.c: New file.
41126
41127         * modules/ucs4-utf16 (Files, lib_SOURCES): Add unistr/ucs4-utf16.c.
41128         (Depends-on): Add unitypes.
41129         * lib/ucs4-utf16.h: Add double-inclusion guard. Include unitypes.h.
41130         (u16_uctomb_aux): Move out to separate file.
41131         (u16_uctomb): Use ucs4_t, uint16_t types.
41132         * lib/unistr/ucs4-utf16.c: New file.
41133
41134 2006-12-25  Bruno Haible  <bruno@clisp.org>
41135
41136         * modules/unitypes: New file.
41137         * lib/unitypes.h: New file.
41138         * MODULES.html.sh (func_all_modules): New section "Unicode string
41139         functions". Move ucs4-utf8, ucs4-utf16, utf8-ucs4, utf16-ucs4 to
41140         this section. Add unitypes.
41141
41142 2007-01-08  Bruno Haible  <bruno@clisp.org>
41143
41144         Avoid variable names that conflict with those from libtool.
41145         * m4/lib-link.m4 (AC_LIB_RPATH, AC_LIB_LINKFLAGS_BODY,
41146         AC_LIB_LINKFLAGS_FROM_LIBS): Rename libext to acl_libext,
41147         shlibext to acl_shlibext, libname_spec to acl_libname_spec,
41148         library_names_spec to acl_library_names_spec, hardcode_* to
41149         acl_hardcode_*.
41150         Reported by Ralf Wildenhues.
41151
41152 2007-01-08  Bruno Haible  <bruno@clisp.org>
41153
41154         * m4/gc-arcfour.m4 (gl_GC_ARCFOUR): Remove GC_USE_ARCFOUR macro
41155         definition.
41156         * m4/gc-arctwo.m4 (gl_GC_ARCTWO): Remove GC_USE_ARCTWO macro
41157         definition.
41158         * m4/gc-des.m4 (gl_GC_DES): Remove GC_USE_DES macro definition.
41159         * m4/gc-hmac-md5.m4 (gl_GC_HMAC_MD5): Remove GC_USE_HMAC_MD5 macro
41160         definition.
41161         * m4/gc-hmac-sha1.m4 (gl_GC_HMAC_SHA1): Remove GC_USE_HMAC_SHA1 macro
41162         definition.
41163         * m4/gc-md2.m4 (gl_GC_MD2): Remove GC_USE_MD2 macro definition.
41164         * m4/gc-md4.m4 (gl_GC_MD4): Remove GC_USE_MD4 macro definition.
41165         * m4/gc-md5.m4 (gl_GC_MD5): Remove GC_USE_MD5 macro definition.
41166         * m4/gc-random.m4 (gl_GC_RANDOM): Remove GC_USE_RANDOM macro
41167         definition.
41168         * m4/gc-rijndael.m4 (gl_GC_RIJNDAEL): Remove GC_USE_RIJNDAEL macro
41169         definition.
41170         * m4/gc-sha1.m4 (gl_GC_SHA1): Remove GC_USE_SHA1 macro definition.
41171         * lib/gc-gnulib.c: Use GNULIB_GC_<algorithm> instead of
41172         GC_USE_<algorithm>.
41173         * lib/gc-libgcrypt.c: Likewise.
41174         * modules/gc-arcfour (configure.ac): Use gl_MODULE_INDICATOR.
41175         * modules/gc-arctwo (configure.ac): Likewise.
41176         * modules/gc-des (configure.ac): Likewise.
41177         * modules/gc-hmac-md5 (configure.ac): Likewise.
41178         * modules/gc-hmac-sha1 (configure.ac): Likewise.
41179         * modules/gc-md2 (configure.ac): Likewise.
41180         * modules/gc-md4 (configure.ac): Likewise.
41181         * modules/gc-md5 (configure.ac): Likewise.
41182         * modules/gc-random (configure.ac): Likewise.
41183         * modules/gc-rijndael (configure.ac): Likewise.
41184         * modules/gc-sha1 (configure.ac): Likewise.
41185
41186 2007-01-08  Bruno Haible  <bruno@clisp.org>
41187
41188         * m4/close-stream.m4 (gl_CLOSE_STREAM): Remove GNULIB_CLOSE_STREAM
41189         macro definition.
41190         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Remove GNULIB_FCNTL_SAFER macro
41191         definition.
41192         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Remove GNULIB_FOPEN_SAFER macro
41193         definition.
41194         * modules/close-stream (configure.ac): Invoke gl_MODULE_INDICATOR.
41195         * modules/fcntl-safer (configure.ac): Likewise.
41196         * modules/fopen-safer (configure.ac): Likewise.
41197         * modules/fwriteerror (configure.ac): Likewise. Remove explicit
41198         GNULIB_FWRITEERROR macro definition.
41199
41200 2007-01-08  Bruno Haible  <bruno@clisp.org>
41201
41202         * m4/gnulib-common.m4: New file.
41203         * gnulib-tool (func_get_autoconf_snippet): Undo last change.
41204         (func_get_filelist): Add m4/gnulib-common.m4.
41205
41206 2007-01-08  Bruno Haible  <bruno@clisp.org>
41207
41208         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Simplify the sorting
41209         command.
41210
41211 2007-01-08  Jim Meyering  <jim@meyering.net>
41212
41213         Use a more robust test for a "can't happen" condition.
41214         * lib/fts.c (fts_read): Revert the change of 2006-11-22, since it
41215         narrowed the st_size value.  Presuming the "can't happen" condition
41216         is true, that narrowing could conceivably convert an invalid st_size
41217         value into a valid one.  Instead, use a change based on Matthew
41218         Woehlke's original patch.
41219
41220         Slight readability improvement: use an assert-like macro
41221         in place of literal "abort ()" uses.
41222         * lib/fts.c (fts_assert): Define.
41223         (fts_set_stat_required, cwd_advance_fd, fts_read, fd_ring_check):
41224         Use this macro instead of a bare 'abort'.
41225
41226 2007-01-05  Paul Eggert  <eggert@cs.ucla.edu>
41227
41228         Don't worry about using IRIX 5.3's wctype.h broken definitions;
41229         simply work around them.
41230         * lib/wctype_.h: Remove test for HAVE_WCTYPE_CTMP_BUG.
41231         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph, iswlower):
41232         (iswprint, iswpunct, iswspace, iswupper, iswxdigit): Undef before
41233         declaring.
41234         Don't bother to define as macros, since the standard doesn't require it.
41235         * m4/wctype.m4 (WCTYPE_H, ABSOLUTE_WCTYPE_H): Simplify, since we no
41236         longer worry about IRIX 5.3.
41237         (HAVE_WCTYPE_CTMP_BUG): Remove.
41238
41239 2007-01-04  Paul Eggert  <eggert@cs.ucla.edu>
41240
41241         * lib/wctype_.h (_ctmp_) [HAVE_WCTYPE_CTMP_BUG]: Now of type wchar_t,
41242         not wint_t.  Also, include <ctype.h>, to fix another IRIX bug.
41243         * m4/wctype.m4 (gl_WCTYPE_H): Likewise.
41244         Problems reported by Georg Schwarz for IRIX 5.3.
41245
41246         * gnulib-tool (autoconf_minversion): Take the maximum version number
41247         found, not the minimum.  Problem reported by James Youngman.
41248
41249 2007-01-03  Karl Berry  <karl@gnu.org>
41250
41251         * doc/error.texi: new file, explaining interaction with progname.
41252         * doc/gnulib.texi: include it.  Update copyright.
41253
41254 2007-01-03  Simon Josefsson  <simon@josefsson.org>
41255
41256         * gnulib-tool (func_create_testdir): Run AC_CANONICAL_BUILD and
41257         AC_CANONICAL_HOST, to improve autobuild outputs.
41258
41259 2007-01-03  Paolo Bonzini  <bonzini@gnu.org>
41260             Yoann Vandoorselaere <yoann.v@prelude-ids.com>
41261
41262         * lib/poll.c (poll): Use recv on Mac OS X to distinguish connected
41263         sockets, server sockets, and other file descriptors.  Count errors
41264         to compute the return value.  Reorder the code a bit to be easier
41265         to follow.  Don't set event bits that were not requested (except
41266         POLLERR and POLLHUP).
41267
41268 2007-01-01  Bruno Haible  <bruno@clisp.org>
41269
41270         * modules/lchmod (Include): Require lchmod.h, not lchown.h.
41271
41272 2007-01-03  Jim Meyering  <jim@meyering.net>
41273
41274         * modules/fts-lgpl (Depends-on): Add i-ring.  Reported by Bruno Haible.
41275
41276 2007-01-02  Bruno Haible  <bruno@clisp.org>
41277
41278         * modules/settime (Include): Require timespec.h.
41279         * modules/nanosleep (Include): Likewise.
41280
41281 2007-01-01  Bruno Haible  <bruno@clisp.org>
41282
41283         * gnulib-tool (func_emit_copyright_notice): Bump year.
41284         (func_get_autoconf_snippet): Emit a GNULIB_<modulename> macro.
41285
41286 2007-01-01  Bruno Haible  <bruno@clisp.org>
41287
41288         Improve support for OpenBSD.
41289         * build-aux/config.rpath (libname_spec): Export.
41290         (library_names_spec): New variable. Export.
41291         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Extract libname_spec and
41292         library_names_spec from the config.rpath output. Locate shared library
41293         through the name pattern in library_names_spec.
41294
41295 2007-01-01  Eric Blake  <ebb9@byu.net>
41296
41297         * lib/version-etc.c (COPYRIGHT_YEAR): Bump for new year.
41298
41299 2006-12-30  Paul Eggert  <eggert@cs.ucla.edu>
41300
41301         * gnulib-tool (SORT): Remove, since we no longer assume GNU sort.
41302         Rewrite so as not to assume GNU sort or "tail -1".  Also, don't
41303         assume the C locale, and avoid an "eval" that could cause trouble.
41304         Problem with SORT reported by Bob Proulx.
41305
41306         * lib/getpagesize.h (getpagesize) [defined __amigaos4__]:
41307         Define.  Trivial patch from Henning Nielsen Lund, originally
41308         sent to bug-grep@gnu.org today.
41309
41310 2006-12-29  Paul Eggert  <eggert@cs.ucla.edu>
41311
41312         * lib/acl.h: Include sys/types.h and sys/stat.h, for mode_t and
41313         struct stat.  Problem reported by Henning Nielsen Lund.
41314         * lib/acl.c: Include acl.h first, to check interface.  Don't
41315         bother to include sys/types.h and sys/stat.h again.
41316
41317 2006-12-28  Paul Eggert  <eggert@cs.ucla.edu>
41318
41319         Import the following change from libc; problem reported by
41320         Sven Verdoolaege.
41321
41322         2005-10-13  Ulrich Drepper  <drepper@redhat.com>
41323
41324         [BZ #1373]
41325         * lib/argp.h: Remove __NTH for __argp_usage inline function.
41326
41327 2006-12-28  Jim Meyering  <jim@meyering.net>
41328
41329         * build-aux/announce-gen: Do not assume that the package
41330         builds any of tar.gz, tar.bz2, and .xdelta files.
41331         Suggestion from Simon Josefsson.
41332
41333 2006-12-28  Simon Josefsson  <simon@josefsson.org>
41334
41335         * modules/announce-gen: New file.
41336
41337 2006-12-27  Paul Eggert  <eggert@cs.ucla.edu>
41338
41339         * lib/mbchar.h: Just include <wctype.h>; the wctype module
41340         handles its gotchas now.
41341         * lib/mbswidth.c: Likewise.
41342         * lib/wcwidth.h: Likewise.
41343         * m4/mbchar.m4 (gl_MBCHAR): Don't bother checking for wctype.h
41344         and iswcntrl; the wctype module does this stuff now.
41345         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
41346         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Likewise.
41347         * modules/mbchar (Depends-on): Add wctype.
41348         * modules/mbswidth (Depends-on): Likewise.
41349         * modules/wcwidth (Depends-on): Likewise.
41350
41351 2006-12-27  Eric Blake  <ebb9@byu.net>
41352
41353         * lib/fnmatch.c: Reinstate inclusion of <wchar.h>, since this
41354         module uses more than what <wctype.h> is required to provide.
41355
41356 2006-12-26  Eric Blake  <ebb9@byu.net>
41357
41358         * gnulib-tool (sed_extract_prog): Avoid space-tab.
41359
41360 2006-12-26  Eric Blake  <ebb9@byu.net>
41361
41362         * modules/absolute-header: New module.
41363         * modules/fcntl (Depends-on): Depend on it.
41364         * modules/inttypes (Depends-on): Likewise.
41365         * modules/stdint (Depends-on): Likewise.
41366         * modules/sys_stat (Depends-on): Likewise.
41367         * modules/wctype (Depends-on): Likewise.
41368         * MODULES.html.sh (Support for building libraries and
41369         executables): Document it.
41370
41371 2006-12-25  Paul Eggert  <eggert@cs.ucla.edu>
41372
41373         * gnulib-tool (SED): Remove, undoing previous change.
41374         The problem was that it broke coreutils on Solaris, because
41375         "sed --posix" leaked into a makefile.
41376         (sed): New alias, if 'alias' and GNU sed.
41377
41378 2006-12-24  Jim Meyering  <jim@meyering.net>
41379
41380         Work around an fchownat bug in glibc-2.4:
41381         http://lists.ubuntu.com/archives/ubuntu-users/2006-September/093218.html
41382         This bug would cause "chown -RP ... DIR" to follow symlinks in DIR,
41383         in spite of the -P option.
41384         * m4/openat.m4 (gl_FUNC_FCHOWNAT, gl_FUNC_FCHOWNAT_DEREF_BUG):
41385         New macros.
41386         (gl_PREREQ_OPENAT): Require gl_FUNC_FCHOWNAT.
41387         * modules/openat (Files): Add lib/fchownat.c.
41388         * lib/openat.c (fchownat): Don't define here.  Move to...
41389         * lib/fchownat.c: ...this new file.
41390
41391 2006-12-23  Paul Eggert  <eggert@cs.ucla.edu>
41392
41393         Fix bug reported by Bruno Haible in
41394         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00228.html>
41395         where quotearg.c didn't compile on Mac OS X 10.2 because it
41396         lacks <wchar.h> and wint_t.
41397         * lib/wctype_.h (__wctype_wint_t): New type.
41398         Include <stdio.h>, <time.h>, <wchar.h> only if HAVE_WINT_T.
41399         (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit, iswgraph):
41400         (iswlower, iswprint, iswpunct, iswspace, iswupper, ixwxdigit):
41401         Arg is now of type __wctype_wint_t, not wint_t.
41402         * m4/wctype.m4 (gl_WCTYPE_H): Require gt_TYPE_WINT_T, and
41403         substitute HAVE_WINT_T.
41404         * modules/wctype (Files): Add m4/wint_t.m4.
41405         (wctype.h): Substitute HAVE_WINT_T.
41406
41407 2006-12-23  Bruno Haible  <bruno@clisp.org>
41408
41409         * lib/safe-read.h [C++]: Wrap declarations in extern "C".
41410
41411 2006-12-23  Bruno Haible  <bruno@clisp.org>
41412
41413         * lib/canonicalize-lgpl.c (__realpath): Test HAVE_READLINK instead of
41414         S_ISLNK.
41415         Needed because gnulib's sys/stat.h replacement defines S_ISLNK on
41416         mingw.
41417
41418 2006-12-22  Bruno Haible  <bruno@clisp.org>
41419
41420         * lib/copy-file.c: Include acl.h.
41421         (copy_file_preserving) [USE_ACL]: Use copy_acl instead of chmod.
41422         Close the file descriptors only after being done with copy_acl.
41423         * modules/copy-file (Depends-on): Add acl.
41424
41425 2006-12-22  Bruno Haible  <bruno@clisp.org>
41426
41427         * gnulib-tool (SED): New variable.
41428         Use $SED instead of sed everywhere.
41429
41430 2006-12-22  Bruno Haible  <bruno@clisp.org>
41431
41432         * modules/no-c++: New file.
41433         * m4/no-c++.m4: New file.
41434         * MODULES.html.sh (Support for building libraries and executables):
41435         Add no-c++.
41436
41437 2006-12-22  Paul Eggert  <eggert@cs.ucla.edu>
41438
41439         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
41440         Include <limits.h>, and use its INT_MAX to rewrite the
41441         j loop so that it does not overflow 'int'.  Problem reported by
41442         Ralf Wildenhues in
41443         <http://lists.gnu.org/archive/html/bug-gnulib/2006-12/msg00084.html>.
41444         Play it safe by shifting left by 1 rather than multiplying by 2,
41445         as GCC is less likely to optimize this away when the value
41446         is signed (when it assumes overflow leads to undefined behavior).
41447         Also, don't assume time_t uses two's complement.
41448
41449 2006-12-21  Paul Eggert  <eggert@cs.ucla.edu>
41450
41451         * MODULES.html.sh: New module wctype.
41452         * lib/wctype_.h, m4/wctype.m4, modules/wctype: New files.
41453         * lib/fnmatch.c: Don't bother to include <wchar.h> before
41454         <wctype.h>, since the new wctype module should fix this.
41455         * lib/quotearg.c: Include <wctype.h> unconditionally, since
41456         the wctype module should arrange for it.
41457         * lib/regex_internal.h: Likewise.
41458         * m4/quotearg.m4 (gl_QUOTEARG): Don't check for wctype.h or iswprint,
41459         since the wctype module should handle this now.
41460         * m4/regex.m4 (gl_PREREQ_REGEX): Don't check for wctype.h.
41461         * modules/fnmatch (Depends-on): Add wctype.
41462         * modules/quotearg (Depends-on): Likewise.
41463         * modules/regex (Depends-on): Likewise.
41464
41465 2006-12-19  Bruno Haible  <bruno@clisp.org>
41466
41467         * lib/strdup.h [C++]: Wrap definitions in extern "C".
41468         Suggested by Lorenzo Bettini <bettini@dsi.unifi.it>.
41469
41470 2006-12-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
41471
41472         * modules/savewd (Depends-on): Fix dependency on fcntl.
41473
41474 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
41475
41476         * m4/stdint.m4 (gl_STDINT_H): Set STDINT_H to empty if stdint.h
41477         conforms to C99, rather than relying on the user's environment
41478         setting of STDINT_H.
41479
41480 2006-12-18  Paul Eggert  <eggert@cs.ucla.edu>
41481         and Eric Blake  <ebb9@byu.net>
41482
41483         * lib/dirname.h (DOUBLE_SLASH_IS_DISTINCT_ROOT): Default to 0, not 1.
41484         This is more consistent with the other defines here.
41485         * m4/double-slash-root.m4 (gl_DOUBLE_SLASH_ROOT):
41486         Port to z/OS.  Problem reported by Paul Gilmartin.
41487         Change local vars to use gl_ prefix rather than ac_.
41488         Don't define DOUBLE_SLASH_IS_DISTINCT_ROOT to 0, for consistency
41489         with other defines.
41490         * modules/double-slash-root: New module.
41491         * modules/dirname (Files): Remove m4/double-slash-root.m4.
41492         (Depends-on): Add double-slash-root.
41493         * MODULES.html.sh (File system functions): Mention new module.
41494
41495 2006-12-14  Paul Eggert  <eggert@cs.ucla.edu>
41496
41497         * lib/yesno.c [!ENABLE_NLS]: Don't include getline.h.
41498         (yesno) [!ENABLE_NLS]: Don't invoke getline or rpmatch.
41499         This is for the benefit of gzip, which doesn't do i18n.
41500
41501 2006-12-12  Jim Meyering  <jim@meyering.net>
41502
41503         * m4/acl.m4 (gl_ACL_GET_FILE): Fix logic error.
41504         Reported by Andreas Schwab <schwab@suse.de>.
41505
41506 2006-12-12  Bruno Haible  <bruno@clisp.org>
41507
41508         Merge these changes.
41509         2006-09-05  Bruno Haible  <bruno@clisp.org>
41510         * lib/iconvme.c (iconv_string): No need to save and restore errno when
41511         iconv_alloc succeeded.
41512         (iconv_alloc): Don't assume that malloc() or realloc(), when failing,
41513         sets errno to ENOMEM. (malloc on GNU/kFreeBSD doesn't.) No need to
41514         test for " && dest " at the end - dest is always != NULL there. Call
41515         iconv with 4xNULL arguments initially, to reset the state. Call iconv
41516         with 2xNULL arguments, also to flush the state storage. Handle the
41517         IRIX iconv behaviour. Realloc the final result, to throw away unused
41518         memory.
41519
41520 2006-12-11  Paul Eggert  <eggert@cs.ucla.edu>
41521
41522         * m4/openat.m4 (gl_FUNC_OPENAT): Don't compile mkdirat
41523         and fchmodat unconditionally, since glibc 2.4 has them.
41524         Problem reported by Arkadiusz Miskiewicz.
41525
41526 2006-12-10  Bruno Haible  <bruno@clisp.org>
41527
41528         * gnulib-tool (func_import): Show the include files only for those
41529         modules that are copied and specified.
41530         Reported by Karl Berry.
41531
41532 2006-12-08  Jim Meyering  <jim@meyering.net>
41533
41534         * build-aux/announce-gen ($VERSION): Don't use of $Revision...$.
41535         Instead, use Emacs' time-stamp write hook.  Note that the time is UTC.
41536
41537         * build-aux/announce-gen: Add two new options, both optional:
41538         --bootstrap-tools=TOOL_LIST
41539               a comma-separated list of tools, e.g.,
41540               autoconf,automake,bison,gnulib
41541         --gnulib-snapshot-date=DATE
41542               if gnulib is in the bootstrap tool list,
41543               then report this as the snapshot date.
41544               If not specified, use the current date/time.
41545               If you specify a date here, be sure it's UTC.
41546
41547 2006-12-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
41548
41549         * tests/test-argp-2.sh: Fix test to match actual output.
41550         (func_compare): Fix sed script to be portable.
41551
41552 2006-12-05  Paul Eggert  <eggert@cs.ucla.edu>
41553
41554         * lib/utimens.c (futimens) [HAVE_BUGGY_NFS_TIME_STAMPS]: Add a
41555         workaround for this case.  It is not autoconfigured now; offhand
41556         it's hard to see how to autoconfigure it.
41557
41558 2006-12-03  Paul Eggert  <eggert@cs.ucla.edu>
41559
41560         * lib/mkdir-p.c (make_dir_parents): Fix race condition when making
41561         a directory that is about to be chowned.  Such a directory's
41562         initial file permissions should permit the owner only and this
41563         should not be changed until after the chown, since the group and
41564         other bits would be incorrect if they granted permission before
41565         the chown.
41566
41567         Fix porting problem for iswctype reported by Georg Schwarz in:
41568         http://lists.gnu.org/archive/html/bug-coreutils/2006-12/msg00017.html
41569         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Require HAVE_ISWCTYPE, too.
41570         * lib/regex_internal.h (RE_ENABLE_I18N): Likewise.
41571         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for iswctype, too.
41572         * m4/regex.m4 (gl_PREREQ_REGEX): Likewise.
41573
41574 2006-12-03  Jim Meyering  <jim@meyering.net>
41575
41576         * lib/fts.c (fts_load): Don't set sp->fts_dev here, since
41577         p->fts_statp may not yet be defined.
41578         (fts_read): Instead, set it in the caller, once p->fts_statp is
41579         sure to be defined, and corresponds to a top-level directory.
41580         This bug made du -x fail.  Here's the coreutils test case:
41581         http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commit;h=ba45154d8e9f
41582         Reported by Mike Frysinger.
41583
41584 2006-12-01  Jim Meyering  <jim@meyering.net>
41585
41586         * modules/savewd (Depends-on): Add fcntl_h to avoid self-test
41587         build failure due to missing definition of HAVE_WORKING_O_NOFOLLOW.
41588         Reported by Simon Josefsson.
41589
41590 2006-11-30  Jim Meyering  <jim@meyering.net>
41591
41592         * m4/warning.m4: Use the all-permissive copyright notice
41593         recommended by RMS (rather than LGPL).
41594         * m4/vararrays.m4: Likewise.
41595         * m4/flexmember.m4: Likewise.
41596
41597 2006-11-29  Bruno Haible  <bruno@clisp.org>
41598
41599         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
41600         noinst_LIBRARIES. Augment noinst_LIBRARIES and noinst_LTLIBRARIES
41601         using +=.
41602         Reported by Simon Josefsson <simon@josefsson.org>.
41603
41604 2006-11-28  James Youngman <jay@gnu.org>
41605
41606         * README: Advise users that they might find the bug-gnulib@gnu.org
41607         and autotools-announce@gnu.org mailing lists useful.
41608
41609 2006-11-28  Bruno Haible  <bruno@clisp.org>
41610
41611         * m4/ptrdiff_max.m4: Remove file.
41612
41613 2006-11-21  Bruno Haible  <bruno@clisp.org>
41614
41615         * m4/eoverflow.m4 (gl_EOVERFLOW): Use AC_COMPUTE_INT instead of
41616         _AC_COMPUTE_INT.
41617         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
41618         * m4/ptrdiff_max.m4 (gl_PTRDIFF_MAX): Use AC_COMPUTE_INT instead of
41619         _AC_COMPUTE_INT.
41620         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
41621         * m4/size_max.m4 (gl_SIZE_MAX): Use AC_COMPUTE_INT instead of
41622         _AC_COMPUTE_INT.
41623         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
41624
41625 2006-11-28  Jim Meyering  <jim@meyering.net>
41626
41627         * lib/regcomp.c (parse_branch): Rename local, exp->expr, to avoid
41628         warning from "gcc -Wshadow" about shadowing the builtin.
41629
41630 2006-11-27  Bruno Haible  <bruno@clisp.org>
41631
41632         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): Use AC_COMPUTE_INT instead of
41633         _AC_COMPUTE_INT.
41634         (AC_COMPUTE_INT): Add fallback definition for autoconf < 2.61.
41635
41636 2006-11-27  Bruno Haible  <bruno@clisp.org>
41637             Paul Eggert  <eggert@cs.ucla.edu>
41638
41639         * lib/regex.h (__restrict_arr): Redo logic of #if, for clarity.
41640
41641 2006-11-26  Bruno Haible  <bruno@clisp.org>
41642
41643         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
41644         noinst_LTLIBRARIES.
41645
41646 2006-11-27  Paul Eggert  <eggert@cs.ucla.edu>
41647             Bruno Haible  <bruno@clisp.org>
41648
41649         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to 0
41650         if compiling with "gcc -ansi".
41651
41652 2006-11-26  Paul Eggert  <eggert@cs.ucla.edu>
41653
41654         Fix some incompatibilities with gcc -ansi -pedantic.
41655         * lib/regex.h (__restrict_arr): Don't use the [restrict] syntax
41656         if compiling pedantically with GCC, unless it's C99 or later.
41657         Don't trust sys/cdefs.h's definition of __restrict_arr, either, as
41658         it mishandles gcc -ansi -pedantic as well.
41659         * lib/regex_internal.h (re_token_t): Don't use enum bitfields
41660         if gcc -pedantic.
41661         * lib/regexec.c (check_node_accept_bytes): Don't use auto
41662         initializers for struct if -pedantic, unless it's C99 or later.
41663
41664 2006-11-25  Nix  <nix@esperi.org.uk>  (tiny change)
41665
41666         * m4/fcntl_h.m4 (gl_FCNTL_H): Test the atime, not the mtime.
41667         Don't close an fd more than once. Identical atimes indicate
41668         success, not failure.
41669
41670 2006-11-22  Robinson Mittmann <bob@hoplon.com>  (tiny change)
41671
41672         * lib/sincosl.c (kernel_sinl): Fix typo in threshold.
41673
41674 2006-11-23  Jim Meyering  <jim@meyering.net>
41675
41676         * build-aux/announce-gen: New file.  From coreutils.
41677
41678 2006-11-22  Jim Meyering  <jim@meyering.net>
41679
41680         Work around a compile-time error from the HP-UX 11.00 /bin/cc.
41681         * lib/fts.c (enum Fts_stat): Give this previously-anon enum a name.
41682         (fts_read): Use a temporary to narrow the overused st_size member
41683         before using it in a switch statement.  Reported by Matthew Woehlke.
41684
41685         * m4/clock_time.m4 (gl_CLOCK_TIME): Quote AC_SUBST argument.
41686         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Likewise.
41687
41688 2006-11-20  Bruno Haible  <bruno@clisp.org>
41689
41690         * gettext.m4 (AM_GNU_GETTEXT): Revert 2005-07-28 patch: Use
41691         changequote instead of pairs of brackets.
41692         Reported by Andreas Schwab <schwab@suse.de>.
41693
41694 2006-11-21  Jim Meyering  <jim@meyering.net>
41695
41696         * lib/fts.c (fts_safe_changedir): Move a declaration "up",
41697         so as to remain compatible with older compilers.
41698         Patch from Michael Deutschmann.
41699
41700 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
41701
41702         * MODULES.html.sh (File system functions): Add openat.
41703
41704         * lib/openat.h (rpl_fstatat): New macro, if
41705         [HAVE_OPENAT && ! LSTAT_FOLLOWS_SLASHED_SYMLINK.
41706         (fstatat): Define to rpl_fstatat under the same conditions,
41707         unless COMPILING_FSTATAT.
41708         * m4/openat.m4 (gl_FUNC_OPENAT): Compile fstatat.c too, if fstatat
41709         seems to have the bug.
41710         * lib/fstatat.c: New file.
41711         * modules/openat (Files): Add it.
41712
41713 2006-11-20  Bruno Haible  <bruno@clisp.org>
41714
41715         * Makefile: New file.
41716
41717 2006-11-20  Jim Meyering  <jim@meyering.net>
41718
41719         The beginnings of syntax-related checks for gnulib.
41720         * lib/Makefile: New file.
41721         * lib/t-idcache: New script.  Ensure that the two halves of
41722         idcache.c stay in sync.
41723
41724         * lib/idcache.c: Adjust comments in user- and group- portions to
41725         be more accurate, and to be consistent with one another.
41726
41727 2006-11-20  Jim Meyering  <jim@meyering.net>
41728
41729         * lib/idcache.c: Restore most of the 2006-11-06 patch, so as to
41730         continue using the flexible array member (thus, this module performs
41731         half as many malloc calls), with the addition that...
41732         (getgroup, getuser): Consistently record a non-match via an empty
41733         "name" string, and map an empty string match to a NULL return value.
41734         * modules/idcache (Depends-on): Re-add flexmember.
41735
41736         * lib/idcache.c (getuser): Remove all uses of the register keyword.
41737         (getuidbyname, getgroup, getgidbyname): Likewise.
41738
41739         Use cleaner syntax: NULL rather than 0.
41740         * lib/idcache.c (getuidbyname, getgidbyname): Return NULL, not 0.
41741
41742 2006-11-20  Paul Eggert  <eggert@cs.ucla.edu>
41743
41744         * lib/idcache.c: Undo most recent patch, dated 2006-11-06.
41745         It mishandled the case where the group was missing.
41746         Problem reported by Greg Schafer.
41747         * modules/idcache: Likewise.
41748
41749 2006-11-18  Jim Meyering  <jim@meyering.net>
41750
41751         * check-module (%exempt_header): Add exception for some
41752         conditionally-included headers.
41753
41754         * modules/i-ring (Depends-on): Add verify.
41755         (License): Change to LGPL.
41756
41757 2006-11-16  Paul Eggert  <eggert@cs.ucla.edu>
41758
41759         * modules/getaddinfo (Depends-on): Remove inttostr; add snprintf.
41760         * lib/getaddrinfo.c: Include snprintf.h rather than intprops.h
41761         and inttostr.h.  Use snprintf rather than uinttostr, so that
41762         LGPLed code doesn't depend on GPLed.
41763
41764 2006-11-17  Paul Eggert  <eggert@cs.ucla.edu>
41765
41766         * modules/inline (License): Change from GPL to LGPL.
41767
41768 2006-11-17  Jim Meyering  <jim@meyering.net>
41769
41770         * modules/d-type (License): Switch to LGPL.
41771
41772 2006-11-15  Bruno Haible  <bruno@clisp.org>
41773
41774         * m4/alloca.m4 (gl_FUNC_ALLOCA): Fix the AC_CACHE_CHECK message.
41775
41776 2006-11-15  Eric Blake  <ebb9@byu.net>
41777
41778         * m4/allocsa.m4 (gl_ALLOCSA): Don't invoke macro already picked up by
41779         the module dependency.
41780
41781 2006-11-15  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
41782             Bruno Haible  <bruno@clisp.org>
41783
41784         * gnulib-tool (func_create_testdir): Add license consistency check.
41785
41786 2006-11-15  Eric Blake  <ebb9@byu.net>
41787
41788         * m4/alloca.m4 (gl_FUNC_ALLOCA): Use AC_CACHE_CHECK to avoid a
41789         random "(cached)" in configure output.
41790
41791 2006-11-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
41792
41793         * m4/inttypes.m4 (gl_INTTYPES_H): Use AC_CACHE_CHECK so that the
41794         test for conforming inttypes.h is both announced and cached.
41795
41796         * MODULES.html.sh (seen_modules, seen_files): New variables.
41797         (func_module): Rewrite to use a few less gnulib-tool and sed
41798         invocations.  Avoid a couple of quadratic algorithms for ...
41799         (missed_modules, missed_files): ... these, with ...
41800         (func_append, func_tmpdir): ... these new functions, from
41801         gnulib-tool.  Analogously, install traps for cleanup.
41802
41803         * tests/test-gc.c (main): Remove unused variables.
41804         * tests/test-read-file.c: Include stdlib.h, for 'free'.
41805
41806 2006-11-14  Paul Eggert  <eggert@cs.ucla.edu>
41807
41808         * modules/inttostr (License): Change to LGPL.
41809
41810 2006-11-14  Eric Blake  <ebb9@byu.net>
41811
41812         * modules/tempname (License): Change to LGPL.
41813
41814 2006-11-14  Eric Blake  <ebb9@byu.net>
41815
41816         * doc/functions.texi (Function Portability): *printf functions on
41817         Cygwin now understand all POSIX size specifiers.
41818
41819 2006-11-14  Bruno Haible  <bruno@clisp.org>
41820
41821         * modules/c-ctype (License): Change to LGPL.
41822
41823 2006-11-12  Bruno Haible  <bruno@clisp.org>
41824
41825         * m4/lib-link.m4 (AC_LIB_LINKFLAGS, AC_LIB_HAVE_LINKFLAGS,
41826         AC_LIB_LINKFLAGS_BODY): Also set a LIB${NAME}_PREFIX variable. Needed
41827         for GNOME libraries, for which the include files are installed in
41828         subdirectories of $prefix/include.
41829
41830 2006-11-12  Bruno Haible  <bruno@clisp.org>
41831
41832         * m4/lib-link.m4: Require at least autoconf-2.54.
41833         (AC_LIB_LINKFLAGS_BODY) [autoconf < 2.61]: Turn dots into the library
41834         name to underscores for the --with option.
41835
41836 2006-11-13  Bruno Haible  <bruno@clisp.org>
41837
41838         * gnulib-tool (func_create_testdir): Set gl_source_base correctly in
41839         the tests directory.
41840         Reported by Ralf Wildenhues.
41841
41842 2006-11-13  Bruno Haible  <bruno@clisp.org>
41843
41844         * gnulib-tool (func_emit_initmacro_start): Also override AC_LIBSOURCES.
41845         (func_emit_initmacro_end): Undo the override here.
41846         (func_emit_initmacro_done): Emit a definition for gl_LIBSOURCES.
41847         Works around the famous automake error in coreutils.
41848
41849 2006-11-13  Eric Blake  <ebb9@byu.net>
41850
41851         * lib/gl_anytree_oset.h (gl_tree_search_atleast): Return the
41852         element, not its node.
41853
41854 2006-11-12  Bruno Haible  <bruno@clisp.org>
41855
41856         * gnulib-tool (func_emit_lib_Makefile_am): Replace occurrences of
41857         '$(top_srcdir)/build-aux/', taking into account the real auxdir.
41858
41859 2006-11-12  Bruno Haible  <bruno@clisp.org>
41860
41861         * gnulib-tool: New option --local-symlink.
41862         (func_usage): Document it.
41863         (lsymbolic): New variable.
41864         (func_import, func_create_testdir): If --symlink was not specified,
41865         test whether --local-symlink was specified and the file comes from
41866         the local_gnulib_dir.
41867
41868 2006-11-12  Bruno Haible  <bruno@clisp.org>
41869
41870         * gnulib-tool (func_ln): New function.
41871         (func_ln_if_changed, func_create_testdir): Use it instead of "ln -s".
41872
41873 2006-11-12  Bruno Haible  <bruno@clisp.org>
41874
41875         Finish support for source files in subdirectories.
41876         * gnulib-tool (func_emit_lib_Makefile_am): If some of the source files
41877         are in subdirectories, set uses_subdirs and add 'subdir-objects' to
41878         AUTOMAKE_OPTIONS.
41879         (func_import, func_create_testdir): Invoke AM_PROG_CC_C_O in this case.
41880
41881 2006-11-12  Bruno Haible  <bruno@clisp.org>
41882
41883         * gnulib-tool (func_get_automake_snippet): Synthesize also an
41884         EXTRA_lib_SOURCES augmentation.
41885         (func_emit_lib_Makefile_am): Initialize EXTRA_lib..._SOURCES to empty.
41886
41887 2006-11-12  Jim Meyering  <jim@meyering.net>
41888
41889         Make fts (in FTS_CWDFD mode) more efficient by caching a few open
41890         file descriptors.  This also averts a failure on systems with
41891         native openat support when a traversed directory lacks "x" access.
41892         * lib/fts_.h: Include "i-ring.h"
41893         (struct FTS) [fts_fd_ring]: New member.
41894         * lib/fts.c (RESTORE_INITIAL_CWD): Also call fd_ring_clear.
41895         (FCHDIR): Add parentheses.
41896         (fd_ring_check, fd_ring_print) [!FTS_DEBUG]: Define away.
41897         (cwd_advance_fd): Add a 3rd parameter.  Adjust all callers.
41898         When descending, rather than simply closing the previous
41899         fts_cwd_fd value, push that file descriptor onto the ring.
41900         (same_fd, fd_ring_print, fd_ring_check) [FTS_DEBUG]: New functions.
41901         (fts_open): Initialize the new fd_ring member.
41902         (fts_close): Clear the ring.
41903         (fts_safe_changedir): When possible, use our new fd_ring to skip
41904         the diropen and fstat and dev/ino comparison that would normally
41905         accompany a virtual `chdir ("..")'.
41906
41907         * modules/fts (Depends-on): Add i-ring.
41908         * modules/i-ring: New module.
41909         * lib/i-ring.c, lib/i-ring.h, lib/i-ring-test.c: New files.
41910         * m4/i-ring.m4: New file.
41911
41912 2006-11-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
41913
41914         * gnulib-tool (func_create_testdir): Fix replacement of
41915         `build-aux' in configure.ac.  Run autotools in gltests
41916         subdirectory.
41917         (func_create_testdir, func_create_megatestdir, test): There is
41918         no need for '--force' in most autotool invocations in a new
41919         tree.  Actually fail the whole test if any of the tools, or the
41920         configure or make stages fail.
41921
41922         Sync from Automake.
41923         * build-aux/gnupload: Revert last change.  Add pointer to upload
41924         instructions of the GNU Maintenance Instructions.
41925         Suggestion by Karl Berry.
41926
41927 2006-11-10  Jim Meyering  <jim@meyering.net>
41928
41929         * lib/fts.c [FTS_DEBUG]: Don't try to print a pointer via %s.
41930
41931 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
41932
41933         * lib/gettext.h (dgettext, dcgettext, ngettext) [! ENABLE_NLS]:
41934         (dngettext, dcngettext, bindtextdomain) [! ENABLE_NLS]:
41935         (bind_textdomain_codeset) [! ENABLE_NLS]:
41936         Evaluate all the arguments.  That way, callers get compatible behavior
41937         if the arguments have side effects.  Also, it avoids some GCC
41938         diagnostics in some cases; Joel E. Denny reported problems when Bison
41939         was configured with --enable-gcc-warnigs.
41940
41941 2006-11-10  Jim Meyering  <jim@meyering.net>
41942
41943         * m4/inline.m4 (gl_INLINE): Check with the compiler, not cpp, so that
41944         relevant options in CFLAGS (like -O, -fno-inline) are taken into
41945         account.
41946
41947 2006-11-10  Jim Meyering  <jim@meyering.net>
41948
41949         * modules/inline: New file/module.
41950         * modules/xalloc (Files): Remove m4/inline.m4.
41951         (Depends-on): Add inline, instead.
41952         * modules/oset: Likewise.
41953         * modules/list: Likewise.
41954
41955 2006-11-09  Paul Eggert  <eggert@cs.ucla.edu>
41956
41957         * lib/stdint_.h (uintmax_t): Fix typo: int64_t -> uint64_t.
41958         Problem reported by Matthew Woehlke.
41959
41960 2006-11-09  Bruno Haible  <bruno@clisp.org>
41961
41962         * lib/tempname.c (gen_tempname): Remove variant that invokes
41963         __gen_tempname.
41964         * m4/tempname.m4 (gl_FUNC_GEN_TEMPNAME): Don't test for
41965         __gen_tempname.
41966
41967 2006-11-08  Bruno Haible  <bruno@clisp.org>
41968
41969         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Set ac_cv_type_long_long_int
41970         to 'yes' instead of 'cross-compiling'.
41971
41972 2006-11-08  Paul Eggert  <eggert@cs.ucla.edu>
41973
41974         * lib/quotearg.h (quotearg_free): New decl.
41975         * lib/quotearg.c (quotearg_free): New function.
41976         (slot0, nslots, slotvec0, slotvec):
41977         Now file-scope so that quotearg_free can get at them.
41978
41979 2006-11-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
41980
41981         Sync from Automake.
41982         * build-aux/gnupload: Add missing 'gnu' to example URL.
41983         Report by Karl Berry.
41984
41985 2006-11-08  Bruno Haible  <bruno@clisp.org>
41986
41987         * m4/inline.m4 (gl_INLINE): Also test __NO_INLINE__.
41988         Suggested by Paul Eggert.
41989
41990 2006-11-08  Jim Meyering  <jim@meyering.net>
41991
41992         * lib/fts.c [!_LGPL_PACKAGE]: Don't include fcntl--.h twice.
41993         It's already included if !_LIBC.
41994         (fts_safe_changedir): Add a comment.
41995
41996 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
41997
41998         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Detect bug in
41999         Tandem NonStop Kernel (OSS) cc -O circa 2004, reported by
42000         Matthew Woehlke.
42001
42002         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Move
42003         definitions up, to avoid colliding with change below.
42004         (static_inline) [HAVE_INLINE]: New macro.
42005         (xnmalloc, xnrealloc, x2nrealloc, xcharalloc):
42006         Provide extern decls when !HAVE_INLINE.  Do not define unless
42007         static_inline is defined, either by us or by xmalloc.c.  Use
42008         static_inline rather than static inline.
42009         (XCALLOC): Optimize sizeof(T) = 1 case.
42010         * lib/xmalloc.c (static_inline) [!HAVE_INLINE]: New macro.
42011
42012 2006-11-07  Bruno Haible  <bruno@clisp.org>
42013
42014         * lib/xalloc.h (XNMALLOC): Restore optimization of sizeof(T) = 1 case.
42015         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require gl_INLINE instead of
42016         AC_C_INLINE.
42017         * modules/xalloc (Files): Add m4/inline.m4.
42018
42019 2006-11-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
42020
42021         * README: Fix typo.
42022         * doc/gnulib.texi (Miscellaneous Notes): Likewise, rename...
42023         (Miscellanous Notes): ...from this.
42024
42025 2006-11-07  Paul Eggert  <eggert@cs.ucla.edu>
42026
42027         * m4/flexmember.m4 (AC_C_FLEXIBLE_ARRAY_MEMBER):
42028         Mention that offsetof should be used instead of sizeof.
42029         From Bruno Haible.
42030
42031 2006-11-07  Bruno Haible  <bruno@clisp.org>
42032
42033         * lib/w32spawn.h (prepare_spawn): Use XNMALLOC instead of xmalloc.
42034
42035 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
42036
42037         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
42038         * lib/gl_anyavltree_list2.h (create_subtree_with_contents):
42039         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
42040         (gl_tree_add_before, gl_tree_add_after):
42041         Use XMALLOC instead of xmalloc, and XCALLOC instead of xzalloc.
42042         * lib/gl_anyhash_list2.h (hash_resize): Likewise.
42043         * lib/gl_anylinked_list2.h (gl_linked_create_empty, gl_linked_create):
42044         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before):
42045         (gl_linked_add_after, gl_linked_add_at): Likewise.
42046         * lib/gl_anyrbtree_list2.h (create_subtree_with_contents):
42047         (gl_tree_create, gl_tree_add_first, gl_tree_add_last):
42048         (gl_tree_add_before, gl_tree_add_after): Likewise.
42049         * lib/gl_anytree_list2.h (gl_tree_create_empty): Likewise.
42050         * lib/gl_anytree_oset.h (gl_tree_create_empty): Likewise.
42051         * lib/gl_anytreehash_list1.h (add_to_bucket): Likewise.
42052
42053 2006-11-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
42054
42055         * lib/gl_oset.h: Use C comment style, not C++ comment style.
42056
42057 2006-11-06  Bruno Haible  <bruno@clisp.org>
42058
42059         * m4/inline.m4: New file.
42060         * m4/gl_list.m4 (gl_LIST): Require gl_INLINE.
42061         * modules/list (Files): Add m4/inline.m4.
42062         * modules/oset (Files): Likewise.
42063
42064 2006-11-06  Paul Eggert  <eggert@cs.ucla.edu>
42065
42066         * lib/idcache.c: Include <stddef.h>, for offsetof.
42067         (struct userid.name): Change from char * to a flexible array member.
42068         All uses changed.
42069         * modules/idcache (Depends-on): Add flexmember.
42070
42071         * MODULES.html.sh (Core language properties): New module flexmember.
42072         * modules/flexmember, m4/flexmember.m4: New files.
42073
42074         * lib/xalloc.h (xnmalloc, xnrealloc, x2nrealloc): Now static
42075         inline functions that are identical with the old xnmalloc_inline,
42076         xnrealloc_inline, x2nrealloc_inline of lib/xmalloc.c.  This is so
42077         that we can avoid some unnecessary integer multiplications and
42078         divisions in the common case where the element size is known at
42079         compile time.
42080         (XNMALLOC) [HAVE_INLINE]: Remove special case, which is no longer
42081         needed.
42082         (xnboundedmalloc): Remove.
42083         (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): Use lower-case letters for
42084         arguments, for consistency with rest of this header.
42085         (xcharalloc): Rewrite using XNMALLOC.
42086         * lib/xmalloc.c (xnmalloc_inline, xnmalloc, xnrealloc_inline):
42087         (xnrealloc, x2nrealloc_inline, x2nrealloc): Remove.  The *_inline
42088         versions have been moved to lib/xalloc.h and renamed to be the
42089         non-*_inline versions.
42090         (xmalloc, xrealloc): Implement without reference to the xnmalloc
42091         and xnrealloc functions, since those functions are now inline and
42092         now call us.
42093         (x2realloc): Invoke x2realloc, not x2realloc_inline, to accommodate
42094         renaming described above.
42095         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Remove AC_C_INLINE since
42096         xmalloc.c no longer uses inline directly.  gl_PREREQ_XALLOC now
42097         captures the dependency in AC_C_INLINE.
42098
42099         New module canonicalize-lgpl, proposed by Charles Wilson in
42100         <http://lists.gnu.org/archive/html/bug-gnulib/2006-11/msg00020.html>
42101         with a few small changes afterwards.
42102         * MODULES.html.sh (File system functions): New module
42103         canonicalize-lgpl.
42104         * lib/canonicalize.h: Add comments for canonicalize_filename_mode
42105         and canonicalize_file_name.
42106         * lib/canonicalize-lgpl.c, m4/canonicalize-lgpl.m4:
42107         * modules/canonicalize-lgpl: New files.
42108
42109 2006-11-05  Bruno Haible  <bruno@clisp.org>
42110
42111         * gnulib-tool (func_import, func_create_testdir): Create directories
42112         also for files in subdirectories of lib/.
42113
42114 2006-11-05  Bruno Haible  <bruno@clisp.org>
42115
42116         * lib/gl_array_list.c (gl_array_iterator_next): Make pointer decrement
42117         ANSI C compliant.
42118
42119 2006-11-03  Bruno Haible  <bruno@clisp.org>
42120
42121         Simplify xmalloc expressions. Add overflow check in xmalloc arguments.
42122         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Require AC_C_INLINE.
42123         * lib/xalloc.h (XMALLOC, XNMALLOC, XZALLOC, XCALLOC): New macros.
42124         (xnboundedmalloc): New inline function.
42125         * lib/classpath.c (new_classpath): Use XNMALLOC instead of xmalloc.
42126         * lib/clean-temp.c (create_temp_dir): Use XNMALLOC, XMALLOC instead of
42127         xmalloc.
42128         * lib/concatpath.c (concatenated_pathname): Use XNMALLOC instead of
42129         xmalloc.
42130         * lib/fatal-signal.c (at_fatal_signal): Use XNMALLOC instead of xmalloc.
42131         * lib/findprog.c (find_in_path): Use XNMALLOC instead of xmalloc.
42132         * lib/gl_array_list.c (gl_array_create_empty): Use XMALLOC instead of
42133         xmalloc.
42134         (gl_array_create): Use XNMALLOC, XMALLOC instead of xmalloc.
42135         * lib/gl_array_oset.c (gl_array_create_empty): Use XNMALLOC instead of
42136         xmalloc.
42137         * lib/gl_avltree_oset.c (gl_tree_add_first, gl_tree_add_before,
42138         gl_tree_add_after): Use XMALLOC instead of xmalloc.
42139         * lib/gl_carray_list.c (gl_carray_create_empty): Use XMALLOC instead of
42140         xmalloc.
42141         (gl_carray_create): Use XNMALLOC, XMALLOC instead of xmalloc.
42142         * lib/gl_rbtree_oset.c (gl_tree_add_first, gl_tree_add_before,
42143         gl_tree_add_after): Use XMALLOC instead of xmalloc.
42144         * lib/gl_sublist.c (gl_sublist_create): Use XMALLOC instead of xmalloc.
42145         * lib/pagealign_alloc.c (new_memnode): Use XMALLOC instead of xmalloc.
42146         * lib/sh-quote.c (shell_quote_argv): Use XNMALLOC instead of xmalloc.
42147         * lib/xvasprintf.c (xstrcat): Use XNMALLOC instead of xmalloc.
42148
42149 2006-11-03  Bruno Haible  <bruno@clisp.org>
42150
42151         * lib/c-ctype.h [C++]: Define functions without name mangling.
42152         * lib/fwriteerror.h [C++]: Likewise.
42153         * lib/gcd.h [C++]: Likewise.
42154         * lib/linebreak.h [C++]: Likewise.
42155
42156 2006-11-03  Paul Eggert  <eggert@cs.ucla.edu>
42157
42158         * lib/canonicalize.h: (canonicalize_mode_t, CAN_EXISTING):
42159         (CAN_ALL_BUT_LAST, CAN_MISSING, canonicalize_filename_mode):
42160         Define only if PROVIDE_CANONICALIZE_FILENAME_MODE is defined.
42161         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
42162         Check for functions and headers just once.
42163         Check for declaration of canonicalize_file_name.
42164         Define PROVIDE_CANONICALIZE_FILENAME_MODE.
42165
42166 2006-11-02  Charles Wilson  <cygwin@cwilson.fastmail.fm>
42167
42168         * gnulib-tool (func_import): Fix typo in actioncmd.
42169
42170 2006-11-02  Bruno Haible  <bruno@clisp.org>
42171
42172         * gnulib-tool (func_get_automake_snippet): Interpret a backslash-
42173         newline sequence in the Makefile.am snippet as a space, like "make"
42174         does.
42175         Reported by Roger Persson <perrog@gmail.com>.
42176
42177 2006-11-01  Bruno Haible  <bruno@clisp.org>
42178
42179         * m4/strcase.m4 (gl_FUNC_STRNCASECMP): Check whether strncasecmp is
42180         already declared in <string.h>.
42181         * lib/strcase.h (strncasecmp): Don't declare it if yes.
42182
42183 2006-11-01  Bruno Haible  <bruno@clisp.org>
42184
42185         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Don't define strcasecmp here.
42186         * lib/strcase.h: Include <string.h>.
42187         (strcasecmp): Define to rpl_strcasecmp here.
42188
42189 2006-11-01  Bruno Haible  <bruno@clisp.org>
42190
42191         * lib/printf-parse.c (PRINTF_PARSE): Cast malloc/realloc results.
42192
42193 2006-11-01  Eric Blake  <ebb9@byu.net>
42194
42195         * lib/mkstemp-safer.c (mkstemp_safer): Allow C++ compilation.
42196
42197         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Allow C++ configuration.
42198
42199 2006-10-29  Bruno Haible  <bruno@clisp.org>
42200
42201         Make it compile in C++ mode.
42202         * lib/full-write.c (full_rw): Add a cast.
42203
42204 2006-11-01  Bruno Haible  <bruno@clisp.org>
42205
42206         * gnulib-tool (func_get_automake_snippet): Change sed_combine_lines to
42207         be POSIX compliant.
42208         Reported by Roger Persson <perrog@gmail.com>.
42209
42210 2006-11-01  Eric Blake  <ebb9@byu.net>
42211
42212         * lib/getopt_.h: Fix comments.
42213
42214 2006-10-31  Eric Blake  <ebb9@byu.net>
42215
42216         * modules/tmpdir (Depends-on): Add sys_stat.
42217         * modules/mkdtemp (Depends-on): Add tempname, drop unistd.
42218         * lib/mkdtemp.c (gen_tempname): Remove; tempname covers this.
42219         * lib/tmpdir.c (S_ISDIR): Simplify, thanks to sys_stat.
42220         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Simplify, thanks to
42221         tempname.
42222
42223 2006-10-31  Paul Eggert  <eggert@cs.ucla.edu>
42224
42225         Avoid some C++ diagnostics reported by Bruno Haible.
42226         * lib/quotearg.c (clone_quoting_options): Use xmemdup rather than
42227         xmalloc.
42228         (quotearg_alloc): Use xcharalloc rather than xmalloc.
42229         (struct slotvec): Move to top level.
42230         (quotearg_n_options): Rewrite to avoid xmalloc.
42231         * lib/xalloc.h (xcharalloc): New function.
42232         * (xrealloc, xnrealloc, x2realloc, x2nrealloc, xmemdup):
42233         [defined __cplusplus]: Add function template that provides result
42234         type propagation.  This part of the change is from Bruno Haible.
42235
42236 2006-10-29  Bruno Haible  <bruno@clisp.org>
42237
42238         Make it compile in C++ mode.
42239         * lib/striconv.c (mem_cd_iconv): Cast malloc/realloc result.
42240         * lib/strnlen1.c (strnlen1): Cast memchr result.
42241         * lib/mbchar.h (mb_copy): Rename arguments to 'new_mbc', 'old_mbc'.
42242         * lib/clean-temp.c (string_equals, string_hash): Add casts.
42243         (create_temp_dir): Rename local variable 'template'.
42244         (compile_csharp_using_sscli): Add cast.
42245         * lib/fatal-signal.c (at_fatal_signal): Cast xmalloc result.
42246         * lib/findprog.c (find_in_path): Likewise.
42247         * lib/linebreak.c (mbs_width_linebreaks): Cast malloc result.
42248         * lib/wait-process.c (register_slave_subprocess): Likewise.
42249
42250 2006-10-22  Bruno Haible  <bruno@clisp.org>
42251
42252         * modules/tsearch: New file.
42253         * lib/tsearch.h: New file.
42254         * lib/tsearch.c: New file, from glibc-2.5 with small modifications.
42255         * m4/tsearch.m4: New file.
42256         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add tsearch.
42257
42258 2006-10-29  Eric Blake  <ebb9@byu.net>
42259
42260         * lib/arcfour.c: Assume config.h.
42261         * lib/arctwo.c: Likewise.
42262         * lib/base64.c: Likewise.
42263         * lib/check-version.c: Likewise.
42264         * lib/crc.c: Likewise.
42265         * lib/des.c: Likewise.
42266         * lib/gc-gnulib.c: Likewise.
42267         * lib/gc-libgcrypt.c: Likewise.
42268         * lib/gc-pbkdf2-sha1.c: Likewise.
42269         * lib/getaddrinfo.c: Likewise.
42270         * lib/getdelim.c: Likewise.
42271         * lib/getline.c: Likewise.
42272         * lib/hmac-md5.c: Likewise.
42273         * lib/hmac-sha1.c: Likewise.
42274         * lib/iconvme.c: Likewise.
42275         * lib/md2.c: Likewise.
42276         * lib/md4.c: Likewise.
42277         * lib/memxor.c: Likewise.
42278         * lib/read-file.c: Likewise.
42279         * lib/readline.c: Likewise.
42280         * lib/rijndael-alg-fst.c: Likewise.
42281         * lib/rijndael-api-fst.c: Likewise.
42282         * lib/xgetdomainname.c: Likewise.
42283
42284 2006-10-28  Eric Blake  <ebb9@byu.net>
42285
42286         * lib/xstrndup.c: Assume config.h.
42287
42288 2006-10-27  Paul Eggert  <eggert@cs.ucla.edu>
42289
42290         Move stat.h-substitute stuff from lib/stat-macros.h to lib/stat_.h.
42291         stat-macros.h is now for our own macros, whereas stat_h is for
42292         macros in the <sys/stat.h> name space.
42293         * lib/stat-macros.h: Remove copyright notice, as this file is now tiny.
42294         (STAT_MACROS_H): Remove.
42295         (S_IFMT, S_ISBLK, S_ISCHR, S_ISDIR, S_ISFIFO, S_ISLNK, S_ISNAM):
42296         (S_ISMPB, S_ISMPC, S_ISNWK, S_ISREG, S_ISSOCK, S_ISDOOR, S_ISPORT):
42297         (S_TYPEISMQ, S_TYPEISTMO, S_TYPEISSEM, S_TYPEISSHM, S_ISCTG, S_ISOFD):
42298         (S_ISOFL, S_ISWHT, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IRGRP):
42299         (S_IROTH, S_IWUSR, S_IWGRP, S_IWOTH, S_IXUSR, S_IXGRP, S_IXOTH):
42300         (S_IRWXU, S_IRWXG, S_IRWXO, S_IXUGO, S_IRWXUGO):
42301         Move these macros to ...
42302         * lib/stat_.h: here.  Don't include stat-macros.h.
42303         * lib/canonicalize.c: Don't include stat-macros.h.
42304         * lib/chown.c: Likewise.
42305         * lib/euidaccess.c: Likewise.
42306         * lib/file-type.c: Likewise.
42307         * lib/filemode.c: Likewise.
42308         * lib/glob.c: Likewise.
42309         * lib/isapipe.c: Likewise.
42310         * lib/lchown.c: Likewise.
42311         * lib/lstat.c: Likewise.
42312         * lib/mkdir-p.c: Likewise.
42313         * lib/rmdir.c: Likewise.
42314         * m4/lchown.m4 (gl_FUNC_LCHOWN): Don't require gl_STAT_MACROS.
42315         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Don't check for io.h
42316         unless mkdir isn't declared, to speed up 'configure'.
42317         Always create sys/stat.h, since it's unlikely any real sys/stat.h
42318         would define all the S_* symbols.
42319         * modules/canonicalize (Depends-on):
42320         Depend on sys_stat, not stat-macros.
42321         * modules/chown: Likewise.
42322         * modules/euidaccess: Likewise.
42323         * modules/filemode: Likewise.
42324         * modules/file-type: Likewise.
42325         * modules/glob: Likewise.
42326         * modules/isapipe: Likewise.
42327         * modules/lchown: Likewise.
42328         * modules/lstat: Likewise.
42329         * modules/mkancesdirs: Likewise.
42330         * modules/rmdir: Likewise.
42331         * modules/mkdir-p (Depends-on): Also depend on sys_stat.
42332         * modules/modechange: Likewise.
42333         * modules/stat-macros (Files): Remove m4/stat-macros.m4.
42334         (configure.ac): Remove gl_STAT_MACROS.
42335         * modules/sys_stat (Depends-on): Remove stat-macros.
42336
42337 2006-10-27  Bruno Haible  <bruno@clisp.org>
42338
42339         * m4/signed.m4: Remove file.
42340         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS_: Remove bh_C_SIGNED
42341         invocation.
42342         * modules/vasnprintf (Files): Remove m4/signed.m4.
42343
42344 2006-10-27  Bruno Haible  <bruno@clisp.org>
42345
42346         Update to GNU gettext 0.16.
42347         * modules/gettext (Files): Add m4/intl.m4, m4/intldir.m4. Remove
42348         m4/inttypes-h.m4, m4/signed.m4.
42349         * m4/gettext.m4: Update to GNU gettext 0.16.
42350         * m4/intl.m4: New file, from GNU gettext.
42351         * m4/intldir.m4: New file, from GNU gettext.
42352         * config/srclist.txt: Update
42353
42354 2006-10-27  Eric Blake  <ebb9@byu.net>
42355
42356         * MODULES.html.sh: Document tempname.
42357         * modules/mkstemp (Depends-on): Add tempname, and drop transitive
42358         dependencies.
42359         (Files): Move lib/tempname.c...
42360         * modules/tempname: ...to this new module.
42361         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Remove tempname checks.
42362         (gl_PREREQ_TEMPNAME): Move...
42363         * m4/tempname.m4: ...to this new file.
42364         * lib/mkstemp.c (includes) [!_LIBC]: Use tempname.h.
42365         * modules/sys_stat (Depends-on): Add stat-macros.
42366         * lib/stat_.h (includes): Pick up stat macros.
42367         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Replace <sys/stat.h>
42368         if stat macros are broken.
42369         * lib/tempname.c (includes): No need to include "stat-macros.h".
42370         (__gen_tempname) [!_LIBC]: Expose as gen_tempname.
42371         (direxists, __path_search) [!_LIBC]: Don't compile these in
42372         gnulib; the tmpdir module covers that.
42373         * lib/tempname.h: New file.
42374
42375 2006-10-26  Paul Eggert  <eggert@cs.ucla.edu>
42376
42377         * COPYING: Explain how gnulib-tool converts licence headers.
42378         Almost all wording by Eric Blake.
42379
42380 2006-10-25  Paul Eggert  <eggert@cs.ucla.edu>
42381
42382         * lib/mbchar.h (is_basic_table): Make read-only.
42383         * lib/mbchar.c (is_basic_table): Likewise.
42384         Reported by John Darrington.
42385
42386 2006-10-25  Bruno Haible  <bruno@clisp.org>
42387
42388         * lib/progname.h (set_program_name): Undefine before defining.
42389
42390 2006-10-25  Bruno Haible  <bruno@clisp.org>
42391
42392         * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS): Define to
42393         false for non-gcc C++ compilers.
42394         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
42395
42396 2006-10-24  Bruno Haible  <bruno@clisp.org>
42397
42398         * lib/striconv.c (mem_cd_iconv, str_cd_iconv): Treat all non-GNU
42399         iconv implementations like Irix iconv.
42400
42401 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
42402
42403         * modules/vararrays: New file.
42404         * m4/vararrays.m4: New file, taken from diffutils.
42405         * MODULES.html.sh: New module vararrays.
42406
42407 2006-10-24  Karl Berry  <karl@gnu.org>
42408
42409         * doc/gnulib-intro.texi: --- instead of --; non-naive naive.
42410         Don't call GNU Unix.
42411
42412 2006-10-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
42413
42414         * users.txt: Add Libtool.
42415
42416         Sync from Libtool:
42417
42418         2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
42419
42420         * lib/argz.c: Remove check for HAVE_CONFIG_H, to conform
42421         to gnulib's policy of including config.h unconditionally.
42422
42423 2006-10-24  Bruno Haible  <bruno@clisp.org>
42424
42425         * modules/wcwidth (Files): Add m4/wint_t.m4.
42426         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Require gt_TYPE_WINT_T.
42427         * lib/wcwidth.h (iswprint): Use 'int' if 'wint_t' is not defined.
42428
42429 2006-10-24  Paul Eggert  <eggert@cs.ucla.edu>
42430
42431         * lib/getdate.y (yyerror): Make the arguments pointer-to-const,
42432         to pacify GCC with some -W flags enabled.  Problem reported by
42433         Bruno Haible.
42434
42435 2006-10-24  Jim Meyering  <jim@meyering.net>
42436
42437         * MODULES.html.sh: Remove uinttostr.  It's not a module.
42438         Reported by Karl Berry.
42439
42440 2006-10-23  Bruno Haible  <bruno@clisp.org>
42441
42442         * lib/fts.c (fts_build): Move variable declaration, for C89 compliance.
42443
42444 2006-10-24  Bruno Haible  <bruno@clisp.org>
42445
42446         * lib/gl_list.h: Use C comment style, not C++ comment style.
42447
42448 2006-10-23  Eric Blake  <ebb9@byu.net>
42449
42450         * lib/getaddrinfo.c (includes): Add missing include.
42451
42452 2006-10-23  Bruno Haible  <bruno@clisp.org>
42453             Paul Eggert  <eggert@cs.ucla.edu>
42454
42455         Ability to rename obstack_free.
42456         * lib/obstack.h (__obstack_free): New macro. Declare instead of
42457         obstack_free.
42458         (obstack_free): Invoke the __obstack_free macro.
42459         * lib/obstack.c (obstack_free): Use __obstack_free macro.
42460
42461 2006-10-23  Bruno Haible  <bruno@clisp.org>
42462             Paul Eggert  <eggert@cs.ucla.edu>
42463
42464         * lib/argp.h (argp_parse, __argp_parse): Comment out the identifiers
42465         __argc, __argv from the declaration. (They are defined as macros on
42466         mingw.)
42467
42468 2006-10-22  Bruno Haible  <bruno@clisp.org>
42469
42470         * doc/gnulib-intro.texi: New file.
42471         * doc/gnulib.texi: Include it.
42472
42473 2006-10-21  Bruno Haible  <bruno@clisp.org>
42474
42475         * doc/gnulib.texi: Split the chapter "Gnulib" into 3 chapters
42476         "Introduction", "Miscellanous Notes", "Particular Modules".
42477
42478 2006-10-21  Bruno Haible  <bruno@clisp.org>
42479
42480         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
42481         Change mostlyclean-local rule to avoid sh syntax error from bash
42482         versions 2.00..2.05 when $(MOSTLYCLEANDIRS) is empty.
42483
42484 2006-10-23  Jim Meyering  <jim@meyering.net>
42485
42486         * lib/getaddrinfo.c (getnameinfo): Use new lightweight uinttostr,
42487         in place of snprintf.
42488
42489         * modules/inttostr (Files): Add lib/uinttostr.c.
42490         * lib/uinttostr.c (inttostr): New file/function.
42491         * lib/inttostr.h (uinttostr): Declare.
42492         * m4/inttostr.m4: Add AC_LIBOBJ([uinttostr]).
42493         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
42494         Add uinttostr.
42495         * modules/getaddrinfo (Depends-on): Remove snprintf.  Add inttostr.
42496
42497 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
42498
42499         * lib/canonicalize.c (ELOOP): Define if not already defined.
42500         Problem reported by Bruno Haible in
42501         <http://lists.gnu.org/archive/html/bug-gnulib/2006-10/msg00282.html>.
42502
42503 2006-10-21  Paul Eggert  <eggert@cs.ucla.edu>
42504
42505         * lib/stdint_.h [defined _AIX]: Don't include <sys/types.h>.
42506         Problem reported by Perry Smith and Ville Laurikari.
42507
42508         * lib/getndelim2.c (SSIZE_MAX): Use same defn that getdelim.c
42509         uses.
42510
42511 2006-10-19  Bruno Haible  <bruno@clisp.org>
42512
42513         * lib/getndelim2.c (SSIZE_MAX): Provide fallback definition. Needed
42514         for mingw.
42515
42516 2006-10-19  Bruno Haible  <bruno@clisp.org>
42517
42518         * lib/openat-priv.h (EOPNOTSUPP): Provide fallback definition.
42519         Needed for mingw.
42520
42521 2006-10-19  Bruno Haible  <bruno@clisp.org>
42522
42523         * m4/size_max.m4 (gl_SIZE_MAX): Cache the result.
42524
42525 2006-10-19  Bruno Haible  <bruno@clisp.org>
42526
42527         * m4/allocsa.m4 (gl_ALLOCSA): Invoke gl_FUNC_ALLOCA, don't AC_REQUIRE
42528         it.
42529
42530 2006-10-19  Bruno Haible  <bruno@clisp.org>
42531
42532         * m4/alloca.m4 (gl_FUNC_ALLOCA): Cache the result of the AC_EGREP_CPP
42533         invocation.
42534
42535 2006-10-19  Bruno Haible  <bruno@clisp.org>
42536
42537         * gnulib-tool (func_create_testdir): Don't include ftruncate and
42538         mountlist by default.
42539
42540 2006-10-16  Bruno Haible  <bruno@clisp.org>
42541
42542         * lib/c-strstr.c: Include c-strstr.h.
42543
42544 2006-10-18  Charles Wilson  <cygwin@cwilson.fastmail.fm>
42545
42546         * gnulib-tool: Don't clobber $sourcebase when $local_gnulib_dir ends
42547         in a slash.
42548
42549 2006-10-18  Bruno Haible  <bruno@clisp.org>
42550
42551         * lib/lock.h [C++]: Wrap definitions in extern "C".
42552
42553 2006-10-18  Bruno Haible  <bruno@clisp.org>
42554
42555         * gnulib-tool (func_emit_initmacro_end): Remove duplicates from the
42556         gl_LIBOBJS list.
42557
42558 2006-10-18  Bruno Haible  <bruno@clisp.org>
42559
42560         * lib/findprog.c (find_in_path): Avoid "gcc -Wwrite-strings" warning.
42561
42562 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>
42563
42564         * lib/xstrtol.h: Include gettext.h.
42565         (_STRTOL_ERROR): Wrap English-language formats inside gettext.
42566         Problem reported by Eric Blake.
42567         * modules/xstrtol (Depends-on): Add gettext-h.
42568
42569 2006-10-19  Paul Eggert  <eggert@cs.ucla.edu>  (tiny change)
42570
42571         * lib/strftime.c (advance): New macro.
42572         (add): Use it to avoid adding 0 to a FILE *.  FILE can be an
42573         incomplete type, so you can't add 0 to it.  Problem and patch
42574         reported by Eelco Dolstra for dietlibc.
42575
42576 2006-10-18  Jim Meyering  <jim@meyering.net>
42577
42578         * lib/readutmp.c (desirable_utmp_entry): Use "bool" as the
42579         type for a local, and rename it: s/up/user_proc/.
42580
42581 2006-10-18  Sergey Poznyakoff  <gray@gnu.org.ua>
42582
42583         * lib/readutmp.c (desirable_utmp_entry): Implement new flag:
42584         READ_UTMP_USER_PROCESS.
42585         * lib/readutmp.h (READ_UTMP_USER_PROCESS): New flag
42586
42587 2006-10-17  Paul Eggert  <eggert@cs.ucla.edu>
42588
42589         * lib/localcharset.c: Do not check HAVE_SETLOCALE.
42590         * m4/localcharset.m4 (gl_LOCALCHARSET): Don't check for setlocale.
42591
42592 2006-10-17  Eric Blake  <ebb9@byu.net>
42593
42594         * lib/sigprocmask.c (sigprocmask): Fix typo.
42595
42596         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Fix typo.
42597
42598         * modules/clean-temp (Makefile.am): Don't add to make output...
42599         (configure.ac): ...instead define SIGNAL_SAFE_LIST inside
42600         config.h.
42601
42602 2006-10-17  Bruno Haible  <bruno@clisp.org>
42603
42604         * lib/gettext.h (gettext, ngettext, pgettext, npgettext): Define
42605         differently if DEFAULT_TEXT_DOMAIN is set.
42606
42607 2006-10-16  Bruno Haible  <bruno@clisp.org>
42608
42609         * lib/clean-temp.c: Include fwriteerror.h.
42610
42611 2006-10-16  Bruno Haible  <bruno@clisp.org>
42612
42613         * getndelim2.m4 (gl_GETNDELIM2): Remove 2003-10-23 hack.
42614
42615 2006-10-16  Bruno Haible  <bruno@clisp.org>
42616
42617         * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK): Also test for sigset_t.
42618         * lib/sigprocmask.h: Include <sys/types.h>.
42619         (sigset_t): Use the system's definition if present.
42620
42621 2006-10-17  Eric Blake  <ebb9@byu.net>
42622
42623         * lib/xvasprintf.c (includes): Assume config.h.
42624         * lib/xasprintf.c (includes): Likewise.
42625
42626 2006-10-16  Paul Eggert  <eggert@cs.ucla.edu>
42627
42628         * lib/fsusage.c (PROPAGATE_ALL_ONES): Don't assume uintmax_t is
42629         at least as wide as intmax_t.
42630
42631 2006-10-16  Alexandre Duret-Lutz  <adl@gnu.org>
42632
42633         (Imported from Automake.)
42634         * build-aux/gnupload: Update to version 1.1 of directive file.
42635
42636 2006-10-16  Eric Blake  <ebb9@byu.net>
42637
42638         * modules/configmake (Makefile.am): Add pkglibexecdir support, to
42639         match Automake 1.10a.
42640
42641 2006-10-14  Bruno Haible  <bruno@clisp.org>
42642
42643         * modules/sigprocmask: New file.
42644         * lib/sigprocmask.h: New file.
42645         * lib/sigprocmask.c: New file.
42646         * m4/signalblocking.m4 (gl_SIGNALBLOCKING): Renamed from
42647         gt_SIGNALBLOCKING. When not defining HAVE_POSIX_SIGNALBLOCKING,
42648         request sigprocmask.o.
42649         (gl_PREREQ_SIGPROCMASK): New macro.
42650         * modules/fatal-signal (Files): Remove m4/signalblocking.m4.
42651         (Depends-on): Add sigprocmask.
42652         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Don't require
42653         gt_SIGNALBLOCKING. Test for 'raise' only once.
42654         * lib/fatal-signal.c: Include sigprocmask.h.
42655         (fatal_signal_set, init_fatal_signal_set, block_fatal_signals,
42656         unblock_fatal_signals): Define always.
42657         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
42658         sigprocmask.
42659
42660 2006-10-14  Paul Eggert  <eggert@cs.ucla.edu>
42661
42662         Sync from Automake.
42663         * build-aux/install-sh (posix_mkdir): Reject FreeBSD 6.1 mkdir -p -m,
42664         which incorrectly sets the mode of an existing destination
42665         directory.  In some cases the unpatched install-sh could do the
42666         equivalent of "chmod 777 /" or "chmod 0 /" on a buggy FreeBSD
42667         system.  We hope this is rare in practice, but it's clearly worth
42668         fixing.  Problem reported by Alex Unleashed in
42669         <http://lists.gnu.org/archive/html/bug-autoconf/2006-10/msg00012.html>.
42670         Also, don't bother to check for -m bugs unless we're using -m;
42671         suggested by Stepan Kasal.
42672
42673 2006-10-14  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
42674
42675         Sync from Automake.
42676         * build-aux/depcomp (gcc3): Put dependency extraction flags before the
42677         `-c' flag, so they appear at the same position as in %FASTDEP%
42678         mode in depend2.am.  Fixes build failure for FreeBSD's c89,
42679         which ignores unknown options only after the first non-option.
42680         Bug report against M4 by Nelson H. F. Beebe.
42681
42682 2006-10-13  Jim Meyering  <jim@meyering.net>
42683
42684         Fix a bug in yesterday's change.
42685         * lib/fts.c (fts_open): When using FTS_XDEV|FTS_NOSTAT,
42686         p->fts_statp->st_dev would be used uninitialized.
42687         Ensures that we always call fts_stat on the very first entry.
42688         Miklos Szeredi reported that find -xdev stopped working.
42689
42690 2006-10-12  Bruno Haible  <bruno@clisp.org>
42691
42692         * gnulib-tool (func_get_automake_snippet): Append an automatically
42693         computed EXTRA_DIST augmentation.
42694         * modules/acl (Makefile.am): Remove EXTRA_DIST augmentation.
42695         * modules/alloca-opt (Makefile.am): Likewise.
42696         * modules/allocsa (Makefile.am): Likewise.
42697         * modules/arcfour (Makefile.am): Likewise.
42698         * modules/arctwo (Makefile.am): Likewise.
42699         * modules/argmatch (Makefile.am): Likewise.
42700         * modules/argz (Makefile.am): Likewise.
42701         * modules/atexit (Makefile.am): Likewise.
42702         * modules/backupfile (Makefile.am): Likewise.
42703         * modules/byteswap (Makefile.am): Likewise.
42704         * modules/c-strtod (Makefile.am): Likewise.
42705         * modules/c-strtold (Makefile.am): Likewise.
42706         * modules/calloc (Makefile.am): Likewise.
42707         * modules/canon-host (Makefile.am): Likewise.
42708         * modules/canonicalize (Makefile.am): Likewise.
42709         * modules/chdir-long (Makefile.am): Likewise.
42710         * modules/chdir-safer (Makefile.am): Likewise.
42711         * modules/check-version (Makefile.am): Likewise.
42712         * modules/chown (Makefile.am): Likewise.
42713         * modules/cloexec (Makefile.am): Likewise.
42714         * modules/close-stream (Makefile.am): Likewise.
42715         * modules/closeout (Makefile.am): Likewise.
42716         * modules/crc (Makefile.am): Likewise.
42717         * modules/csharpexec (Makefile.am): Likewise.
42718         * modules/cycle-check (Makefile.am): Likewise.
42719         * modules/des (Makefile.am): Likewise.
42720         * modules/dev-ino (Makefile.am): Likewise.
42721         * modules/dirfd (Makefile.am): Likewise.
42722         * modules/dirname (Makefile.am): Likewise.
42723         * modules/dup2 (Makefile.am): Likewise.
42724         * modules/eealloc (Makefile.am): Likewise.
42725         * modules/error (Makefile.am): Likewise.
42726         * modules/euidaccess (Makefile.am): Likewise.
42727         * modules/exclude (Makefile.am): Likewise.
42728         * modules/exitfail (Makefile.am): Likewise.
42729         * modules/fcntl-safer (Makefile.am): Likewise.
42730         * modules/fcntl (Makefile.am): Likewise.
42731         * modules/file-type (Makefile.am): Likewise.
42732         * modules/fileblocks (Makefile.am): Likewise.
42733         * modules/filemode (Makefile.am): Likewise.
42734         * modules/filenamecat (Makefile.am): Likewise.
42735         * modules/fnmatch (Makefile.am): Likewise.
42736         * modules/fopen-safer (Makefile.am): Likewise.
42737         * modules/fpending (Makefile.am): Likewise.
42738         * modules/fprintftime (Makefile.am): Likewise.
42739         * modules/free (Makefile.am): Likewise.
42740         * modules/fsusage (Makefile.am): Likewise.
42741         * modules/ftruncate (Makefile.am): Likewise.
42742         * modules/fts (Makefile.am): Likewise.
42743         * modules/gc-arcfour (Makefile.am): Likewise.
42744         * modules/gc-des (Makefile.am): Likewise.
42745         * modules/gc-hmac-md5 (Makefile.am): Likewise.
42746         * modules/gc-hmac-sha1 (Makefile.am): Likewise.
42747         * modules/gc-md4 (Makefile.am): Likewise.
42748         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
42749         * modules/gc-sha1 (Makefile.am): Likewise.
42750         * modules/gc (Makefile.am): Likewise.
42751         * modules/getaddrinfo (Makefile.am): Likewise.
42752         * modules/getcwd (Makefile.am): Likewise.
42753         * modules/getdelim (Makefile.am): Likewise.
42754         * modules/getdomainname (Makefile.am): Likewise.
42755         * modules/getgroups (Makefile.am): Likewise.
42756         * modules/gethostname (Makefile.am): Likewise.
42757         * modules/gethrxtime (Makefile.am): Likewise.
42758         * modules/getline (Makefile.am): Likewise.
42759         * modules/getloadavg (Makefile.am): Likewise.
42760         * modules/getlogin_r (Makefile.am): Likewise.
42761         * modules/getndelim2 (Makefile.am): Likewise.
42762         * modules/getopt (Makefile.am): Likewise.
42763         * modules/getpagesize (Makefile.am): Likewise.
42764         * modules/getpass-gnu (Makefile.am): Likewise.
42765         * modules/getpass (Makefile.am): Likewise.
42766         * modules/getsubopt (Makefile.am): Likewise.
42767         * modules/gettime (Makefile.am): Likewise.
42768         * modules/gettimeofday (Makefile.am): Likewise.
42769         * modules/getugroups (Makefile.am): Likewise.
42770         * modules/getusershell (Makefile.am): Likewise.
42771         * modules/glob (Makefile.am): Likewise.
42772         * modules/group-member (Makefile.am): Likewise.
42773         * modules/hard-locale (Makefile.am): Likewise.
42774         * modules/hash (Makefile.am): Likewise.
42775         * modules/hmac-md5 (Makefile.am): Likewise.
42776         * modules/hmac-sha1 (Makefile.am): Likewise.
42777         * modules/human (Makefile.am): Likewise.
42778         * modules/idcache (Makefile.am): Likewise.
42779         * modules/imaxabs (Makefile.am): Likewise.
42780         * modules/imaxdiv (Makefile.am): Likewise.
42781         * modules/inet_ntop (Makefile.am): Likewise.
42782         * modules/inet_pton (Makefile.am): Likewise.
42783         * modules/intprops (Makefile.am): Likewise.
42784         * modules/inttostr (Makefile.am): Likewise.
42785         * modules/inttypes (Makefile.am): Likewise.
42786         * modules/isapipe (Makefile.am): Likewise.
42787         * modules/javaversion (Makefile.am): Likewise.
42788         * modules/lchmod (Makefile.am): Likewise.
42789         * modules/lchown (Makefile.am): Likewise.
42790         * modules/localcharset (Makefile.am): Likewise.
42791         * modules/long-options (Makefile.am): Likewise.
42792         * modules/lstat (Makefile.am): Likewise.
42793         * modules/malloc (Makefile.am): Likewise.
42794         * modules/mathl (Makefile.am): Likewise.
42795         * modules/mbchar (Makefile.am): Likewise.
42796         * modules/md2 (Makefile.am): Likewise.
42797         * modules/md4 (Makefile.am): Likewise.
42798         * modules/md5 (Makefile.am): Likewise.
42799         * modules/memcasecmp (Makefile.am): Likewise.
42800         * modules/memchr (Makefile.am): Likewise.
42801         * modules/memcmp (Makefile.am): Likewise.
42802         * modules/memcoll (Makefile.am): Likewise.
42803         * modules/memcpy (Makefile.am): Likewise.
42804         * modules/memmem (Makefile.am): Likewise.
42805         * modules/memmove (Makefile.am): Likewise.
42806         * modules/mempcpy (Makefile.am): Likewise.
42807         * modules/memrchr (Makefile.am): Likewise.
42808         * modules/memset (Makefile.am): Likewise.
42809         * modules/memxor (Makefile.am): Likewise.
42810         * modules/mkancesdirs (Makefile.am): Likewise.
42811         * modules/mkdir-p (Makefile.am): Likewise.
42812         * modules/mkdir (Makefile.am): Likewise.
42813         * modules/mkdtemp (Makefile.am): Likewise.
42814         * modules/mkstemp (Makefile.am): Likewise.
42815         * modules/mktime (Makefile.am): Likewise.
42816         * modules/modechange (Makefile.am): Likewise.
42817         * modules/mountlist (Makefile.am): Likewise.
42818         * modules/nanosleep (Makefile.am): Likewise.
42819         * modules/obstack (Makefile.am): Likewise.
42820         * modules/openat (Makefile.am): Likewise.
42821         * modules/pagealign_alloc (Makefile.am): Likewise.
42822         * modules/pathmax (Makefile.am): Likewise.
42823         * modules/physmem (Makefile.am): Likewise.
42824         * modules/poll (Makefile.am): Likewise.
42825         * modules/posixtm (Makefile.am): Likewise.
42826         * modules/posixver (Makefile.am): Likewise.
42827         * modules/putenv (Makefile.am): Likewise.
42828         * modules/quote (Makefile.am): Likewise.
42829         * modules/quotearg (Makefile.am): Likewise.
42830         * modules/raise (Makefile.am): Likewise.
42831         * modules/read-file (Makefile.am): Likewise.
42832         * modules/readline (Makefile.am): Likewise.
42833         * modules/readlink (Makefile.am): Likewise.
42834         * modules/readtokens (Makefile.am): Likewise.
42835         * modules/readutmp (Makefile.am): Likewise.
42836         * modules/realloc (Makefile.am): Likewise.
42837         * modules/regex (Makefile.am): Likewise.
42838         * modules/rename-dest-slash (Makefile.am): Likewise.
42839         * modules/rename (Makefile.am): Likewise.
42840         * modules/rijndael (Makefile.am): Likewise.
42841         * modules/rmdir (Makefile.am): Likewise.
42842         * modules/rpmatch (Makefile.am): Likewise.
42843         * modules/safe-read (Makefile.am): Likewise.
42844         * modules/safe-write (Makefile.am): Likewise.
42845         * modules/same-inode (Makefile.am): Likewise.
42846         * modules/same (Makefile.am): Likewise.
42847         * modules/save-cwd (Makefile.am): Likewise.
42848         * modules/savedir (Makefile.am): Likewise.
42849         * modules/setenv (Makefile.am): Likewise.
42850         * modules/settime (Makefile.am): Likewise.
42851         * modules/sha1 (Makefile.am): Likewise.
42852         * modules/sig2str (Makefile.am): Likewise.
42853         * modules/snprintf (Makefile.am): Likewise.
42854         * modules/stat-macros (Makefile.am): Likewise.
42855         * modules/stat-time (Makefile.am): Likewise.
42856         * modules/stdbool (Makefile.am): Likewise.
42857         * modules/stdint (Makefile.am): Likewise.
42858         * modules/stdlib-safer (Makefile.am): Likewise.
42859         * modules/stpcpy (Makefile.am): Likewise.
42860         * modules/stpncpy (Makefile.am): Likewise.
42861         * modules/strcase (Makefile.am): Likewise.
42862         * modules/strcasestr (Makefile.am): Likewise.
42863         * modules/strchrnul (Makefile.am): Likewise.
42864         * modules/strcspn (Makefile.am): Likewise.
42865         * modules/strdup (Makefile.am): Likewise.
42866         * modules/strerror (Makefile.am): Likewise.
42867         * modules/strftime (Makefile.am): Likewise.
42868         * modules/strndup (Makefile.am): Likewise.
42869         * modules/strnlen (Makefile.am): Likewise.
42870         * modules/strpbrk (Makefile.am): Likewise.
42871         * modules/strsep (Makefile.am): Likewise.
42872         * modules/strstr (Makefile.am): Likewise.
42873         * modules/strtod (Makefile.am): Likewise.
42874         * modules/strtoimax (Makefile.am): Likewise.
42875         * modules/strtok_r (Makefile.am): Likewise.
42876         * modules/strtol (Makefile.am): Likewise.
42877         * modules/strtoll (Makefile.am): Likewise.
42878         * modules/strtoul (Makefile.am): Likewise.
42879         * modules/strtoull (Makefile.am): Likewise.
42880         * modules/strtoumax (Makefile.am): Likewise.
42881         * modules/strverscmp (Makefile.am): Likewise.
42882         * modules/sys_socket (Makefile.am): Likewise.
42883         * modules/sys_stat (Makefile.am): Likewise.
42884         * modules/sysexits (Makefile.am): Likewise.
42885         * modules/time_r (Makefile.am): Likewise.
42886         * modules/timegm (Makefile.am): Likewise.
42887         * modules/timespec (Makefile.am): Likewise.
42888         * modules/tmpfile-safer (Makefile.am): Likewise.
42889         * modules/trim (Makefile.am): Likewise.
42890         * modules/unistd-safer (Makefile.am): Likewise.
42891         * modules/unlinkdir (Makefile.am): Likewise.
42892         * modules/unlocked-io (Makefile.am): Likewise.
42893         * modules/userspec (Makefile.am): Likewise.
42894         * modules/utime (Makefile.am): Likewise.
42895         * modules/utimecmp (Makefile.am): Likewise.
42896         * modules/utimens (Makefile.am): Likewise.
42897         * modules/vasnprintf (Makefile.am): Likewise.
42898         * modules/vasprintf (Makefile.am): Likewise.
42899         * modules/vsnprintf (Makefile.am): Likewise.
42900         * modules/xalloc (Makefile.am): Likewise.
42901         * modules/xgetcwd (Makefile.am): Likewise.
42902         * modules/xnanosleep (Makefile.am): Likewise.
42903         * modules/xreadlink (Makefile.am): Likewise.
42904         * modules/xstrtod (Makefile.am): Likewise.
42905         * modules/xstrtol (Makefile.am): Likewise.
42906         * modules/xstrtold (Makefile.am): Likewise.
42907         * modules/yesno (Makefile.am): Likewise.
42908         * modules/getdate (Makefile.am): Don't add getdate.h to EXTRA_DIST.
42909
42910 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
42911
42912         * modules/error (Makefile.am): Distribute files through
42913         EXTRA_DIST, not lib_SOURCES.
42914
42915 2006-10-12  Eric Blake  <ebb9@byu.net>
42916
42917         * modules/error (Makefile.am): Distribute files in /lib.
42918         * modules/obstack (Makefile.am): Likewise.
42919
42920 2006-10-12  Bruno Haible  <bruno@clisp.org>
42921
42922         * modules/acl (Makefile.am): Distribute all files in lib/ through
42923         EXTRA_DIST.
42924         * modules/arcfour (Makefile.am): Likewise.
42925         * modules/arctwo (Makefile.am): Likewise.
42926         * modules/argmatch (Makefile.am): Likewise.
42927         * modules/argz (Makefile.am): Likewise.
42928         * modules/atexit (Makefile.am): Likewise.
42929         * modules/backupfile (Makefile.am): Likewise.
42930         * modules/c-strtod (Makefile.am): Likewise.
42931         * modules/c-strtold (Makefile.am): Likewise.
42932         * modules/calloc (Makefile.am): Likewise.
42933         * modules/canon-host (Makefile.am): Likewise.
42934         * modules/canonicalize (Makefile.am): Likewise.
42935         * modules/chdir-long (Makefile.am): Likewise.
42936         * modules/chdir-safer (Makefile.am): Likewise.
42937         * modules/check-version (Makefile.am): Likewise.
42938         * modules/chown (Makefile.am): Likewise.
42939         * modules/cloexec (Makefile.am): Likewise.
42940         * modules/close-stream (Makefile.am): Likewise.
42941         * modules/closeout (Makefile.am): Likewise.
42942         * modules/crc (Makefile.am): Likewise.
42943         * modules/cycle-check (Makefile.am): Likewise.
42944         * modules/des (Makefile.am): Likewise.
42945         * modules/dirfd (Makefile.am): Likewise.
42946         * modules/dirname (Makefile.am): Likewise.
42947         * modules/dup2 (Makefile.am): Likewise.
42948         * modules/euidaccess (Makefile.am): Likewise.
42949         * modules/exclude (Makefile.am): Likewise.
42950         * modules/exitfail (Makefile.am): Likewise.
42951         * modules/fcntl-safer (Makefile.am): Likewise.
42952         * modules/file-type (Makefile.am): Likewise.
42953         * modules/fileblocks (Makefile.am): Likewise.
42954         * modules/filemode (Makefile.am): Likewise.
42955         * modules/filenamecat (Makefile.am): Likewise.
42956         * modules/fnmatch (Makefile.am): Likewise.
42957         * modules/fopen-safer (Makefile.am): Likewise.
42958         * modules/fpending (Makefile.am): Likewise.
42959         * modules/fprintftime (Makefile.am): Likewise.
42960         * modules/free (Makefile.am): Likewise.
42961         * modules/fsusage (Makefile.am): Likewise.
42962         * modules/ftruncate (Makefile.am): Likewise.
42963         * modules/fts (Makefile.am): Likewise.
42964         * modules/gc (Makefile.am): Likewise.
42965         * modules/gc-pbkdf2-sha1 (Makefile.am): Likewise.
42966         * modules/getaddrinfo (Makefile.am): Likewise.
42967         * modules/getcwd (Makefile.am): Likewise.
42968         * modules/getdelim (Makefile.am): Likewise.
42969         * modules/getdomainname (Makefile.am): Likewise.
42970         * modules/getgroups (Makefile.am): Likewise.
42971         * modules/gethostname (Makefile.am): Likewise.
42972         * modules/gethrxtime (Makefile.am): Likewise.
42973         * modules/getline (Makefile.am): Likewise.
42974         * modules/getloadavg (Makefile.am): Likewise.
42975         * modules/getlogin_r (Makefile.am): Likewise.
42976         * modules/getopt (Makefile.am): Likewise.
42977         * modules/getpass (Makefile.am): Likewise.
42978         * modules/getpass-gnu (Makefile.am): Likewise.
42979         * modules/getsubopt (Makefile.am): Likewise.
42980         * modules/gettime (Makefile.am): Likewise.
42981         * modules/gettimeofday (Makefile.am): Likewise.
42982         * modules/getugroups (Makefile.am): Likewise.
42983         * modules/getusershell (Makefile.am): Likewise.
42984         * modules/glob (Makefile.am): Likewise.
42985         * modules/group-member (Makefile.am): Likewise.
42986         * modules/hard-locale (Makefile.am): Likewise.
42987         * modules/hash (Makefile.am): Likewise.
42988         * modules/hmac-md5 (Makefile.am): Likewise.
42989         * modules/hmac-sha1 (Makefile.am): Likewise.
42990         * modules/human (Makefile.am): Likewise.
42991         * modules/idcache (Makefile.am): Likewise.
42992         * modules/imaxabs (Makefile.am): Likewise.
42993         * modules/imaxdiv (Makefile.am): Likewise.
42994         * modules/inet_ntop (Makefile.am): Likewise.
42995         * modules/inet_pton (Makefile.am): Likewise.
42996         * modules/inttostr (Makefile.am): Likewise.
42997         * modules/isapipe (Makefile.am): Likewise.
42998         * modules/lchown (Makefile.am): Likewise.
42999         * modules/long-options (Makefile.am): Likewise.
43000         * modules/lstat (Makefile.am): Likewise.
43001         * modules/malloc (Makefile.am): Likewise.
43002         * modules/mathl (Makefile.am): Likewise.
43003         * modules/mbchar (Makefile.am): Likewise.
43004         * modules/md2 (Makefile.am): Likewise.
43005         * modules/md4 (Makefile.am): Likewise.
43006         * modules/md5 (Makefile.am): Likewise.
43007         * modules/memcasecmp (Makefile.am): Likewise.
43008         * modules/memchr (Makefile.am): Likewise.
43009         * modules/memcmp (Makefile.am): Likewise.
43010         * modules/memcoll (Makefile.am): Likewise.
43011         * modules/memcpy (Makefile.am): Likewise.
43012         * modules/memmem (Makefile.am): Likewise.
43013         * modules/memmove (Makefile.am): Likewise.
43014         * modules/mempcpy (Makefile.am): Likewise.
43015         * modules/memrchr (Makefile.am): Likewise.
43016         * modules/memset (Makefile.am): Likewise.
43017         * modules/memxor (Makefile.am): Likewise.
43018         * modules/mkancesdirs (Makefile.am): Likewise.
43019         * modules/mkdir (Makefile.am): Likewise.
43020         * modules/mkdir-p (Makefile.am): Likewise.
43021         * modules/mkdtemp (Makefile.am): Likewise.
43022         * modules/mkstemp (Makefile.am): Likewise.
43023         * modules/mktime (Makefile.am): Likewise.
43024         * modules/modechange (Makefile.am): Likewise.
43025         * modules/mountlist (Makefile.am): Likewise.
43026         * modules/nanosleep (Makefile.am): Likewise.
43027         * modules/openat (Makefile.am): Likewise.
43028         * modules/pagealign_alloc (Makefile.am): Likewise.
43029         * modules/physmem (Makefile.am): Likewise.
43030         * modules/poll (Makefile.am): Likewise.
43031         * modules/posixtm (Makefile.am): Likewise.
43032         * modules/posixver (Makefile.am): Likewise.
43033         * modules/putenv (Makefile.am): Likewise.
43034         * modules/quote (Makefile.am): Likewise.
43035         * modules/quotearg (Makefile.am): Likewise.
43036         * modules/raise (Makefile.am): Likewise.
43037         * modules/read-file (Makefile.am): Likewise.
43038         * modules/readline (Makefile.am): Likewise.
43039         * modules/readlink (Makefile.am): Likewise.
43040         * modules/readtokens (Makefile.am): Likewise.
43041         * modules/readutmp (Makefile.am): Likewise.
43042         * modules/realloc (Makefile.am): Likewise.
43043         * modules/regex (Makefile.am): Likewise.
43044         * modules/rename (Makefile.am): Likewise.
43045         * modules/rename-dest-slash (Makefile.am): Likewise.
43046         * modules/rijndael (Makefile.am): Likewise.
43047         * modules/rmdir (Makefile.am): Likewise.
43048         * modules/rpmatch (Makefile.am): Likewise.
43049         * modules/safe-read (Makefile.am): Likewise.
43050         * modules/safe-write (Makefile.am): Likewise.
43051         * modules/same (Makefile.am): Likewise.
43052         * modules/save-cwd (Makefile.am): Likewise.
43053         * modules/savedir (Makefile.am): Likewise.
43054         * modules/setenv (Makefile.am): Likewise.
43055         * modules/settime (Makefile.am): Likewise.
43056         * modules/sha1 (Makefile.am): Likewise.
43057         * modules/sig2str (Makefile.am): Likewise.
43058         * modules/snprintf (Makefile.am): Likewise.
43059         * modules/stdlib-safer (Makefile.am): Likewise.
43060         * modules/stpcpy (Makefile.am): Likewise.
43061         * modules/stpncpy (Makefile.am): Likewise.
43062         * modules/strcase (Makefile.am): Likewise.
43063         * modules/strcasestr (Makefile.am): Likewise.
43064         * modules/strchrnul (Makefile.am): Likewise.
43065         * modules/strcspn (Makefile.am): Likewise.
43066         * modules/strdup (Makefile.am): Likewise.
43067         * modules/strerror (Makefile.am): Likewise.
43068         * modules/strftime (Makefile.am): Likewise.
43069         * modules/strndup (Makefile.am): Likewise.
43070         * modules/strnlen (Makefile.am): Likewise.
43071         * modules/strpbrk (Makefile.am): Likewise.
43072         * modules/strsep (Makefile.am): Likewise.
43073         * modules/strstr (Makefile.am): Likewise.
43074         * modules/strtod (Makefile.am): Likewise.
43075         * modules/strtoimax (Makefile.am): Likewise.
43076         * modules/strtok_r (Makefile.am): Likewise.
43077         * modules/strtol (Makefile.am): Likewise.
43078         * modules/strtoll (Makefile.am): Likewise.
43079         * modules/strtoul (Makefile.am): Likewise.
43080         * modules/strtoull (Makefile.am): Likewise.
43081         * modules/strtoumax (Makefile.am): Likewise.
43082         * modules/strverscmp (Makefile.am): Likewise.
43083         * modules/time_r (Makefile.am): Likewise.
43084         * modules/timegm (Makefile.am): Likewise.
43085         * modules/tmpfile-safer (Makefile.am): Likewise.
43086         * modules/unistd-safer (Makefile.am): Likewise.
43087         * modules/unlinkdir (Makefile.am): Likewise.
43088         * modules/userspec (Makefile.am): Likewise.
43089         * modules/utime (Makefile.am): Likewise.
43090         * modules/utimecmp (Makefile.am): Likewise.
43091         * modules/utimens (Makefile.am): Likewise.
43092         * modules/vasnprintf (Makefile.am): Likewise.
43093         * modules/vasprintf (Makefile.am): Likewise.
43094         * modules/vsnprintf (Makefile.am): Likewise.
43095         * modules/xalloc (Makefile.am): Likewise.
43096         * modules/xgetcwd (Makefile.am): Likewise.
43097         * modules/xnanosleep (Makefile.am): Likewise.
43098         * modules/xreadlink (Makefile.am): Likewise.
43099         * modules/xstrtod (Makefile.am): Likewise.
43100         * modules/xstrtol (Makefile.am): Likewise.
43101         * modules/xstrtold (Makefile.am): Likewise.
43102         * modules/yesno (Makefile.am): Likewise.
43103
43104 2006-10-12  Jim Meyering  <jim@meyering.net>
43105
43106         * m4/getloadavg.m4: Revert the change below.
43107
43108         * m4/getloadavg.m4 (gl_GETLOADAVG): Test for the existence of
43109         lib/getloadavg.c using "ls -L", not "test -f".  The latter would
43110         fail with a symlink, which is what coreutils' ./bootstrap now
43111         creates by default.
43112
43113 2006-10-12  Bruno Haible  <bruno@clisp.org>
43114
43115         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): Don't define for MSVC or
43116         mingw.
43117         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX): Handle
43118         MSVC and mingw explicitly.
43119
43120 2006-10-11  Simon Josefsson  <jas@extundo.com>
43121             Bruno Haible  <bruno@clisp.org>
43122
43123         Add support for multiple gnulib-tool invocations in the scope of a
43124         single configure.ac file.
43125         * gnulib-tool (func_emit_lib_Makefile_am): In the _LIBADD variable,
43126         use a private [LT]LIBOBJS variant. Define a _DEPENDENCIES variable
43127         with the same contents as the _LIBADD variable.
43128         (func_emit_initmacro_start, func_emit_initmacro_end,
43129         func_emit_initmacro_done): New functions.
43130         (func_import, func_create_testdir): Invoke them. Allow the identifiers
43131         gl_LIBOBJS and gl_LTLIBOBJS.
43132
43133 2006-10-11  Bruno Haible  <bruno@clisp.org>
43134
43135         * gnulib-tool (GETTEXTPATH, AUTOHEADER, AUTOPOINT): New variables.
43136         (func_create_testdir): Don't create po/Makefile.am, don't invoke
43137         autoreconf. Instead, invoke autopoint explicitly but move back the
43138         *.m4 files from gnulib.
43139
43140 2006-10-11  Bruno Haible  <bruno@clisp.org>
43141
43142         * gnulib-tool (func_usage): Make module names after --create-testdir
43143         optional.
43144         (func_create_testdir): If no module was specified, use nearly all
43145         modules.
43146
43147 2006-10-12  Jim Meyering  <jim@meyering.net>
43148
43149         Big performance improvement for fts-based tools that use FTS_NOSTAT.
43150         Avoid spurious inode-mismatch problems on non-POSIX file systems.
43151         Details: http://article.gmane.org/gmane.comp.lib.gnulib.bugs/7416
43152         * lib/fts_.h (FTS_DEFER_STAT): Define new flag.
43153         (FTS_OPTIONMASK): Extend the mask to reflect this addition.
43154         * lib/fts.c (DT_IS_KNOWN, DT_MUST_BE): Define.
43155         (FTS_NO_STAT_REQUIRED, FTS_STAT_REQUIRED): Define.
43156         (fts_set_stat_required): New function.
43157         (fts_open): Defer the calls to fts_stat, if possible or requested.
43158         Move the code that maps a command-line fts_info value FTS_DOT to FTS_D
43159         into fts_stat itself.
43160         (fts_read): Perform any required (deferred) fts_stat call.
43161         (fts_build): Likewise, for the directory we're about to open and read.
43162         In the readdir loop, carefully decide whether each entry will require
43163         an eventual call to fts_stat, using dirent.d_type info if available.
43164         (fts_stat): Move the test for whether to honor FTS_COMFOLLOW on
43165         a command line argument into this function.  Update all callers.
43166         Map a return value of FTS_DOT to FTS_D for a command line argument.
43167         * modules/fts (Depends-on): Add d-type.  Alphabetize.
43168         Thanks to Miklos Szeredi for his tenacity and for the initial
43169         bug report about "find" failing on a FUSE-based file system.
43170
43171         * lib/fts.c (fts_open): Use consistent indentation.
43172
43173 2006-10-12  Paul Eggert  <eggert@cs.ucla.edu>
43174
43175         * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS): Renamed from
43176         gl_USE_SYSTEM_EXTENSIONS, to fix a coreutils bootstrap failure
43177         reported by Jim Meyering.  All uses of cache variables renamed
43178         to match Autoconf's.
43179         (gl_USE_SYSTEM_EXTENSIONS): New macro, which simply requires
43180         the other one.
43181
43182         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH):
43183         Fix misspelling in diagnostic.
43184
43185 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
43186
43187         * lib/mkdir-p.c (HAVE_FCHMOD): Define to false if not already
43188         defined.  Problem reported by Matthew Woehlke.
43189
43190         * lib/inttypes_.h (_LONG_LONG_FORMAT_PREFIX): New macro.
43191         Add support for Tandem NonStop R series.
43192         (_PRI64_PREFIX, _PRIu64_PREFIX, _SCN64_PREFIX, _SCNu64_PREFIX):
43193         Use new macro.
43194
43195         * lib/rename-dest-slash.c: Include stdbool.h but not string.h.
43196         (has_trailing_slash): Omit size arg; all callers changed.
43197         Omit 'inline', since it doesn't help performance and we'd
43198         need to configure it.
43199         Don't count //, ///, etc. as having a trailing slash.
43200         As a side effect, this removes a C99ism reported by Matthew Woehlke.
43201         (rpl_rename_dest_slash): On failure, use rename's errno rather
43202         than (in some cases) an incorrect or junk errno.
43203         Simplify code by removing need to compute length; this does
43204         cause it to make two passes instead of one over the file name,
43205         but it's worth it.
43206
43207         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Undo previous
43208         change, since Autoconf's version may no longer be appropriate now
43209         that we are using CVS Autoconf's version.  Add support for Tandem.
43210
43211 2006-10-11  Paul Eggert  <eggert@cs.ucla.edu>
43212             Bruno Haible  <bruno@clisp.org>
43213
43214         * lib/allocsa.h (sa_alignment_longlong, sa_alignment_max): Test
43215         HAVE_LONG_LONG_INT instead of HAVE_LONG_LONG.
43216         * m4/allocsa.m4 (gl_ALLOCSA): Invoke AC_TYPE_LONG_LONG_INT instead of
43217         gl_AC_TYPE_LONG_LONG.
43218
43219         * lib/printf-args.h (arg_type, argument): Test HAVE_LONG_LONG_INT
43220         instead of HAVE_LONG_LONG.
43221         * lib/printf-args.c (printf_fetchargs): Likewise.
43222         * lib/printf-parse.c (PRINTF_PARSE): Likewise.
43223         * lib/vasnprintf.c (VASNPRINTF): Likewise.
43224         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_ARGS, gl_PREREQ_PRINTF_PARSE,
43225         gl_PREREQ_VASNPRINTF): Invoke AC_TYPE_LONG_LONG_INT instead of
43226         gl_AC_TYPE_LONG_LONG.
43227
43228 2006-10-11  Bruno Haible  <bruno@clisp.org>
43229
43230         * m4/longlong.m4: Add comments.
43231         * m4/ulonglong.m4: Likewise.
43232
43233 2006-10-10  Bruno Haible  <bruno@clisp.org>
43234
43235         Make it possible to #define stpcpy, strdup to aliases.
43236         * lib/stpcpy.c (stpcpy) [!_LIBC]: Don't undefine.
43237         * lib/strdup.c (strdup) [!_LIBC]: Don't undefine.
43238
43239 2006-10-10  Bruno Haible  <bruno@clisp.org>
43240
43241         Make it possible to #define gcd to an alias.
43242         * lib/gcd.c: Include config.h.
43243
43244 2006-10-10  Bruno Haible  <bruno@clisp.org>
43245
43246         Make it possible to #define c_isascii to an alias.
43247         * lib/c-ctype.h: Don't define the macros if NO_C_CTYPE_MACROS is
43248         defined. Undefine the macros before defining them, to avoid gcc
43249         warnings.
43250         * lib/c-ctype.c: Include config.h. Don't undefine the macros; instead,
43251         define NO_C_CTYPE_MACROS early.
43252
43253 2006-10-10  Bruno Haible  <bruno@clisp.org>
43254
43255         Make it possible to #define set_program_name to an alias.
43256         * lib/progname.c: Don't undefine set_program_name; instead, undefine
43257         ENABLE_RELOCATABLE early.
43258
43259 2006-10-10  Paul Eggert  <eggert@cs.ucla.edu>
43260
43261         Port to Tandem NSK OSS, which has 64-bit signed int but at most
43262         32-bit unsigned int.  Problem reported by Matthew Woehlke in:
43263         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00062.html
43264         More generally, don't assume that 64-bit signed int is available
43265         if unsigned int is, and vice versa.
43266         * lib/inttypes_.h (_PRIu64_PREFIX, _SCNu64_PREFIX): Depend on
43267         unsigned symbols, not on their signed counterparts.
43268         * lib/stdint_.h (uint64_t, uint_least64_t, uint_fast64_t, uintmax_t):
43269         (UINT64_MAX, UINT_LEAST64_MAX, UINT_FAST64_MAX, UINTMAX_MAX):
43270         (UINT64_C, UINTMAX_C):
43271         Likewise.
43272         * lib/strtoimax.c (strtoll): Depend on signed symbols, not their
43273         unsigned counterparts.
43274         (Have_long_long, Unsigned): New macros.
43275         (Int): Renamed from INT.
43276         (strtoimax): Use the new macros.
43277         * m4/stdint.m4 (gl_STDINT_H): Require AC_TYPE_UNSIGNED_LONG_LONG_INT
43278         and substitute HAVE_UNSIGNED_LONG_LONG_INT.
43279         * modules/inttypes (inttypes.h): Substitute
43280         HAVE_UNSIGNED_LONG_LONG_INT.
43281         * modules/stdint (stdint.h): Likewise.
43282         (Files): Add m4/ulonglong.m4.
43283
43284 2006-10-10  Bruno Haible  <bruno@clisp.org>
43285
43286         Fix a gcc -Wshadow warning.
43287         * lib/gl_anyhash_list2.h (hash_resize): Rename local variable 'index'
43288         to 'bucket'.
43289         * lib/gl_anylinked_list2.h (gl_linked_search_from_to,
43290         gl_linked_indexof_from_to): Likewise.
43291         * lib/gl_linkedhash_list.c (add_to_bucket, remove_from_bucket):
43292         Likewise.
43293         * lib/gl_anytreehash_list1.h (add_to_bucket, remove_from_bucket):
43294         Likewise.
43295         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Likewise.
43296         Reported by Eric Blake.
43297
43298 2006-10-09  Paul Eggert  <eggert@cs.ucla.edu>
43299
43300         * lib/filemode.h [HAVE_DECL_STRMODE]: Include unistd.h too,
43301         for NetBSD.  Problem reported by Bruno Haible.
43302
43303 2006-10-09  Jim Meyering  <jim@meyering.net>
43304
43305         * lib/lchown.c: Include <sys/stat.h> before "stat-macros.h".
43306         Patch from Bruno Haible.
43307
43308 2006-10-09  Jim Meyering  <jim@meyering.net>
43309
43310         * lib/fts-cycle.c (leave_dir): When "leaving" a top level directory due
43311         to FTS_SKIP, don't copy the parent's uninitialized dev/ino values.
43312         Trigger with e.g., mkdir d && valgrind ./chmod u+rwx d d
43313
43314 2006-10-08  Paul Eggert  <eggert@cs.ucla.edu>
43315
43316         Don't include <config.h> twice; this doesn't work in some cases,
43317         e.g., when config.h has "#define intmax_t long long int" and
43318         we include <config.h>, <inttypes.h>, <config.h> in that order.
43319         Problem reported by Matthew Woehlke in:
43320         http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00073.html
43321         * lib/fprintftime.c: Don't include config.h or fprintftime.h.
43322         * lib/fts-cycle.c: Don't include config.h.
43323         * lib/strftime.c: Include fprintftime.h if FPRINTFTIME is defined.
43324         * lib/xstrtoimax.c: Remove copyright notice since it's short tnow.
43325         Don't include config.h or xstrtol.h.  Define STRTOL_T_MINIMUM
43326         and STRTOL_T_MAXIMUM unconditionally, since we now assume gnulib
43327         inttypes.h.
43328         * lib/xstrtoumax.c: Likewise.
43329         * lib/xstrtol.c: Include config.h and xstrtol.h after defining
43330         __strtol and the like, so that this module is more like its siblings.
43331         (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [! defined STRTOL_T_MINIMUM]:
43332         Remove; no longer needed now that we assume gnulib inttypes.h.
43333
43334 2006-10-08  Bruno Haible  <bruno@clisp.org>
43335
43336         * doc/gnulib-tool.texi: Emphasize the drawbacks of the --symlink
43337         option.
43338
43339 2006-10-07  Jim Meyering  <jim@meyering.net>
43340
43341         * modules/inttypes (inttypes.h): Revert what seems to have been
43342         an inadvertent part of today's change: use "|", not "/" in the
43343         substitution for the "/"-containing string, $(ABSOLUTE_INTTYPES_H).
43344
43345 2006-10-07  Bruno Haible  <bruno@clisp.org>
43346
43347         * modules/sublist: New file.
43348
43349 2006-10-07  Bruno Haible  <bruno@clisp.org>
43350
43351         * modules/alloca-opt (alloca.h): Add a "DO NOT EDIT" comment.
43352         * modules/argz (argz.h): Likewise.
43353         * modules/arpa_inet (arpa/inet.h): Likewise.
43354         * modules/byteswap (byteswap.h): Likewise.
43355         * modules/configmake (configmake.h): Likewise.
43356         * modules/fcntl (fcntl.h): Likewise.
43357         * modules/fnmatch (fnmatch.h): Likewise.
43358         * modules/getopt (getopt.h): Likewise.
43359         * modules/glob (glob.h): Likewise.
43360         * modules/inttypes (inttypes.h): Likewise.
43361         * modules/netinet_in (netinet/in.h): Likewise.
43362         * modules/poll (poll.h): Likewise.
43363         * modules/stdbool (stdbool.h): Likewise.
43364         * modules/stdint (stdint.h): Likewise.
43365         * modules/sys_select (sys/select.h): Likewise.
43366         * modules/sys_socket (sys/socket.h): Likewise.
43367         * modules/sys_stat (sys/stat.h): Likewise.
43368         * modules/sysexits (sysexits.h): Likewise.
43369         * modules/unistd (unistd.h): Likewise.
43370         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
43371         Add a "DO NOT EDIT" comment to the generated file.
43372         (func_import): Likewise for gnulib-comp.m4.
43373
43374 2006-10-07  Bruno Haible  <bruno@clisp.org>
43375
43376         * lib/gl_sublist.h: New file.
43377         * lib/gl_sublist.c: New file.
43378
43379 2006-10-06  Paul Eggert  <eggert@cs.ucla.edu>
43380
43381         * lib/mkancesdirs.c (mkancesdirs): Pass to MAKE_DIR both the full file
43382         name (relative to the original working directory) and the file
43383         name component (relative to the temporary working directory).  All
43384         callers changed.
43385         * lib/mkancesdirs.h (mkancesdirs): Adjust prototype to match.
43386         * lib/mkdir-p.c (make_dir_parents): Likewise.
43387         * lib/mkdir-p.h (make_dir_parents): Likewise.
43388
43389 2006-10-06  Eric Blake  <ebb9@byu.net>
43390
43391         Define several macros for use by the clean-temp module.
43392         * m4/close-stream.m4 (gl_CLOSE_STREAM): Define GNULIB_CLOSE_STREAM.
43393         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Define GNULIB_FCNTL_SAFER.
43394         * m4/stdio-safer.m4 (gl_FOPEN_SAFER): Define GNULIB_FOPEN_SAFER.
43395
43396         * lib/clean-temp.h (close_stream_temp): New declaration.
43397         * lib/clean-temp.c (includes): Pull in headers according to what
43398         other modules are in use.
43399         (close_stream_temp) [GNULIB_CLOSE_STREAM]: New function.
43400
43401 2006-10-06  Bruno Haible  <bruno@clisp.org>
43402
43403         * lib/javacomp.c (write_temp_file): Use fopen_temp, fwriteerror_temp
43404         instead of fopen, fwriteerror.
43405
43406 2006-10-06  Bruno Haible  <bruno@clisp.org>
43407
43408         * lib/clean-temp.h (cleanup_temp_file, cleanup_temp_subdir,
43409         cleanup_temp_dir_contents, cleanup_temp_dir): Change return type to
43410         int.
43411         * lib/clean-temp.c (do_unlink, do_rmdir, cleanup_temp_file,
43412         cleanup_temp_subdir, cleanup_temp_dir_contents, cleanup_temp_dir):
43413         Return an error indicator.
43414         Suggested by Eric Blake.
43415
43416 2006-10-06  Bruno Haible  <bruno@clisp.org>
43417
43418         * lib/clean-temp.c (PATH_MAX): Provide a fallback for GNU Hurd.
43419         Reported by Eric Blake.
43420
43421 2006-10-06  Bruno Haible  <bruno@clisp.org>
43422
43423         * modules/closeout (Description): Mention stderr too.
43424
43425 2006-10-06  Bruno Haible  <bruno@clisp.org>
43426         and Paul Eggert  <eggert@cs.ucla.edu>
43427
43428         * lib/closeout.c (close_stdout): Also close stderr.
43429         * lib/closeout.h: Update comment.
43430
43431 2006-10-05  Paul Eggert  <eggert@cs.ucla.edu>
43432
43433         Fix some Darwin-7.9.0 porting problems reported by Bruno Haible in
43434         <http://lists.gnu.org/archive/html/bug-coreutils/2006-10/msg00063.html>.
43435         * lib/dirchownmod.c: Include lchown.h.
43436         * lib/lchown.c: Don't include files that lchown.h now includes.
43437         Don't declare chown, since lchown.h now does that.
43438         * lib/lchown.h: Include errno.h, sys/types.h, unistd.h.
43439         (lchown): Define to rpl_chown if lchown is declared but
43440         does not exist.  Declare using a prototype if lchown is not
43441         declared.  Add a copyright notice.
43442         * lib/mkstemp.h: Include <unistd.h>.
43443         * lib/openat.c: Include lchown.h.
43444
43445         * lib/fcntl_.h (O_NOFOLLOW): Don't depend on O_NOFOLLOW_IS_INEFFECTIVE;
43446         we now test for that separately.
43447         * lib/fts.c (fts_safe_changedir): Inspect HAVE_WORKING_O_NOFOLLOW
43448         rather than O_NOFOLLOW, when testing whether it's possible to
43449         avoid a race condition reliably.
43450         * lib/savewd.c (savewd_chdir): Likewise.
43451
43452         Remove macros that are no longer needed now that stdint.h is
43453         reliable.
43454         * lib/fsusage.c (UINTMAX_MAX): Remove.
43455         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Remove.
43456         * lib/utimecmp.c (SIZE_MAX): Remove.
43457
43458         * m4/lchown.m4 (gl_FUNC_LCHOWN): Check whether lchown is declared.
43459
43460         * m4/fcntl_h.m4 (gl_FCNTL_H): Define HAVE_WORKING_O_NOFOLLOW instead
43461         of O_NOFOLLOW_IS_INEFFECTIVE.  Define HAVE_WORKING_O_NOATIME if
43462         O_NOATIME works.
43463
43464 2006-10-05  Bruno Haible  <bruno@clisp.org>
43465
43466         * lib/gl_list.h (gl_sortedlist_search_from_to,
43467         gl_sortedlist_indexof_from_to): New declarations.
43468         (gl_list_implementation): New fields sortedlist_search_from_to,
43469         sortedlist_indexof_from_to.
43470         (gl_sortedlist_search_from_to, gl_sortedlist_indexof_from_to): New
43471         inline functions.
43472         * lib/gl_list.c (gl_sortedlist_search_from_to,
43473         gl_sortedlist_indexof_from_to): New functions.
43474         * lib/gl_array_list.c (gl_array_sortedlist_indexof_from_to): New
43475         function.
43476         (gl_array_sortedlist_indexof, gl_array_sortedlist_search): Use it.
43477         (gl_array_sortedlist_search_from_to): New function.
43478         (gl_array_list_implementation): Update.
43479         * lib/gl_carray_list.c (gl_carray_sortedlist_indexof_from_to): New
43480         function.
43481         (gl_carray_sortedlist_indexof, gl_carray_sortedlist_search): Use it.
43482         (gl_carray_sortedlist_search_from_to): New function.
43483         (gl_carray_list_implementation): Update.
43484         * lib/gl_anylinked_list2.h (gl_linked_sortedlist_search_from_to,
43485         gl_linked_sortedlist_indexof_from_to): New functions.
43486         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
43487         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
43488         * lib/gl_anytree_list2.h (gl_tree_sortedlist_search_from_to,
43489         gl_tree_sortedlist_indexof_from_to): New functions.
43490         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
43491         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
43492         Update.
43493         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
43494         * lib/gl_rbtreehash_list.c (gl_avltreehash_list_implementation):
43495         Update.
43496
43497 2006-10-05  Bruno Haible  <bruno@clisp.org>
43498
43499         * lib/gl_list.h (gl_list_search_from, gl_list_search_from_to,
43500         gl_list_indexof_from, gl_list_indexof_from_to): New declarations.
43501         (struct gl_list_implementation): Add fields search_from_to,
43502         indexof_from_to. Remove fields search, indexof.
43503         (gl_list_search): Use the search_from_to method.
43504         (gl_list_search_from, gl_list_search_from_to): New functions.
43505         (gl_list_indexof): Use the indexof_from_to method.
43506         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
43507         * lib/gl_list.c (gl_list_search): Use the search_from_to method.
43508         (gl_list_search_from, gl_list_search_from_to): New functions.
43509         (gl_list_indexof): Use the indexof_from_to method.
43510         (gl_list_indexof_from, gl_list_indexof_from_to): New functions.
43511         * lib/gl_array_list.c (gl_array_indexof_from_to): Renamed from
43512         gl_array_indexof. Add start_index, end_index arguments.
43513         (gl_array_search_from_to): Renamed from gl_array_search. Add
43514         start_index, end_index arguments.
43515         (gl_array_remove, gl_array_list_implementation): Update.
43516         * lib/gl_carray_list.c (gl_carray_indexof_from_to): Renamed from
43517         gl_carray_indexof. Add start_index, end_index arguments.
43518         (gl_carray_search_from_to): Renamed from gl_carray_search. Add
43519         start_index, end_index arguments.
43520         (gl_carray_remove, gl_carray_list_implementation): Update.
43521         * lib/gl_anylinked_list2.h (gl_linked_search_from_to): Renamed from
43522         gl_linked_search. Add start_index, end_index arguments.
43523         (gl_linked_indexof_from_to): Renamed from gl_linked_indexof. Add
43524         start_index, end_index arguments.
43525         (gl_linked_remove): Update.
43526         * lib/gl_linked_list.c (gl_linked_list_implementation): Update.
43527         * lib/gl_linkedhash_list.c (gl_linkedhash_list_implementation): Update.
43528         * lib/gl_anytree_list1.h (iterstack_item_t): Change type of 'rightp'
43529         field to 'size_t'.
43530         * lib/gl_anytree_list2.h (gl_tree_search_from_to): Renamed from
43531         gl_tree_search. Add start_index, end_index arguments.
43532         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
43533         start_index, end_index arguments.
43534         (gl_tree_remove): Update.
43535         * lib/gl_avltree_list.c (gl_avltree_list_implementation): Update.
43536         * lib/gl_rbtree_list.c (gl_rbtree_list_implementation): Update.
43537         * lib/gl_anytreehash_list1.h (compare_position_threshold): New
43538         function.
43539         * lib/gl_anytreehash_list2.h (gl_tree_search_from_to): Renamed from
43540         gl_tree_search. Add start_index, end_index arguments.
43541         (gl_tree_indexof_from_to): Renamed from gl_tree_indexof. Add
43542         start_index, end_index arguments.
43543         * lib/gl_avltreehash_list.c (gl_avltreehash_list_implementation):
43544         Update.
43545         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Update.
43546
43547 2006-10-05  Bruno Haible  <bruno@clisp.org>
43548
43549         * modules/fwriteerror (configure.ac): Define GNULIB_FWRITEERROR.
43550
43551         * lib/clean-temp.h (open_temp, fopen_temp, close_temp, fclose_temp,
43552         fwriteerror_temp): New declarations.
43553         * lib/clean-temp.c (uintptr_t): Provide fallback definition.
43554         (descriptors): New variable.
43555         (cleanup): First, close the descriptors.
43556         (register_fd, unregister_fd, open_temp, fopen_temp, close_temp,
43557         fclose_temp, fwriteerror_temp): New functions.
43558
43559 2006-10-04  Jim Meyering  <jim@meyering.net>
43560
43561         * lib/fts.c (fts_open): Tiny comment change.
43562
43563 2006-10-04  Bruno Haible  <bruno@clisp.org>
43564
43565         Make it possible to invoke AC_GNU_SOURCE after gl_LOCK_EARLY.
43566         * m4/lock.m4 (gl_LOCK_EARLY_BODY): New macro, extracted code from
43567         gl_LOCK_BODY.
43568         (gl_LOCK_EARLY): Require gl_LOCK_EARLY_BODY, not gl_LOCK_BODY.
43569         (gl_LOCK_BODY): Remove settings of CPPFLAGS, now done in
43570         gl_LOCK_EARLY_BODY.
43571         (gl_LOCK): Require gl_LOCK_BODY.
43572
43573 2006-10-04  Bruno Haible  <bruno@clisp.org>
43574
43575         * lib/gl_oset.h (gl_setelement_threshold_fn): New type.
43576         (gl_oset_search_atleast): New declaration.
43577         (struct gl_oset_implementation): Add field 'search_atleast'.
43578         (gl_oset_search_atleast): New inline function.
43579         * lib/gl_oset.c (gl_oset_search_atleast): New function.
43580         * lib/gl_array_oset.c (gl_array_search_atleast): New function.
43581         (gl_array_oset_implementation): Update.
43582         * lib/gl_anytree_oset.h (gl_tree_search_atleast): New function.
43583         * lib/gl_avltree_oset.c (gl_avltree_oset_implementation): Update.
43584         * lib/gl_rbtree_oset.c (gl_rbtree_oset_implementation): Update.
43585
43586 2006-10-04  Bruno Haible  <bruno@clisp.org>
43587
43588         * lib/fatal-signal.c (fatal_signals) [WOE32]: Add the SIGBREAK signal.
43589
43590 2006-10-03  Bruno Haible  <bruno@clisp.org>
43591
43592         * lib/gl_rbtreehash_list.c (gl_rbtreehash_list_implementation): Renamed
43593         from gl_avltreehash_list_implementation.
43594
43595 2006-10-03  Bruno Haible  <bruno@clisp.org>
43596
43597         * lib/gl_oset.c (gl_oset_add): Fix return type.
43598
43599 2006-10-02  Paolo Bonzini  <bonzini@gnu.org>  (tiny change)
43600
43601         * lib/quotearg.c (mbstate_t) [!HAVE_MBRTOWC]: #define to int.
43602
43603 2006-10-02  Eric Blake  <ebb9@byu.net>
43604
43605         * modules/strnlen (Depends-on): Add extensions.
43606
43607 2006-10-02  Eric Blake  <ebb9@byu.net>
43608
43609         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use autoconf's
43610         definition in 2.60+.
43611
43612 2006-10-02  Dmitry V. Levin  <ldv@altlinux.org>
43613
43614         * lib/fts.c (fts_close, fts_build, fts_palloc): Remove redundant
43615         checks.
43616
43617 2006-10-02  Bruno Haible  <bruno@clisp.org>
43618
43619         * gnulib-tool (func_emit_lib_Makefile_am): Don't add no-dependencies
43620         to the AUTOMAKE_OPTIONS.
43621         Reported by Jim Meyering.
43622
43623 2006-09-29  Paul Eggert  <eggert@cs.ucla.edu>
43624
43625         Work around bug in Solaris 10 /proc file system:
43626         /proc/self/fd/NNN/.. isn't the parent directory of
43627         the directory whose file descriptor is NNN.  This needs to
43628         be worked around at run time, not compile time, since a
43629         program might be built on Solaris 8, where things work, and
43630         run on Solaris 10.
43631         * lib/openat-priv.h (BUILD_PROC_NAME): Remove.  All callers changed
43632         to use the following interface instead:
43633         (OPENAT_BUFFER_SIZE): New macro.
43634         (openat_proc_name): New function.
43635         * lib/at-func.c (AT_FUNC_NAME): Adjust to above changes.
43636         * lib/openat.c (openat_permissive, openat_needs_fchdir, fdopendir):
43637         Likewise.
43638         * lib/openat-proc.c: New file.
43639         * modules/openat (Files): Add lib/openat-proc.c.
43640         (Depends-on): Add same-inode, stdbool.
43641         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBOBJ(openat-proc).
43642
43643 2006-09-29  Bruno Haible  <bruno@clisp.org>
43644
43645         * lib/fwriteerror.h (fwriteerror_no_ebadf): New declaration.
43646         * lib/(do_fwriteerror): Renamed from fwriteerror. Add ignore_ebadf
43647         argument. Set stdout_closed before testing for ferror, not after.
43648         (fwriteerror, fwriteerror_no_ebadf): New functions.
43649
43650 2006-09-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
43651
43652         * m4/intmax.m4 (gt_TYPE_INTMAX_T): Avoid unused variables warning.
43653
43654 2006-09-28  Paolo Bonzini  <bonzini@gnu.org>
43655
43656         * lib/poll.c (rpl_poll) [__APPLE__]: Use FIONREAD instead of MSG_PEEK.
43657         * m4/poll.m4: Look for sys/ioctl.h and sys/filio.h.
43658
43659 2006-09-28  Jim Meyering  <jim@meyering.net>
43660
43661         * lib/mkdir-p.c: Include "dirchownmod.h", not "dirchownmod.c".
43662         Include <unistd.h>.
43663
43664 2006-09-28  Bruno Haible  <bruno@clisp.org>
43665
43666         * modules/avltreehash-list (Depends-on): Add stdint, remove size_max.
43667         * modules/linkedhash-list (Depends-on): Likewise.
43668         * modules/rbtreehash-list (Depends-on): Likewise.
43669
43670 2006-09-28  Bruno Haible  <bruno@clisp.org>
43671
43672         * lib/strndup.h: Simplify the redefinition of strndup.
43673         (_GL_CONCAT, _GL_XCONCAT, __STRNDUP_ID): Remove macros.
43674         * m4/strndup.m4 (gl_FUNC_STRNDUP): Don't define __STRNDUP_PREFIX.
43675
43676 2006-09-28  Bruno Haible  <bruno@clisp.org>
43677
43678         * lib/gl_avltreehash_list.c: Include <stdint.h> instead of size_max.h.
43679         * lib/gl_linkedhash_list.c: Likewise.
43680         * lib/gl_rbtreehash_list.c: Likewise.
43681
43682 2006-09-27  Paul Eggert  <eggert@cs.ucla.edu>
43683
43684         * lib/canon-host.c (canon_host_r): Work around bug in Darwin 7.9.0
43685         getaddrinfo.
43686
43687         * lib/__fpending.h: Don't include <stdio_ext.h> unless
43688         HAVE_DECL___FPENDING.  This avoids a bug with lsbcc, where
43689         it causes <stdio_ext.h> to cause a compile-time error.
43690         Problem reported by Nelson H. F. Beebe.
43691         * lib/getpass.c: Likewise, except for HAVE_DECL___FSETLOCKING instead
43692         of HAVE_DECL___PENDING.
43693
43694         * m4/fpending.m4 (gl_FUNC_FPENDING): Check for stdio_ext at most once.
43695         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for __fsetlocking's
43696         declaration.
43697
43698 2006-09-27  Jim Meyering  <jim@meyering.net>
43699
43700         This file could end up with a definition for a function
43701         named __strndup, rather than rpl_strndup on a system with
43702         incomplete weak_alias support.
43703         * lib/strndup.c (strndup): Rename from __strndup.
43704         Remove #defines that used to map __strndup to strndup.
43705         Don't use K&R prototypes.
43706         Remove LIBC-related code, since this file is not sync'd with glibc.
43707         * lib/strndup.h: Revamp, accordingly.
43708         * m4/strndup.m4: Modernize.
43709
43710 2006-09-26  Paul Eggert  <eggert@cs.ucla.edu>
43711
43712         * modules/savewd (Depends-on): Add 'raise'.
43713         * lib/savewd.c: Include <signal.h>, for 'raise'.
43714
43715 2006-09-26  Jim Meyering  <jim@meyering.net>
43716
43717         * m4/acl.m4 (AC_FUNC_ACL): Disable ACL support altogether
43718         when we detect Darwin 8.7.0's acl_get_file bug.
43719         Rearrange to perform the new (below) run-test while $LIBS
43720         contains any acl-related library.  Set USE_ACL at the end.
43721         (gl_ACL_GET_FILE): New function.
43722
43723 2006-09-26  Eric Blake  <ebb9@byu.net>
43724
43725         * lib/verror.c: Include <config.h> unconditionally.
43726
43727 2006-09-25  Paul Eggert  <eggert@cs.ucla.edu>
43728
43729         * modules/clock-time (Maintainer): Add self.
43730         * modules/getlogin_r (Depends-on): Add extensions.
43731
43732 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
43733
43734         * modules/clock-time: New module.
43735         * modules/nanosleep (Depends-on): Add clock-time.
43736         * modules/gethrxtime (Depends-on): Likewise.
43737         * modules/gettime (Depends-on): Likewise.
43738         * modules/settime (Depends-on): Likewise.
43739
43740         * modules/fts-lgpl: Depend on openat.
43741         * modules/mkancesdirs: Depend on savewd.
43742         * modules/mkdir-p: Likewise.
43743
43744 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
43745
43746         * m4/host-os.m4 (gl_HOST_OS): Require AC_CANONICAL_HOST.
43747
43748         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Rename cache variable from
43749         `gl_have_arbitrary_file_name_length_limit' to
43750         `gl_cv_have_arbitrary_file_name_length_limit', so that caching
43751         actually works between configure runs.
43752
43753 2006-09-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
43754             Bruno Haible  <bruno@clisp.org>
43755
43756         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Include <string.h>.
43757
43758 2006-09-25  Jim Meyering  <jim@meyering.net>
43759
43760         * m4/fcntl_h.m4 (gl_FCNTL_H): Fix typo in test for failed open.
43761         This typo caused coreutils/tests/dd/misc to fail on Darwin 8.7.0.
43762
43763 2006-09-25  Eric Blake  <ebb9@byu.net>
43764
43765         * gnulib-tool (func_import, func_create_testdir): Fix typos in
43766         exec's in 2006-09-18 patch when shuffling fds.
43767
43768 2006-09-25  Bruno Haible  <bruno@clisp.org>
43769
43770         * m4/getloadavg.m4 (gl_GETLOADAVG): Fix directory in error message.
43771         Reported by Jim Meyering.
43772
43773 2006-09-24  Jim Meyering  <jim@meyering.net>
43774
43775         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Don't use '>' to
43776         compare a pointer against a literal "0".  That caused failures with
43777         at least HP-UX's hpcc.
43778
43779 2006-09-22  Simon Josefsson  <jas@extundo.com>
43780
43781         * modules/gc-sha1:
43782         * modules/gc-md4:
43783         * modules/gc-hmac-sha1:
43784         * modules/gc-hmac-md5:
43785         * modules/gc-des:
43786         * modules/gc-arcfour: Distribute more files.
43787
43788 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
43789
43790         * lib/gl_anylinked_list2.h [lint] (gl_linked_iterator)
43791         (gl_linked_iterator_from_to): Initialize struct completely.
43792         * lib/gl_anytree_list2.h [lint] (gl_tree_iterator): Likewise.
43793         (gl_tree_iterator_from_to): Likewise
43794         * lib/gl_anytree_oset.h [lint] (gl_tree_iterator): Likewise.
43795         * lib/gl_array_list.c [lint] (gl_array_iterator)
43796         (gl_array_iterator_from_to): Likewise.
43797         * lib/gl_array_oset.c [lint] (gl_array_iterator): Likewise.
43798         * lib/gl_carray_list.c [lint] (gl_carray_iterator)
43799         (gl_carray_iterator_from_to): Likewise.
43800
43801         * lib/gc-gnulib.c [GC_USE_HMAC_SHA1]: include hmac.h for hmac_sha1.
43802         * lib/md4.c (md4_process_block): Remove unused variable.
43803         * lib/rijndael-api-fst.c (rijndaelBlockDecrypt): GCC suggests
43804         parentheses for clarity.
43805
43806 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
43807
43808         * modules/bison-i18n (Depends-on): Add gettext.
43809
43810 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
43811
43812         * m4/fsusage.m4 (gl_STATFS_TRUNCATES): Avoid unused variable.
43813         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): Likewise.
43814         * m4/jm-winsz1.m4 (gl_HEADER_TIOCGWINSZ_IN_TERMIOS_H): Likewise;
43815         also add missing comma that caused broken test.
43816         * m4/link-follow.m4 (gl_AC_FUNC_LINK_FOLLOWS_SYMLINK): Include
43817         stdlib.h, for `abort'.
43818         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Avoid unused
43819         variables.
43820         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Check for and
43821         include unistd.h if present, for `rmdir'.
43822         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): Avoid unused
43823         variables.
43824         * m4/putenv.m4 (gl_FUNC_PUTENV): Rewrite using AC_RUN_IFELSE, and
43825         in the process include standard headers for prototypes.
43826         * m4/readutmp.m4 (gl_READUTMP): Require AC_GNU_SOURCE, so utmpxname
43827         gets declared on GNU/Linux.
43828         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Check for and include
43829         unistd.h, for `rmdir'.
43830         * m4/time_r.m4 (gl_TIME_R): Avoid unused variables.
43831
43832         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Avoid expression that is
43833         always true.
43834         * m4/strndup.m4 (gl_FUNC_STRNDUP): include stdlib.h, for `free'.
43835
43836         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Avoid gcc -Wall warnings.
43837
43838 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
43839
43840         * gnulib-tool (func_version): Create output all at once.  This
43841         may help avoid triggering unnecessary SIGPIPEs, and at any
43842         rate it doesn't hurt.
43843
43844 2006-09-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
43845             Bruno Haible  <bruno@clisp.org>
43846
43847         * m4/lock.m4 (gl_LOCK_BODY): Avoid unused variables warning.
43848         * m4/mbswidth.m4 (gl_MBSWIDTH): Likewise.
43849         * m4/signed.m4 (bh_C_SIGNED): Likewise.
43850
43851         * m4/vasprintf.m4 (gl_PREREQ_VASPRINTF_H): New macro.
43852         (gl_FUNC_VASPRINTF): Invoke it.
43853
43854 2006-09-22  Bruno Haible  <bruno@clisp.org>
43855
43856         * m4/getloadavg.m4 (gl_GETLOADAVG): Expect the directory of
43857         getloadavg.c as first argument.
43858
43859 2006-09-22  Bruno Haible  <bruno@clisp.org>
43860
43861         * gnulib-tool (func_import, func_create_testdir): Set gl_source_base
43862         at the beginning of the gl_INIT macro.
43863         * modules/getloadavg (configure.ac): Pass $gl_source_base to
43864         gl_GETLOADAVG.
43865
43866 2006-09-22  Bruno Haible  <bruno@clisp.org>
43867
43868         * gnulib-tool (func_create_megatestdir): Don't include the config-h
43869         module.
43870         Suggested by Ralf Wildenhues.
43871
43872 2006-09-20  Paul Eggert  <eggert@cs.ucla.edu>
43873
43874         Import this patch from libc:
43875
43876         2006-09-06  Jakub Jelinek  <jakub@redhat.com>
43877
43878         * lib/regex_internal.c (re_string_reconstruct): Handle
43879         offset < pstr->valid_raw_len && pstr->offsets_needed case.
43880         Ensure no bytes read before raw_mbs array.  Pass a saved copy of
43881         pstr->valid_len - 1 rather than pstr->valid_raw_len - 1 to
43882         re_string_context_at.
43883
43884         * m4/regex.m4 (gl_REGEX): Check for locale.h, since the test
43885         now requires it.
43886         (gl_PREREQ_REGEX): Don't check for locale.h any more, since
43887         gl_REGEX now does it for us.
43888         (gl_REGEX): Add test taken from
43889         http://sourceware.org/ml/libc-hacker/2006-09/msg00008.html.
43890
43891         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Require AC_SYS_LARGEFILE.
43892         Check that large offsets work.  Modernize Autoconf usages.
43893         Prefer "yes" to mean a good thing rather than a bad.
43894         Don't put "#define mkstemp" in config.h, as this might interfere
43895         with standard system headers that "#define mkstemp mkstemp64".
43896
43897         * modules/mkstemp (Depends-on): Add extensions, so that
43898         mkstemp is visible on some platforms.
43899         (Makefile.am): Add mkstemp.h to EXTRA_DIST.
43900         (Include): Change to "mkstemp.h" from <stdlib.h>.
43901         (Files): Add mkstemp.h.
43902
43903         * lib/mkstemp.h: New file, since some standard headers
43904         #define mkstemp.
43905         * lib/mkstemp.c: Revamp to put the !_LIBC code together.
43906         Include "mkstemp.h".
43907         Make the _LIBC code resemble glibc original more,
43908         e.g., use K&R style.
43909         * lib/mkstemp-safer.c: Include "mkstemp.h" instead of <stdlib.h>.
43910         (mkstemp): Remove, since mkstemp.h does this for us.
43911         * lib/stdlib--.h: Include mkstemp.h.
43912
43913         Import this patch from libc:
43914
43915         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
43916
43917         * lib/tempname.c (__gen_tempname): Change attempts_min
43918         into a macro.  Use preprocessor to decide how to initialize
43919         attempts [Coverity CID 67].
43920
43921 2006-09-20  Bruno Haible  <bruno@clisp.org>
43922
43923         * lib/mkdtemp.c: Import from libc.
43924         2006-04-07  Ulrich Drepper  <drepper@redhat.com>
43925                 * sysdeps/posix/tempname.c (__gen_tempname): Change
43926                 attempts_min into a macro.  Use preprocessor to decide how to
43927                 initialize attempts [Coverity CID 67].
43928         2001-11-27  Paul Eggert  <eggert@twinsun.com>
43929                 * sysdeps/posix/tempname.c (__gen_tempname): Try at least
43930                 ATTEMPTS_MIN or TMP_MAX times, whichever is greater.
43931
43932 2006-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
43933
43934         * gnulib-tool (func_exit): New function, to allow to pass the
43935         exit status portably through the trap.  Use everywhere.
43936         (--help, --version): Signal a write error.
43937         (trap): catch SIGPIPE, for write errors.
43938         Exit at the end of the trap, with the correct exit status.
43939
43940 2006-09-19  Karl Berry  <karl@gnu.org>
43941
43942         * doc/gnulib.texi: note about the license texinfo files.
43943
43944 2006-09-19  Eric Blake  <ebb9@byu.net>
43945
43946         * gnulib-tool: Avoid space-tab.
43947
43948 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
43949
43950         * lib/getaddrinfo.c (getaddrinfo) [defined HAVE_IPV6]: Fix typo
43951         that prevented coreutils 6.1 from building.  Problem reported
43952         by Petter Reinholdtsen.
43953
43954 2006-09-18  Paul Eggert  <eggert@cs.ucla.edu>
43955
43956         * gnulib-tool (avoidlist): Fix typo that broke options like
43957         --avoid=lock that are used by coreutils bootstrap.
43958
43959 2006-09-18  Mark D. Baushke  <mdb@gnu.org>
43960
43961         * m4/inttypes.m4 (gl_INTTYPES_H): Quote "test" args
43962         more systematically.
43963
43964 2006-09-18  Jim Meyering  <jim@meyering.net>
43965
43966         * lib/savewd.c (savewd_restore): Don't shadow: s/status/child_status/.
43967
43968 2006-09-18  Bruno Haible  <bruno@clisp.org>
43969
43970         * modules/inttypes (Files): Remove m4/inttypes-h.m4.
43971
43972 2006-09-18  Bruno Haible  <bruno@clisp.org>
43973
43974         * m4/inttypes-h.m4 (gl_HEADER_INTTYPES_H): Remove macro.
43975         * m4/inttypes-pri.m4: Require autoconf >= 2.52.
43976         (gt_INTTYPES_PRI): Invoke AC_CHECK_HEADERS on inttypes.h. Test
43977         ac_cv_header_inttypes_h instead of gl_cv_header_inttypes_h.
43978         * m4/gettext.m4: Require autoconf >= 2.52.
43979         (gt_INTL_SUBDIR_CORE): Invoke AC_CHECK_HEADERS on inttypes.h.
43980         * m4/inttypes.m4 (gl_INTTYPES_H): Test ac_cv_header_inttypes_h instead
43981         of gl_cv_header_inttypes_h.
43982
43983 2006-09-18  Bruno Haible  <bruno@clisp.org>
43984
43985         * lib/javaversion.c: Include configmake.h.
43986
43987 2006-09-18  Bruno Haible  <bruno@clisp.org>
43988
43989         * gnulib-tool (func_import, func_create_testdir): Use exec tricks to
43990         avoid that the while loops be executed in a subshell.
43991
43992 2006-09-18  Bruno Haible  <bruno@clisp.org>
43993
43994         * MODULES.html.sh (func_module): Break long lines.
43995         Suggested by Bruce Korb <bkorb@gnu.org>.
43996
43997 2006-09-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
43998
43999         Speed up by a factor of 1.12.
44000         * gnulib-tool (nl): New variable.
44001         (func_import): Rewrite include directive extraction to only read each
44002         directive once.
44003
44004 2006-09-17  Bruno Haible  <bruno@clisp.org>
44005
44006         * modules/javaversion (Makefile.am): Remove DEFS setting.
44007         (Depends-on): Add configmake, for PKGDATADIR definition.
44008
44009 2006-09-17  Bruno Haible  <bruno@clisp.org>
44010
44011         * gnulib-tool (func_create_testdir): Rewrite all files at once.
44012
44013 2006-09-17  Bruno Haible  <bruno@clisp.org>
44014
44015         * gnulib-tool (func_append): New function, stolen from libtool.m4.
44016         (func_modules_transitive_closure, func_modules_add_dummy,
44017         func_modules_to_filelist, func_import, func_create_testdir,
44018         func_create_megatestdir, ...): Use it wherever possible.
44019         Suggested by Ralf Wildenhues.
44020
44021 2006-09-16  Karl Berry  <karl@gnu.org>
44022
44023         * doc/fdl.texi (ADDENDUM): switch to @heading from @appendixsubsec,
44024         to avoid sectioning errors.
44025         * doc/lgpl.texi, gpl.texi (Copying): downcase @unnumbered title.
44026         [ifinfo]: blank line after @center-ed titles.
44027         * doc/lgpl.texi (Library Copying): Rename main node to GNU LGPL.
44028         Spell FSF address consistently with others.
44029         (These changes approved by rms.)
44030
44031 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
44032
44033         Speed up by a factor of 1.61.
44034         * gnulib-tool (func_modules_transitive_closure): Rewrite to not check
44035         already checked module names again.
44036
44037 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
44038
44039         Speed up by a factor of 1.13.
44040         * gnulib-tool (func_import): Rewrite all old_files at once; likewise
44041         for new_files, and the input to func_add_or_update.
44042
44043 2006-09-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
44044
44045         * gnulib-tool (func_all_modules, func_modules_to_filelist, func_import,
44046         func_create_testdir, ...): Change 'sort | uniq' to 'sort -u'.
44047
44048 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
44049
44050         * modules/mkancesdirs (Depends-on): Add fcntl.
44051         * modules/savewd: New file.
44052         * MODULES.html.sh (File system functions): Add savewd.
44053
44054         * modules/configmake (Makefile.am): Add support for the
44055         Automake-supplied PKGLIBDIR, PKGINCLUDEDIR, PKGDATADIR.
44056
44057 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
44058
44059         * m4/savewd.m4: New file.
44060
44061 2006-09-15  Paul Eggert  <eggert@cs.ucla.edu>
44062
44063         * lib/dirchownmod.c: Don't include fcntl.h; no longer needed.
44064         (dirchownmod): New arg FD.  All callers changed.
44065         Use FD rather than opening the directory ourself, as opening is
44066         now the caller's responsibility.
44067         * lib/dirchownmod.h: Likewise.
44068         * lib/mkancesdirs.c: Include <sys/types.h>, for portability to older
44069         hosts that require <sys/types.h> before <sys/stat.h>.  Include
44070         fcntl.h, savewd.h, and unistd.h, not dirname.h and stat-macros.h.
44071         (test_dir): Remove.
44072         (mkancesdirs): Return length of prefix of FILE that has already
44073         been made, or -2 if there is a child doing the work.  Redo
44074         algorithm so that it is O(N) rather than O(N**2).  Optimize away
44075         ".", and treat ".." specially since it might stray back into
44076         already-created areas.  Use a subprocess if necessary.  New arg
44077         WD; all users changed.  MAKE_DIR function should now return 1
44078         if it creates a directory that is not readable.  Return -2 if
44079         a child process is spun off.
44080         * lib/mkancesdirs.h: Include <stddef.h>, for ptrdiff_t.
44081         Adjust signature to match code.
44082         * lib/mkdir-p.c: Include dirname.h, for IS_ABSOLUTE_FILE_NAME.
44083         (make_dir_parents): Use a subprocess if necessary.  New arg WD;
44084         all users changed.
44085         * lib/savewd.c, lib/savewd.h: New files.
44086
44087 2006-09-15  Jim Meyering  <jim@meyering.net>
44088
44089         * modules/rename-dest-slash: New module.
44090         * MODULES.html.sh (posix_compat): Add it here.
44091
44092         * modules/rename: Reflect vb_FUNC_RENAME -> gl_FUNC_RENAME change.
44093
44094 2006-09-15  Jim Meyering  <jim@meyering.net>
44095
44096         * m4/rename-dest-slash.m4 (gl_FUNC_RENAME_TRAILING_DEST_SLASH): New
44097         file.
44098
44099         * m4/rename.m4 (gl_FUNC_RENAME): Rename from vb_FUNC_RENAME.
44100
44101 2006-09-15  Jim Meyering  <jim@meyering.net>
44102
44103         * lib/rename-dest-slash.c (has_trailing_slash): Use
44104         FILE_SYSTEM_PREFIX_LEN, for non-POSIX systems.
44105         (rpl_rename_dest_slash): Perform the cheaper trailing slash
44106         test before testing whether SRC is a directory.
44107         Suggestions from Bruno Haible.
44108
44109         Avoid a warning about an unused variable.
44110         * lib/regex_internal.c (re_dfa_add_node): Move declaration of "type"
44111         into the #ifdef block where it's used.
44112
44113         * lib/rename-dest-slash.c: New file.
44114
44115 2006-09-14  Bruno Haible  <bruno@clisp.org>
44116
44117         * lib/allocsa.c: Include <config.h> unconditionally.
44118         * lib/asnprintf.c: Likewise.
44119         * lib/asprintf.c: Likewise.
44120         * lib/c-strcasecmp.c: Likewise.
44121         * lib/c-strcasestr.c: Likewise.
44122         * lib/c-strncasecmp.c: Likewise.
44123         * lib/c-strstr.c: Likewise.
44124         * lib/classpath.c: Likewise.
44125         * lib/clean-temp.c: Likewise.
44126         * lib/concatpath.c: Likewise.
44127         * lib/copy-file.c: Likewise.
44128         * lib/csharpcomp.c: Likewise.
44129         * lib/csharpexec.c: Likewise.
44130         * lib/execute.c: Likewise.
44131         * lib/fatal-signal.c: Likewise.
44132         * lib/findprog.c: Likewise.
44133         * lib/fwriteerror.c: Likewise.
44134         * lib/gl_array_list.c: Likewise.
44135         * lib/gl_array_oset.c: Likewise.
44136         * lib/gl_avltree_list.c: Likewise.
44137         * lib/gl_avltree_oset.c: Likewise.
44138         * lib/gl_avltreehash_list.c: Likewise.
44139         * lib/gl_carray_list.c: Likewise.
44140         * lib/gl_linked_list.c: Likewise.
44141         * lib/gl_linkedhash_list.c: Likewise.
44142         * lib/gl_list.c: Likewise.
44143         * lib/gl_oset.c: Likewise.
44144         * lib/gl_rbtree_list.c: Likewise.
44145         * lib/gl_rbtree_oset.c: Likewise.
44146         * lib/gl_rbtreehash_list.c: Likewise.
44147         * lib/imaxabs.c: Likewise.
44148         * lib/imaxdiv.c: Likewise.
44149         * lib/javacomp.c: Likewise.
44150         * lib/javaexec.c: Likewise.
44151         * lib/javaversion.c: Likewise.
44152         * lib/linebreak.c: Likewise.
44153         * lib/localcharset.c: Likewise.
44154         * lib/lock.c: Likewise.
44155         * lib/mbchar.c: Likewise.
44156         * lib/mbswidth.c: Likewise.
44157         * lib/mkdtemp.c: Likewise.
44158         * lib/pipe.c: Likewise.
44159         * lib/printf-args.c: Likewise.
44160         * lib/printf-parse.c: Likewise.
44161         * lib/progname.c: Likewise.
44162         * lib/progreloc.c: Likewise.
44163         * lib/readlink.c: Likewise.
44164         * lib/sh-quote.c: Likewise.
44165         * lib/stpcpy.c: Likewise.
44166         * lib/stpncpy.c: Likewise.
44167         * lib/strcasecmp.c: Likewise.
44168         * lib/strcasestr.c: Likewise.
44169         * lib/strcspn.c: Likewise.
44170         * lib/striconv.c: Likewise.
44171         * lib/strncasecmp.c: Likewise.
44172         * lib/strnlen1.c: Likewise.
44173         * lib/strstr.c: Likewise.
44174         * lib/strtok_r.c: Likewise.
44175         * lib/tls.c: Likewise.
44176         * lib/tmpdir.c: Likewise.
44177         * lib/unicodeio.c: Likewise.
44178         * lib/unsetenv.c: Likewise.
44179         * lib/vasnprintf.c: Likewise.
44180         * lib/vasprintf.c: Likewise.
44181         * lib/wait-process.c: Likewise.
44182         * lib/xallocsa.c: Likewise.
44183         * lib/xsetenv.c: Likewise.
44184         * lib/xstriconv.c: Likewise.
44185
44186 2006-09-13  Simon Josefsson  <jas@extundo.com>
44187
44188         * m4/getdate.m4: Don't AC_LIBOBJ([getdate]), automake takes care of
44189         that internally, suggested by Ralf Wildenhues
44190         <Ralf.Wildenhues@gmx.de>.
44191
44192 2006-09-13  Simon Josefsson  <jas@extundo.com>
44193
44194         * gnulib-tool (func_emit_lib_Makefile_am): Use $(LIBOBJS), not
44195         @LIBOBJS@.
44196         Suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
44197
44198 2006-09-13  Paul Eggert  <eggert@cs.ucla.edu>
44199
44200         * lib/_fpending.c: Include <config.h> unconditionally, since we no
44201         longer worry about uses that don't define HAVE_CONFIG_H.
44202         * lib/acl.c, lib/alloca.c, lib/argmatch.c, lib/atexit.c:
44203         * lib/backupfile.c, lib/basename.c, lib/c-stack.c, lib/c-strtod.c:
44204         * lib/calloc.c,lib/ canon-host.c, lib/canonicalize.c, lib/chdir-long.c:
44205         * lib/chdir-safer.c, lib/chown.c, lib/cloexec.c, lib/close-stream.c:
44206         * lib/closeout.c, lib/creat-safer.c, lib/cycle-check.c, lib/diacrit.c:
44207         * lib/dirchownmod.c, lib/dirfd.c, lib/dirname.c, lib/dup-safer.c:
44208         * lib/dup2.c, lib/error.c, lib/euidaccess.c, lib/exclude.c:
44209         * lib/exitfail.c, lib/fchmodat.c, lib/fchown-stub.c, lib/fd-safer.c:
44210         * lib/file-type.c, lib/fileblocks.c, lib/filemode.c, lib/filenamecat.c:
44211         * lib/fnmatch.c, lib/fopen-safer.c, lib/fprintftime.c, lib/free.c:
44212         * lib/fsusage.c, lib/ftruncate.c, lib/fts-cycle.c, lib/fts.c:
44213         * lib/full-write.c, lib/gai_strerror.c, lib/getcwd.c, lib/getdate.y:
44214         * lib/getdomainname.c, lib/getgroups.c, lib/gethostname.c:
44215         * lib/gethrxtime.c, lib/getloadavg.c, lib/getlogin_r.c:
44216         * lib/getndelim2.c, lib/getnline.c, lib/getopt.c, lib/getopt1.c:
44217         * lib/getpass.c, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c:
44218         * lib/getusershell.c, lib/glob.c, lib/group-member.c:
44219         * lib/hard-locale.c, lib/hash-pjw.c, lib/hash.c, lib/human.c:
44220         * lib/idcache.c, lib/inet_ntop.c, lib/inet_pton.c, lib/inttostr.c:
44221         * lib/isdir.c, lib/lchown.c, lib/linebuffer.c, lib/long-options.c:
44222         * lib/lstat.c, lib/malloc.c, lib/md5.c, lib/memcasecmp.c, lib/memchr.c:
44223         * lib/memcmp.c, lib/memcoll.c, lib/memcpy.c, lib/memmove.c:
44224         * lib/memrchr.c, lib/mkancesdirs.c, lib/mkdir-p.c, lib/mkdir.c:
44225         * lib/mkdirat.c, lib/mkstemp-safer.c, lib/mkstemp.c, lib/modechange.c:
44226         * lib/mountlist.c, lib/nanosleep.c, lib/obstack.c, lib/open-safer.c:
44227         * lib/openat-die.c, lib/openat.c, lib/pagealign_alloc.c, lib/physmem.c:
44228         * lib/pipe-safer.c, lib/posixtm.c, lib/posixver.c, lib/putenv.c:
44229         * lib/quote.c, lib/quotearg.c, lib/raise.c, lib/readtokens.c:
44230         * lib/readtokens0.c, lib/readutmp.c, lib/realloc.c, lib/regex.c:
44231         * lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c:
44232         * lib/same.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c:
44233         * lib/settime.c, lib/sha1.c, lib/sig2str.c, lib/snprintf.c:
44234         * lib/strdup.c, lib/strerror.c, lib/strftime.c, lib/stripslash.c:
44235         * lib/strndup.c, lib/strnlen.c, lib/strpbrk.c, lib/strtod.c:
44236         * lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c:
44237         * lib/time_r.c, lib/timegm.c, lib/tmpfile-safer.c, lib/unlinkdir.c:
44238         * lib/userspec.c, lib/utime.c, lib/utimecmp.c, lib/utimens.c:
44239         * lib/version-etc-fsf.c, lib/version-etc.c, lib/xalloc-die.c:
44240         * lib/xgetcwd.c, lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c:
44241         * lib/xnanosleep.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtoimax.c:
44242         * lib/xstrtol.c, lib/xstrtoumax.c, lib/yesno.c:
44243         Likewise.
44244
44245 2006-09-13  Eric Blake  <ebb9@byu.net>
44246
44247         * lib/getopt.c: Fix typo in last commit.
44248
44249 2006-09-12  Sergey Poznyakoff  <gray@gnu.org.ua>
44250
44251         * lib/argp-help.c (argp_doc): Make sure NULL is not passed to
44252         dgettext.
44253
44254 2006-09-12  Jim Meyering  <jim@meyering.net>
44255
44256         * lib/nanosleep.c: Include <sys/types.h> before sys/select.h, to avoid
44257         compilation failure (due to use of pid_t in latter) on NetBSD 1.6.
44258         Reported by Nelson H. F. Beebe.
44259
44260 2006-09-10  Sergey Poznyakoff  <gray@gnu.org.ua>
44261
44262         * lib/argp-parse.c (__argp_parse) [!_LIBC]: Make sure
44263         program_invocation_name and program_invocation_short_name are
44264         initialized.
44265         * lib/argp-namefrob.h: Move declarations of program_invocation_name
44266         and program_invocation_short_name to argp.h, so they are visible
44267         to user programs.
44268         * lib/argp.h: Likewise
44269
44270 2006-09-10  Bruno Haible  <bruno@clisp.org>
44271
44272         * modules/mkdtemp (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
44273         m4/inttypes_h.m4, m4/uintmax_t.m4.
44274
44275 2006-09-10  Bruno Haible  <bruno@clisp.org>
44276
44277         * m4/mkdtemp.m4 (gl_PREREQ_MKDTEMP): Don't require
44278         gl_AC_TYPE_UINTMAX_T.
44279
44280 2006-09-10  Bruno Haible  <bruno@clisp.org>
44281
44282         * lib/mkdtemp.c: Include <stdint.h> always. Don't include <inttypes.h>.
44283
44284 2006-09-09  Sergey Poznyakoff  <gray@gnu.org.ua>
44285
44286         * lib/argp.h (struct argp): Document the N_("..") "\v" N_("..")
44287         convention.  Text proposed by Bruno Haible.
44288         (struct argp_option): Document the use of N_() wrappers.
44289
44290         * lib/argp-help.c (argp_doc): Split the untranslated doc string on
44291         '\v', and translate the two parts separately, instead of feeding
44292         the whole string to gettext.  This allows to exclude
44293         '\v' from the strings visible to the translator by writing doc
44294         strings as N_("..") "\v" N_("..").
44295
44296 2006-09-09  Paul Eggert  <eggert@cs.ucla.edu>
44297
44298         * config/srclist.txt: Undo latest change; the bug was fixed.
44299
44300 2006-09-09  Bruno Haible  <bruno@clisp.org>
44301
44302         * gnulib-tool (func_emit_lib_Makefile_am): Eliminate lib_LDFLAGS
44303         assignments if building a library without libtool.
44304         (func_emit_tests_Makefile_am): Likewise. Handle lib_* variables as
44305         in func_emit_lib_Makefile_am.
44306         (func_import): When building a static library libfoo.a, arrange to
44307         define variables LIBFOO_LIBDEPS and LIBFOO_LTLIBDEPS.
44308         (func_create_testdir): Likewise.
44309         * modules/gc (configure.ac, Makefile.am): If building statically,
44310         augment gl_libdeps and gl_ltlibdeps instead of lib_LDFLAGS.
44311         * modules/iconvme (configure.ac, Makefile.am): Likewise.
44312         * modules/striconv (configure.ac, Makefile.am): Likewise.
44313         Based on a suggestion by Ralf Wildenhues.
44314
44315 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
44316
44317         * m4/mktime.m4 (AC_FUNC_MKTIME): Sync from Autoconf.
44318         Check for unistd.h too, since Autoconf doesn't assume POSIX.
44319         Also:
44320
44321         2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
44322         Add year_2050_test to catch glibc bug 2821
44323         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
44324
44325         2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
44326         Prefer #ifdef to #if.
44327
44328         2006-04-02  Paul Eggert  <eggert@cs.ucla.edu>
44329         Return from 'main' instead of calling 'exit'.
44330
44331 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
44332
44333         * lib/mktime.c (guess_time_tm): Fix bug where mktime
44334         returned the maximum time_t value rather than (time_t) -1.
44335         Problem originally reported by William Bardwell
44336         <http://sourceware.org/bugzilla/show_bug.cgi?id=2821>.
44337
44338         * lib/isapipe.h (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
44339         Moved to here ...
44340         * lib/isapipe.c (HAVE_FIFO_PIPES) [!defined HAVE_FIFO_PIPES]:
44341         ... from here.
44342
44343 2006-09-08  Paul Eggert  <eggert@cs.ucla.edu>
44344
44345         * config/srclist.txt: Temporarily comment out mktime.c until glibc bug
44346         2821 is fixed.
44347
44348 2006-09-08  Jim Meyering  <jim@meyering.net>
44349
44350         Don't make generated files read-only.  That would bother too many
44351         people.  However, do retain the ability to work when targets are
44352         read-only: remove the destination and temporary files before writing
44353         them (when generated via sed or echo), or by using the -f option for
44354         both cp and mv commands.  Suggestion to use -f from Paul Eggert.
44355         * modules/alloca-opt, modules/argz, modules/arpa_inet:
44356         * modules/byteswap, modules/configmake, modules/fcntl:
44357         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
44358         * modules/localcharset, modules/netinet_in, modules/poll:
44359         * modules/stdbool, modules/stdint, modules/sys_select:
44360         * modules/sys_socket, modules/sys_stat, modules/sysexits:
44361
44362 2006-09-08  Jim Meyering  <jim@meyering.net>
44363
44364         Avoid new build failure on FreeBSD 6.0.
44365         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Include
44366         <sys/param.h> when testing whether getmntinfo uses statvfs.  Patch by
44367         Pavel Tsekov, in <http://savannah.gnu.org/bugs/?17643>.
44368
44369 2006-09-07  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
44370
44371         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't use plain echo.
44372
44373 2006-09-07  Jim Meyering  <jim@meyering.net>
44374
44375         Fix global typo in last change: use chmod u-w, not chmod u-x.
44376         Spotted by Paul Eggert and Bruce Korb.
44377         * modules/alloca-opt, modules/argz, modules/arpa_inet:
44378         * modules/byteswap, modules/configmake, modules/fcntl:
44379         * modules/fnmatch, modules/getopt, modules/glob, modules/inttypes:
44380         * modules/localcharset, modules/netinet_in, modules/poll:
44381         * modules/stdbool, modules/stdint, modules/sys_select:
44382         * modules/sys_socket, modules/sys_stat, modules/sysexits:
44383
44384 2006-09-06  Jim Meyering  <jim@meyering.net>
44385
44386         Make generated files be read-only.
44387         * modules/alloca-opt (Makefile.am): Work also when $@ is read-only.
44388         Ensure that each generated file is now read-only.
44389         * modules/argz: Likewise.
44390         * modules/arpa_inet: Likewise.
44391         * modules/byteswap: Likewise.
44392         * modules/configmake: Likewise.
44393         * modules/fcntl: Likewise.
44394         * modules/fnmatch: Likewise.
44395         * modules/getopt: Likewise.
44396         * modules/glob: Likewise.
44397         * modules/inttypes: Likewise.
44398         * modules/netinet_in: Likewise.
44399         * modules/poll: Likewise.
44400         * modules/stdbool: Likewise.
44401         * modules/stdint: Likewise.
44402         * modules/sys_select: Likewise.
44403         * modules/sys_socket: Likewise.
44404         * modules/sys_stat: Likewise.
44405         * modules/sysexits: Likewise.
44406         * modules/localcharset: Same as above, but continue using temporary
44407         file named "t-$@" (why different?) rather than the "$@-t" used
44408         everywhere else.
44409
44410         * modules/sysexits (Makefile.am): Replace literal occurrences
44411         of "sysexit.h" more readable, and more consistent, "$@".
44412
44413 2006-09-06  Bruno Haible  <bruno@clisp.org>
44414
44415         * modules/striconv: New file.
44416         * modules/xstriconv: New file.
44417         * MODULES.html.sh (Internationalization functions): Add striconv,
44418         xstriconv.
44419
44420 2006-09-06  Bruno Haible  <bruno@clisp.org>
44421
44422         * modules/gc (Makefile.am): Augment lib_LDFLAGS, not lib_LIBADD.
44423         * modules/iconvme (Makefile.am): Likewise. Also handle the case of
44424         not using libtool correctly.
44425
44426 2006-09-06  Bruno Haible  <bruno@clisp.org>
44427
44428         * lib/striconv.h: New file.
44429         * lib/striconv.c: New file, merging iconvme.c with GNU gettext's
44430         iconvstring.c.
44431         * lib/xstriconv.h: New file.
44432         * lib/xstriconv.c: New file.
44433
44434 2006-09-06  Bruno Haible  <bruno@clisp.org>
44435
44436         * gnulib-tool (func_emit_lib_Makefile_am): Initialize also
44437         lib_..._LDFLAGS.
44438
44439 2006-09-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
44440
44441         * lib/argz_.h: Sync from Libtool.
44442
44443         2006-09-04  George Bosilca <bosilca@cs.utk.edu>
44444                 and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
44445
44446         * lib/libltdl/argz_.h: It's __cplusplus, not _cplusplus.
44447
44448 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
44449
44450         * modules/trim: New file.
44451
44452 2006-09-05  Davide Angelocola  <davide.angelocola@tiscali.it>
44453
44454         * lib/trim.h: New file.
44455         * lib/trim.c: New file.
44456
44457 2006-09-05  Bruno Haible  <bruno@clisp.org>
44458
44459         * MODULES.html.sh (String handling): Add trim.
44460
44461 2006-09-04  Karl Berry  <karl@gnu.org>
44462
44463         * config/srclist.txt (signed.m4, gettext.m4): changes not propagated
44464         until next release.
44465
44466 2006-09-03  Bruno Haible  <bruno@clisp.org>
44467
44468         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Locate mingw shared libraries
44469         correctly.
44470
44471 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
44472
44473         * m4/getloadavg.m4 (gl_GETLOADAVG): Use CONFIGURING_GETLOADAVG,
44474         not gl_GETLOADAVG.  Omit unneeded semicolons.
44475         Problems reported by Ralf Wildenhues in
44476         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
44477         (gl_PREREQ_GETLOADAVG): Use AC_DEFUN, not m4_define.  Put
44478         at the end, which is the usual gnulib style.
44479
44480         * m4/fstypename.m4 (gl_FSTYPENAME): Use AC_CHECK_MEMBERS instead
44481         of doing all the work ourselves.
44482         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Don't check for
44483         sys/statvfs.h since the code doesn't use HAVE_SYS_STATVFS_H.
44484
44485 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
44486
44487         * lib/getloadavg.c: Use CONFIGURING_GETLOADAVG, not gl_GETLOADAVG.
44488         Problem reported by Ralf Wildenhues in
44489         <http://lists.gnu.org/archive/html/bug-gnulib/2006-09/msg00000.html>.
44490
44491         * lib/mountlist.c: All uses of HAVE_F_FSTYPENAME_IN_STATFS replaced by
44492         HAVE_STRUCT_STATFS_F_FSTYPENAME.
44493
44494 2006-09-01  Paul Eggert  <eggert@cs.ucla.edu>
44495
44496         * gnulib-tool (func_emit_lib_Makefile_am): Fix typos in
44497         yesterday's patch by changing test -n to test -z.
44498
44499 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
44500
44501         * modules/getloadavg (Files): Add m4/getloadavg.m4.
44502         (configure.ac): AC_FUNC_GETLOADAVG -> gl_GETLOADAVG, as
44503         the former is now obsolescent.
44504
44505         * modules/chdir-long (Depends-on): Add fcntl.
44506
44507 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
44508
44509         * m4/fnmatch.m4: Add comment that Autoconf AC_FUNC_FNMATCH is
44510         obsolescent, and programs should use gnulib instead.
44511         * m4/getloadavg.m4: New file, with contents taken from Autoconf
44512         but with prefixes changed.
44513
44514 2006-08-31  Paul Eggert  <eggert@cs.ucla.edu>
44515
44516         * lib/getloadavg.c [defined gl_GETLOADAVG]: Don't include config.h
44517         or stdbool.h, because they might not exist while configuring.
44518
44519         * lib/chdir-long.c: Include <fcntl.h>, for O_DIRECTORY.
44520         Don't include unistd.h or limits.h; not needed, since chdir-long.h
44521         does that for us.
44522         (O_DIRECTORY): Remove.
44523
44524 2006-08-31  Eric Blake  <ebb9@byu.net>
44525
44526         * gnulib-tool: Don't let emacs change spaces to TAB.
44527
44528 2006-08-31  Bruno Haible  <bruno@clisp.org>
44529
44530         * gnulib-tool: When calling func_import more than once, do it in a
44531         subshell.
44532         Reported by Eric Blake <ebb9@byu.net>.
44533
44534 2006-08-31  Bruno Haible  <bruno@clisp.org>
44535
44536         * gnulib-tool (nl): Remove variable.
44537         (sed_transform_lib_file): Use more robust test for config-h module.
44538         (func_import): Fix typo in 2006-08-25 patch.
44539
44540 2006-08-31  Bruno Haible  <bruno@clisp.org>
44541
44542         * gnulib-tool (func_emit_lib_Makefile_am): When --makefile-name was
44543         specified, augment Makefile.am variables instead of assigning them.
44544
44545 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
44546
44547         Work around a bug in both the Linux and SunOS 64-bit kernels:
44548         nanosleep mishandles sleeps for longer than 2**31 seconds.
44549         Problem reported by Frank v Waveren in
44550         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
44551         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Require gl_CLOCK_TIME.
44552         Check for nanosleep bug.
44553         (LIB_NANOSLEEP): Append clock_gettime library if needed.
44554
44555 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
44556
44557         Work around a bug in both the Linux and SunOS 64-bit kernels:
44558         nanosleep mishandles sleeps for longer than 2**31 seconds.
44559         Problem reported by Frank v Waveren in
44560         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00298.html>.
44561         * lib/nanosleep.c (BILLION): New constant.
44562         (getnow) [HAVE_BUG_BIG_NANOSLEEP]: New functions.
44563         (rpl_nanosleep) [HAVE_BUG_BIG_NANOSLEEP]: Completely new
44564         implementation.
44565
44566 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
44567
44568         * modules/nanosleep (Depends-on): Add gettime.
44569
44570 2006-08-30  Paul Eggert  <eggert@cs.ucla.edu>
44571         and Simon Josefsson  <jas@extundo.com>
44572         and Oskar Liljeblad  <oskar@osk.mine.nu>
44573
44574         * MODULES.html.sh (Support for building documentation): Add gpl, lgpl.
44575         * gnulib-tool (func_import): New license type 'unmodifiable license
44576         text'.
44577         * modules/fdl: Use it.  Longer description.
44578         * module/gpl, module/lgpl: New files.
44579
44580 2006-08-30  Jim Meyering  <jim@meyering.net>
44581
44582         * lib/isapipe.c (isapipe): Rename local s/fd/fd_pair/ to avoid
44583         shadowing the parameter.
44584
44585 2006-08-29  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
44586
44587         Sync from Libtool:
44588
44589         2006-08-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
44590
44591         * lib/libltdl/argz.c: Use `#ifdef HAVE_CONFIG_H', to facilitate code
44592         sharing with gnulib.  Report by Eric Blake.
44593
44594 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
44595
44596         * modules/isapipe: New file.
44597         * MODULES.html.sh (File descriptor based Input/Output): Add isapipe.
44598
44599 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
44600
44601         * modules/configmake (Makefile.am): Add a comment, and omit
44602         the CONFIGMAKE_ prefix from generated macro names.  Suggested
44603         by Bruno Haible.
44604
44605 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
44606
44607         * m4/isapipe.m4: New file.
44608
44609 2006-08-29  Paul Eggert  <eggert@cs.ucla.edu>
44610
44611         * lib/isapipe.c, lib/isapipe.h: New files.
44612
44613 2006-08-29  Jim Meyering  <jim@meyering.net>
44614
44615         * modules/configmake (Makefile.am): Make configmake.h depend on
44616         Makefile.  Otherwise, a stale configmake.h could hang around.
44617
44618 2006-08-29  Eric Blake  <ebb9@byu.net>
44619
44620         * lib/error.c (error_at_line, print_errno_message): Match libc, after
44621         resolution of upstream bug 3044.
44622
44623 2006-08-29  Bruno Haible  <bruno@clisp.org>
44624
44625         * modules/localcharset (Depends-on): Add configmake.
44626         (Makefile.am): Remove setting of LIBDIR through DEFS.
44627
44628 2006-08-29  Bruno Haible  <bruno@clisp.org>
44629
44630         * lib/localcharset.c: Include configmake.h in order to get LIBDIR
44631         defined.
44632
44633 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
44634
44635         * modules/fcntl: New file.
44636         * modules/chdir-safer (Depends-on): Add fcntl.
44637         * modules/fts: Likewise.
44638         * modules/mkdir-p: Likewise.
44639
44640         * modules/stdint (Makefile.am): Do not substitute ABSOLUTE_INTTYPES_H.
44641         This undoes the most recent change, since we're now addressing the
44642         problem in a different way.
44643
44644         * gnulib-tool (emit_lib_Makefile_am): Don't put $makefile_name
44645         into output, since the output might be called Makefile.am even
44646         if $makefile_name is something different.
44647         (func_import): Use $makefile_am rather than
44648         ${makefile_name-Makefile.am}, to fix a bug where makefile_name was
44649         empty.
44650
44651         * modules/inttypes (Files): Add m4/inttypes-h.m4.
44652
44653 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
44654
44655         * m4/inttypes.m4 (gl_INTTYPES_H): Move ABSOLUTE_INTTYPES_H code here...
44656         * m4/stdint.m4 (gl_STDINT_H): ... from here.  This undoes the most
44657         recent change to stdint.m4, since we're now addressing the problem in a
44658         different way.
44659
44660 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
44661
44662         * m4/fcntl_h.m4: New file.
44663
44664 2006-08-28  Paul Eggert  <eggert@cs.ucla.edu>
44665
44666         * lib/fcntl_.h: New file.
44667         * lib/chdir-safer.c (O_DIRECTORY, O_NOFOLLOW): Remove, now that we have
44668         the fcntl module.
44669         * lib/dirchownmod.c: Likewise.
44670         * lib/fts.c: Likewise.
44671
44672         * lib/inttypes_.h [defined _GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H]:
44673         Include @ABSOLUTE_INTTYPES_H@ if available, but do nothing else.
44674         * lib/stdint_.h (_GL_JUST_INCLUDE_ABSOLUTE_INTTYPES_H): Define
44675         just before including <inttypes.h>, to avoid circular inclusion.
44676
44677 2006-08-28  Jim Meyering  <jim@meyering.net>
44678
44679         * doc/visibility.texi: Actually read and correct the grammar of the
44680         sentence affected by yesterday's change.
44681
44682 2006-08-28  Eric Blake  <ebb9@byu.net>
44683
44684         * modules/inttypes (Makefile.am): Fix sed error when inttypes.h
44685         needs wrapper.
44686
44687 2006-08-28  Eric Blake  <ebb9@byu.net>
44688
44689         * m4/inttypes.m4 (gl_INTTYPES_H): Fix missing #endif.
44690
44691 2006-08-28  Eric Blake  <ebb9@byu.net>
44692
44693         * m4/codeset.m4 (AM_LANGINFO_CODESET): Avoid compiler warning.
44694
44695 2006-08-28  Bruno Haible  <bruno@clisp.org>
44696
44697         * modules/c-strstr: New file, from GNU gettext.
44698         * MODULES.html.sh (String handling): Add c-strstr.
44699
44700 2006-08-28  Bruno Haible  <bruno@clisp.org>
44701
44702         * m4/inttypes.m4 (gl_INTTYPES_H): Don't test for the existence of SCNX*
44703         macros.
44704         Reported by Eric Blake.
44705
44706 2006-08-28  Bruno Haible  <bruno@clisp.org>
44707
44708         * lib/vasnprintf.c (EOVERFLOW): Remove definition.
44709         (VASNPRINTF): Return a string of length > INT_MAX without failing.
44710         * lib/vasprintf.c: Include errno.h, limits.h.
44711         (EOVERFLOW): New fallback definition.
44712         (vasprintf): Test here whether the string length is > INT_MAX.
44713         * lib/vsnprintf.c: Include errno.h, limits.h.
44714         (EOVERFLOW): New fallback definition.
44715         (vsnprintf): Fix bug when generated string was too long for the buffer.
44716         Test here whether the string length is > INT_MAX.
44717
44718 2006-08-28  Bruno Haible  <bruno@clisp.org>
44719
44720         * lib/inttypes_.h (SCNX*): Remove definitions.
44721         Reported by Eric Blake.
44722
44723 2006-08-28  Bruno Haible  <bruno@clisp.org>
44724
44725         * lib/c-strstr.h: New file, from GNU gettext.
44726         * lib/c-strstr.c: New file, from GNU gettext.
44727
44728 2006-08-28  Bruno Haible  <bruno@clisp.org>
44729
44730         * gnulib-tool: Reorder some statements.
44731
44732 2006-08-28  Bruno Haible  <bruno@clisp.org>
44733
44734         * gnulib-tool: New option --makefile-name.
44735         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Use
44736         $makefile_name.
44737         (func_import): Write $makefile_name to the cache file, and read it from
44738         there unless explicitly specified. Use $makefile_name as file name
44739         instead of Makefile.am. Adjust the recommendations accordingly.
44740
44741 2006-08-28  Bruno Haible  <bruno@clisp.org>
44742
44743         * gnulib-tool (func_verify_module): Check against misapplying patch.
44744
44745 2006-08-28  Bruno Haible  <bruno@clisp.org>
44746
44747         * gnulib-tool (func_relativize, func_relconcat): New functions.
44748         Give an error if --local-dir is given with --update.
44749         Remove trailing slashes from $local_gnulib_dir.
44750         (func_import): Store the relativized $local_gnulib_dir in
44751         gnulib-cache.m4, and read it from there if not specified explicitly.
44752
44753 2006-08-28  Bruno Haible  <bruno@clisp.org>
44754
44755         * gnulib-tool (func_get_tests_module): Don't assume that $gnulib_dir
44756         is the current directory. Respect also $local_gnulib_dir.
44757
44758 2006-08-28  Bruno Haible  <bruno@clisp.org>
44759             Simon Josefsson  <jas@extundo.com>
44760
44761         BeOS portability.
44762         * lib/getaddrinfo.c (PF_INET, PF_UNSPEC): New macros.
44763
44764 2006-08-27  Jim Meyering  <jim@meyering.net>
44765
44766         * doc/visibility.texi: Remove duplicate word: "pointer".
44767
44768 2006-08-26  Bruno Haible  <bruno@clisp.org>
44769
44770         * modules/inttypes (Files): Add lib/inttypes_.h, remove lib/inttypes.h.
44771         Add m4/inttypes.m4, remove m4/_inttypes_h.m4 and m4/include_next.m4.
44772         (Makefile.am): Create inttypes.h from inttypes_.h.
44773         * modules/stdint (Makefile.am): Substitute also ABSOLUTE_INTTYPES_H.
44774
44775         * modules/imaxabs: New file.
44776
44777         * modules/imaxdiv: New file.
44778
44779 2006-08-26  Bruno Haible  <bruno@clisp.org>
44780
44781         * m4/inttypes.m4: New file.
44782         * m4/_inttypes_h.m4: Remove file.
44783         * m4/inttypes-pri.m4 (gt_INTTYPES_PRI): Also AC_SUBST
44784         PRI_MACROS_BROKEN.
44785         * m4/stdint.m4 (gl_STDINT_H): Define also ABSOLUTE_INTTYPES_H.
44786
44787         * m4/imaxabs.m4: New file.
44788
44789         * m4/imaxdiv.m4: New file.
44790
44791 2006-08-26  Bruno Haible  <bruno@clisp.org>
44792
44793         * lib/inttypes_.h: New file.
44794         * lib/inttypes.h: Remove file.
44795         * lib/stdint_.h: Include <inttypes.h> through its absolute filename.
44796
44797         * lib/imaxabs.c: New file.
44798
44799         * lib/imaxdiv.c: New file.
44800
44801 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
44802
44803         New config-h module, so that "make" output needn't be cluttered
44804         by -DHAVE_CONFIG_H.
44805         * MODULES.html.sh (Support for building libraries and executables):
44806         Add config-h.
44807         * modules/config-h: New file.
44808         * gnulib-tool (nl, sed_transform_lib_file): New vars.
44809         (func_import): Turn "#ifdef HAVE_CONFIG_H" to "#if 1" if
44810         the config-h module is used.
44811
44812         New configmake module, so that "make" output needn't be cluttered
44813         by fluff like '-DLIBDIR=\"/usr/local/lib\"'.
44814         * MODULES.html.sh (Support for building libraries and executables):
44815         Add configmake.
44816         * modules/configmake: New file.
44817
44818 2006-08-25  Paul Eggert  <eggert@cs.ucla.edu>
44819
44820         * m4/config-h.m4: New file.
44821
44822 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
44823
44824         * config/srclist.txt: Add elisp-comp.
44825
44826 2006-08-24  Paul Eggert  <eggert@cs.ucla.edu>
44827
44828         * MODULES.html.sh (Support for building libraries and executables):
44829         Add elisp-comp.
44830         * build-aux/elisp-comp: New file.
44831         * modules/elisp-comp: New file.
44832
44833 2006-08-24  Bruno Haible  <bruno@clisp.org>
44834
44835         * gnulib-tool (func_create_testdir): Use non-default values of
44836         sourcebase and m4base.
44837
44838 2006-08-24  Bruno Haible  <bruno@clisp.org>
44839
44840         * MODULES.html.sh (Compatibility checks for POSIX:2001 functions: Fix
44841         HTML structure.
44842
44843 2006-08-23  Paul Eggert  <eggert@cs.ucla.edu>
44844
44845         * modules/openat (Depends-on): Add lchown.
44846
44847 2006-08-23  Bruno Haible  <bruno@clisp.org>
44848
44849         * gnulib-tool (func_import, func_create_testdir): Emit an invocation
44850         of gl_LOCK_EARLY instead of gl_LOCK.
44851
44852 2006-08-23  Bruno Haible  <bruno@clisp.org>
44853
44854         * m4/lock.m4 (gl_LOCK_BODY): Change the default value of gl_use_threads
44855         on OSF/1 to no.
44856         Reported by Stephen Cartwright <sgcartwr@ucalgary.ca>.
44857
44858 2006-08-23  Bruno Haible  <bruno@clisp.org>
44859
44860         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Don't consider BeOS statvfs
44861         as unusable.
44862
44863         * m4/lock.m4 (gl_LOCK_EARLY): Renamed from gl_LOCK.
44864         (gl_LOCK_BODY): Remove gl_PREREQ_LOCK invocation.
44865         (gl_LOCK): New macro.
44866
44867 2006-08-22  Simon Josefsson  <jas@extundo.com>
44868
44869         * modules/gc-md5 (Makefile.am): Need to add md5.h, after changes
44870         to md5 module.
44871
44872 2006-08-22  Simon Josefsson  <jas@extundo.com>
44873
44874         * MODULES.html.sh: Add "Support for maintaining and release
44875         projects".
44876
44877         * build-aux/gnupload: New file, from coreutils.
44878
44879 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
44880
44881         Avoid the need for AC_LIBSOURCES in m4 macros.
44882         * modules/arcfour (EXTRA_DIST): Add arcfour.h.
44883         * modules/arctwo (EXTRA_DIST): Add arctwo.h.
44884         * modules/check-version (EXTRA_DIST): Add check-version.h.
44885         * modules/crc (EXTRA_DIST): Add crc.h.
44886         * modules/des (EXTRA_DIST): Add des.h.
44887         * modules/gc (EXTRA_DIST): Add gc.h.
44888         * modules/getdelim (EXTRA_DIST): Add getdelim.h.
44889         * modules/getline (EXTRA_DIST): Add getline.h.
44890         * modules/getlogin_r (EXTRA_DIST): Add getlogin_r.h.
44891         * modules/hmac-md5 (EXTRA_DIST): Add hmac.h.
44892         * modules/hmac-sha1 (EXTRA_DIST): Add hmac.h.
44893         * modules/md2 (EXTRA_DIST): Add md2.h.
44894         * modules/md4 (EXTRA_DIST): Add md4.h.
44895         * modules/pagealign_alloc (EXTRA_DIST): Add pagealign_alloc.h.
44896         * modules/read-file (EXTRA_DIST): Add read-file.h.
44897         * modules/readline (EXTRA_DIST): Add readline.h.
44898         * modules/rijndael (EXTRA_DIST): Add rijndael-alg-fst.h,
44899         rijndael-api-fst.h.
44900
44901 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
44902
44903         * m4/rijndael.m4 (gl_ARCFOUR):
44904         * m4/arctwo.m4 (gl_ARCTWO):
44905         * m4/check-version.m4 (gl_CHECK_VERSION):
44906         * m4/crc.m4 (gl_CRC):
44907         * m4/des.m4 (gl_DES):
44908         * m4/gc-pbkdf2-sha1.m4 (gl_GC_PBKDF2_SHA1):
44909         * m4/gc.m4 (gl_GC):
44910         * m4/getdelim.m4 (gl_FUNC_GETDELIM):
44911         * m4/getline.m4 (gl_FUNC_GETLINE):
44912         * m4/getlogin_r.m4 (gl_GETLOGIN_R_SUBSTITUTE):
44913         * m4/hmac-md5.m4 (gl_HMAC_MD5):
44914         * m4/hmac-sha1.m4 (gl_HMAC_SHA1):
44915         * m4/md2.m4 (gl_MD2):
44916         * m4/md4.m4 (gl_MD4):
44917         * m4/pagealign_alloc.m4 (gl_PAGEALIGN_ALLOC):
44918         * m4/read-file.m4 (gl_FUNC_READ_FILE):
44919         * m4/readline.m4 (gl_FUNC_READLINE):
44920         * m4/rijndael.m4 (gl_RIJNDAEL):
44921         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
44922         to get the necessary .h files and whatnot.
44923
44924 2006-08-22  Paul Eggert  <eggert@cs.ucla.edu>
44925
44926         * config/srclist.txt: Remove gnupload, since coreutils now syncs from
44927         gnulib rather than the other way around.
44928         * config/srclistvars.sh (COREUTILS): Remove.
44929
44930 2006-08-22  Jim Meyering  <jim@meyering.net>
44931
44932         * modules/mkdir-p (Makefile.am): Fix typo: s/lib+SOURCES/lib_SOURCES/.
44933
44934         * modules/getpass-gnu (Makefile.am): Add getpass.h to EXTRA_DIST.
44935
44936 2006-08-22  Eric Blake  <ebb9@byu.net>
44937
44938         * modules/regexprops-generic: New file.
44939         * MODULES.html.sh (Support for building documentation): List it.
44940
44941 2006-08-22  Eric Blake  <ebb9@byu.net>
44942
44943         * m4/stdint_h.m4 (gl_AC_HEADER_STDINT_H): Avoid compiler warning.
44944         * m4/inttypes_h.m4 (gl_AC_HEADER_INTTYPES_H): Likewise.
44945         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Likewise.
44946         * m4/intmax_t.m4 (gt_AC_TYPE_INTMAX_T): Likewise.
44947
44948 2006-08-22  Bruno Haible  <bruno@clisp.org>
44949
44950         * gnulib-tool (func_emit_lib_Makefile_am): Don't treat lib_LIBRARIES
44951         and lib_LTLIBRARIES like the other lib_* variables.
44952
44953 2006-08-22  Bruno Haible  <bruno@clisp.org>
44954
44955         * build-aux/x-to-1.in: New file, from GNU gettext.
44956
44957 2006-08-22  Bruno Haible  <bruno@clisp.org>
44958
44959         * m4/readutmp.m4 (gl_READUTMP): Compile readutmp.c only if <utmp.h> or
44960         <utmpx.h> exists.
44961
44962 2006-08-22  Bruno Haible  <bruno@clisp.org>
44963
44964         * lib/readutmp.h: Skip most definitions if neither <utmp.h> nor
44965         <utmpx.h> exists.
44966
44967 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
44968
44969         BeOS portability.
44970         * lib/dirchownmod.c (dirchownmod): Don't use fchmod if it doesn't
44971         exist.
44972         Problem reported by Bruno Haible.
44973
44974 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
44975
44976         Avoid the need for AC_LIBSOURCES in m4 macros.
44977         * modules/acl (EXTRA_DIST): Add acl.h.
44978         * modules/argmatch (Files): Add m4/argmatch.m4.
44979         (configure.ac): Add gl_ARGMATCH.
44980         (EXTRA_DIST): Renamed from lib_SOURCES, for
44981         consistency with the other modules.  Remove argmatch.c.
44982         * modules/backupfile (EXTRA_DIST): Add backupfile.h.
44983         * modules/c-strtod (EXTRA_DIST): Add c-strtod.h.
44984         * modules/c-strtold (EXTRA_DIST): Add c-strtod.c, c-strtod.h.
44985         * modules/canonhost (EXTRA_DIST): Add c-canonhost.h.
44986         * modules/canonicalize (EXTRA_DIST): Add canonicalize.h.
44987         * modules/chdir-long (EXTRA_DIST): Add chdir-long.h.
44988         * modules/chdir-safer (EXTRA_DIST): Add chdir-safer.h.
44989         * modules/cloexec (EXTRA_DIST): Add cloexec.h.
44990         * modules/close-stream (EXTRA_DIST): Add close-stream.h.
44991         * modules/closeout (EXTRA_DIST): Add closeout.h.
44992         * modules/cycle-check (EXTRA_DIST): Add cycle-check.h.
44993         * modules/dev-ino (EXTRA_DIST): Add dev-ino.h.
44994         * modules/dirfd (EXTRA_DIST): Add dirfd.h.
44995         * modules/dirname (EXTRA_DIST): Renamed from lib_SOURCES.  Add
44996         dirname.h; remove basename.c and stripslash.c.
44997         * modules/exclude (EXTRA_DIST): Add exclude.h.
44998         * modules/exitfail (EXTRA_DIST): Add exitfail.h.
44999         * modules/fcntl-safer (EXTRA_DIST): Add fcntl-safer.h fcntl--.h.
45000         * modules/file-type (EXTRA_DIST): Add file-type.h.
45001         * modules/filemode (EXTRA_DIST): Add filemode.h.
45002         * modules/filenamecat (EXTRA_DIST): Add filenamecat.h.
45003         * modules/fopen-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
45004         * modules/fpending (EXTRA_DIST): Add __fpending.h.
45005         * modules/fprintftime (EXTRA_DIST): Add fprintftime.h.
45006         * modules/fsusage (EXTRA_DIST): Add fsusage.h.
45007         * modules/fts (EXTRA_DIST): Add fts_.h fts-cycle.c.
45008         * modules/getcwd (EXTRA_DIST): Add getcwd.h.
45009         * modules/getdate (EXTRA_DIST): Add getdate.c.
45010         * modules/gethrxtime (EXTRA_DIST): Add gethrxtime.h xtime.h.
45011         * modules/getpagesize (EXTRA_DIST): Add getpagesize.h.
45012         * modules/getpass (EXTRA_DIST): Add getpass.h.
45013         * modules/glob (EXTRA_DIST): Add glob_.h glob-libc.h.
45014         * modules/group-member (EXTRA_DIST): Add group-member.h.
45015         * modules/hard-locale (EXTRA_DIST): Add hard-locale.h.
45016         * modules/hash (EXTRA_DIST): Add hash.h.
45017         * modules/human (EXTRA_DIST): Add human.h.
45018         * modules/inttypes (EXTRA_DIST): Add inttypes.h.
45019         * modules/lchmod (EXTRA_DIST): Add lchmod.h.
45020         * modules/lchown (EXTRA_DIST): Add lchown.h.
45021         * modules/long-options (EXTRA_DIST): Add long-options.h.
45022         * modules/lstat (EXTRA_DIST): Add lstat.h.
45023         * modules/md5 (EXTRA_DIST): Add memcasecmp.h.
45024         * modules/memcoll (EXTRA_DIST): Add memcoll.h.
45025         * modules/mempcpy (EXTRA_DIST): Add mempcpy.h.
45026         * modules/memrchr (EXTRA_DIST): Add memrchr.h.
45027         * modules/memxor (EXTRA_DIST): Add memxor.h.
45028         * modules/mkancesdirs (EXTRA_DIST): Add mkancesdirs.h.
45029         * modules/mkdir-p (EXTRA_DIST): Add modechange.h.
45030         * modules/mountlist (EXTRA_DIST): Add mountlist.h.
45031         * modules/openat (EXTRA_DIST): Add at-func.c openat.h openat-priv.h.
45032         * modules/pathmax (EXTRA_DIST): Add pathmax.h.
45033         * modules/physmem (EXTRA_DIST): Add physmem.h.
45034         * modules/posixtm (EXTRA_DIST): Add posixtm.h.
45035         * modules/posixver (EXTRA_DIST): Add posixver.h.
45036         * modules/quote (EXTRA_DIST): Add quote.h.
45037         * modules/quotearg (EXTRA_DIST): Add quotearg.h.
45038         * modules/readtokens (EXTRA_DIST): Add readtokens.h.
45039         * modules/readutmp (EXTRA_DIST): Add readutmp.h.
45040         * modules/regex (EXTRA_DIST): Add regcomp.c regex.h regex_internal.c
45041         regex_internal.h regexec.c.
45042         * modules/safe-read (EXTRA_DIST): Add safe-read.h.
45043         * modules/safe-write (EXTRA_DIST): Add safe-write.h.
45044         * modules/same (EXTRA_DIST): Add same.h.
45045         * modules/same-inode (EXTRA_DIST): Add same-inode.h.
45046         * modules/save-cwd (EXTRA_DIST): Add save-cwd.h.
45047         * modules/savedir (EXTRA_DIST): Add savedir.h.
45048         * modules/sha1 (EXTRA_DIST): Add sha1.h.
45049         * modules/sig2str (EXTRA_DIST): Add sig2str.h.
45050         * modules/stat-macros (EXTRA_DIST): Add stat-macros.h.
45051         * modules/stat-time (EXTRA_DIST): Add stat-time.h.
45052         * modules/stdlib-safer (EXTRA_DIST): Add stdlib-safer.h stdlib--.h.
45053         * modules/strdup (EXTRA_DIST): Add strdup.h.
45054         * modules/strftime (EXTRA_DIST): Add strftime.h.
45055         * modules/strndup (EXTRA_DIST): Add strndup.h.
45056         * modules/strnlen (EXTRA_DIST): Add strnlen.h.
45057         * modules/strverscmp (EXTRA_DIST): Add strverscmp.h.
45058         * modules/time_r (EXTRA_DIST): Add time_r.h.
45059         * modules/timespec (EXTRA_DIST): Add timespec.h.
45060         * modules/tmpfile-safer (EXTRA_DIST): Add stdio-safer.h stdio--.h.
45061         * modules/unistd-safer (EXTRA_DIST): Add unistd-safer.h unistd--.h.
45062         * modules/unlinkdir (EXTRA_DIST): Add unlinkdir.h.
45063         * modules/unlocked-io (EXTRA_DIST): Add unlocked-io.h.
45064         * modules/userspec (EXTRA_DIST): Add userspec.h.
45065         * modules/utimecmp (EXTRA_DIST): Add utimecmp.h.
45066         * modules/utimens (EXTRA_DIST): Add utimens.h.
45067         * modules/xalloc (EXTRA_DIST): Add xalloc.h.
45068         * modules/xgetcwd (EXTRA_DIST): Add xgetcwd.h.
45069         * modules/xnanosleep (EXTRA_DIST): Add xnanosleep.h.
45070         * modules/xreadlink (EXTRA_DIST): Add xreadlink.h.
45071         * modules/xstrtod (EXTRA_DIST): Add xstrtod.h.
45072         * modules/xstrtol (EXTRA_DIST): Add xstrtol.h.
45073         * modules/xstrtold (EXTRA_DIST): Add xstrtod.c xstrtod.h.
45074         * modules/yesno (EXTRA_DIST): Add yesno.h.
45075
45076 2006-08-21  Paul Eggert  <eggert@cs.ucla.edu>
45077
45078         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Check for fchmod.
45079
45080         * m4/argmatch.m4: New file, from coreutils with AC_LIBSOURCES removed.
45081         * m4/dev-ino.m4, same-inode.m4: Remove.
45082
45083         * m4/_inttypes_h.m4 (gl_INTTYPES_H):
45084         * m4/acl.m4 (AC_FUNC_ACL):
45085         * m4/backupfile.m4 (gl_BACKUPFILE):
45086         * m4/c-strtod.m4 (gl_C99_STRTOLD):
45087         * m4/canon-host.m4 (gl_CANON_HOST):
45088         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
45089         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG):
45090         * m4/chdir-safer.m4 (gl_CHDIR_SAFER):
45091         * m4/cloexec.m4 (gl_CLOEXEC):
45092         * m4/close-stream.m4 (gl_CLOSE_STREAM):
45093         * m4/closeout.m4 (gl_CLOSEOUT):
45094         * m4/dirfd.m4 (gl_FUNC_DIRFD):
45095         * m4/dirname.m4 (gl_DIRNAME):
45096         * m4/exclude.m4 (gl_EXCLUDE):
45097         * m4/exitfail.m4 (gl_EXITFAIL):
45098         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER):
45099         * m4/file-type.m4 (gl_FILE_TYPE):
45100         * m4/filemode.m4 (gl_FILEMODE):
45101         * m4/filenamecat.m4 (gl_FILE_NAME_CONCAT):
45102         * m4/fpending.m4 (gl_FUNC_FPENDING):
45103         * m4/fprintftime.m4 (gl_FPRINTFTIME):
45104         * m4/fts.m4 (gl_FUNC_FTS):
45105         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL):
45106         * m4/getdate.m4 (gl_GETDATE):
45107         * m4/gethrxtime.m4 (gl_GETHRXTIME):
45108         * m4/getpagesize.m4 (gl_GETPAGESIZE):
45109         * m4/getpass.m4 (gl_FUNC_GETPASS):
45110         * m4/gettime.m4 (gl_GETTIME):
45111         * m4/getugroups.m4 (gl_GETUGROUPS):
45112         * m4/glob.m4 (gl_GLOB_SUBSTITUTE):
45113         * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER):
45114         * m4/hard-locale.m4 (gl_HARD_LOCALE):
45115         * m4/hash.m4 (gl_HASH):
45116         * m4/idcache.m4 (gl_IDCACHE):
45117         * m4/lchmod.m4 (gl_FUNC_LCHMOD):
45118         * m4/lchown.m4 (gl_FUNC_LCHOWN):
45119         * m4/long-options.m4 (gl_LONG_OPTIONS):
45120         * m4/lstat.m4 (gl_FUNC_LSTAT):
45121         * m4/md5.m4 (gl_MD5):
45122         * m4/memcasecmp.m4 (gl_MEMCASECMP):
45123         * m4/memcoll.m4 (gl_MEMCOLL):
45124         * m4/mempcpy.m4 (gl_FUNC_MEMPCPY):
45125         * m4/memrchr.m4 (gl_FUNC_MEMRCHR):
45126         * m4/memxor.m4 (gl_MEMXOR):
45127         * m4/mkancesdirs.m4 (gl_MKANCESDIRS):
45128         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS):
45129         * m4/modechange.m4 (gl_MODECHANGE):
45130         * m4/mountlist.m4 (gl_MOUNTLIST):
45131         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP):
45132         * m4/openat.m4 (gl_FUNC_OPENAT):
45133         * m4/pathmax.m4 (gl_PATHMAX):
45134         * m4/physmem.m4 (gl_PHYSMEM):
45135         * m4/posixtm.m4 (gl_POSIXTM):
45136         * m4/posixver.m4 (gl_POSIXVER):
45137         * m4/quote.m4 (gl_QUOTE):
45138         * m4/quotearg.m4 (gl_QUOTEARG):
45139         * m4/readtokens.m4 (gl_READTOKENS):
45140         * m4/readutmp.m4 (gl_READUTMP):
45141         * m4/regex.m4 (gl_REGEX):
45142         * m4/safe-read.m4 (gl_SAFE_READ):
45143         * m4/safe-write.m4 (gl_SAFE_WRITE):
45144         * m4/same.m4 (gl_SAME):
45145         * m4/save-cwd.m4 (gl_SAVE_CWD):
45146         * m4/savedir.m4 (gl_SAVEDIR):
45147         * m4/settime.m4 (gl_SETTIME):
45148         * m4/sha1.m4 (gl_SHA1):
45149         * m4/sig2str.m4 (gl_FUNC_SIG2STR):
45150         * m4/stat-macros.m4 (gl_STAT_MACROS):
45151         * m4/stat-time.m4 (gl_STAT_TIME):
45152         * m4/stdio-safer.m4 (gl_FOPEN_SAFER):
45153         * m4/stdlib-safer.m4 (gl_STDLIB_SAFER):
45154         * m4/strdup.m4 (gl_FUNC_STRDUP):
45155         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME):
45156         * m4/strndup.m4 (gl_FUNC_STRNDUP):
45157         * m4/strnlen.m4 (gl_FUNC_STRNLEN):
45158         * m4/strverscmp.m4 (gl_FUNC_STRVERSCMP):
45159         * m4/time_r.m4 (gl_TIME_R):
45160         * m4/timespec.m4 (gl_TIMESPEC):
45161         * m4/unistd-safer.m4 (gl_UNISTD_SAFER):
45162         * m4/unlinkdir.m4 (gl_UNLINKDIR):
45163         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO):
45164         * m4/userspec.m4 (gl_USERSPEC):
45165         * m4/utimecmp.m4 (gl_UTIMECMP):
45166         * m4/utimens.m4 (gl_UTIMENS):
45167         * m4/xalloc.m4 (gl_XALLOC):
45168         * m4/xgetcwd.m4 (gl_XGETCWD):
45169         * m4/xnanosleep.m4 (gl_XNANOSLEEP):
45170         * m4/xreadlink.m4 (gl_XREADLINK):
45171         * m4/xstrtod.m4 (gl_XSTRTOD):
45172         * m4/yesno.m4 (gl_YESNO):
45173         Don't use AC_LIBSOURCES; instead, rely on the files in ../modules/
45174         to get the necessary .h files and whatnot.
45175
45176 2006-08-21  Mark D. Baushke  <mdb@gnu.org>
45177             Bruno Haible  <bruno@clisp.org>
45178
45179         * gnulib-tool (func_verify_module): Work around Sun's non-POSIX 1003.2
45180         /bin/sh understanding of '!' conditional negation.
45181
45182 2006-08-21  Jim Meyering  <jim@meyering.net>
45183
45184         * modules/openat (Depends-on): Really alphabetize.
45185
45186         * modules/acl (Depends-on): Add error and quote.
45187
45188         * check-module (find_included_lib_files): Add at-func.c to the
45189         ok-to-include-more-than-once white list.
45190
45191         * modules/openat (Depends-on): Add lstat.  Alphabetize.
45192
45193 2006-08-21  Bruno Haible  <bruno@clisp.org>
45194
45195         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
45196         Emit a pkgdata_DATA variable only if some snippets add contents to it.
45197         Reported by Martin Lambers <marlam@marlam.de>.
45198
45199 2006-08-21  Bruno Haible  <bruno@clisp.org>
45200
45201         * gnulib-tool (func_emit_lib_Makefile_am): If the snippets already
45202         specify an installation location, don't emit a noinst_LIBRARIES or
45203         noinst_LTLIBRARIES assignment.
45204
45205 2006-08-21  Bruno Haible  <bruno@clisp.org>
45206
45207         BeOS portability.
45208         * modules/mbchar (Include): Don't test HAVE_WCTYPE_H any more, since
45209         BeOS has mbrtowc() but no <wctype.h>.
45210
45211 2006-08-21  Bruno Haible  <bruno@clisp.org>
45212
45213         BeOS portability.
45214         * m4/mbchar.m4 (gl_MBCHAR): Compile mbchar.c also if <wctype.h> doesn't
45215         exist.
45216
45217 2006-08-21  Bruno Haible  <bruno@clisp.org>
45218
45219         BeOS portability.
45220         * lib/mbchar.h: Include <wctype.h> only if it exists.
45221
45222 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
45223
45224         Remove files that are no longer needed by their respective modules.
45225         * m4/obstack.m4: Remove.
45226         * m4/strerror_r.m4: Remove.
45227         * m4/uint32_t.m4: Remove.
45228         * m4/uintptr_t.m4: Remove.
45229         * m4/ullong_max.m4: Remove.
45230         * m4/xstrtoimax.m4: Remove.
45231         * m4/xstrtoumax.m4: Remove.
45232
45233         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Do not require
45234         gl_AC_TYPE_UINTMAX_T, gl_STRUCT_DEV_INO, or gl_SAME_INODE, since gnulib
45235         dependencies now capture this.
45236
45237         * m4/cycle-check.m4 (gl_CYCLE_CHECK):
45238         Do not use AC_LIBSOURCES, since gnulib modules now do this.
45239         * m4/fsusage.m4 (gl_FSUSAGE): Likewise.
45240         * m4/human.m4 (gl_HUMAN): Likewise.
45241         * m4/inttostr.m4 (gl_INTTOSTR): Likewise.
45242         * m4/xstrtol.m4 (gl_XSTRTOL): Likewise.
45243
45244         * m4/filemode.m4 (gl_FILEMODE): Require AC_STRUCT_ST_DM_MODE.
45245
45246         * m4/filemode.m4 (gl_PREREQ_FSUSAGE_EXTRA): Do not require
45247         gl_AC_TYPE_INTMAX_T or gl_AC_TYPE_UINTMAX_T, since we now require
45248         stdint.
45249         * m4/human.m4 (gl_HUMAN): Likewise.
45250         * m4/inttostr.m4 (gl_PREREQ_INTTOSTR): Likewise.
45251         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Likewise.
45252         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
45253         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
45254         * m4/xstrtol (gl_XSTRTOL): Likewise.
45255
45256         * m4/gethrxtime.m4 (gl_XTIME): gl_AC_TYPE_LONG_LONG ->
45257         AC_TYPE_LONG_LONG_INT.
45258         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Likewise.
45259         * m4/strtoll.m4 (gl_FUNC_STRTOLL): Likewise.
45260         * m4/strtoull.m4 (gl_FUNC_STRTOULL): Likewise, for unsigned long.
45261         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Likewise.
45262
45263         * m4/human.m4 (gl_HUMAN): Do not require AM_STDBOOL_H since we depend
45264         on stdbool.
45265
45266         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL_H, gl_PREREQ_XSTRTOL): Remove.
45267         (gl_PREREQ_XSTRTOUL): Remove.
45268
45269         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Check for hasmntopt.
45270
45271         * m4/posixver.m4: Fix comment since head -1 now works even in POSIX
45272         mode.
45273
45274 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
45275
45276         Add and change modules to make it easier for coreutils to use
45277         gnulib-tool.
45278         * modules/backupfile (Files): Remove m4/d-ino.m4.
45279         (Depends-on): Add d-ino.
45280         * modules/cycle-check (Depends-on): Add stdint.
45281         (lib_SOURCES): Add cycle-check.h.
45282         * modules/d-ino: New module.
45283         * modules/d-type: New module.
45284         * modules/error (Files): Remove m4/strerror_r.m4.
45285         * modules/filemode (Files): Add m4/st_dm_mode.m4.
45286         * modules/fsuage (Files): Remove m4/ulonglong.m4, m4/stdint_h.m4,
45287         m4/inttypes_h.m4, m4/uintmax_t.m4.
45288         (Depends-on): Add stdint.
45289         (lib_SOURCES): Add fsusage.h.
45290         * modules/getcwd (Files): Remove d-ino.m4.
45291         (Depends-on): Add d-ino.
45292         * modules/getndelim2 (Depends-on): Add stdint.
45293         * modules/glob (Files): Remove m4/d-type.m4.
45294         (Depends-on): Add d-type.
45295         * modules/host-os: New module.
45296         * modules/human (Files):  Remove m4/ulonglong.m4, m4/stdint_h.m4,
45297         m4/inttypes_h.m4, m4/uintmax_t.m4.
45298         * Depends-on: Add stdint.
45299         (lib_SOURCES): Add human.h.
45300         * modules/inttostr (Files): Remove m4/intmax_t.m4,
45301         m4/inttostr.m4, m4/inttypes_h.m4, m4/longlong.m4, m4/stdint_h.m4,
45302         m4/uintmax_t.m4, m4/ulonglong.m4.
45303         (Depends-on): Add stdint.
45304         (EXTRA_DIST): Add inttostr.h.
45305         * modules/lchmod: New module.
45306         * modules/link-follow: New module.
45307         * modules/mkdir-p (Files): Remove lib/lchmod.h, m4/lchmod.m4.
45308         (Depends-on): Add lchmod.
45309         * modules/mkstemp (Files): Remove m4/ulonglong.m4,
45310         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4.
45311         (Depends-on): Add stdint.
45312         * modules/obstack (Files): Remove m4/inttypes_h.m4, m4/obstack.m4,
45313         m4/stdint_h.m4, m4/uintmax_t.m4, m4/ulonglong.m4.
45314         (Depends-on): Add stdint.
45315         (configure.ac): Change gl_OBSTACK to AC_FUNC_OBSTACK.
45316         * modules/perl: New module.
45317         * modules/regex (Depends-on): Add stdint.
45318         * modules/rmdir-errno: New module.
45319         * modules/strtoimax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
45320         m4/intmax_t.m4.
45321         (Depends-on): Add stdint.
45322         * modules/strtoumax (Files): Remove m4/stdint_h.m4, m4/inttypes_h.m4,
45323         m4/uintmax_t.m4.
45324         (Depends-on): Add stdint.
45325         * modules/unlink-busy: New module.
45326         * modules/utimecmp (Depends-on): Add stdint.
45327         * modules/uptime: New module.
45328         * modules/winsz-ioctl: New module.
45329         * modules/winsz-termios: New module.
45330         * modules/xnanosleep (Depends-on): Add nanosleep.
45331         * modules/ullong_max: Remove.
45332         * modules/xstrtoimax (Files): Remove m4/xstrtoimax.m4.
45333         (configure.ac): Remove gl_XSTRTOIMAX; no action needed now.
45334         * modules/xstrtol (Files): Remove m4/ulonglong.m4, m4/longlong.m4,
45335         m4/stdint_h.m4, m4/inttypes_h.m4, m4/uintmax_t.m4, m4/intmax_t.m4.
45336         (Depends-on): Add inttypes.
45337         (lib_SOURCES): Add xstrtol.h.
45338         * modules/xstrtoumax (Files): Remove m4/xstrtoumax.m4.
45339         (configure.ac): Remove gl_XSTRTOUMAX; no action needed now.
45340         * MODULES.html.sh: Move 'assert' into the assert section.
45341         Move 'dummy' into the linking section.
45342         Remove ullong_max.
45343         Add section for compatibility checks for POSIX:2001 functions,
45344         and put d-ino, d-type, link-follow, rmdir-errno, unlink-busy,
45345         winsz-ioctl, and winsz-termios into it.
45346         Add lchmod.
45347         Add top-level Misc section and put host-os, perl, and uptime
45348         into it.
45349
45350 2006-08-20  Paul Eggert  <eggert@cs.ucla.edu>
45351
45352         * lib/cycle-check.h: Include <stdint.h> unconditionally, since we
45353         now assume the stdint module.  Do not include inttypes.h.
45354         * lib/fsusage.h: Likewise.
45355         * lib/getndelim2.c: Likewise.
45356         * lib/human.h: Likewise.
45357         * lib/inttostr.h: Likewise.
45358         * lib/obstack.c: Likewise.
45359         * lib/regex_internal.h: Likewise.
45360         * lib/tempname.c: Likewise.
45361         * lib/utimecmp.c: Likewise.
45362         * lib/xstrtol.h: Likewise.
45363
45364         * lib/stat_.h: Fix typo: HAVE_FUNC_LSTAT -> HAVE_LSTAT.
45365
45366         * lib/strtoimax.c: Adjust to macro name changes in Autoconf,
45367         e.g., HAVE_LONG_LONG -> HAVE_LONG_LONG_INT.
45368         * lib/xtime.h: Likewise.
45369
45370 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
45371
45372         * modules/openat (Files): Add lib/fchmodat.c.
45373         Fixes problem reported by Jay Youngman.
45374
45375 2006-08-19  Paul Eggert  <eggert@cs.ucla.edu>
45376
45377         * lib/fchmodat.c: New file, from coreutils.  This was inadvertently
45378         omitted in the 2006-08-17 update.  Problem reported by Jay Youngman.
45379
45380 2006-08-18  Paul Eggert  <eggert@cs.ucla.edu>
45381             Bruno Haible  <bruno@clisp.org>
45382
45383         * m4/bison-i18n.m4 (BISON_I18N): Also handle the case where yacc exists
45384         and is a script that invokes bison. Tighten the code. Add comments.
45385
45386 2006-08-18  Jim Meyering  <jim@meyering.net>
45387
45388         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Also check for
45389         CLOCK_REALTIME, since gethrxtime may revert to using clock_gettime via
45390         gettime.c.  Gabor Z. Papp reported that gethrxtime-using programs
45391         failed to link due to unresolved clock_gettime on a linux-2.4.x system.
45392
45393 2006-08-18  Bruno Haible  <bruno@clisp.org>
45394
45395         * modules/bison-i18n: New file.
45396         * MODULES.html.sh (Internationalization functions): Add it.
45397
45398 2006-08-18  Bruno Haible  <bruno@clisp.org>
45399
45400         * m4/ls-mntd-fs.m4 (gl_LIST_MOUNTED_FILE_SYSTEMS): Also check for
45401         sys/statvfs.h. When getmntinfo was found, check its declaration and
45402         set either MOUNTED_GETMNTINFO or MOUNTED_GETMNTINFO2 depending on it.
45403
45404 2006-08-18  Bruno Haible  <bruno@clisp.org>
45405
45406         * m4/bison-i18n.m4: New file, from bison.
45407
45408 2006-08-18  Bruno Haible  <bruno@clisp.org>
45409
45410         * lib/mountlist.c [MOUNTED_GETMNTINFO2]: Include sys/statvfs.h.
45411         (ME_DUMMY): Treat "kernfs" as a dummy.
45412         (read_file_system_list) [MOUNTED_GETMNTINFO2]: Implement.
45413
45414 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
45415
45416         Update from coreutils.
45417
45418         2006-08-15  Jim Meyering  <jim@meyering.net>
45419
45420         * m4/openat.m4 (gl_FUNC_OPENAT): Add at-func.c via AC_LIBSOURCES.
45421
45422         2006-01-17  Jim Meyering  <jim@meyering.net>
45423
45424         * m4/fts.m4 (gl_FUNC_FTS_CORE): Depend on gl_FUNC_OPENAT.
45425
45426         2006-01-11  Jim Meyering  <jim@meyering.net>
45427
45428         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile fchmodat.c.
45429         Check for the lchmod function.
45430
45431 2006-08-17  Paul Eggert  <eggert@cs.ucla.edu>
45432
45433         Update from coreutils.
45434
45435         * lib/__fpending.h: Add copyright notice.
45436         * lib/fprintftime.h: Likewise.
45437         * lib/savedir.c: Use (C) in copyright notice.
45438         * lib/savedir.h: Likewise.
45439
45440         2006-08-15  Jim Meyering  <jim@meyering.net>
45441
45442         * lib/at-func.c: New file, with the logic of all emulated at-functions.
45443         * lib/openat-priv.h: Include <errno.h> and define ENOSYS,
45444         in support of the EXPECTED_ERRNO macro.
45445         * lib/openat.c (fstatat, unlinkat, fchownat): Remove function
45446         definitions.  Instead, define the appropriate symbols and include
45447         "at-func.c".
45448         * lib/mkdirat.c (mkdirat): Likewise.
45449         * lib/fchmodat.c (fchmodat): Likewise.
45450         (ENOSYS): Remove definition.
45451         * lib/openat.c: Don't include <errno.h>, now that "openat-priv.h" does
45452         it.  Don't include "unistd--.h" -- it wasn't ever used.
45453
45454         2006-01-17  Jim Meyering  <jim@meyering.net>
45455
45456         Rewrite fts.c not to change the current working directory,
45457         by using openat, fstatat, fdopendir, etc..
45458
45459         * lib/fts.c [! _LIBC]: Include "openat.h" and "unistd--.h".
45460         (HAVE_OPENAT_SUPPORT): Define.
45461         [_LIBC] (fchdir): Don't undef or define; no longer used.
45462         (FCHDIR): Define in terms of cwd_advance_fd rather than fchdir.
45463         Now, this `function' always succeeds, and consumes its file descriptor
45464         parameter -- so callers must not close such FDs.  Update callers.
45465         (diropen_fd, opendirat, cwd_advance_fd): New functions.
45466         (diropen): Add parameter, SP.  Adjust all callers.
45467         Implement using diropen_fd, rather than open.
45468         (fts_open): Initialize new member, fts_cwd_fd.
45469         Remove fts_rft-setting code.
45470         (fts_close): Close fts_cwd_fd, if necessary.
45471         (__opendir2): Define in terms of opendir or opendirat,
45472         depending on whether the FST_NOCHDIR flag is set.
45473         (fts_build): Since fts_safe_changedir consumes its FD, and since
45474         this code must do `closedir(dirp)', dup the dirfd(dirp) argument,
45475         and close the dup'd file descriptor upon failure.
45476         (fts_stat): Use fstatat(...AT_SYMLINK_NOFOLLOW) in place of lstat.
45477         (fts_safe_changedir): Tweak semantics to reflect that this function
45478         now calls cwd_advance_fd and hence consumes its FD argument.
45479         * lib/fts_.h [struct FTS] (fts_cwd_fd): New member.
45480         [struct FTS] (fts_rft): Remove now-unused member.
45481         [struct FTS] (fts_cycle.state): Improve comment.
45482
45483         * lib/openat.c (openat_needs_fchdir): New function.
45484         * lib/openat.h (openat_needs_fchdir): Declare it.
45485
45486 2006-08-16  Paul Eggert  <eggert@cs.ucla.edu>
45487
45488         * lib/memcoll.c (memcoll): Set errno = 0 in the shortcut case, too.
45489         Problem and fix reported by Pádraig Brady in
45490         <http://lists.gnu.org/archive/html/bug-coreutils/2006-08/msg00099.html>.
45491
45492 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
45493
45494         * modules/cycle-check (configure.ac): Add gl_CYCLE_CHECK.
45495
45496 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
45497
45498         * lib/memcoll.c (memcoll): Optimize for the common case where the
45499         arguments are bytewise equal.
45500
45501 2006-08-15  Paul Eggert  <eggert@cs.ucla.edu>
45502
45503         * doc/regexprops-generic.texi: Add a copyright notice.
45504
45505 2006-08-15  Bruno Haible  <bruno@clisp.org>
45506
45507         * modules/tmpdir (License): Change to LGPL.
45508
45509 2006-08-15  Bruno Haible  <bruno@clisp.org>
45510
45511         * gnulib-tool (func_all_modules, func_verify_module): COPYING is not a
45512         module.
45513
45514 2006-08-14  Simon Josefsson  <jas@extundo.com>
45515
45516         * config/srclist.txt: Add gnupload.
45517
45518 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
45519
45520         Change copyright notice from LGPL 2 to GPL 2, since that's the
45521         standard form used in the gnulib repository.
45522         * tests/test-lock.c: Likewise.
45523         * tests/test-stdint.c: Likewise.
45524         * tests/test-tls.c: Likewise.
45525
45526         * users.txt: Add bison, diffutils, libprelude, prelude-lml,
45527         prelude-manager.  User shorter URLs for GNU projects, without '?'.
45528         Add copyright notice.
45529
45530         * check-module: Add copyright notice.  Output a copyright
45531         notice if "--version" is specified.
45532         * modules/COPYING: New file.
45533         * tests/test-getaddrinfo.c: Add copyright notice.
45534         * tests/test-verify.c: Likewise.
45535
45536 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
45537
45538         Change copyright notice from LGPL 2 to GPL 2, since that's the
45539         standard form used in the gnulib repository.
45540         * lib/lock.c: LGPL -> GPL.
45541         * lib/lock.h: Likewise.
45542         * lib/strnlen1.c: Likewise.
45543         * lib/strnlen1.h: Likewise.
45544         * lib/tls.c: Likewise.
45545         * lib/tls.h: Likewise.
45546         * lib/tmpdir.c: Likewise.
45547
45548         * lib/TODO: Remove; this belongs only in coreutils.
45549
45550 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
45551
45552         Add copyright notices to long-enough files that lack them, since
45553         otherwise the files aren't clearly free.  Use the same notice that
45554         getdate.texi already uses.
45555         * doc/alloca-opt.texi: Add copyright notice.
45556         * doc/alloca.texi: Likewise.
45557         * doc/ctime.texi: Likewise.
45558         * doc/functions.texi: Likewise.
45559         * doc/gcd.texi: Likewise.
45560         * doc/gnulib-tool.texi: Likewise.
45561         * doc/inet_ntoa.texi: Likewise.
45562         * doc/visibility.texi: Likewise.
45563
45564         * doc/getdate.texi: Update FDL version from 1.1 to 1.2.
45565         * doc/quote.texi: Add copyright notice.
45566
45567         * doc/solaris-versions: Add SunOS 5.10, SunOS 1.x, SunOS 4.0, SunOS
45568         4.0.x, SunOS 4.1.1.1, SunOS 4.1.1_U1, SunOS 4.1.3B.  SunOS 4.1.3
45569         was Solaris 1.1A.  Remove space before B in Solaris 1.1.1B.
45570         Mention SunOS 5.11.  Mention that everything before SunOS 5.7
45571         is now obsolete, and give a pointer to the Sun list.
45572         Add copyright notice.
45573
45574 2006-08-14  Paul Eggert  <eggert@cs.ucla.edu>
45575
45576         * config/srclistvars.sh: Add copyright notice.
45577
45578 2006-08-14  Eric Blake  <ebb9@byu.net>
45579
45580         Import the following change from libc:
45581
45582         2006-08-12  Ulrich Drepper  <drepper@redhat.com>
45583
45584         Upstream bug 2997.
45585         * lib/misc/error.c: Add space between program name and message if file
45586         name is missing.
45587
45588 2006-08-12  Karl Berry  <karl@gnu.org>
45589
45590         * config/srclist.txt (ssize_t.m4, sig_atomic_t.m4, signalblocking.m4):
45591         remove, these originate in gnulib now.
45592
45593 2006-08-11  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
45594
45595         * doc/Makefile (standards.info standards.html standards.dvi):
45596         Also depend on make-stds.texi.
45597
45598 2006-08-11  Paul Eggert  <eggert@cs.ucla.edu>
45599
45600         * lib/pipe-safer.c (pipe_safer): Fix misspelling: HAVE_FUNC_PIPE ->
45601         HAVE_PIPE.  Fix a file descriptor leak when fd_safer fails.
45602
45603         * lib/regex_internal.c (re_string_skip_chars): Don't assume WEOF fits
45604         in wchar_t.  Problem reported by Eric Blake.
45605
45606         * lib/snprintf.c (snprintf): memcpy LEN bytes, not SIZE - 1, when
45607         LEN is smaller than SIZE.  Suggested by Bruno Haible.
45608         Also, help the compiler to keep LEN in a register.
45609
45610 2006-08-11  Eric Blake  <ebb9@byu.net>
45611
45612         * users.txt: Sort.  Add tar.
45613
45614 2006-08-11  Bruno Haible  <bruno@clisp.org>
45615
45616         * users.txt: New file.
45617
45618 2006-08-11  Bruno Haible  <bruno@clisp.org>
45619
45620         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Include <stdio.h> and <time.h>
45621         before <wchar.h>. Needed for OSF/1 and BSD/OS.
45622
45623 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
45624
45625         * modules/snprintf (Depends-on): Remove minmax.
45626         (Maintainer): Add self and Bruno.
45627
45628 2006-08-10  Paul Eggert  <eggert@cs.ucla.edu>
45629
45630         * lib/.cppi-disable: Add snprintf.h, socket_.h.
45631         * lib/snprintf.c: Include <errno.h> and <limits.h>.
45632         (EOVERFLOW): Define if the system does not.
45633         Do not include "minmax.h"; it wasn't used.
45634         (snprintf): Don't assume size_t promotes to an unsigned type.
45635         Fix bug when generated string was too long for the buffer: the
45636         buffer's contents are supposed to be the initial prefix of the
45637         output.  Don't assume vasnprintf returns EOVERFLOW if the size
45638         exceeds INT_MAX; do the check ourselves.
45639
45640         Import the following changes from libc:
45641
45642         2006-06-02  Jakub Jelinek  <jakub@redhat.com>
45643
45644         * lib/posix/regex_internal.c (re_string_skip_chars): If no character
45645         has been converted at all, set *last_wc to WEOF.  If mbrtowc failed,
45646         set wc to the byte which couldn't be converted.
45647         (re_string_reconstruct): Don't clear valid_raw_len before calling
45648         re_string_skip_chars.  If wc is WEOF after re_string_skip_chars, set
45649         tip_context using re_string_context_at.
45650
45651         2006-05-02  Ulrich Drepper  <drepper@redhat.com>
45652
45653         * lib/posix/regex.h: g++ still cannot handled [restrict].
45654
45655         2006-04-21  Ulrich Drepper  <drepper@redhat.com>
45656
45657         * lib/posix/regex.h: Remove special handling for VMS.
45658
45659 2006-08-10  Jim Meyering  <jim@meyering.net>
45660
45661         * modules/same-inode: New module.
45662         * modules/dev-ino: New module.
45663         * modules/cycle-check: Depend on these modules, rather than simply
45664         including their .h files.
45665         (Makefile.am): Don't list cycle-check.[ch] here, now that they're
45666         required via m4/cycle-check.m4.
45667         * modules/same: Depend on new same-inode module, rather than
45668         including same-inode.h.
45669         * modules/chdir-safer: New file.
45670
45671         * modules/chown (Depends-on): Add stat-macros.
45672
45673 2006-08-10  Jim Meyering  <jim@meyering.net>
45674
45675         * m4/cycle-check.m4: New file.
45676         Require gl_STRUCT_DEV_INO and gl_SAME_INODE.
45677         * m4/dev-ino.m4, m4/same-inode.m4: New files.
45678
45679 2006-08-10  Eric Blake  <ebb9@byu.net>
45680
45681         * modules/verror (Depends-on): Remove bogus gl_VERROR that snuck
45682         in from original proposal.
45683
45684 2006-08-10  Eric Blake  <ebb9@byu.net>
45685         and Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
45686
45687         * gnulib-tool (func_import): Detect unexpanded macros in gnulib
45688         namespace.
45689
45690 2006-08-10  Bruno Haible  <bruno@clisp.org>
45691
45692         * gnulib-tool (func_create_testdir): Detect unexpanded macros here
45693         as well.
45694
45695 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
45696
45697         Sync from coreutils.
45698
45699         2006-07-19  Mike Frysinger  <vapier@gentoo.org>
45700
45701         * lib/mountlist.c [ME_REMOTE]: Filter out cifs.
45702         Reported by Toralf Förster in <http://bugs.gentoo.org/141012>.
45703
45704 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
45705
45706         * modules/restrict: Remove; no longer needed now that we assume
45707         Autoconf 2.59 or later.
45708         * MODULES.html.sh: Remove 'restrict'.
45709         * modules/argp (Depends-on): Remove 'restrict'.
45710         * modules/base64 (Depends-on): Likewise.
45711         * modules/gc (Depends-on): Likewise.
45712         * modules/getaddrinfo (Depends-on): Likewise.
45713         * modules/glob (Depends-on): Likewise.
45714         * modules/inet_ntop (Depends-on): Likewise.
45715         * modules/inet_pton (Depends-on): Likewise.
45716         * modules/memxor (Depends-on): Likewise.
45717         * modules/regex (Depends-on): Likewise.
45718         * modules/strtok_r (Depends-on): Likewise.
45719         * modules/time_r (Depends-on): Likewise.
45720
45721 2006-08-09  Paul Eggert  <eggert@cs.ucla.edu>
45722
45723         * m4/argp.m4 (gl_ARGP): Require AC_C_RESTRICT.
45724         * m4/gc.m4 (gl_PREREQ_GC): Likewise.
45725         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
45726         * m4/inet_ntop.m4 (gl_PREREQ_INET_NTOP): Likewise.
45727         * m4/inet_pton.m4 (gl_PREREQ_INET_PTON): Likewise.
45728         * m4/memxor.m4 (gl_MEMXOR): Likewise.
45729         * m4/restrict.m4: Remove; no longer needed.  All remaining uses of
45730         gl_C_RESTRICT replaced by AC_C_RESTRICT.
45731
45732         Merge from coreutils.
45733         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_C_RESTRICT, not
45734         gl_C_RESTRICT, now that we assume Autoconf 2.59 or later.
45735         * m4/strtok_r.m4 (gl_FUNC_STRTOK_R): Likewise.
45736         * m4/time_r.m4 (gl_TIME_R): Likewise.
45737
45738 2006-08-09  Karl Berry  <karl@gnu.org>
45739
45740         * config/srclist.txt: no more gettext-tools, per Bruno.
45741
45742 2006-08-08  Eric Blake  <ebb9@byu.net>
45743
45744         * modules/verror: New module.
45745         * MODULES.html.sh: Document it.
45746
45747 2006-08-08  Eric Blake  <ebb9@byu.net>
45748
45749         * lib/verror.h, lib/verror.c: New files.
45750
45751 2006-08-08  Eric Blake  <ebb9@byu.net>
45752
45753         * lib/verror.c (verror_at_line): Work around glibc bug 2997, so that
45754         verror_at_line output complies with GNU Coding Standards even when
45755         file is NULL.
45756
45757 2006-08-07  Bruno Haible  <bruno@clisp.org>
45758
45759         * lib/allocsa.h (sa_alignof) [_AIX]: Also consider 'long long' in newer
45760         versions of AIX.
45761         Reported by Ralf Wildenhues.
45762
45763 2006-08-07  Bruno Haible  <bruno@clisp.org>
45764
45765         * gnulib-tool (func_create_testdir): Wrap the set of autoconf snippets
45766         in an AC_DEFUN. Needed so that the autoconf snippets can use
45767         AC_REQUIRE.
45768
45769 2006-08-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
45770
45771         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
45772         Initialize pkgdata_DATA.
45773         * modules/javaversion (Makefile.am): Add to pkgdata_DATA, rather than
45774         overriding it.
45775
45776 2006-08-06  Eric Blake  <ebb9@byu.net>
45777
45778         * lib/error.h: Fold in some upstream changes from glibc.
45779         * lib/error.c: Likewise.
45780
45781 2006-08-04  Bruno Haible  <bruno@clisp.org>
45782
45783         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
45784         Make the mostlyclean-local rule depend on mostlyclean-generic.
45785         Reported by Jim Meyering. Solution suggested by Ralf Wildenhues.
45786
45787 2006-07-31  Bruno Haible  <bruno@clisp.org>
45788
45789         * m4/localcharset.m4 (gl_LOCALCHARSET): Remove tests for <stddef.h>,
45790         <stdlib.h>, <string.h>.
45791
45792 2006-07-30  Bruno Haible  <bruno@clisp.org>
45793
45794         * modules/readlink (License): Change to LGPL.
45795
45796 2006-07-30  Bruno Haible  <bruno@clisp.org>
45797
45798         * modules/javaversion (Makefile.am): Distribute javaversion.java and
45799         javaversion.class. Also install javaversion.class in $(pkgdatadir) and
45800         set PKGDATADIR to point to it.
45801
45802 2006-07-30  Bruno Haible  <bruno@clisp.org>
45803
45804         * modules/csharpexec (configure.ac): Comment out macro invocation.
45805         * modules/javaexec (configure.ac): Likewise.
45806         * modules/javacomp-script (configure.ac): Likewise.
45807
45808         * modules/csharpcomp-script (configure.ac): Use AC_REQUIRE.
45809
45810 2006-07-30  Bruno Haible  <bruno@clisp.org>
45811
45812         * modules/clean-temp (Depends-on): Add linkedhash-list, remove
45813         linked-list.
45814
45815 2006-07-30  Bruno Haible  <bruno@clisp.org>
45816
45817         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Assume <string.h> exists.
45818
45819 2006-07-30  Bruno Haible  <bruno@clisp.org>
45820
45821         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
45822         Initialize MOSTLYCLEANFILES to core and *.stackdump, so that core dumps
45823         get removed.
45824
45825 2006-07-29  Bruno Haible  <bruno@clisp.org>
45826
45827         Make it possible for gnulib-tool to work with locally modified or
45828         augmented gnulib repositories.
45829         * gnulib-tool (func_usage): Document --local-dir option.
45830         (local_gnulib_dir): New variable.
45831         Handle --local-dir option.
45832         (func_lookup_file): New function.
45833         (func_all_modules, func_verify_module): Look also in $local_gnulib_dir.
45834         (func_get_description, func_get_filelist, func_get_description,
45835         func_get_filelist, func_get_dependencies, func_get_autoconf_snippet,
45836         func_get_automake_snippet, func_get_include_directive,
45837         func_get_license, func_get_maintainer): Use func_lookup_file.
45838         (func_import, func_create_testdir): Use func_lookup_file.
45839
45840 2006-07-29  Bruno Haible  <bruno@clisp.org>
45841
45842         * modules/setenv (Depends-on): Add unistd.
45843
45844 2006-07-29  Bruno Haible  <bruno@clisp.org>
45845
45846         * lib/setenv.c: Undo unintended modification done on 2006-02-27.
45847
45848 2006-07-29  Bruno Haible  <bruno@clisp.org>
45849
45850         * lib/localcharset.c: Assume <stddef.h>, <stdlib.h>, <string.h> exist.
45851
45852 2006-07-29  Bruno Haible  <bruno@clisp.org>
45853
45854         * gnulib-tool (import, update): If there is no Makefile.am, look at
45855         aclocal.m4, instead of bailing out.
45856
45857 2006-07-29  Bruno Haible  <bruno@clisp.org>
45858
45859         * gnulib-tool (func_usage): Revert most of the 2006-07-15 change.
45860         Categorize the options by when they are useful.
45861
45862 2006-07-29  Bruno Haible  <bruno@clisp.org>
45863
45864         * gnulib-tool (func_usage): Document option --no-libtool.
45865         Handle option --no-libtool.
45866         (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am): Update
45867         for changed semantics of $libtool variable.
45868         (func_import): Likewise. If libtool is not used, show this through
45869         an option --no-libtool.
45870         (func_create_testdir): Update.
45871
45872 2006-07-29  Bruno Haible  <bruno@clisp.org>
45873
45874         * gnulib-tool (func_import): Extend error message about missing
45875         --doc-base.
45876
45877 2006-07-29  Bruno Haible  <bruno@clisp.org>
45878
45879         * gnulib-tool (func_import): Don't create the $docbase directory if
45880         there is no file to store there.
45881
45882 2006-07-29  Bruno Haible  <bruno@clisp.org>
45883
45884         * gnulib-tool (autoconf_minversion): If a --dir option is given and
45885         relevant, look for configure.ac there, not in the current directory.
45886         Also use a simple search for AC_PREREQ, not "autoconf --trace".
45887
45888 2006-07-29  Bruno Haible  <bruno@clisp.org>
45889
45890         * gnulib-tool (SORT): New variable.
45891         (func_usage): Undocument --assume-autoconf option.
45892         Remove --assume-autoconf option handling.
45893         (autoconf_minversion): Determine from the contents of configure.ac.
45894         (func_import): Remove autoconf_minversion handling.
45895         Suggested by Eric Blake.
45896
45897 2006-07-29  Bruno Haible  <bruno@clisp.org>
45898
45899         * doc/gnulib-tool.texi (gl_LIBTOOL): Mention --no-libtool option.
45900
45901 2006-07-29  Bruno Haible  <bruno@clisp.org>
45902
45903         * config/srclist.txt (*setenv.[ch]): Remove rules.
45904
45905 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
45906
45907         * m4/inet_pton.m4, inet_ntop.m4: Check for netinet/in.h too.
45908
45909 2006-07-28  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
45910
45911         * lib/inet_ntop.h, inet_pton.h: Need to include netinet/in.h before
45912         arpa/inet.h.
45913
45914 2006-07-28  Simon Josefsson  <jas@extundo.com>
45915
45916         * modules/inet_ntop (Depends-on): Depend on arpa_inet.
45917         * modules/inet_pton (Depends-on): Likewise.
45918
45919 2006-07-28  Simon Josefsson  <jas@extundo.com>
45920
45921         * m4/netinet_in_h.m4: New file.
45922
45923 2006-07-28  Simon Josefsson  <jas@extundo.com>
45924
45925         * lib/inet_ntop.h, inet_pton.h: No need to guard netinet/in.h
45926         #include's.
45927
45928 2006-07-28  Simon Josefsson  <jas@extundo.com>
45929
45930         * lib/inet_ntop.h, inet_pton.h: No need to guard arpa/inet.h
45931         #include's.
45932
45933 2006-07-28  Paul Eggert  <eggert@cs.ucla.edu>
45934
45935         * lib/modechange.c (mode_compile): Numeric modes now affect setuid and
45936         setgid on directories only if they set these bits.
45937         * lib/modechange.h: Remove obsolete comment about masks.
45938
45939 2006-07-28  Eric Blake  <ebb9@byu.net>
45940
45941         * lib/regex_internal.h (struct re_dfa_t) [!_LIBC]: Avoid invalid C89
45942         macro expansion.
45943
45944 2006-07-28  Bruno Haible  <bruno@clisp.org>
45945
45946         * lib/inet_ntop.h, inet_pton.h: Use #if HAVE* instead of #ifdef HAVE*.
45947
45948 2006-07-28  Bruno Haible  <bruno@clisp.org>
45949
45950         * m4/mbchar.m4 (gl_MBCHAR): Also test for iswcntrl.
45951
45952 2006-07-28  Bruno Haible  <bruno@clisp.org>
45953
45954         * lib/mbchar.h (iswalnum, iswalpha, iswblank, iswcntrl, iswdigit,
45955         iswgraph, iswlower, iswprint, iswpunct, iswspace, iswupper, iswxdigit):
45956         Define fallbacks.
45957         Avoids link error on FreeBSD 4.x.
45958         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
45959
45960         * lib/wcwidth.h (iswprint): Assume an ASCII compatible wide character
45961         encoding.
45962         * lib/mbswidth.c (iswcntrl): Likewise.
45963
45964 2006-07-27  Bruno Haible  <bruno@clisp.org>
45965
45966         * m4/stdint.m4 (gl_STDINT_H): Define __STDC_CONSTANT_MACROS during the
45967         test.
45968
45969 2006-07-27  Bruno Haible  <bruno@clisp.org>
45970
45971         * lib/stdint_.h (INT*_C, UINT*_C) [C++]: Define these if
45972         __STDC_CONSTANT_MACROS is defined, not if __STDC_LIMIT_MACROS is
45973         defined.
45974
45975 2006-07-26  Eric Blake  <ebb9@byu.net>
45976
45977         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Check for missing pipe.
45978
45979 2006-07-26  Eric Blake  <ebb9@byu.net>
45980
45981         * lib/mkstemp-safer.c [! HAVE_MKSTEMP]: Add prototype for platforms
45982         like mingw that lack mkstemp.
45983         * lib/pipe-safer.c (pipe_safer) [!HAVE_FUNC_PIPE]: Provide fallback to
45984         avoid compilation warning on mingw.
45985
45986 2006-07-26  Bruno Haible  <bruno@clisp.org>
45987
45988         * m4/stdint.m4 (gl_STDINT_H): Also verify the existence of the macros
45989         INT*_MIN, INT_LEAST*_MAX, INT_LEAST*_MIN, UINT_LEAST*_MAX,
45990         INT_FAST*_MIN, INTPTR_MIN.
45991
45992 2006-07-25  Bruno Haible  <bruno@clisp.org>
45993
45994         * modules/version-etc (Depends-on): Add stdarg.
45995
45996 2006-07-25  Bruno Haible  <bruno@clisp.org>
45997
45998         * m4/stdint.m4 (gl_INTEGER_TYPE_SUFFIX): Avoid 'eval' in front of
45999         complex commands.
46000
46001 2006-07-25  Bruno Haible  <bruno@clisp.org>
46002
46003         * lib/version-etc.c (version_etc_va): Use va_copy, assumed to be
46004         defined in <stdarg.h> or config.h.
46005
46006 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
46007
46008         * m4/stdio-safer.m4 (gl_FOPEN_SAFER, gl_TMPFILE_SAFER): New macros.
46009         (gl_STDIO_SAFER): Remove.
46010
46011 2006-07-24  Paul Eggert  <eggert@cs.ucla.edu>
46012
46013         * MODULES.html.sh (File stream based Input/Output):
46014         Add fopen-safer, tmpfile-safer; remove stdio-safer.
46015         * modules/getusershell (Depends-on): Change stdio-safer to fopen-safer.
46016         * modules/fopen-safer, modules/tmpfile-safer: New files.
46017         * modules/stdio-safer: Remove.
46018
46019 2006-07-24  Bruno Haible  <bruno@clisp.org>
46020
46021         * modules/tmpdir: New file.
46022         * MODULES.html.sh (File system functions): Add it.
46023
46024 2006-07-24  Bruno Haible  <bruno@clisp.org>
46025
46026         * modules/javacomp (Depends-on): Add unistd, javaversion, binary-io,
46027         getline, pathname, fwriteerror, clean-temp, xvasprintf, strstr.
46028
46029 2006-07-24  Bruno Haible  <bruno@clisp.org>
46030
46031         * modules/clean-temp: New file.
46032
46033 2006-07-24  Bruno Haible  <bruno@clisp.org>
46034
46035         * m4/tmpdir.m4: New file, from GNU gettext.
46036
46037 2006-07-24  Bruno Haible  <bruno@clisp.org>
46038
46039         * lib/tmpdir.h: New file, from GNU gettext.
46040         * lib/tmpdir.c: New file, from GNU gettext.
46041
46042 2006-07-24  Bruno Haible  <bruno@clisp.org>
46043
46044         * lib/clean-temp.h: New file, from GNU gettext.
46045         * lib/clean-temp.c: New file, from GNU gettext.
46046
46047 2006-07-23  Eric Blake  <ebb9@byu.net>
46048
46049         * modules/stdio-safer (Files): Add tmpfile-safer.c.
46050         (Depends-on): Add binary-io.
46051
46052 2006-07-23  Eric Blake  <ebb9@byu.net>
46053
46054         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add tmpfile-safer.c.
46055
46056 2006-07-23  Eric Blake  <ebb9@byu.net>
46057
46058         * lib/tmpfile-safer.c: New file.
46059         * lib/stdio-safer.h (fopen_safer): Add prototype.
46060         * lib/stdio--.h (tmpfile): Make safer.
46061
46062 2006-07-23  Bruno Haible  <bruno@clisp.org>
46063
46064         * lib/gl_anylinked_list2.h (ASYNCSAFE): New macro.
46065         (gl_linked_add_first, gl_linked_add_last, gl_linked_add_before,
46066         gl_linked_add_after, gl_linked_add_at, gl_linked_remove_node,
46067         gl_linked_remove_at): Use it.
46068
46069 2006-07-22  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
46070         and Simon Josefsson <jas@extundo.com>
46071
46072         * lib/getaddrinfo.h (AI_PASSIVE): Make sure it is defined.
46073
46074         * lib/getaddrinfo.c (getaddrinfo): Support AI_PASSIVE.
46075
46076 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
46077
46078         * modules/close-stream: New file.
46079         * modules/closeout (Description): Make it clear that it exits
46080         with a diagnostic on error.
46081         (Depends-on): Add close-stream.  Remove fpending, stdbool.
46082         * MODULES.html.sh (File stream based Input/Output): Add close-stream.
46083
46084 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
46085
46086         * m4/close-stream.m4: New file.
46087
46088 2006-07-22  Paul Eggert  <eggert@cs.ucla.edu>
46089
46090         * lib/close-stream.c, lib/close-stream.h: New files.
46091
46092 2006-07-22  Bruno Haible  <bruno@clisp.org>
46093
46094         Merge from GNU gettext 0.15.
46095
46096         2006-05-01  Bruno Haible  <bruno@clisp.org>
46097
46098                 * build-aux/javacomp.sh.in: Update for changed javacomp.m4.
46099
46100         2006-07-22  Bruno Haible  <bruno@clisp.org>
46101
46102                 * modules/javaversion: New file.
46103                 * MODULES.html.sh (Java): Add javaversion.
46104
46105         2006-03-12  Bruno Haible  <bruno@clisp.org>
46106
46107                 * build-aux/javaexec.sh.in: Update for changed javaexec.m4.
46108
46109         2005-12-04  Bruno Haible  <bruno@clisp.org>
46110
46111                 * build-aux/csharpexec.sh.in: Add support for 'clix' launcher
46112                 (untested).
46113
46114         2006-06-21  Bruno Haible  <bruno@clisp.org>
46115
46116                 Avoid warnings from recent versions of mcs.
46117                 * build-aux/csharpcomp.sh.in (options_mcs): Don't use options
46118                 -o, -L, -r any more. Use options documented since mcs-1.0
46119                 instead. Similarly for -g.
46120
46121         2005-12-04  Bruno Haible  <bruno@clisp.org>
46122
46123                 * build-aux/csharpcomp.sh.in: Suffix for resources is
46124                 .resources, not .resource.
46125
46126         2005-07-09  Bruno Haible  <bruno@clisp.org>
46127
46128                 * build-aux/csharpcomp.sh.in (options_csc): For -l option,
46129                 add a .dll suffix.
46130                 Reported by Mark Junker <mjscod@gmx.de>.
46131
46132         2006-07-22  Bruno Haible  <bruno@clisp.org>
46133
46134                 * modules/gettext: Upgrade to gettext-0.15.
46135                 (Files): Remove m4/isc-posix.m4. Add m4/lock.m4,
46136                 m4/visibility.m4.
46137                 Replace m4/inttypes.m4 with m4/inttypes-h.m4.
46138
46139 2006-07-22  Bruno Haible  <bruno@clisp.org>
46140
46141         Merge from GNU gettext 0.15.
46142
46143         2006-03-25  Bruno Haible  <bruno@clisp.org>
46144
46145                 * lib-link.m4 (AC_LIB_LINKFLAGS_FROM_LIBS): New macro.
46146
46147         2006-07-21  Bruno Haible  <bruno@clisp.org>
46148
46149                 * javacomp.m4 (gt_JAVACOMP): Convert target_version "null" to
46150                 "1.1".
46151
46152         2006-05-09  Bruno Haible  <bruno@clisp.org>
46153
46154                 * javacomp.m4 (gt_JAVACOMP): On Cygwin, set
46155                 CLASSPATH_SEPARATOR to a semicolon. Use CLASSPATH_SEPARATOR
46156                 for the conftestver execution.
46157
46158         2006-05-01  Bruno Haible  <bruno@clisp.org>
46159
46160                 * javacomp.m4 (gt_JAVACOMP): Accept a source-version and an
46161                 optional target-version argument. Verify that the compiler
46162                 groks source of the specified source-version, or add -source
46163                 option as necessary. Verify that the compiler produces
46164                 bytecode in the specified target-version, or add -target and
46165                 -source options as necessary. Make the result of the test
46166                 available as variable CONF_JAVAC. Also log error output in
46167                 config.log.
46168
46169         2006-03-11  Bruno Haible  <bruno@clisp.org>
46170
46171                 * javacomp.m4 (gt_JAVACOMP): Treat gcj-4.x like gcj-3.x.
46172
46173         2006-05-09  Bruno Haible  <bruno@clisp.org>
46174
46175                 * javaexec.m4 (gt_JAVAEXEC): On Cygwin, set
46176                 CLASSPATH_SEPARATOR to a semicolon.
46177
46178         2006-03-12  Bruno Haible  <bruno@clisp.org>
46179
46180                 * javaexec.m4 (gt_JAVAEXEC): Make the result of the test
46181                 available as variable CONF_JAVA, for subsequent autoconf
46182                 tests. Also log error output in config.log.
46183
46184         2006-07-19  Bruno Haible  <bruno@clisp.org>
46185
46186                 * getline.m4 (AM_FUNC_GETLINE): When cross-compiling, assume
46187                 that getline works on glibc2 systems. Needed to avoid trouble
46188                 in relocatable.c.
46189                 Reported by Nils Magnus Larsgard <nmlarsgaard@atmel.no>.
46190
46191         2005-12-04  Bruno Haible  <bruno@clisp.org>
46192
46193                 * csharpexec.m4 (gt_CSHARPEXEC): Add support for 'clix'
46194                 launcher (untested).
46195
46196         2005-12-04  Bruno Haible  <bruno@clisp.org>
46197
46198                 * csharpcomp.m4 (gt_CSHARPCOMP): Also set CSHARPCOMPFLAGS.
46199
46200         2006-07-22  Bruno Haible  <bruno@clisp.org>
46201
46202                 * gettext.m4: Update from GNU gettext-0.15.
46203                 * nls.m4: Likewise.
46204                 * po.m4: Likewise.
46205                 * inttypes-pri.m4: Likewise.
46206                 * inttypes-h.m4: Renamed from inttypes.m4.
46207                 (gl_HEADER_INTTYPES_H): Renamed from gt_HEADER_INTTYPES_H.
46208
46209 2006-07-22  Bruno Haible  <bruno@clisp.org>
46210
46211         Merge from GNU gettext 0.15.
46212
46213         2005-07-05  Bruno Haible  <bruno@clisp.org>
46214
46215                 * printf-args.c (printf_fetchargs): Work around broken
46216                 definition of wint_t on mingw.
46217
46218         2005-02-12  Bruno Haible  <bruno@clisp.org>
46219
46220                 * xallocsa.h: Add extern "C" for C++.
46221
46222         2006-05-17  Bruno Haible  <bruno@clisp.org>
46223
46224                 Cygwin portability.
46225                 * progreloc.c (WIN32_NATIVE): Renamed from WIN32.
46226
46227         2006-04-30  Bruno Haible  <bruno@clisp.org>
46228
46229                 * progreloc.c: Include <mach-o/dyld.h> if available.
46230                 (find_executable): Use _NSGetExecutablePath when possible.
46231
46232         2006-05-06  Charles Wilson  <cygwin@cwilson.fastmail.fm>
46233
46234                 * progreloc.c (maybe_executable) [CYGWIN]: Use the access()
46235                 function.
46236
46237         2005-12-29  Bruno Haible  <bruno@clisp.org>
46238
46239                 * progreloc.c (set_program_name_and_installdir): Fix
46240                 compilation error.
46241
46242         2005-12-04  Bruno Haible  <bruno@clisp.org>
46243
46244                 Cygwin portability.
46245                 * progreloc.c: Include <windows.h> also on Cygwin.
46246                 (find_executable): Add support for Cygwin.
46247                 (set_program_name_and_installdir): Handle also platforms with
46248                 nonempty EXEEXT.
46249
46250         2006-07-11  Bruno Haible  <bruno@clisp.org>
46251
46252                 * javacomp.c: Fix a comment.
46253                 Reported by Jim Meyering.
46254
46255         2006-04-30  Bruno Haible  <bruno@clisp.org>
46256
46257                 * javacomp.h (compile_java_class): Add source_version,
46258                 target_version arguments.
46259                 * javacomp.c: Rewritten to choose only a compiler that
46260                 respects the specified source_version and target_version.
46261
46262         2006-06-27  Bruno Haible  <bruno@clisp.org>
46263
46264                 Assume correct S_ISDIR macro.
46265                 * mkdtemp.c: Remove test of STAT_MACROS_BROKEN.
46266
46267         2006-07-22  Bruno Haible  <bruno@clisp.org>
46268
46269                 * javaversion.h: New file, from GNU gettext.
46270                 * javaversion.c: New file, from GNU gettext.
46271                 * javaversion.java: New file, from GNU gettext.
46272                 * javaversion.class: New file, from GNU gettext.
46273
46274         2006-05-17  Bruno Haible  <bruno@clisp.org>
46275
46276                 Cygwin portability.
46277                 * javaexec.c (execute_java_class): Test for jview program
46278                 also on Cygwin.
46279
46280         2006-04-09  Bruno Haible  <bruno@clisp.org>
46281
46282                 * fatal-signal.c: Don't include string.h.
46283                 (at_fatal_signal): Use a copying loop instead of memcpy.
46284
46285         2005-12-04  Bruno Haible  <bruno@clisp.org>
46286
46287                 * csharpexec.c: Add support for 'clix' launcher (untested).
46288                 (execute_csharp_using_sscli): New function.
46289                 (execute_csharp_program): Call it.
46290
46291         2006-06-21  Bruno Haible  <bruno@clisp.org>
46292
46293                 Avoid warnings from recent versions of mcs.
46294                 * csharpcomp.c (compile_csharp_using_mono): Don't use options
46295                 -o, -L, -r any more. Use options documented since mcs-1.0
46296                 instead. Similarly for -g.
46297
46298         2005-07-09  Bruno Haible  <bruno@clisp.org>
46299
46300                 * csharpcomp.c (compile_csharp_using_sscli): For -l option,
46301                 add a .dll suffix.
46302                 Reported by Mark Junker <mjscod@gmx.de>.
46303
46304         2006-06-17  Bruno Haible  <bruno@clisp.org>
46305
46306                 * config.charset: Update for NetBSD 3.0.
46307
46308         2006-05-17  Bruno Haible  <bruno@clisp.org>
46309
46310                 Cygwin portability.
46311                 * localcharset.c (WIN32_NATIVE): Renamed from WIN32.
46312
46313         2006-05-16  Bruno Haible  <bruno@clisp.org>
46314
46315                 * localcharset.c [CYGWIN]: Include <windows.h>.
46316                 (get_charset_aliases): For Cygwin, return the same CPxxx
46317                 aliases list as under WIN32.
46318                 (locale_charset) [CYGWIN]: Try to retrieve the encoding from
46319                 the environment variables. Fall back to GetACP().
46320
46321         2006-04-05  Bruno Haible  <bruno@clisp.org>
46322
46323                 * config.charset: Update Juan Manuel Guerrero's address.
46324
46325         2005-02-12  Bruno Haible  <bruno@clisp.org>
46326
46327                 * allocsa.h: Add extern "C" for C++.
46328
46329         2005-02-10  Bruno Haible  <bruno@clisp.org>
46330
46331                 * allocsa.h (sa_alignof): Define differently with AIX xlc, to
46332                 avoid a bug of this compiler on AIX 3.2.5 dealing with enums.
46333
46334         2006-07-22  Bruno Haible  <bruno@clisp.org>
46335
46336                 * gettext.h: Update to GNU gettext-0.15.
46337
46338 2006-07-22  Bruno Haible  <bruno@clisp.org>
46339
46340         * config/srclist.txt: Resync printf-args.c, vasnprintf.c,
46341         localcharset.c, mkdtemp.c, config.rpath, lib-ld.m4, lib-link.m4,
46342         lib-prefix.m4, longdouble.m4, ssize_t.m4.
46343
46344 2006-07-21  Eric Blake  <ebb9@byu.net>
46345
46346         * modules/stdlib-safer: New file.
46347         * MODULES.html.sh (File stream based Input/Output): Add
46348         stdlib-safer.
46349
46350 2006-07-21  Eric Blake  <ebb9@byu.net>
46351
46352         * lib/stdlib-safer.h: New file from coreutils, required by
46353         stdlib--.h.
46354
46355 2006-07-20  Paul Eggert  <eggert@cs.ucla.edu>
46356
46357         * gnulib-tool (func_usage): Document --assume-autoconf='latest-stable'.
46358
46359 2006-07-20  Bruno Haible  <bruno@clisp.org>
46360
46361         * gnulib-tool: Recognize new option --assume-autoconf.
46362         (autoconf_minversion): New variable.
46363         (func_get_filelist): Use it to decide whether to add onceonly_2_57.m4.
46364
46365 2006-07-20  Bruno Haible  <bruno@clisp.org>
46366
46367         * MODULES.html.sh (func_all_modules): Add a missing func_begin_table.
46368
46369 2006-07-19  Derek R. Price  <derek@ximbiot.com>
46370
46371         * lib/getaddrinfo.h: Don't define unimplemented AI_* flags.
46372         Reindent and repaginate.
46373
46374 2006-07-19  Derek Price  <derek@ximbiot.com>
46375
46376         * doc/gnulib.texi (Libtool and Windows):  Eliminate passive voice.
46377         Correct grammar.
46378
46379 2006-07-17  Bruno Haible  <bruno@clisp.org>
46380
46381         * modules/list: New file.
46382         * modules/array-list: New file.
46383         * modules/carray-list, modules/carray-list-tests: New files.
46384         * modules/linked-list, modules/linked-list-tests: New files.
46385         * modules/avltree-list, modules/avltree-list-tests: New files.
46386         * modules/rbtree-list, modules/rbtree-list-tests: New files.
46387         * modules/linkedhash-list, modules/linkedhash-list-tests: New files.
46388         * modules/avltreehash-list, modules/avltreehash-list-tests: New files.
46389         * modules/rbtreehash-list, modules/rbtreehash-list-tests: New files.
46390         * modules/oset: New file.
46391         * modules/array-oset: New file.
46392         * modules/avltree-oset, modules/avltree-oset-tests: New files.
46393         * modules/rbtree-oset, modules/rbtree-oset-tests: New files.
46394         * tests/test-carray_list.c: New file.
46395         * tests/test-linked_list.c: New file.
46396         * tests/test-avltree_list.c: New file.
46397         * tests/test-rbtree_list.c: New file.
46398         * tests/test-linkedhash_list.c: New file.
46399         * tests/test-avltreehash_list.c: New file.
46400         * tests/test-rbtreehash_list.c: New file.
46401         * tests/test-avltree_oset.c: New file.
46402         * tests/test-rbtree_oset.c: New file.
46403         * MODULES.html.sh (Container data structures): New section.
46404
46405 2006-07-17  Bruno Haible  <bruno@clisp.org>
46406
46407         * m4/gl_list.m4: New file.
46408
46409 2006-07-17  Bruno Haible  <bruno@clisp.org>
46410
46411         * lib/gl_list.h: New file.
46412         * lib/gl_list.c: New file.
46413         * lib/gl_array_list.h: New file.
46414         * lib/gl_array_list.c: New file.
46415         * lib/gl_carray_list.h: New file.
46416         * lib/gl_carray_list.c: New file.
46417         * lib/gl_linked_list.h: New file.
46418         * lib/gl_linked_list.c: New file.
46419         * lib/gl_anylinked_list1.h: New file.
46420         * lib/gl_anylinked_list2.h: New file.
46421         * lib/gl_avltree_list.h: New file.
46422         * lib/gl_avltree_list.c: New file.
46423         * lib/gl_anyavltree_list1.h: New file.
46424         * lib/gl_anyavltree_list2.h: New file.
46425         * lib/gl_rbtree_list.h: New file.
46426         * lib/gl_rbtree_list.c: New file.
46427         * lib/gl_anyrbtree_list1.h: New file.
46428         * lib/gl_anyrbtree_list2.h: New file.
46429         * lib/gl_anytree_list1.h: New file.
46430         * lib/gl_anytree_list2.h: New file.
46431         * lib/gl_linkedhash_list.h: New file.
46432         * lib/gl_linkedhash_list.c: New file.
46433         * lib/gl_anyhash_list1.h: New file.
46434         * lib/gl_anyhash_list2.h: New file.
46435         * lib/gl_avltreehash_list.h: New file.
46436         * lib/gl_avltreehash_list.c: New file.
46437         * lib/gl_rbtreehash_list.h: New file.
46438         * lib/gl_rbtreehash_list.c: New file.
46439         * lib/gl_anytreehash_list1.h: New file.
46440         * lib/gl_anytreehash_list2.h: New file.
46441
46442         * lib/gl_oset.h: New file.
46443         * lib/gl_oset.c: New file.
46444         * lib/gl_array_oset.h: New file.
46445         * lib/gl_array_oset.c: New file.
46446         * lib/gl_avltree_oset.h: New file.
46447         * lib/gl_avltree_oset.c: New file.
46448         * lib/gl_rbtree_oset.h: New file.
46449         * lib/gl_rbtree_oset.c: New file.
46450         * lib/gl_anytree_oset.h: New file.
46451
46452 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
46453
46454         * m4/mkancesdirs.m4: New file.
46455         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Mention dirchownmod.c,
46456         dirchownmod.h.  Don't require AC_FUNC_ALLOCA, gl_AFS, gl_CHDIR_SAFER;
46457         no longer needed.  Require gl_FUNC_LCHOWN, since dirchownmod.c needs
46458         it.
46459
46460 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
46461
46462         * lib/dirchownmod.c, lib/dirchownmod.h, lib/mkancesdirs.c:
46463         * lib/mkancesdirs.h: New files.
46464         * lib/mkdir-p.c: Don't include alloca.h, stdio.h, sys/types.h,
46465         unistd.h, string.h, chdir-safer.h, dirname.h, lchmod.h, lchown.h,
46466         save-cwd.h.  Instead, include dirchownmod.h and mkancesdirs.h.
46467         (make_dir_parents): New args MAKE_ANCESTOR, OPTIONS, ANNOUNCE,
46468         MODE_BITS.  Remove options VERBOSE_FMT_STRING, CWD_ERRNO.  All
46469         callers changed.  Revamp internals significantly, by not
46470         attempting to create directories that are temporarily more
46471         permissive than the final results.  Do not attempt to use
46472         save_cwd/restore_cwd; it isn't worth it for mkdir and install.
46473         This removes some race conditions, fixes some bugs, and simplifies
46474         things.  Use new dirchownmod function to do owner and mode changes.
46475         * lib/mkdir-p.h: Likewise.
46476         * lib/modechange.c (octal_to_mode): New function.
46477         (struct mode_change): New member mentioned.
46478         (make_node_op_equals): New arg mentioned.  All callers changed.
46479         (mode_compile): Keep track of which mode bits the user has explicitly
46480         mentioned.
46481         (mode_adjust): New arg DIR, so that we implement the X op correctly.
46482         New arg PMODE_BITS, to keep track of which mode bits the user
46483         mentioned; it treats S_ISUID and S_ISGID speciall.
46484         All callers changed.
46485         * lib/modechange.h: Likewise.
46486
46487 2006-07-16  Paul Eggert  <eggert@cs.ucla.edu>
46488
46489         * MODULES.html.sh: Add mkancestors.
46490         * modules/mkancesdirs: New module.
46491         * modules/mkdir-p (Files): Remove lib/chdir-safer.c, lib/chdir-safer.h,
46492         lib/same-inode.h, m4/afs.m4, m4/chdir-safer.m4.
46493         The chdir-safer and afs files are now orphans; I'll remove them
46494         unless someone speaks up.
46495         Add lib/dirchownmod.c, lib/dirchownmod.h.
46496         (Depends-on): Remove alloca, chown, save-cwd, dirname.
46497         Add lchown, mkancesdirs.
46498         (Maintainer): Add self.
46499
46500 2006-07-15  Karl Berry  <karl@gnu.org>
46501
46502         * gnulib-tool: help message wording/arrangement.
46503
46504 2006-07-14  Simon Josefsson  <jas@extundo.com>
46505
46506         * doc/gnulib.texi (Libtool and Windows): New section.
46507
46508 2006-07-12  Simon Josefsson  <jas@extundo.com>
46509
46510         * modules/gendocs (License): Fix license, approved by Karl.
46511
46512 2006-07-12  Eric Blake  <ebb9@byu.net>
46513
46514         * MODULES.html.sh: Add gendocs.
46515
46516 2006-07-11  Eric Blake  <ebb9@byu.net>
46517
46518         * modules/fdl: New module, to install doc/fdl.texi.
46519         * MODULES.html.sh: Add new section for documentation modules.
46520         * gnulib-tool: Avoid space-tab.
46521         (--doc-base): New option, to manage files from doc.
46522
46523 2006-07-11  Eric Blake  <ebb9@byu.net>
46524
46525         * m4/absolute-header.m4: Fix comments to match recent change.
46526
46527 2006-07-11  Eric Blake  <ebb9@byu.net>
46528
46529         * gnulib-tool: List --doc-base before --tests-base.
46530
46531 2006-07-11  Derek R. Price  <derek@ximbiot.com>
46532
46533         * lib/glob.c: s/NAMLEN/_D_EXACT_NAMLEN/.
46534
46535 2006-07-11  Bruno Haible  <bruno@clisp.org>
46536
46537         * README: Mention where to put documentation.
46538
46539 2006-07-10  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
46540
46541         * doc/functions.texi, gnulib-tool.texi, gnulib.texi: Fix some typos.
46542
46543 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
46544
46545         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Like today's change
46546         to stdint.m4.
46547
46548 2006-07-10  Paul Eggert  <eggert@cs.ucla.edu>
46549
46550         * m4/stdint.m4 (gl_STDINT_H): Like yesterday's change to
46551         absolute-header.m4.  Also, set ABSOLUTE_STDINT_H to a string
46552         "no/such/file/stdint.h" when there is no such file, so that
46553         the resulting C code can be parsed by dodgy compilers.
46554         Problems reported by Bob Proulx.
46555
46556 2006-07-10  Derek R. Price  <derek@ximbiot.com>
46557
46558         * lib/backupfile.c, dirfd.h, fts.c, getcwd.c, glob.c, glob_.h:
46559         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
46560         macros into the GNU _D_EXACT_NAMLEN.
46561         * lib/savedir.c:  Likewise.
46562         (savedirstream): Use _D_EXACT_NAMLEN in preference to strlen.
46563
46564 2006-07-10  Derek R. Price  <derek@ximbiot.com>
46565         and Paul Eggert  <eggert@cs.ucla.edu>
46566
46567         * m4/backupfile.m4, d-ino.m4, d-type.m4, dirfd.m4, fts.m4, getcwd.m4:
46568         * m4/savedir.m4:
46569         Ignore the obsolescent !HAVE_DIRENT_H case.  Consolidate NAMLEN
46570         macros into the GNU _D_EXACT_NAMLEN.
46571
46572 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
46573
46574         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Use "" rather than <>
46575         around the absolute name, to work around a problem with the HP-UX
46576         11.23 native C compiler, reported by Bob Proulx.
46577
46578 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
46579
46580         * doc/maintain.texi, make-stds.texi: Sync from
46581         <http://savannah.gnu.org/projects/gnustandards>.
46582
46583 2006-07-09  Paul Eggert  <eggert@cs.ucla.edu>
46584
46585         * build-aux/depcomp, build-aux/install-sh: Sync from Automake.
46586
46587 2006-07-09  Jim Meyering  <jim@meyering.net>
46588
46589         * m4/glob.m4: Remove a doubled word in a comment.
46590
46591 2006-07-09  Jim Meyering  <jim@meyering.net>
46592
46593         * lib/argp-pv.c: Remove a doubled word in a comment.
46594         * lib/check-version.c (check_version): Likewise.
46595         * lib/javacomp.c (compile_java_class): Likewise.
46596
46597 2006-07-08  Paul Eggert  <eggert@cs.ucla.edu>
46598
46599         * gnulib-tool (func_get_filelist): Don't echo m4/onceonly_2_57.m4,
46600         for the benefit of people using Autoconf 2.60.  If you want to
46601         support older Autoconf versions you can copy m4/onceonly_2_57.m4
46602         (or m4/onceonly.m4, if pre-2.57) manually.
46603
46604 2006-07-08  Jim Meyering  <jim@meyering.net>
46605
46606         * m4/link-follow.m4: Remove one of two adjacent "whether"s in a
46607         comment.
46608         * m4/getopt.m4: Remove one of two adjacent "your"s in a comment.
46609         * m4/regex.m4 (gl_REGEX): Remove one of two adjacent "the"s in a
46610         comment.
46611
46612 2006-07-08  Jim Meyering  <jim@meyering.net>
46613
46614         * lib/getndelim2.h (getndelim2): Remove doubled "after" in comment.
46615
46616 2006-07-07  Simon Josefsson  <jas@extundo.com>
46617
46618         * tests/test-crc.c: Change expected crc value, the test vector
46619         were probably computed using the old broken crc.c?
46620
46621 2006-07-06  Simon Josefsson  <jas@extundo.com>
46622
46623         * modules/sys_socket (Files): Add m4/sockpfaf.m4 (this module is
46624         now the canonical place for the M4 file).
46625
46626         * modules/getaddrinfo (Files): Remove m4/sockpfaf.m4, we get it
46627         from the sys_socket dependency now.
46628
46629         * modules/inet_pton (Files): Ditto.
46630
46631         * modules/inet_ntop (Files): Ditto.
46632
46633 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
46634
46635         * modules/getusershell (configure.ac): Use gl_FUNC_GETUSERSHELL,
46636         not gl_PREREQ_GETUSERSHELL.
46637
46638 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
46639
46640         * m4/_inttypes_h.m4 (gl_INTTYPES_H): Use AC_CHECK_DECLS_ONCE
46641         with only one argument, for Autoconf 2.60.
46642         * m4/fileblocks.m4 (gl_PREREQ_FILEBLOCKS): AC_CHECK_DECLS_ONCE may
46643         expand to nothing, so add a shell command to avoid syntax error.
46644         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
46645
46646 2006-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
46647
46648         * lib/strtod.c (strtod): cast the argument of tolower to unsigned char.
46649
46650 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
46651
46652         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't check for getenv decl;
46653         no longer needed.  Check for isblank decl.
46654         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Don't check for getenv decl.
46655         * m4/regex.m4 (gl_PREREQ_REGEX): Dheck for isblank decl instead
46656         of existence.
46657
46658 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
46659
46660         * lib/getloadavg.c: Use __VMS, not VMS.
46661         * lib/getopt.c: Likewise.
46662         * lib/getpagesize.h: Likewise.
46663         * lib/glob.c: Remove most VMS cruft; it hasn't been tested for a while
46664         and probably does not work.
46665
46666 2006-07-06  Paul Eggert  <eggert@cs.ucla.edu>
46667
46668         * lib/.cppi-disable: Add wcwidth.
46669         * lib/fnmatch.c (ISBLANK): Remove.  All uses changed to isblank.
46670         (isblank) [! (defined isblank || HAVE_DECL_ISBLANK)]: New macro.
46671         (ISGRAPH): Remove.  All uses changed to isgraph.
46672         (FOLD) [!defined _LIBC]: Remove special case.
46673         * lib/getdate.y (lookup_word): Remove no-longer-needed call to islower.
46674         * lib/regex_internal.h (isblank): Depend on HAVE_DECL_ISBLANK, not
46675         HAVE_ISBLANK.
46676         * lib/strftime.c (TOLOWER, TOUPPER) [!defined _LIBC]: Remove special
46677         case.
46678
46679 2006-07-06  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
46680
46681         * lib/getaddrinfo.c: Changes to compile under MSVC6: changed
46682         '#if WIN32_NATIVE' to '#ifdef' & moved WSAAPI macro inside
46683         brackets.  Other minor changes to suppress some compiler
46684         warnings.
46685
46686 2006-07-06  Derek R. Price  <derek@ximbiot.com>
46687         and Paul Eggert  <eggert@cs.ucla.edu>
46688
46689         * m4/backupfile.m4 (gl_BACKUPFILE): Check for dirent.h, instead
46690         of invoking obsolescent AC_HEADER_DIRENT macro.
46691         * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Likewise.
46692         * m4/d-type.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Likewise.
46693         * m4/dirfd.m4 (gl_FUNC_DIRFD): Likewise.
46694         * m4/fts.m4 (gl_FUNC_FTS_CORE): Likewise.
46695         * m4/getcwd.m4 (gl_PREREQ_GETCWD): Likewise.
46696         * m4/glob.m4 (gl_PREREQ_GLOB): Likewise.
46697         * m4/savedir.m4 (gl_SAVEDIR): Likewise.
46698         * m4/readdir.m4: Remove; no longer needed.
46699
46700 2006-07-06  Derek R. Price  <derek@ximbiot.com>
46701         and Paul Eggert  <eggert@cs.ucla.edu>
46702
46703         * lib/backupfile.c [HAVE_DIRENT_H && ! HAVE_NDIR_H]:
46704         Don't worry about this obsolete case any more.
46705         (HAVE_DIR): Remove.  All uses removed; we now assume you can read
46706         directories.
46707         * lib/dirfd.h [HAVE_DIRENT_H && ! HAVE_NDIR_H]: Don't
46708         worry about this obsolete case any more.
46709         * lib/fts.c: Likewise.
46710         * lib/getcwd.c: Likewise.
46711         * lib/glob.h: Likewise.
46712         * lib/savedir.c: Likewise.
46713
46714 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
46715
46716         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Use AC_CHECK_DECLS_ONCE
46717         rather than AC_CHECK_DECLS for strtoimax and strtoumax.
46718         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Remove; no longer
46719         needed.
46720         All uses removed.
46721         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
46722         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
46723         * m4/exclude.m4 (gl_EXCLUDE): Don't check for isascii; no longer
46724         needed.
46725         * m4/getdate.m4 (gl_GETDATE): Likewise.
46726         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
46727         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
46728         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
46729         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
46730         * m4/strtoul.m4 (gl_PREREQ_STRTOUL): Likewise.
46731         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
46732         * m4/exclude.m4 (gl_EXCLUDE): Don't require AC_C_INLINE; no longer
46733         needed.
46734
46735 2006-07-05  Paul Eggert  <eggert@cs.ucla.edu>
46736
46737         * lib/memcasecmp.c: Include <limits.h>.
46738         (memcasecmp): Don't assume UCHAR_MAX <= INT_MAX.
46739         * lib/strtod.c (strtod): Don't assume isspace works on negative chars.
46740         Don't assume isdigit succeeds only on '0' through '9'.
46741
46742 2006-07-05  Eric Blake  <ebb9@byu.net>
46743
46744         * modules/getaddrinfo (Depends-on): Add snprintf.
46745
46746 2006-07-05  Eric Blake  <ebb9@byu.net>
46747
46748         * m4/sockpfaf.m4 (gl_SOCKET_FAMILIES): Use gl_HEADER_SYS_SOCKET
46749         to avoid 'header present but could not be compiled' on cygwin.
46750
46751 2006-07-05  Eric Blake  <ebb9@byu.net>
46752
46753         * lib/getaddrinfo.h (NI_NUMERICHOST, NI_NUMERICSERV): Define if
46754         missing from netdb.h.
46755         * lib/getaddrinfo.c (includes): Include inet_ntop and snprintf.
46756
46757 2006-07-05  Derek R. Price  <derek@ximbiot.com>
46758
46759         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Don't require AC_HEADER_STDC;
46760         no longer needed.
46761         * m4/exclude.m4 (gl_EXCLUDE): Likewise.
46762         * m4/getdate.m4 (gl_GETDATE): Likewise.
46763         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Likewise.
46764         * m4/memcasecmp.m4 (gl_MEMCASECMP): Likewise.
46765         * m4/strtod.m4 (gl_FUNC_STRTOD): Likewise.
46766         * m4/strtol.m4 (gl_PREREQ_STRTOL): Likewise.
46767         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
46768
46769 2006-07-05  Derek R. Price  <derek@ximbiot.com>
46770
46771         * lib/exclude.c (IN_CTYPE_DOMAIN, is_space): Remove; no longer needed.
46772         All uses of is_space replaced by isspace.
46773         * lib/exit.h: Don't talk about STDC_HEADERS.
46774         * lib/fnmatch.c (ISASCII): Remove; no longer needed.  All uses removed.
46775         (ISPRINT, ISDIGIT, ISALNUM, ISALPHA, ISCNTRL, ISLOWER, ISPUNCT):
46776         (ISSPACE, ISUPPER, ISXDIGIT): Remove; no longer needed.  All uses
46777         replaced by isprint etc.
46778         * lib/getdate.y (IN_CTYPE_DOMAIN, ISSPACE, ISALPHA, ISLOWER): Likewise.
46779         * lib/getusershell.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
46780         * lib/memcasecmp.c (IN_CTYPE_DOMAIN, ISLOWER, TOUPPER): Likewise.
46781         * lib/strtod.c (IN_CTYPE_DOMAIN, ISSPACE, ISDIGIT, TOLOWER): Likewise.
46782         * lib/strtol.c (IN_CTYPE_DOMAIN): Likewise.
46783         * lib/xstrtol.c (IN_CTYPE_DOMAIN, ISSPACE): Likewise.
46784
46785 2006-07-05  Bruno Haible  <bruno@clisp.org>
46786
46787         * m4/strndup.m4 (gl_FUNC_STRNDUP): When cross-compiling, check whether
46788         the function exists, before testing against AIX.
46789         Reported by Martin Lambers <marlam@marlam.de>.
46790
46791 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
46792
46793         * modules/cycle-check (lib_SOURCES): Add same-inode.h.
46794         From Mark D. Baushke.
46795
46796 2006-07-04  Paul Eggert  <eggert@cs.ucla.edu>
46797
46798         * m4/absolute-header.m4 (gl_ABSOLUTE_HEADER): Prepend three slashes
46799         to the absolute name, not just one, to bypass Sun C 5.8's
46800         "warning: #include of /usr/include/... may be non-portable".
46801
46802 2006-07-04  Eric Blake  <ebb9@byu.net>
46803
46804         * modules/dirname-tests: New test module.
46805         * tests/test-dirname.c: New file, replacing dirname.c
46806         TEST_DIRNAME section that was recently deleted.
46807
46808 2006-07-04  Bruno Haible  <bruno@clisp.org>
46809
46810         Assume ANSI C header files and <ctype.h> functions.
46811         * lib/mbswidth.c (IN_CTYPE_DOMAIN, ISPRINT, ISCNTRL): Remove macros.
46812         (mbsnwidth): Use isprint, iscntrl instead.
46813
46814 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
46815
46816         Merge from coreutils.
46817         * MODULES.html.sh: Add xstrtold.
46818         * modules/xstrtold: New file.
46819         * modules/cycle-check (Files): Add lib/same-inode.h.
46820         * modules/dirname (Files): Add m4/double-slash-root.m4.
46821         * modules/getcwd (Files): Add m4/getcwd-abort-bug.m4.
46822         * modules/mkdir-p (Files): Add lib/same-inode.h.
46823         * modules/same (Files): Add lib/same-inode.h.
46824
46825 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
46826
46827         * m4/absolute-header.m4: Renamed from full-header-path.m4.
46828         This is to keep the terminology clean; POSIX talks about
46829         "absolute pathnames", not "full pathnames", but the GNU
46830         Coding Standards say to use "path" for something else;
46831         so use "absolute" to keep both sides happy.
46832         (gl_ABSOLUTE_HEADER): Renamed from gl_FULL_HEADER_PATH.
46833         Set gl_absolute_header, not gl_full_header_path.
46834         Set gl_cv_absolute_<header>, not gl_full_path_<header>.
46835         Define ABSOLUTE_<HEADER>, not FULL_PATH_<HEADER>.
46836         All uses changed.
46837
46838         Merge from coreutils.
46839
46840         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
46841
46842         * m4/c-strtod.m4 (gl_C_STRTOLD): Add c-strtod.c to LIBSOURCES.
46843         Require gl_USE_SYSTEM_EXTENSIONS, not gl_C_STRTOD, since we don't
46844         want to require the building of c-strtod.o.
46845         * m4/lib-check.m4 (cu_LIB_CHECK): Remove SEQ_LIBM, since seq no longer
46846         needs -lm directly.
46847         * m4/xstrtod.m4 (gl_XSTRTOLD): New macro.
46848
46849         2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
46850
46851         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Prefer binutils's
46852         --as-needed option if available.  Problem reported by Albert Chin in
46853         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00114.html>.
46854         However, use -Wl,--as-needed, not bare --as-needed, since HP-UX 11.11
46855         cc merely issues a bunch of annoying warnings for --as-needed
46856         (this problem was reported by Bob Proulx).  Also, try linking with
46857         -lm to detect a bug in binutils 2.16 (this problem was reported
46858         by Ralf Wildenhues).
46859
46860         2006-06-18  Jim Meyering  <jim@meyering.net>
46861
46862         Test for a bug that causes glibc's getcwd to suffer a failed assertion.
46863         * m4/getcwd-abort-bug.m4 (gl_FUNC_GETCWD_ABORT_BUG): New file and
46864         macro.
46865         * m4/getcwd.m4 (gl_FUNC_GETCWD): If we detect support for getcwd_null,
46866         also check for glibc-2.4's abort-inducing bug.
46867
46868         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Fix typo.
46869         Low-probability clean-up should be to use rmdir to get rid of
46870         the just-created directory, not unlink.
46871
46872         * m4/ftruncate.m4 (gl_FUNC_FTRUNCATE): If ftruncate is missing, make
46873         configure fail, and request a bug report to inform us about it.
46874         Add a comment that, barring reports to the contrary, in 2007 we'll
46875         assume ftruncate is universally available.
46876
46877         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
46878
46879         * m4/filemode.m4 (gl_FILEMODE): Check for strmode declaration.
46880
46881         2006-03-12  Jim Meyering  <jim@meyering.net>
46882
46883         * m4/chdir-safer.m4 (gl_CHDIR_SAFER): Add same-inode.h to the list.
46884         * m4/cycle-check.m4 (gl_CYCLE_CHECK): Likewise.
46885         * m4/same.m4 (gl_SAME): Likewise.
46886         * m4/root-dev-ino.m4 (gl_ROOT_DEV_INO): Likewise.
46887
46888         2006-03-11  Eric Blake  <ebb9@byu.net>
46889
46890         * m4/double-slash-root.m4: New file, provides gl_DOUBLE_SLASH_ROOT.
46891         * m4/dirname.m4 (gl_DIRNAME): Use gl_DOUBLE_SLASH_ROOT.
46892         * m4/dos.m4 (FILE_SYSTEM_PREFIX_LEN): Move from here to dirname.h.
46893         (FILE_SYSTEM_DRIVE_PREFIX_CAN_BE_RELATIVE): New define.
46894
46895 2006-07-03  Paul Eggert  <eggert@cs.ucla.edu>
46896
46897         * lib/stdint_.h: Include <sys/types.h> after @FULL_PATH_STDINT_H@, for
46898         MacOS X 10.4.6.  Don't mention <sys/int_types.h>.  Problems
46899         reported by Mark D. Baushke, one in
46900         <http://lists.gnu.org/archive/html/bug-gnulib/2006-07/msg00015.html>.
46901
46902         Merge from coreutils.
46903
46904         * lib/.cppi-disable: Add stdint_.h.
46905         * lib/.cvsignore: Add stdint.h.
46906
46907         2006-06-30  Paul Eggert  <eggert@cs.ucla.edu>
46908
46909         * lib/xstrtod.c (XSTRTOD, DOUBLE): New macros, so that we can support
46910         both double and long double versions.
46911         (XSTRTOD): Renamed from xstrtod.  Use DOUBLE internally.
46912         * lib/xstrtold.c: New file.
46913         * lib/xstrtod.h (xstrtold): New decl.
46914
46915         2006-05-22  Paul Eggert  <eggert@cs.ucla.edu>
46916
46917         * lib/filemode.c (setst): Remove.
46918         (strmode): Rewrite to avoid setst.  This makes the code shorter,
46919         (arguably) clearer, and the generated code is a bit smaller on my
46920         Debian GNU/Linux stable x86 host.
46921
46922         2006-04-17  Paul Eggert  <eggert@cs.ucla.edu>
46923
46924         * lib/filemode.c: Include "filemode.h" first, to test the interface.
46925         Assume that filemode.h includes sys/types.h and sys/stat.h.
46926         (HAVE_ST_DM_MODE): New macro, moved here from ls.c.
46927         (ftypelet): Reorder to put common cases first, for efficiency.
46928         Add 'P', 'w'.  Remove 'M', since it's now the caller's responsibility
46929         to do 'M'.
46930         (strmode): Renamed from mode_string, and now stores 12 bytes instead
46931         of 10, for compatibility with FreeBSD.  All callers changed.
46932         (filemodestring): Now stores 12 bytes instead of 10, and sets file
46933         types that can't be deduced solely from st_mode.  First arg is now a
46934         const pointer.
46935         * lib/filemode.h (HAVE_DECL_STRMODE): Include <string.h> for strmode.
46936         (strmode): Renamed from mode_string.
46937         (filemodestring): New decl.
46938         * lib/stat-macros.h: Don't undef S_ISDOOR, since it's never buggy.
46939         (S_ISDOOR): Don't bother with S_IFDOOR, since that code is never
46940         needed.
46941         (S_ISPORT, S_ISWHT): New macros, if not already defined.
46942
46943         2006-04-12  Paul Eggert  <eggert@cs.ucla.edu>
46944
46945         * lib/fsusage.c: Don't include <inttypes.h> or <stdint.h>, since
46946         fsusage.h now does that.  Include fsusage.h first, to test interface.
46947         Prefer statvfs if it works, since it's blessed by POSIX.  Attempt
46948         at most one method (the old code could have generated decls that
46949         didn't conform to C89, not that this was ever exercised).
46950         * lib/fsusage.h: Include <inttypes.h> and <stdint.h> if they exist.
46951
46952         2006-03-19  Jim Meyering  <jim@meyering.net>
46953
46954         Work even in a chroot where d_ino values for entries in "/"
46955         don't match the stat.st_ino values for the same names.
46956         * lib/getcwd.c (__getcwd): When no d_ino value matches the target inode
46957         number, iterate through all entries again, using lstat instead.
46958         Reported by Kenshi Muto in http://bugs.debian.org/355810, and by
46959         Zouhir Hafidi in https://bugzilla.redhat.com/bugzilla/190656.
46960
46961         * lib/getcwd.c (__getcwd): Clarify a comment.
46962         Use memcpy in place of a call to strcpy.
46963
46964         2006-03-12  Jim Meyering  <jim@meyering.net>
46965
46966         * lib/fts-cycle.c (leave_dir): If cycle-check's saved dev-ino pair
46967         matches that of the current directory (which we're about to chdir ".."
46968         out of), then save the dev-ino of the parent, instead.
46969
46970         * lib/same-inode.h (SAME_INODE): New file/macro.
46971         * lib/chdir-safer.c (SAME_INODE): Remove definition.
46972         Include "same-inode.h", instead.
46973         * lib/same.c: Likewise.
46974         * lib/cycle-check.h: Include "same-inode.h".
46975         (CYCLE_CHECK_REFLECT_CHDIR_UP): Define.
46976         * lib/cycle-check.c (SAME_INODE): Remove definition.
46977         * lib/root-dev-ino.h: Include "same-inode.h".
46978
46979         2006-03-11  Eric Blake  <ebb9@byu.net>
46980
46981         * lib/same.c (same_name): s/base_name/last_component/
46982         * lib/backupfile.c (check_extension, numbered_backup): Likewise.
46983         * lib/filenamecat.c (file_name_concat): Likewise.
46984
46985         2006-03-11  Eric Blake  <ebb9@byu.net>,
46986                     Paul Eggert  <eggert@cs.ucla.edu>
46987
46988         * lib/dirname.h (FILE_SYSTEM_PREFIX_LEN): Move here from dos.m4.
46989         [FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't treat 1: as a
46990         drive prefix.
46991         (IS_ABSOLUTE_FILE_NAME): Treat all drive letters as absolute on
46992         platforms like cygwin with FILE_SYSTEM_DRIVE_PREFIX_IS_ABSOLUTE.
46993         (last_component): New method.
46994         * lib/dirname.c (dir_len): Determine when drive letters need a
46995         subsequent slash.  Preserve // when it is special.
46996         (dir_name): Don't append dot when drive letter is absolute.
46997         [TEST_DIRNAME]: Move into a full-blown gnulib test.
46998         * lib/basename.c (base_name): New semantics - malloc the result.
46999         Preserve // when it is special.  Preserve relative files that look
47000         like drive letters.
47001         (base_len): Preserve // when it is special.
47002         (last_component): New method, similar to old base_name semantics.
47003         * lib/stripslash.c (strip_trailing_slashes): Use last_component, not
47004         base_name.  Strip redundant slashes from ///.
47005
47006 2006-07-03  Jim Meyering  <jim@meyering.net>
47007
47008         * lib/cycle-check.h (CYCLE_CHECK_REFLECT_CHDIR_UP): Abort if this
47009         macro is used before the first cycle_check call.
47010
47011 2006-07-03  Eric Blake  <ebb9@byu.net>
47012
47013         * modules/dirname (Depends-on): Add xstrndup.
47014
47015 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
47016
47017         * m4/stdint.m4 (gl_STDINT_H): Use more-mnemonic identifiers for
47018         test cases, so that config.log is a bit easier to follow.
47019
47020 2006-07-02  Paul Eggert  <eggert@cs.ucla.edu>
47021
47022         * lib/stdint_.h (intmax_t, uintmax_t): Prefer long to long long if
47023         both are 64 bits, since this seems to be the tradition, and this
47024         prevents gcc -Wformat from warning about usages with PRIuMAX.  If
47025         we ever run into a host that prefers long long to long in this
47026         case, we'll need another configure-time test.  Problem reported by
47027         Jim Meyering.
47028
47029 2006-07-02  Eric Blake  <ebb9@byu.net>
47030
47031         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Simplify by using AC_CHECK_DECLS.
47032
47033 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
47034
47035         * modules/inttypes (Depends-on): No longer depends on stdint.
47036         * modules/stdint (Description): Say more about assumptions.
47037         Say that the fast types might differ.  Say macros are used.
47038         (Files): Remove m4/size_max.m4, m4/wchar_t.m4.  Add m4/longlong.m4.
47039         (Makefile.am): Revise list of substituted symbols to match
47040         new stdint.m4.
47041         * modules/stdint-tests (Files): Add m4/wchar_t.m4, m4/wint_t.m4.
47042         (configure.ac): Add gt_TYPE_WCHAR_T, gt_TYPE_WINT_T.
47043         * tests/test-stdint.c (verify_same_types)
47044         [! (__GNUC__ >= 2 && DO_PEDANTIC)]: Put in a decl, so that
47045         the code conforms to C99/C89.
47046         Test for WCHAR_MIN and WCHAR_MAX only if HAVE_WCHAR_T.
47047         Test for WINT_MIN and WINT_MAX only if HAVE_WINT_T.
47048
47049 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
47050
47051         * m4/longlong.m4 (AC_TYPE_LONG_LONG_INT): Backport from Autoconf 2.60,
47052         but fix a bug, by requiring at least 64 bits.
47053         * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
47054         * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Now just call
47055         AC_TYPE_LONG_LONG_INT.  This macro is obsolete and will go soon.
47056         * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG) Likewise.
47057
47058         * m4/stdint.m4 (gl_STDINT_H): Rewrite to accommodate stdint_.h
47059         changes.  Make 2.59 a prerequisite.  Check and substitute for
47060         HAVE_LONG_LONG_INT.  Rely on Autoconf to check for stdint.h and
47061         inttypes.h.  Do not use special include files; just use the
47062         defaults.  Check for sys/inttypes.h and sys/bitypes.h in the usual
47063         way now.  Remove no-longer-needed tests for HAVE_LONG_64BIT,
47064         HAVE_LONG_LONG_64BIT, int8_t, int16_t, int32_t, int64_t, uint8_t,
47065         uint16_t, uint32_t uint64_t, int_least8_t, int_least16_t,
47066         int_least32_t, int_least64_t, uint_least8_t, uint_least16_t,
47067         uint_least32_t, uint_least64_t, int_fast8_t, int_fast16_t,
47068         int_fast32_t, int_fast64_t, uint_fast8_t uint_fast16_t,
47069         uint_fast32_t, uint_fast64_t, intptr_t, uintptr_t, intmax_t,
47070         uintmax_t, INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX,
47071         UINT16_MAX, INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN,
47072         INT64_MAX, UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX,
47073         UINT_LEAST8_MAX, INT_LEAST16_MIN, INT_LEAST16_MAX,
47074         UINT_LEAST16_MAX, INT_LEAST32_MIN, INT_LEAST32_MAX,
47075         UINT_LEAST32_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX,
47076         UINT_LEAST64_MAX, INT_FAST8_MIN, INT_FAST8_MAX, UINT_FAST8_MAX,
47077         INT_FAST16_MIN, INT_FAST16_MAX, UINT_FAST16_MAX, INT_FAST32_MIN,
47078         INT_FAST32_MAX, UINT_FAST32_MAX, INT_FAST64_MIN, INT_FAST64_MAX,
47079         UINT_FAST64_MAX, INTPTR_MIN, INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN,
47080         INTMAX_MAX, UINTMAX_MAX, PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN,
47081         SIG_ATOMIC_MAX, SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN,
47082         WINT_MAX.  Check for C99 conformance more strictly, by detecting
47083         bugs in glibc 2.4, Solaris 10, and OpenBSD 3.9.  On the other hand do
47084         not check for things that C99 does not require, e.g., int8_t.  If
47085         a test isn't needed unless <stdint.h> isn't working, and is
47086         unlikely to be needed for any other reason, then don't do it
47087         unless <stdint.h> isn't working.  Do not check for ptrdiff_t or
47088         size_t, since we assume C89 freestanding at least.  Do not check
47089         for sig_atomic_t, wchar_t, or wint_t, since the code now does
47090         the right thing even if the types are not defined.  Instead use:
47091         (gl_STDINT_TYPE_PROPERTIES): New macro.
47092         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H): Remove.  Don't bother
47093         testing whether <sys/types.h> clashes, as Autoconf does this for
47094         us now.  All uses removed.
47095         (gl_STDINT_CHECK_TYPES, gl_STDINT_MISSING_BOUND):
47096         (gl_STDINT_MISSING_BOUNDS, gl_STDINT_MISSING_BOUNDS2):
47097         (gl_CHECK_TYPE_SAME):
47098         Remove; no longer needed.
47099         (gl_STDINT_BITSIZEOF): Don't bother to check whether the type
47100         exists, since we'll return 0 anyway in that case.
47101         (gl_INTEGER_TYPE_SUFFIX, gl_STDINT_INCLUDES): New macros.
47102
47103 2006-07-01  Paul Eggert  <eggert@cs.ucla.edu>
47104
47105         * lib/stdint_.h (_GL_STDINT_H): Renamed from _STDINT_H, to avoid
47106         possible collision with system files.
47107         (<stdio.h>, <time.h>, <wchar.h>) [defined __cplusplus && ! defined
47108         __STDC_CONSTANT_MACROS)]: Do not include, since we don't need
47109         WCHAR_MIN and WCHAR_MAX in this case.
47110         (<stddef.h>): Do not include; no longer needed.
47111         (<sys/types.h>): Include if @HAVE_SYS_TYPES_H@, not if
47112         (defined(__OpenBSD__) || defined(__bsdi__) || defined(__sgi)).
47113         (<sys/inttypes.h>): Include if @HAVE_SYS_INTTYPES_H@ &&
47114         !@HAVE_INTTYPES_H@, not if (defined(__FreeBSD__)
47115         && (__FreeBSD__ >= 3) && (__FreeBSD__ <= 4)).
47116         (__STDINT_H__) [@HAVE_STDINT_H@ && defined __sgi && ! defined
47117         __c99]: Define, to work around IRIX <stdint.h> incompatibility.
47118         (@FULL_PATH_STDINT_H@) [!(defined(__sgi) && @HAVE_INTTYPES_H@ &&
47119         !defined(__c99))]: Include in this case too, since it's harmless
47120         now.
47121         (<inttypes.h>) [@HAVE_INTTYPES_H@]: Include, since it's no longer
47122         dangerous to do so.
47123         (@FULL_PATH_INTTYPES_H@) [(defined(__hpux) || defined(_AIX)) &&
47124         @HAVE_INTTYPES_H@]: Do not include, since we now include <inttypes.h>.
47125         (_STDINT_MIN, _STDINT_MAX): New macros.
47126         (int8_t, uint8_t, int16_t, uint16_t, int32_t, uint32_t, int64_t):
47127         (uint64_t, int_least8_t, uint_least8_t, int_least16_t):
47128         (uint_least16_t, int_least32_t, uint_least32_t, int_least64_t):
47129         (uint_least64_t, int_fast8_t, uint_fast8_t, int_fast16_t):
47130         (uint_fast16_t, int_fast32_t, uint_fast32_t, int_fast64_t):
47131         (uint_fast64_t, intptr_t, uintptr_t, intmax_t, uintmax_t): Now
47132         macros, not typedefs; this simplifies things quite a bit.
47133         Use long int for all types narrower than int64_t.
47134         (intmax_t, uintmax_t, INTMAX_C, UINTMAX_C):
47135         Define in terms of long long int or int64_t or long int,
47136         not int64_t or int32_t.  This saves some compile-time testing.
47137         (INT8_MIN, INT8_MAX, UINT8_MAX, INT16_MIN, INT16_MAX, UINT16_MAX):
47138         (INT32_MIN, INT32_MAX, UINT32_MAX, INT64_MIN, INT64_MAX):
47139         (UINT64_MAX, INT_LEAST8_MIN, INT_LEAST8_MAX, UINT_LEAST8_MAX):
47140         (INT_LEAST16_MIN, INT_LEAST16_MAX, UINT_LEAST16_MAX):
47141         (INT_LEAST32_MIN, INT_LEAST32_MAX, UINT_LEAST32_MAX):
47142         (INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX, INT_FAST8_MIN):
47143         (INT_FAST8_MAX, UINT_FAST8_MAX, INT_FAST16_MIN, INT_FAST16_MAX):
47144         (UINT_FAST16_MAX, INT_FAST32_MIN, INT_FAST32_MAX, UINT_FAST32_MAX):
47145         (INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTPTR_MIN):
47146         (INTPTR_MAX, UINTPTR_MAX, INTMAX_MIN, INTMAX_MAX, UINTMAX_MAX):
47147         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
47148         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
47149         undef any previous version and define our own version, for
47150         simplicity and consistency with the new macros for types.
47151         (PTRDIFF_MIN, PTRDIFF_MAX, SIG_ATOMIC_MIN, SIG_ATOMIC_MAX):
47152         (SIZE_MAX, WCHAR_MIN, WCHAR_MAX, WINT_MIN, WINT_MAX):
47153         Simplify definitions by using _STDINT_MIN and _STDINT_MAX
47154         where appropriate.  Rely on new symbols @PTRDIFF_T_SUFFIX@,
47155         @SIG_ATOMIC_T_SUFFIX@, @SIZE_T_SUFFIX@, @WCHAR_T_SUFFIX@,
47156         @WINT_T_SUFFIX@ to keep things simple here.
47157         (UINT8_C, UINT16_C, UINT32_C, INT64_C, UINT64_C):
47158         Simplify by assuming typical 8/16/32/64 host, since we're
47159         already doing that elsewhere anyway.
47160         Use (LONG_MAX >> 31 >> 31 == 1) rather than @HAVE_LONG_64BIT@,
47161         and assume long long int is 64 bits if available.  This
47162         speeds up 'configure'.
47163
47164 2006-07-01  Eric Blake  <ebb9@byu.net>
47165
47166         * m4/stdarg.m4 (gl_STDARG_H): Use proper AH_VERBATIM.
47167         Reported by Andreas Buening.
47168
47169 2006-07-01  Eric Blake  <ebb9@byu.net>
47170
47171         * m4/stdarg.m4 (gl_STDARG_H): Properly parenthesize gl_va_copy.
47172
47173 2006-06-30  Jim Hyslop  <jhyslop@dreampossible.ca>  (tiny change)
47174
47175         * lib/getaddrinfo.c: fixed typo
47176
47177 2006-06-29  Jim Meyering  <jim@meyering.net>
47178
47179         * modules/strftime (Maintainer): Add my name, since with the
47180         FPRINTFTIME changes strftime.c has forked from glibc.
47181
47182 2006-06-29  Eric Blake  <ebb9@byu.net>
47183
47184         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Use AC_C_INLINE.
47185
47186 2006-06-29  Eric Blake  <ebb9@byu.net>
47187
47188         * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): New file.
47189
47190 2006-06-29  Eric Blake  <ebb9@byu.net>
47191
47192         * lib/stat_.h: New file.
47193
47194 2006-06-29  Eric Blake  <ebb9@byu.net>
47195
47196         * lib/stat_.h (rpl_mkdir): Declare inline, to avoid warnings about
47197         unused static function.
47198
47199 2006-06-29  Eric Blake  <ebb9@byu.net>
47200
47201         * doc/functions.texi (Function Portability): Document missing lstat
47202         on mingw.
47203
47204 2006-06-29  Eric Blake  <ebb9@byu.net>
47205
47206         * MODULES.html.sh: Add sys_stat.
47207         * modules/sys_stat: New module.
47208         * modules/mkstemp (Depends-on): Add sys_stat.
47209
47210 2006-06-29  Derek R. Price  <derek@ximbiot.com>
47211
47212         * m4/strftime.m4: Don't call AC_FUNC_STRFTIME.
47213
47214 2006-06-29  Derek R. Price  <derek@ximbiot.com>
47215
47216         * m4/c-bs-a.m4: Removed.
47217
47218 2006-06-29  Derek R. Price  <derek@ximbiot.com>
47219
47220         * lib/strftime.c: Assume strftime() exists.
47221
47222 2006-06-29  Derek Price  <derek@ximbiot.com>
47223
47224         * modules/c-bs-a: Removed - \a is C89.
47225         * MODULES.html.sh: Remove c-bs-a.
47226
47227 2006-06-29  Bruno Haible  <bruno@clisp.org>
47228
47229         * modules/wcwidth (License): Change to LGPL.
47230
47231 2006-06-28  Simon Josefsson  <jas@extundo.com>
47232
47233         * tests/test-getaddrinfo.c: Test getnameinfo too.  Call WSAStartup
47234         on _WIN32.
47235
47236         * modules/getaddrinfo (Depends-on): Add inet_ntop, needed by
47237         getnameinfo.
47238
47239 2006-06-28  Simon Josefsson  <jas@extundo.com>
47240
47241         * m4/getaddrinfo.m4: Look for getnameinfo prototypes too.
47242
47243 2006-06-28  Simon Josefsson  <jas@extundo.com>
47244
47245         * lib/getaddrinfo.c: Try to load ws2_32.dll on Windows, to find the
47246         functions there.  It will succeed on Windows XP, but on Windows
47247         2000 and (presumably) earlier, it will fail, and use the internal
47248         re-implementation.
47249         (use_win32_p): New function.
47250         (getaddrinfo): Use strtoul on servname, to support numeric ports.
47251         Support AI_NUMERICSERV to disable getservbyname.
47252         (getnameinfo): New function, only supports
47253         NI_NUMERICHOST|NI_NUMERICSERV for now.
47254
47255         * lib/getaddrinfo.h: Test and check for AI_* flags separately, MinGW
47256         only have some of them.  Add AI_NUMERICSERV.  Add prototype for
47257         getnameinfo.
47258
47259 2006-06-28  Eric Blake  <ebb9@byu.net>
47260
47261         * modules/wcwidth: New file.
47262         * modules/mbchar (Depends-on): Add wcwidth.
47263         * modules/mbswidth (Depends-on): Add wcwidth.
47264         * MODULES.html.sh: Add wcwidth.
47265
47266 2006-06-28  Eric Blake  <ebb9@byu.net>
47267
47268         * m4/mbswidth.m4 (gl_MBSDWIDTH): Move wcwidth from here...
47269         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): ...to this new file.
47270
47271 2006-06-28  Eric Blake  <ebb9@byu.net>
47272
47273         * lib/xvasprintf.h: Fix comments.
47274
47275 2006-06-28  Eric Blake  <ebb9@byu.net>
47276
47277         * lib/mbchar.h (wcwidth): Include wcwidth.h.
47278         * lib/mbswidth.c (wcwidth): Move from here...
47279         * lib/wcwidth.h: ...to this new file.
47280
47281 2006-06-28  Derek R. Price  <derek@ximbiot.com>
47282
47283         * m4/savedir.m4: Remove AC_FUNC_CLOSEDIR_VOID requirement.
47284
47285         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Don't require AC_C_CONST, since
47286         it's obsolete.
47287         * m4/strftime.m4 (gl_FUNC_GNU_STRFTIME): Likewise.
47288
47289 2006-06-28  Derek R. Price  <derek@ximbiot.com>
47290
47291         * lib/savedir.c (CLOSEDIR): Remove.  All uses changed to closedir.
47292         Autoconf 2.60 says this stuff was obsolete.
47293
47294 2006-06-28  Bruno Haible  <bruno@clisp.org>
47295
47296         * modules/wcwidth (Files): Add m4/wchar_t.m4.
47297
47298 2006-06-28  Bruno Haible  <bruno@clisp.org>
47299
47300         * m4/wcwidth.m4 (gl_FUNC_WCWIDTH): Also require AC_C_INLINE and
47301         gt_TYPE_WCHAR_T.
47302
47303 2006-06-28  Bruno Haible  <bruno@clisp.org>
47304
47305         * lib/wcwidth.h: Declare nothing if !HAVE_WCHAR_T. Provide a fallback
47306         declaration for wcwidth.
47307         * lib/mbswidth.c: Restore the includes of <wchar.h> and <wctypes.h>.
47308
47309 2006-06-28  Bruno Haible  <bruno@clisp.org>
47310
47311         * lib/mkdtemp.c [MINGW]: Include <io.h>.
47312         (mkdir): Define using _mkdir.
47313
47314 2006-06-28  Bruno Haible  <bruno@clisp.org>
47315
47316         * lib/getaddrinfo.h: Fix POSIX URL.
47317         * lib/getaddrinfo.c (WIN32_NATIVE): New macro. Use it instead of
47318         _WIN32.
47319         (use_win32_p): Make static.
47320         (getaddrinfo): Reject service name if it is empty or does not consist
47321         solely of decimal digits, or if its value is > 65535.
47322         (getnameinfo): Remove useless casts.
47323
47324 2006-06-27  Simon Josefsson  <jas@extundo.com>
47325
47326         * modules/sys_select: New file, suggested by Bruno Haible, Paul
47327         Eggert and Martin Lambers.
47328
47329 2006-06-27  Simon Josefsson  <jas@extundo.com>
47330
47331         * m4/sys_select_h.m4: New file, suggested by Bruno Haible, Paul
47332         Eggert and Martin Lambers.
47333
47334 2006-06-27  Bruno Haible  <bruno@clisp.org>
47335
47336         * m4/stdint.m4 (gl_STDINT_BITSIZEOF): For nonexistent types, set the
47337         result to 0, not to empty.
47338         Reported by Martin Neitzel <neitzel@sco.gaertner.de>.
47339
47340 2006-06-27  Bruno Haible  <bruno@clisp.org>
47341
47342         * lib/stdint_.h (intmax_t, uintmax_t): Undefine before typedef.
47343
47344 2006-06-26  Simon Josefsson  <jas@extundo.com>
47345
47346         * m4/inet_ntop.m4: Don't check for sys/types.h, we assume it is
47347         present.
47348
47349 2006-06-26  Paul Eggert  <eggert@cs.ucla.edu>
47350
47351         * lib/base64.c (B64): Use _ as the formal parameter, not x, to avoid
47352         bug in IBM C V6 for AIX.  Problem reported by Larry Jones in
47353         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00181.html>.
47354
47355 2006-06-26  Mark D. Baushke  <mdb@gnu.org>
47356
47357         * m4/stdint.m4 (gl_STDINT_H): Treat BSD/OS like OpenBSD.
47358
47359 2006-06-26  Bruno Haible  <bruno@clisp.org>
47360
47361         * modules/stdint (Makefile.am): Also substitute HAVE_WCHAR_H.
47362
47363 2006-06-26  Bruno Haible  <bruno@clisp.org>
47364
47365         * m4/stdint.m4 (gl_STDINT_H): Test also for <wchar.h>.
47366
47367 2006-06-26  Bruno Haible  <bruno@clisp.org>
47368
47369         * m4/stdint.m4 (gl_STDINT_H): Don't include <stdint.h> when using the
47370         SGI C compiler in pre-C99 mode.
47371         Suggested by Mark D. Baushke and Larry Jones.
47372
47373 2006-06-26  Bruno Haible  <bruno@clisp.org>
47374
47375         * lib/stdint_.h: Include <wchar.h> if necessary for WCHAR_MIN or
47376         WCHAR_MAX.
47377         Reported by Mark D. Baushke and Larry Jones.
47378
47379 2006-06-26  Bruno Haible  <bruno@clisp.org>
47380
47381         * lib/stdint_.h: Don't include <stdint.h> when using the SGI C compiler
47382         in pre-C99 mode.
47383         Suggested by Mark D. Baushke and Larry Jones.
47384
47385 2006-06-23  Simon Josefsson  <jas@extundo.com>
47386             Bruno Haible  <bruno@clisp.org>
47387
47388         * gnulib-tool (func_emit_lib_Makefile_am): Define MOSTLYCLEANDIRS.
47389         Emit mostlyclean-local rule.
47390         (func_emit_tests_Makefile_am): Likewise.
47391         * modules/sys_socket (Makefile.am): Use MOSTLYCLEANDIRS.
47392
47393 2006-06-23  Mark D. Baushke  <mdb@gnu.org>
47394
47395         * lib/stdint_.h: Treat BSD/OS like OpenBSD.
47396
47397 2006-06-23  Bruno Haible  <bruno@clisp.org>
47398
47399         * tests/test-stdint.c: Update to match ISO C 99 Technical
47400         Corrigendum 1.
47401
47402 2006-06-23  Bruno Haible  <bruno@clisp.org>
47403
47404         * m4/stdint.m4 (gl_STDINT_H): Treat IRIX like OpenBSD.
47405
47406 2006-06-23  Bruno Haible  <bruno@clisp.org>
47407
47408         * lib/stdint_.h: Treat IRIX like OpenBSD.
47409
47410 2006-06-23  Bruno Haible  <bruno@clisp.org>
47411
47412         * lib/stdint_.h (UINT8_C, UINT16_C, UINT32_C): Define according to
47413         ISO C 99 Technical Corrigendum 1.
47414
47415 2006-06-22  Simon Josefsson  <jas@extundo.com>
47416
47417         * m4/sockpfaf.m4: Include winsock2.h too, to make it work under
47418         MinGW.
47419
47420 2006-06-22  Paul Eggert  <eggert@cs.ucla.edu>
47421
47422         * lib/glob.c (collated_compare): Remove 'const' uses that weren't
47423         needed.  Some compiler complained about some of them.  Problem reported
47424         by Larry Jones in
47425         <http://lists.gnu.org/archive/html/bug-gnulib/2006-06/msg00172.html>.
47426
47427 2006-06-21  Simon Josefsson  <jas@extundo.com>
47428
47429         * tests/test-getaddrinfo.c: New file.
47430
47431         * modules/getaddrinfo-tests: New file.
47432
47433         * MODULES.html.sh: Add inet_pton.
47434
47435         * modules/inet_pton: New file.
47436
47437 2006-06-21  Simon Josefsson  <jas@extundo.com>
47438
47439         * m4/getaddrinfo.m4: Don't define WINVER.  Look for gethostbyname in
47440         -lws2_32 too.  Fixes getaddrinfo on Windows 2000, with the price
47441         of using the (limited) gnulib implementation on Windows XP.
47442
47443         * m4/inet_pton.m4: New file.
47444
47445 2006-06-21  Simon Josefsson  <jas@extundo.com>
47446
47447         * lib/getaddrinfo.c (getaddrinfo): Set ai_family in the return
47448         variable.
47449
47450         * lib/socket_.h: Don't define WINVER.
47451
47452         * lib/inet_pton.h, inet_pton.c: New file, taken from glibc but
47453         slightly modified to work in gnulib.
47454
47455 2006-06-21  Simon Josefsson  <jas@extundo.com>
47456
47457         * doc/gnulib.texi (Windows sockets): Add.
47458
47459 2006-06-21  Paul Eggert  <eggert@cs.ucla.edu>
47460
47461         * lib/read-file.c (fread_file): Start with buffer allocation of
47462         0 bytes rather than 1 byte; this simplifies the code.
47463         Don't invoke feof; it's not needed.  Refactor to avoid duplicate
47464         code to free buffer and save/restore errno.
47465         (internal_read_file): Remove unused local.
47466
47467 2006-06-20  Paul Eggert  <eggert@cs.ucla.edu>
47468
47469         * lib/openat.c (openat): Use ?:, not if, to work around GCC bug 4210
47470         <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=4210>.
47471         Problem reported by Denis Excoffier in
47472         <http://lists.gnu.org/archive/html/bug-tar/2006-06/msg00023.html>.
47473
47474 2006-06-19  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
47475
47476         * modules/sys_socket, modules/socklen: Include sys/types since
47477         FreeBSD 4.x's sys/socket.h needs it.
47478
47479 2006-06-19  Simon Josefsson  <jas@extundo.com>
47480
47481         * lib/inet_ntop.c: Always build inet_ntop4, since inet_ntop6 calls it.
47482
47483 2006-06-19  Paul Eggert  <eggert@cs.ucla.edu>
47484
47485         * lib/alloca_.h (alloca) [defined alloca]: Don't define or declare.
47486
47487 2006-06-19  Bruno Haible  <bruno@clisp.org>
47488
47489         * m4/stdint.m4 (gl_STDINT_H): Enclose the values of FULL_PATH_STDINT_H
47490         and FULL_PATH_INTTYPES_H in angle brackets.
47491         Reported by Mark D. Baushke <mdb@gnu.org>.
47492
47493 2006-06-17  Eric Blake  <ebb9@byu.net>
47494
47495         * m4/rmdir-errno.m4 (gl_FUNC_FMDIR_NOTEMPTY): Assume errno.h declares
47496         errno.
47497
47498 2006-06-17  Bruno Haible  <bruno@clisp.org>
47499
47500         * m4/stdint.m4 (gl_STDINT_H) [FreeBSD >= 5]: Don't include
47501         <sys/inttypes.h>.
47502
47503 2006-06-17  Bruno Haible  <bruno@clisp.org>
47504
47505         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove test
47506         whether errno is declared. Assume <errno.h> declares errno.
47507
47508 2006-06-17  Bruno Haible  <bruno@clisp.org>
47509
47510         * lib/stdint_.h [FreeBSD >= 5]: Don't include <sys/inttypes.h>.
47511
47512 2006-06-17  Bruno Haible  <bruno@clisp.org>
47513
47514         * lib/stdint_.h (_UINT8_T, _UINT32_T, _UINT64_T): New macros. Fixes a
47515         problem on Solaris 2.5.1.
47516
47517 2006-06-16  Eric Blake  <ebb9@byu.net>
47518
47519         * lib/unsetenv.c [!defined errno]: Assume errno.h declares errno.
47520         * lib/unicodeio.c [!defined errno]: Likewise.
47521         * lib/strtol.c [!defined errno]: Likewise.
47522         * lib/strtod.c [!defined errno]: Likewise.
47523
47524 2006-06-15  Eric Blake  <ebb9@byu.net>
47525
47526         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Work in spite of -Werror.
47527
47528 2006-06-15  Eric Blake  <ebb9@byu.net>
47529
47530         * config/srclist.txt (ssize_t.m4): Lose sync.
47531
47532 2006-06-15  Bruno Haible  <bruno@clisp.org>
47533
47534         * modules/stdint (Files): Include m4/full-header-path.m4,
47535         m4/size_max.m4, m4/wchar_t.m4.
47536         (Makefile.am): Many more substitutions.
47537         * modules/stdint-tests: New file.
47538         * tests/test-stdint.c: New file.
47539
47540 2006-06-15  Bruno Haible  <bruno@clisp.org>
47541
47542         * m4/stdint.m4 (gl_STDINT_H): Rewritten to produce a complete stdint.h.
47543         (gl_HEADER_STDINT_H, gl_HEADER_INTTYPES_H, gl_STDINT_CHECK_TYPES,
47544         gl_STDINT_MISSING_BOUND, gl_STDINT_MISSING_BOUNDS,
47545         gl_STDINT_MISSING_BOUNDS2, gl_STDINT_BITSIZEOF, gl_CHECK_TYPES_SIGNED,
47546         gl_CHECK_TYPE_SAME): New macros.
47547
47548 2006-06-15  Bruno Haible  <bruno@clisp.org>
47549
47550         * m4/size_max.m4 (gl_SIZE_MAX): Make it work also when cross-compiling.
47551
47552 2006-06-15  Bruno Haible  <bruno@clisp.org>
47553
47554         * lib/stdint_.h: Rewritten to be fully auto-configured.
47555         Fixes bug on HP-UX/IA64.
47556
47557 2006-06-11  Paul Eggert  <eggert@cs.ucla.edu>
47558
47559         * lib/getdate.y (__attribute__): Don't define if already defined.
47560         Problem reported by Larry Jones.
47561         * lib/utimens.c (__attribute__): Likewise.
47562
47563 2006-06-04  Paul Eggert  <eggert@cs.ucla.edu>
47564
47565         * lib/regexec.c (group_nodes_into_DFAstates): Fix a buffer overrun
47566         reported by Andreas Schwab.
47567
47568 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
47569             Bruno Haible  <bruno@clisp.org>
47570
47571         * m4/strndup.m4 (gl_FUNC_STRNDUP): Replace the AC_REPLACE_FUNCS with a
47572         check for the declaration of strnlen and a run test that exposes the
47573         AIX 5.1 strnlen bug.  In the failure case, #define strndup to
47574         rpl_strndup.
47575
47576 2006-05-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
47577             Bruno Haible  <bruno@clisp.org>
47578
47579         * lib/strndup.c (strndup) [!_LIBC]: Don't undefine macro definition.
47580
47581 2006-05-28  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
47582
47583         * m4/c-strtod.m4 (gl_C99_STRTOLD): Use a link test rather than a
47584         compile test, for Tru64 4.0D.
47585
47586 2006-05-28  Karl Berry  <karl@gnu.org>
47587
47588         * config/srclist.txt (printf-args.c): lose sync.
47589
47590 2006-05-26  Martin Lambers  <marlam@marlam.de>
47591
47592         * lib/getpass.c: Updates the test for the native W32 API, and adds
47593         missing includes, thus fixing compilation warnings.
47594
47595 2006-05-25  Sergey Poznyakoff  <gray@gnu.org.ua>
47596
47597         * lib/exclude.c (exclude_fnmatch): New function.
47598         (excluded_file_name): Call exclude_fnmatch.
47599         * lib/exclude.h (excluded_file_name): New prototype
47600
47601 2006-05-25  Paul Eggert  <eggert@cs.ucla.edu>
47602
47603         * lib/tempname.c (small_open, large_open): New macros.
47604         (__open, __open64) [!_LIBC]: Remove.
47605         (__gen_tempname): Use small_open and large_open instead of __open
47606         and __open64.  This fixes a portability bug on HP-UX 11.11i
47607         reported by Simon Wing-Tang in
47608         <http://lists.gnu.org/archive/html/bug-coreutils/2006-05/msg00114.html>.
47609
47610 2006-05-24  Bruno Haible  <bruno@clisp.org>
47611
47612         * lib/printf-args.c (printf_fetchargs): Turn NULL pointers for
47613         TYPE_STRING and TYPE_WIDE_STRING into a non-NULL replacement.
47614         Reported by Thorsten Maerz <torte@netztorte.de> via
47615         Aaron Stone <aaron@serendipity.cx>.
47616
47617 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
47618
47619         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Rename cache variables to use
47620         gl_ rather than jm_.  Link, don't run, so that cross-compiles are
47621         allowed.  Check that resulting type is arithmetic.  Move AC_REQUIRE
47622         and AC_CHECK_HEADERS_ONCE outside of AC_CACHE_CHECK, since they're
47623         not really conditional on the cache.
47624         (gl_PREREQ_NANOSLEEP): Check for sys/select.h.
47625
47626 2006-05-19  Paul Eggert  <eggert@cs.ucla.edu>
47627
47628         * lib/nanosleep.c [HAVE_SYS_SELECT_H]: Include <sys/select.h>.
47629         Use the usual Autoconf way to include <time.h> and/or sys/time.h.
47630         (my_usleep): Don't mishandle maximum value.
47631
47632 2006-05-19  Jim Meyering  <jim@meyering.net>
47633
47634         * lib/getugroups.c: Correct an outdated comment.  From Bruno Haible.
47635
47636 2006-05-17  Bruno Haible  <bruno@clisp.org>
47637
47638         Cygwin portability.
47639         * lib/classpath.c (PATH_SEPARATOR) [CYGWIN]: Define as ':'.
47640
47641 2006-05-17  Bruno Haible  <bruno@clisp.org>
47642
47643         * lib/stdint_.h: Fix recognition of Cygwin.
47644
47645 2006-05-15  Bruno Haible  <bruno@clisp.org>
47646
47647         * build-aux/config.rpath: Improve support for Sun C 5.9 on Linux, based
47648         on libtool patch by Ralf Wildenhues.
47649
47650 2006-05-14  Paul Eggert  <eggert@cs.ucla.edu>
47651
47652         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Fix overly-picky
47653         test for C99 conformance; (bool) 0.5 is an integer constant
47654         expression, but (bool) -0.5 is not.  Problem reported by Fedor
47655         Sergeev in <http://forum.sun.com/jive/thread.jspa?threadID=96202>.
47656
47657 2006-05-11  Simon Josefsson  <jas@extundo.com>
47658
47659         * m4/xvasprintf.m4: Fix obvious typo.
47660
47661 2006-05-11  Jim Meyering  <jim@meyering.net>
47662
47663         * lib/sha1.c (sha1_buffer): Correct comment: s/MD5/SHA1/.  From
47664         James Lemley.
47665
47666 2006-05-10  Simon Josefsson  <jas@extundo.com>
47667
47668         * lib/md4.c: Typo fix, update copyright years.
47669         (K1, K2): Don't use L because it turn computations into 64-bit on
47670         64-bit platforms.
47671
47672 2006-05-10  Paul Eggert  <eggert@cs.ucla.edu>
47673
47674         * lib/crc.c (crc32_update): Remove unnecessary L suffix.
47675         * lib/md4.c (rol): Cast right-shift arg to uint32_t to prevent
47676         unwanted sign propagation, e.g., on hosts with 64-bit int.
47677         There still are some problems with reeelly weird theoretical hosts
47678         (e.g., 33-bit int) but it's not worth worrying about now.
47679         * lib/sha1.c (rol): Likewise.
47680         (K1, K2, K3, K4): Remove unnecessary L suffix.
47681
47682 2006-05-10  Bruno Haible  <bruno@clisp.org>
47683
47684         * lib/des.c: Cast to avoid warnings.
47685
47686 2006-05-09  Bruno Haible  <bruno@clisp.org>
47687
47688         * modules/xvasprintf (Files): Add m4/xvasprintf.m4.
47689         (Depends-on): Depend also on xsize, stdarg.
47690         (configure.ac): Add gl_XVASPRINTF.
47691
47692 2006-05-09  Bruno Haible  <bruno@clisp.org>
47693
47694         * m4/xvasprintf.m4: New file.
47695
47696 2006-05-09  Bruno Haible  <bruno@clisp.org>
47697
47698         * lib/xvasprintf.c: Include limits.h, string.h, xsize.h.
47699         (EOVERFLOW): Define fallback value.
47700         (xstrcat): New function.
47701         (xvasprintf): Recognize the special case of a string concatenation.
47702
47703 2006-05-08  Eric Blake  <ebb9@byu.net>
47704
47705         * gnulib-tool (func_version): Base copyright year on CVS date.
47706         (func_emit_copyright_notice): New function.
47707         (func_emit_lib_Makefile_am): Use it.
47708         (func_emit_tests_Makefile_am): Likewise.
47709         (func_import): Likewise.
47710
47711 2006-05-08  Bruno Haible  <bruno@clisp.org>
47712
47713         * modules/stdarg: New file.
47714         * MODULES.html.sh (func_all_modules): Add section for <stdarg.h>.
47715
47716 2006-05-08  Bruno Haible  <bruno@clisp.org>
47717
47718         * m4/stdarg.m4: New file, from GNU gettext.
47719
47720 2006-05-08  Bruno Haible  <bruno@clisp.org>
47721
47722         * config/srclist.txt (build-aux/config.rpath): different from latest
47723         release.
47724
47725 2006-05-08  Bruno Haible  <bruno@clisp.org>
47726
47727         * build-aux/config.rpath: Add support for Sun C 5.9 on Linux.
47728
47729 2006-05-05  Jim Meyering  <jim@meyering.net>
47730
47731         * m4/warning.m4: New file, derived from bison's file by the same name.
47732
47733 2006-05-03  Bruno Haible  <bruno@clisp.org>
47734
47735         * lib/stdint_.h: Shorter URL.
47736         * lib/inttypes.h: Likewise.
47737
47738 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
47739
47740         * modules/inttypes (Maintainer): Change from Derek Price to 'all'.
47741
47742 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
47743
47744         * lib/verify.h: Document the internals better.  Most of this change
47745         was written by Bruno Haible.
47746
47747 2006-05-02  Paul Eggert  <eggert@cs.ucla.edu>
47748
47749         * doc/verify.texi: New file, partly based on a proposal by
47750         Bruno Haible.
47751
47752 2006-05-02  Bruno Haible  <bruno@clisp.org>
47753
47754         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Move the include_next
47755         test from here...
47756         * m4/_inttypes_h.m4 (gl_INTTYPES_H): ... to here.
47757
47758 2006-04-29  Bruno Haible  <bruno@clisp.org>
47759
47760         * lib/gcd.c: Use WORD_T and GCD instead of unsigned long and gcd.
47761         Suggested by Oskar Liljeblad <oskar@osk.mine.nu>.
47762
47763 2006-04-29  Bruno Haible  <bruno@clisp.org>
47764
47765         * gnulib-tool: Make --update option actually work.
47766
47767 2006-04-29  Bruno Haible  <bruno@clisp.org>
47768
47769         * doc/gcd.texi: New file.
47770         * doc/gnulib.texi: Include it.
47771
47772 2006-04-25  Paul Eggert  <eggert@cs.ucla.edu>
47773
47774         * lib/getdate.y (get_date): When adding relative date, start with the
47775         initial time, not with the result of the first mktime call.
47776
47777 2006-04-25  Bruno Haible  <bruno@clisp.org>
47778
47779         * gnulib-tool (func_import): Output the include directives in three
47780         blocks, sorted separately.
47781         Reported by Ben Pfaff <blp@cs.stanford.edu>.
47782
47783 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
47784
47785         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use prototype
47786         to define main with arguments, for C++.  Reported by Eric Blake.
47787         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC):
47788         Prefer 'int main ()' to 'int main (void)', for C++.
47789         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Likewise.
47790         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Specify a return type
47791         for 'main', for C99 and C++.
47792
47793 2006-04-24  Paul Eggert  <eggert@cs.ucla.edu>
47794
47795         * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Use return, not exit.
47796         Don't assume that exit status -1 is valid.
47797         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
47798         * m4/putenv.m4 (gl_FUNC_PUTENV): Likewise.
47799         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Likewise.
47800         * m4/readdir.m4 (GL_FUNC_READDIR): Include <stdlib.h>.
47801         * m4/rename.m4 (vb_FUNC_RENAME): Likewise.
47802         * m4/unlink-busy.m4 (gl_FUNC_UNLINK_BUSY_TEXT): Use AC_RUN_IFELSE,
47803         not AC_TRY_RUN.  Use return, not exit.  Don't assume that
47804         functions can be used without declaring them, or that you can
47805         exit with status -1.
47806         * m4/utimes-null.m4 (gl_FUNC_UTIMES_NULL): Likewise.
47807
47808 2006-04-24  Karl Berry  <karl@gnu.org>
47809
47810         * config/srclist.txt (longdouble.m4): sync lost.
47811
47812 2006-04-24  Eric Blake  <ebb9@byu.net>
47813
47814         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Avoid unused variable warning.
47815
47816 2006-04-24  Bruno Haible  <bruno@clisp.org>
47817
47818         * m4/poll.m4 (gl_FUNC_POLL): When cross-compiling, reject also the
47819         poll() implementation in AIX.
47820         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
47821
47822 2006-04-24  Bruno Haible  <bruno@clisp.org>
47823
47824         * m4/poll.m4 (gl_FUNC_POLL): Rearrange code, so that POLL_H gets
47825         assigned exactly once.
47826
47827 2006-04-23  Claudio Fontana  <claudio@gnu.org>
47828             Bruno Haible  <bruno@clisp.org>
47829
47830         * modules/gettext (Makefile.am): Add a -I flag for <libintl.h>.
47831         * gnulib-tool (func_emit_lib_Makefile_am): Emit empty default value
47832         for AM_CPPFLAGS.
47833
47834 2006-04-23  Bruno Haible  <bruno@clisp.org>
47835
47836         * modules/copy-file: Depend on unistd.
47837         * modules/execute: Likewise.
47838         * modules/fatal-signal: Likewise.
47839         * modules/findprog: Likewise.
47840         * modules/mkdtemp : Likewise.
47841         * modules/pipe: Likewise.
47842         * modules/wait-process: Likewise.
47843
47844 2006-04-23  Bruno Haible  <bruno@clisp.org>
47845
47846         * lib/fwriteerror.c (fwriteerror): Call fclose also when an error
47847         condition was already detected.
47848         Reported by Ben Pfaff <blp@cs.stanford.edu>.
47849
47850 2006-04-23  Bruno Haible  <bruno@clisp.org>
47851
47852         * lib/copy-file.c: Include <unistd.h> unconditionally.
47853         * lib/execute.c: Likewise.
47854         * lib/fatal-signal.c: Likewise.
47855         * lib/findprog.c: Likewise.
47856         * lib/mkdtemp.c: Likewise.
47857         * lib/pipe.h: Likewise.
47858         * lib/pipe.c: Likewise.
47859         * lib/wait-process.h: Likewise.
47860
47861 2006-04-23  Bruno Haible  <bruno@clisp.org>
47862
47863         * gnulib-tool (func_usage): Fix --import description. Document
47864         --update.
47865         (func_import): Create temporary file in a temporary directory, if
47866         --dry-run is specified. Silence errors from 'grep' when there are no
47867         m4 files in $m4dir.
47868         (func_create_testdir): Silence errors from 'grep' when there are no
47869         m4 files in $m4dir.
47870         Reported by Karl Berry <karl@freefriends.org>.
47871
47872 2006-04-20  Bruno Haible  <bruno@clisp.org>
47873
47874         * m4/argp.m4 (gl_ARGP): Don't call AC_CHECK_DECLS_ONCE with more than
47875         one argument, so that the code will be portable to Autoconf 2.60.
47876         * m4/getlogin_r.m4 (gl_PREREQ_GETLOGIN_R): Likewise.
47877         * m4/getpass.m4 (gl_PREREQ_GETPASS): Likewise.
47878         * m4/unlocked-io.m4 (gl_FUNC_GLIBC_UNLOCKED_IO): Likewise.
47879
47880 2006-04-19  Derek Price  <derek@ximbiot.com>
47881             Eric Blake  <ebb9@byu.net>
47882
47883         * m4/full-header-path.m4 (gl_FULL_HEADER_PATH): Use </full/path.h>
47884         rather than "/full/path.h".  Update comment to match.  Shorten &
47885         generalize m4_translit call via AS_TR_CPP.
47886
47887 2006-04-19  Derek Price  <derek@ximbiot.com>
47888             Eric Blake  <ebb9@byu.net>
47889
47890         * lib/inttypes.h: Correct grammar in comment.
47891
47892 2006-04-18  Derek Price  <derek@ximbiot.com>
47893             Paul Eggert  <eggert@cs.ucla.edu>
47894
47895         * modules/inttypes: New file.
47896         * modules/strtoimax, modules/strtoumax: Depend on inttypes.
47897
47898 2006-04-18  Derek Price  <derek@ximbiot.com>
47899             Paul Eggert  <eggert@cs.ucla.edu>
47900
47901         * m4/_inttypes_h.m4, m4/full-header-path.m4, m4/include_next.m4:
47902         New files.
47903
47904 2006-04-18  Derek Price  <derek@ximbiot.com>
47905             Paul Eggert  <eggert@cs.ucla.edu>
47906
47907         * lib/inttypes.h: New file.
47908         * lib/strtoimax.c: Assume <inttypes.h>.
47909
47910 2006-04-15  Paul Eggert  <eggert@cs.ucla.edu>
47911
47912         * lib/utimens.c (futimens): glibc futimesat messes up if /proc
47913         isn't mounted.  Problem reported by Kir Kolyshkin.
47914
47915 2006-04-13  Paul Eggert  <eggert@cs.ucla.edu>
47916
47917         * lib/regcomp.c (init_dfa): Don't use wchar_t or wctype_t if
47918         RE_ENABLE_I18N is not defined.  Problem reported by Mark D. Baushke via
47919         Derek R. Price.
47920         * lib/regex.h (RE_DUP_MAX): Update comment to match current
47921         implementation.
47922
47923 2006-04-12  Eric Blake  <ebb9@byu.net>
47924
47925         * modules/time_r (Makefile.am): Remove lib_SOURCES line, as this
47926         is now done automatically by the corresponding Autoconf macro.
47927
47928 2006-04-11  Paul Eggert  <eggert@cs.ucla.edu>
47929
47930         * m4/time_r.m4 (gl_TIME_R): Add AC_LIBSOURCES for time_r.c and
47931         time_r.h.
47932
47933 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
47934
47935         Merge regex changes from libc, removing some of our
47936         POSIX-conformance changes that were rejected and redoing them in a
47937         less-intrusive way.
47938
47939         * lib/regcomp.c (re_compile_internal, init_dfa):
47940         Length arg is now size_t, not Idx.  All uses changed.
47941         (peek_token): Forward decl now says internal_function.
47942         (__re_error_msgid, __re_error_msgid_idx):
47943         Now static rather than extern with attribute_hidden.
47944         (re_compile_pattern) [!defined _LIBC]: Use K&R-style defn.
47945         For some reason libc prefers K&R style defns for external functions.
47946         (regerror) [!defined _LIBC]: Likewise.
47947         (re_set_syntax, re_compile_fastmap, regcomp, regfree, re_comp):
47948         (seek_collating_symbol_entry, lookup_collation_sequence_value):
47949         (build_range_exp, build_collating_symbol):
47950         Use K&R-style defn.
47951         (re_compile_fastmap): Use '\0' to memset, not 0.
47952         (utf8_sb_map): Make the calculations more obvious.
47953         (init_dfa, parse_bracket_exp, build_charclass_op):
47954         Call calloc and cast result, as glibc does.
47955         (init_word_char, fetch_token, peek_token, peek_token_bracket):
47956         (build_range_exp, build_collating_symbol):
47957         Now internal functions.
47958
47959         * lib/regex.c [!defined _LIBC]: Allow compiling with C++ compilers.
47960
47961         * lib/regex.h (__USE_GNU_REGEX): New macro.  Don't depend on
47962         _REGEX_SOURCE any more; depend on _GNU_SOURCE instead.
47963         Don't depend on VMS; depend on __VMS instead, for POSIX
47964         namespace cleanness.
47965         (regoff_t): Define to ssize_t, not long int.
47966
47967         Remove the REG_ macros named below.  Instead, make the old names
47968         (e.g., RE_BACKSLASH_ESCAPE_IN_LISTS) visible only if
47969         __USE_GNU_REGEX.
47970         (REG_BACKSLASH_ESCAPE_IN_LISTS):
47971         (REG_BK_PLUS_QM, REG_CHAR_CLASSES, REG_CONTEXT_INDEP_ANCHORS):
47972         (REG_CONTEXT_INDEP_OPS, REG_CONTEXT_INVALID_OPS):
47973         (REG_DOT_NEWLINE, REG_DOT_NOT_NULL, REG_HAT_LISTS_NOT_NEWLINE):
47974         (REG_INTERVALS, REG_LIMITED_OPS, REG_NEWLINE_ALT):
47975         (REG_NO_BK_BRACES, REG_NO_BK_PARENS, REG_NO_BK_REFS):
47976         (REG_NO_BK_VBAR, REG_NO_EMPTY_RANGES):
47977         (REG_UNMATCHED_RIGHT_PAREN_ORD, REG_NO_POSIX_BACKTRACKING):
47978         (REG_NO_GNU_OPS, REG_DEBUG, REG_INVALID_INTERVAL_ORD):
47979         (REG_IGNORE_CASE, REG_CARET_ANCHORS_HERE):
47980         (REG_CONTEXT_INVALID_DUP, REG_NO_SUB, REG_SYNTAX_EMACS):
47981         (REG_SYNTAX_AWK, REG_SYNTAX_GNU_AWK, REG_SYNTAX_POSIX_AWK):
47982         (REG_SYNTAX_GREP, REG_SYNTAX_EGREP, REG_SYNTAX_POSIX_EGREP):
47983         (REG_SYNTAX_ED, REG_SYNTAX_SED, _REG_SYNTAX_POSIX_COMMON):
47984         (REG_SYNTAX_POSIX_BASIC, REG_SYNTAX_POSIX_MINIMAL_BASIC):
47985         (REG_SYNTAX_POSIX_EXTENDED, REG_SYNTAX_POSIX_MINIMAL_EXTENDED):
47986         (REG_DUP_MAX, REG_UNALLOCATED, REG_REALLOCATE, REG_FIXED):
47987         (REG_NREGS):
47988         Remove.  All uses replaced by the old RE_* names.
47989         (RE_BACKSLASH_ESCAPE_IN_LISTS):
47990         (RE_BK_PLUS_QM, RE_CHAR_CLASSES, RE_CONTEXT_INDEP_ANCHORS):
47991         (RE_CONTEXT_INDEP_OPS, RE_CONTEXT_INVALID_OPS):
47992         (RE_DOT_NEWLINE, RE_DOT_NOT_NULL, RE_HAT_LISTS_NOT_NEWLINE):
47993         (RE_INTERVALS, RE_LIMITED_OPS, RE_NEWLINE_ALT):
47994         (RE_NO_BK_BRACES, RE_NO_BK_PARENS, RE_NO_BK_REFS):
47995         (RE_NO_BK_VBAR, RE_NO_EMPTY_RANGES):
47996         (RE_UNMATCHED_RIGHT_PAREN_ORD, RE_NO_POSIX_BACKTRACKING):
47997         (RE_NO_GNU_OPS, RE_DEBUG, RE_INVALID_INTERVAL_ORD):
47998         (RE_IGNORE_CASE, RE_CARET_ANCHORS_HERE):
47999         (RE_CONTEXT_INVALID_DUP, RE_NO_SUB):
48000         Don't bother having these macros be independent of each others'
48001         values, since they no longer exist in the POSIX name space.
48002
48003         Rename the following member names back to their old names,
48004         unless !__USE_GNU_REGEX.  All uses changed back.
48005         (buffer): Renamed from re_buffer.
48006         (allocated): Renamed from re_allocated.
48007         (used): Renamed from re_used.
48008         (syntax): Renamed from re_syntax.
48009         (fastmap): Renamed from re_fastmap.
48010         (translate): Renamed from re_translate.
48011         (can_be_null): Renamed from re_can_be_null.
48012         (regs_allocated): Renamed from re_regs_allocated.
48013         (fastmap_accurate): Renamed from re_fastmap_accurate.
48014         (no_sub): Renamed from re_no_sub.
48015         (not_bol): Renamed from re_not_bol.
48016         (not_eol): Renamed from re_not_eol.
48017         (newline_anchor): Renamed from re_newline_anchor.
48018         (num_regs): Renamed from rm_num_regs.
48019         (start): Renamed from rm_start.
48020         (end): Renamed from rm_end.
48021
48022         (free_state): Move up a bit.
48023
48024         * lib/regex_internal.h (inline) [__GNUC__ < 3 && defined _LIBC]:
48025         #define to be empty.
48026         (ASCII_CHARS): New macro, replacing all uses of 0x80 and/or SBC_MAX / 2
48027         when that is what is intended.
48028         (SBC_MAX): Define to UCHAR_MAX + 1, not 256.
48029         (__re_error_msgid, __re_error_msgid_idx): Remove decls; not needed.
48030         (MAX): New macro.
48031         (re_xmalloc, re_calloc, re_xrealloc, re_x2realloc): Remove.
48032         All uses changed back to re_malloc, etc.  It's now the caller's
48033         responsibility to check for overflow; all callers changed.
48034         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc, re_xnrealloc):
48035         (re_x2nrealloc): Remove.
48036         (free_state): Remove decl.
48037
48038         * lib/regexc.c (regexec, re_match, re_search, re_match_2, re_search_2):
48039         (re_set_registers, re_exec):
48040         Use K&R-style defn.
48041
48042         2006-01-31  Roland McGrath  <roland@redhat.com>
48043
48044         * lib/regcomp.c (calc_eclosure_iter): Remove dead variables.
48045         Reported by Mike Frysinger <vapier@gentoo.org>.
48046
48047         2006-01-15  Andreas Jaeger  <aj@suse.de>
48048
48049         [BZ #1950]
48050         * lib/regex_internal.c (re_string_reconstruct): Adjust for
48051         build_wcs_upper_buffer change.
48052         (build_wcs_upper_buffer): Change return type.
48053
48054         2005-12-10  Ulrich Drepper  <drepper@redhat.com>
48055
48056         * lib/regex_internal.h: Include <stdint.h> if available.
48057
48058         2005-12-06  Paolo Bonzini  <bonzini@gnu.org>
48059
48060         * lib/regex_internal.h (SIZE_MAX): Provide a default definition.
48061
48062         2005-10-14  Ulrich Drepper  <drepper@redhat.com>
48063
48064         * lib/regcomp.c: Adjust for changed secondary hash function.
48065
48066         2005-09-30  Ulrich Drepper  <drepper@redhat.com>
48067
48068         * lib/regex.h: Pretty printing.
48069         Clean up namespace a bit.
48070
48071         2005-09-30  Jakub Jelinek  <jakub@redhat.com>
48072
48073         * lib/regexec.c (update_cur_sifted_state, check_arrival,
48074         check_arrival_add_next_nodes): Avoid using uninitialized variable.
48075
48076         2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
48077                     Ulrich Drepper  <drepper@redhat.com>
48078
48079         [BZ #1302]
48080         * lib/regex_internal.h (bitset_t): Renamed from bitset.  All uses
48081         changed.
48082         (bitset_word_t): Renamed from bitset_word.  All uses changed.
48083
48084         2005-09-22  Ulrich Drepper  <drepper@redhat.com>
48085
48086         [BZ #281]
48087         * lib/regex.h: Define RE_TRANSLATE_TYPE as unsigned char *.
48088         * lib/regcomp.c: Remove unnecessary uses of
48089         unsigned RE_TRANSLATE_TYPE.
48090         * lib/regex_internal.h: Likewise.
48091         * lib/regex_internal.c: Likewise.
48092         * lib/regexec.c: Likewise.
48093         Based on a patch by Stepan Kasal <kasal@ucw.cz>.
48094
48095         2005-09-07  Ulrich Drepper  <drepper@redhat.com>
48096
48097         * lib/regexec.c (find_recover_state): Remove unnecessary
48098         initialization.
48099         (transit_state_bkref): Make DFA a const pointer.
48100         (get_subexp): Likewise.
48101         (check_arrival): Likewise.
48102         (update_cur_sifted_state): Likewise.
48103         (re_search_internal): Likewise.
48104         (prune_impossible_nodes): Likewise.
48105         (acquire_init_state_context): Likewise.
48106         (proceed_next_node): Likewise.
48107         (set_regs): Likewise.
48108         (free_fail_stack_return): Likewise.
48109         (check_arrival_expand_ecl): Mark DFA parameter as const.
48110         (check_arrival_expand_ecl_sub): Likewise.
48111         (check_subexp_limits): Likewise.
48112         (sub_epsilon_src_nodes):  Likewise.
48113         (add_epsilon_src_nodes):  Likewise.
48114         (merge_state_array): Likewise.
48115         (update_regs): Likewise.
48116         (build_trtable): Likewise.
48117         (sift_states_backward): Mark MCTX parameter as const.
48118         (build_sifted_states): Likewise.
48119         (update_cur_sifted_state): Likewise.
48120         (sift_states_mkref): Likewise.
48121         (check_arrival_expand_ecl): Mark eclosure as const.
48122         (check_dst_limits_calc_pos_1): Likewise.
48123         * lib/regex_internal.h (re_match_context_t): Make dfa a const
48124         pointer.
48125
48126         2005-09-06  Ulrich Drepper  <drepper@redhat.com>
48127
48128         * lib/regexec.c (merge_state_with_log): Define dfa as const pointer.
48129         (transit_state_sb): Likewise.
48130         (transit_state_mb): Likewise.
48131         (sift_states_iter_mb): Likewise.
48132         (check_arrival_add_next_nodes): Likewise.
48133         (check_node_accept_bytes): Change first parameter to pointer-to-const.
48134         [_LIBC] (re_search_2_stub): Use mempcpy.
48135
48136         * lib/regex_internal.c (re_string_reconstruct): Avoid calling
48137         mbrtowc for very simple UTF-8 case.
48138
48139         * lib/regex_internal.c (re_acquire_state): Make DFA pointer arg
48140         a pointer-to-const.
48141         (re_acquire_state_context): Likewise.
48142         * lib/regex_internal.h: Adjust prototypes.
48143
48144         * lib/regex.c: Prevent using C++ compilers.
48145
48146         * lib/regex_internal.c (re_acquire_state): Minor code rearrangement.
48147         (re_acquire_state_context): Likewise.
48148
48149 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
48150
48151         * modules/regex (Depends-on): Add ssize_t.
48152
48153 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
48154
48155         * m4/regex.m4 (gl_REGEX): Check for new glibc interface to
48156         translation table.
48157
48158 2006-04-09  Paul Eggert  <eggert@cs.ucla.edu>
48159
48160         * doc/gnulib-tool.texi (Modified imports): pathname -> file name.
48161
48162 2006-03-29  Mark D. Baushke  <mdb@gnu.org>
48163             Bruno Haible  <bruno@clisp.org>
48164
48165         * lib/stdint_.h: On OpenBSD, don't redefine types already included in
48166         <sys/types.h> and <inttypes.h>.
48167
48168 2006-03-25  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
48169
48170         * m4/argz.m4 (gl_FUNC_ARGZ): If we define `error_t', also define
48171         `__error_t_defined', so argp.h will not typedef the former.
48172
48173 2006-03-25  Paul Eggert  <eggert@cs.ucla.edu>
48174
48175         * m4/regex.m4 (gl_REGEX): Don't insist on REG_SYNTAX_POSIX_EGREP,
48176         REG_SYNTAX_EMACS, and REG_IGNORE_CASE.  Settle for the traditional
48177         glibc names.  Even if glibc is changed to conform to POSIX, the
48178         traditional names will be available anyway, since regex depends on
48179         the extensions module.  Also, fix a longstanding typo in the
48180         implementation of Spencer ERE test #75 from grep 2.3.  Problems
48181         reported by Emanuele Giaquinta.  Also, change sense of cached
48182         variable, so that the message makes sense.
48183
48184 2006-03-24  Simon Josefsson  <jas@extundo.com>
48185
48186         * lib/base64.c: Fix problems reported by Eric Blake <ebb9@byu.net>,
48187         including some doc fixes.
48188         (base64_encode_alloc): Fix +1 bug on allocation failures.
48189
48190 2006-03-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
48191
48192         * lib/base64.c (base64_encode): Do not read past end of array with
48193         unsanitized input on systems with CHAR_BIT > 8.
48194
48195 2006-03-24  Eric Blake  <ebb9@byu.net>
48196
48197         * lib/time_r.c (copy_string_result): Remove, as it is no longer used.
48198
48199 2006-03-22  Karl Berry  <karl@gnu.org>
48200
48201         * config/srclist.txt (*setenv.[ch]): get from coreutils.
48202         * config/srclistvars.sh (COREUTILS): new var.
48203
48204 2006-03-17  Jim Meyering  <jim@meyering.net>
48205
48206         * m4/regex.m4 (gl_REGEX): Fix typo in last change:
48207         s/_REGEX_WIDE_OFFSETS/_REGEX_LARGE_OFFSETS/.
48208
48209 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
48210
48211         * m4/regex.m4 (gl_REGEX): Don't check for off_t, since the code
48212         no longer needs it.  Instead, check that regoff_t is as least
48213         as wide as ptrdiff_t.
48214
48215         Don't define _REGEX_WIDE_OFFSETS unless using the included regex,
48216         so that our regex.h stays compatible with the installed regex.
48217         This is helpful for installers who configure --without-included-regex.
48218         Problem reported by Emanuele Giaquinta.
48219
48220 2006-03-16  Paul Eggert  <eggert@cs.ucla.edu>
48221
48222         * lib/regex.h (regoff_t) [defined _REGEX_LARGE_OFFSETS]:
48223         Typedef to long int, not to off_, as POSIX will likely change
48224         in that direction.
48225
48226 2006-03-15  Eric Blake  <ebb9@byu.net>
48227
48228         * m4/dirfd.m4 (gl_FUNC_DIRFD): Use AC_REQUIRE for AC_HEADER_DIRENT.
48229
48230 2006-03-13  Sergey Poznyakoff  <gray@gnu.org.ua>
48231
48232         * lib/argp-help.c (validate_uparams): Fix typo
48233         * lib/argp-parse.c (argp_default_options): Consistently begin help
48234         messages with a lowercase letter.
48235
48236 2006-03-11  Paul Eggert  <eggert@cs.ucla.edu>
48237
48238         * lib/time_r.h (asctime_r, ctime_r): Remove.  These functions can
48239         overrun buffers and shouldn't be used (much as gets shouldn't be
48240         used).
48241         * lib/time_r.c (asctime_r, ctime_r): Likewise.
48242
48243 2006-03-08  Simon Josefsson  <jas@extundo.com>
48244
48245         * m4/gc-random.m4: Permit 'no' as variable values and fix warnings,
48246         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
48247
48248 2006-03-08  Simon Josefsson  <jas@extundo.com>
48249
48250         * m4/gc-random.m4: Call AC_CANONICAL_HOST and use $host_os instead of
48251         $target, suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
48252
48253 2006-03-08  Simon Josefsson  <jas@extundo.com>
48254
48255         * lib/gc-gnulib.c (randomize): Don't open files called 'no', they
48256         signal that configure disabled the device.
48257
48258 2006-03-08  Simon Josefsson  <jas@extundo.com>
48259
48260         * build-aux/maint.mk: Fix refresh-po, to handle no translated
48261         languages.
48262
48263 2006-03-07  Simon Josefsson  <jas@extundo.com>
48264
48265         * modules/getopt (Depends-on): Add unistd.
48266
48267         * modules/unistd: New file.
48268
48269 2006-03-07  Simon Josefsson  <jas@extundo.com>
48270
48271         * modules/gc-random: New file.
48272
48273 2006-03-07  Simon Josefsson  <jas@extundo.com>
48274
48275         * m4/unistd_h.m4: New file.
48276
48277 2006-03-07  Simon Josefsson  <jas@extundo.com>
48278
48279         * m4/readline.m4 (gl_FUNC_READLINE): Rewrite the cached part of the
48280         test to be side-effect free by storing the result in the cache
48281         variable gl_cv_lib_readline, and moving the assignment of
48282         LIBREADLINE and LTLIBREADLINE outside the COMMANDS-TO-SET-IT.
48283         From Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
48284
48285 2006-03-07  Simon Josefsson  <jas@extundo.com>
48286
48287         * m4/gc-random.m4: New file, mostly from gc.m4.  Warn instead of
48288         error on missing devices (the functions will return an error).
48289
48290         * m4/gc.m4: Move random stuff to gc-random.m4
48291
48292 2006-03-07  Simon Josefsson  <jas@extundo.com>
48293
48294         * lib/unistd_.h: New file.
48295
48296 2006-03-07  Simon Josefsson  <jas@extundo.com>
48297
48298         * lib/gc-libgcrypt.c, gc-gnulib.c: Use GC_USE_RANDOM.
48299
48300 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
48301
48302         * m4/unistd_h.m4 (gl_HEADER_UNISTD): Rename, to match modules file.
48303         Problem reported by Juan Manuel Guerrero.
48304
48305 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
48306
48307         * lib/c-stack.c: Include unistd.h unconditionally, since we now assume
48308         the unistd module.
48309         * lib/getlogin_r.c: Likewise.
48310         * lib/getlogin_r.h: Likewise.
48311         * lib/glob.c: Likewise.
48312         * lib/pagealign_alloc.c: Likewise.
48313         * lib/unistd_.h: Remove; no longer needed.
48314
48315 2006-03-07  Paul Eggert  <eggert@cs.ucla.edu>
48316
48317         * MODULES.html.sh (Support for systems lacking POSIX:2001):
48318         Add unistd.
48319         * modules/c-stack (Depends-on): Add unistd.
48320         * modules/getlogin_r: Likewise.
48321         * modules/glob: Likewise.
48322         * modules/pagealign_alloc: Likewise.
48323         * modules/unistd (Files): Remove lib/unistd_.h.
48324         (EXTRA_DIST): Remove.
48325         (unistd.h): Create using 'echo' rather than 'cp', so that we don't
48326         need unistd_.h.
48327         (MOSTLYCLEANFILES): Remove unistd.h-t.
48328
48329 2006-03-03  Simon Josefsson  <jas@extundo.com>
48330
48331         * build-aux/maint.mk: Add several syntax checks from CoreUtils.
48332
48333 2006-03-03  Simon Josefsson  <jas@extundo.com>
48334
48335         * build-aux/maint.mk: Add refresh-po rule, based on ideas from
48336         libidn and bison.
48337
48338 2006-03-03  Simon Josefsson  <jas@extundo.com>
48339
48340         * build-aux/maint.mk: Add indent target.
48341
48342 2006-03-03  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de> (tiny change)
48343
48344         * m4/poll.m4 (gl_FUNC_POLL): If we deem poll(2) unacceptable, use
48345         our replacement poll.h in any case, to avoid a differing
48346         declaration from a system header.  Seen on AIX.
48347
48348 2006-03-01  Simon Josefsson  <jas@extundo.com>
48349
48350         * lib/readline.c: Fix typo, tiny patch from Stepan Kasal
48351         <kasal@ucw.cz>.
48352
48353 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
48354
48355         * modules/gettime (Depends-on): Add extensions module.
48356         * modules/nanosleep (Depends-on): Likewise.
48357         * modules/settime (Depends-on): Likewise.
48358
48359 2006-03-01  Paul Eggert  <eggert@cs.ucla.edu>
48360
48361         * m4/clock_time.m4 (gl_CLOCK_TIME): Require gl_USE_SYSTEM_EXTENSIONS,
48362         not merely AC_GNU_SOURCE, for the benefit of Solaris 10 when compiled
48363         pedantically.
48364         * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Likewise.
48365         * m4/timespec.m4 (gl_TIMESPEC): Likewise.
48366
48367         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Use "=" with "test",
48368         not "==".  Reported by Ralf Wildenhues.
48369
48370 2006-03-01  Karl Berry  <karl@gnu.org>
48371
48372         * doc/Copyright/request-*: new files, synced from gnuorg.
48373
48374 2006-03-01  Karl Berry  <karl@gnu.org>
48375
48376         * config/srclist.txt (Copyright/*): new entries.
48377
48378 2006-02-28  Simon Josefsson  <jas@extundo.com>
48379
48380         * lib/getopt.c: Protect #include of unistd.h, for MSVS.
48381
48382 2006-02-27  Simon Josefsson  <jas@extundo.com>
48383
48384         * lib/base64.h: Indent #define's.  From Jim Meyering
48385         <jim@meyering.net>.
48386
48387 2006-02-27  Jim Meyering  <jim@meyering.net>
48388
48389         Revert the change of 2006-02-24, so these files can continue
48390         to be sync'd from gettext.
48391         * lib/mkdtemp.c, setenv.c, unsetenv.c: *Un*-normalize inclusion
48392         of `config.h'.
48393
48394 2006-02-26  Paul Eggert  <eggert@cs.ucla.edu>
48395
48396         * modules/intprops: New file.
48397         * MODULES.html.sh (Numeric conversion functions <stdlib.h>):
48398         Add intprops.
48399         * modules/getloadavg (Files): Remove lib/intprops.h.
48400         (Depends-on): Add intprops.
48401         * modules/human: Likewise.
48402         * modules/inttostr: Likewise.
48403         * modules/openat: Likewise.
48404         * modules/sig2str: Likewise.
48405         * modules/userspec: Likewise.
48406         * modules/utimecmp: Likewise.
48407         * modules/xnanosleep: Likewise.
48408         * modules/xstrtol: Likewise.
48409
48410 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny changes)
48411
48412         * modules/xstrtod: Omit xstrtod.h, xstrtod.c; they're in LIB_SOURCES.
48413         * modules/lock-tests (TESTS): Use $(EXEEXT).
48414         * modules/tls-tests: Likewise.
48415         * modules/argp-tests: Likewise.
48416         (check_PROGRAMS): New var, replacing...
48417         (noinst_PROGRAMS, test_argp_SOURCES): Remove.
48418
48419 2006-02-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
48420
48421         * lib/mkdtemp.c, lib/setenv.c, lib/unsetenv.c: Normalize inclusion of
48422         `config.h'.
48423
48424 2006-02-24  Paul Eggert  <eggert@cs.ucla.edu>
48425
48426         * lib/glob.c: Say "invalid" rather than "illegal" in comments.
48427
48428 2006-02-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
48429
48430         Sync from coreutils.
48431         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Require gl_FUNC_LCHMOD and
48432         gl_CHDIR_SAFER.
48433
48434 2006-02-22  Jim Meyering  <jim@meyering.net>
48435
48436         Sync from coreutils.
48437         * m4/chdir-safer.m4: New file.
48438
48439 2006-02-20  Paul Eggert  <eggert@cs.ucla.edu>
48440
48441         * lib/getcwd.c (AT_FDCWD): Work around a bug in Solaris 9 and 10, where
48442         AT_FDCWD exceeds INT_MAX.
48443         * lib/openat.h (AT_FDCWD): Likewise.
48444
48445 2006-02-17  Eric Blake  <address@hidden>
48446
48447         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Fix caching error.
48448
48449 2006-02-16  Simon Josefsson  <jas@extundo.com>
48450
48451         * modules/getaddrinfo (Depends-on): Add sys_socket.
48452
48453 2006-02-15  Simon Josefsson  <jas@extundo.com>
48454
48455         * build-aux/maint.mk: Add dsyntax-check rule.
48456
48457 2006-02-15  Eric Blake  <ebb9@byu.net>
48458
48459         * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Don't attempt using
48460         winsock2.h or ws2tcpip.h when sys/socket.h is present. Fixes
48461         'present but cannot compile' warnings on cygwin.
48462         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Use gl_HEADER_SYS_SOCKET.  Don't
48463         use ws2tcpip.h if sys/socket.h works.
48464         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Use gl_HEADER_SYS_SOCKET.
48465         (gl_GETADDRINFO): Don't use ws2tcpip.h when sys/socket.h is present.
48466
48467 2006-02-14  Simon Josefsson  <jas@extundo.com>
48468
48469         * modules/maintainer-makefile (Files): Rename.
48470
48471         * build-aux/GNUmakefile: Rename Makefile.maint to maint.mk
48472         and (the local) Makefile.cfg to maint-cfg.mk.
48473
48474         * build-aux/Makefile.maint, build-aux/maint.mk: Renamed the former
48475         to the latter.
48476
48477         * modules/maintainer-makefile: New module.
48478
48479         * build-aux/Makefile.maint: New file, from GNU CoreUtils, although
48480         severaly stripped to make it possible to build it up from scratch
48481         with reliable tests.
48482
48483         * build-aux/GNUmakefile: New file, from GNU CoreUtils with some
48484         fixes to permit overriding the default actions when configure and
48485         makefile are not available.
48486
48487 2006-02-14  Paul Eggert  <eggert@cs.ucla.edu>
48488
48489         Sync from coreutils.
48490         * modules/lstat (Depends-on): Don't depend on xalloc.
48491         (License): Change from GPL to LGPL, since this is now simply a
48492         replacement for a libc function.
48493
48494 2006-02-14  Jim Meyering  <jim@meyering.net>
48495
48496         Sync from coreutils.
48497
48498         Eliminate the unwelcome (albeit unlikely) possibility of xmalloc
48499         failure on deficient systems, and simplify gnulib lgpl dependencies.
48500         * lib/lstat.c (rpl_lstat): Rewrite to use stat() in place of the
48501         xmalloc/lstat combination.  Based on a patch from Bruno Haible.
48502
48503         * lib/xalloc-die.c: Remove unused definition of N_.
48504
48505 2006-02-14  Jim Meyering  <jim@meyering.net>
48506
48507         Sync from coreutils.
48508         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Invoke
48509         AC_CHECK_FUNCS(getmntent) unconditionally so that tests of
48510         $ac_cv_func_getmntent (e.g., in gl_LIST_MOUNTED_FILE_SYSTEMS) need not
48511         double-quote uses of that variable, to accommodate the rare case in
48512         which getmntent is available in none of the libraries checked.  This
48513         happens at least on FreeBSD 5.0.
48514
48515 2006-02-13  Simon Josefsson  <jas@extundo.com>
48516
48517         * gnulib-tool (Usage): Fix --import, from
48518         karl@freefriends.org (Karl Berry).
48519
48520 2006-02-13  Sergey Poznyakoff  <gray@gnu.org.ua>
48521
48522         * lib/argp-fmtstream.c: Restore another bugfix lost on 2005-12-12
48523
48524 2006-02-07  Sergey Poznyakoff  <gray@gnu.org.ua>
48525
48526         * lib/argp-namefrob.h: Restore changes accidentally lost during the
48527         "autoupdate" on 2005-12-12.
48528
48529 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
48530
48531         * modules/closeout (Depends-on): Remove atexit.
48532
48533 2006-02-07  Paul Eggert  <eggert@cs.ucla.edu>
48534
48535         * lib/closeout.c (close_stdout): Don't assume 'bool' converts nonzero
48536         ints to 0 or 1, as this isn't true for the stdbool.h substitute.
48537
48538 2006-02-05  Paul Eggert  <eggert@cs.ucla.edu>
48539
48540         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Don't #define
48541         __EXTENSIONS__ if this causes compilation to fail.  Problem
48542         reported by Nelson H. F. Beebe with Solaris 10 and Sun C 5.7
48543         c89 -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED.
48544
48545 2006-01-27  Paul Eggert  <eggert@cs.ucla.edu>
48546
48547         * lib/fnmatch.c (L_): Renamed from L, to work around a bug in
48548         Mac OS X 10.3.9 with GCC 3 reported by Claudio Fontana in
48549         <http://lists.gnu.org/archive/html/bug-gnulib/2006-01/msg00074.html>.
48550         All uses changed.
48551
48552 2006-01-26  Simon Josefsson  <jas@extundo.com>
48553
48554         * lib/socket_.h: Set WINVER to 0x0501, to make sure getaddrinfo
48555         prototype is visible on mingw32.
48556
48557         * lib/getaddrinfo.h: Define EAI_ADDRFAMILY and EAI_SYSTEM if not set,
48558         for mingw32.
48559
48560         * lib/gai_strerror.c, getaddrinfo.h: Protect netdb.h #include (for
48561         mingw32).
48562
48563 2006-01-26  Paul Eggert  <eggert@cs.ucla.edu>
48564
48565         * lib/fts.c (diropen): Open with O_NOCTTY | O_NONBLOCK too.  Don't
48566         attempt to open for write; this always fails, at least on POSIX
48567         hosts.  This reinstates the 2006-01-09 change, which was
48568         inadvertently removed.
48569
48570 2006-01-26  Bruno Haible  <bruno@clisp.org>
48571
48572         * gnulib-tool (func_import): Use "trap 'exit $?' instead of "trap :".
48573         Reported by Paul Eggert.
48574
48575 2006-01-26  Bruno Haible  <bruno@clisp.org>
48576             Paul Eggert  <eggert@cs.ucla.edu>
48577
48578         * lib/stdbool_.h (_Bool)
48579         [(! (defined __cplusplus || defined __BEOS__)
48580           && !defined __GNUC__
48581           && !(defined __HP_cc || defined __xlc__
48582                || (defined __SUNPRO_C && (__SUNPRO_C < 0x550 || __STDC__ == 1))
48583                || defined __sgi))]:
48584         #define to signed char in these cases too; this simplifies
48585         the code (so that we don't have to worry about HP-UX, AIX, SunPRO,
48586         etc., separately) and makes it more conservative.
48587
48588 2006-01-25  Simon Josefsson  <jas@extundo.com>
48589
48590         * m4/getaddrinfo.m4: Look for getaddrinfo inside ws2tcip.h and
48591         -lws2_32.  Protect sys/socket.h and netdb.h #include's.  Include
48592         ws2tcpip.h with WINVER=0x0501.  All for mingw32.
48593
48594 2006-01-25  Sergey Poznyakoff  <gray@gnu.org.ua>
48595
48596         * lib/argp-namefrob.h: Bugfix. Remove stray #
48597
48598 2006-01-25  Paul Eggert  <eggert@cs.ucla.edu>
48599
48600         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for xlc bug if __GCC__ too,
48601         so that we test the test.
48602         Check for yet another HP-UX cc bug involving *bool |= bool.
48603
48604 2006-01-25  Karl Berry  <karl@gnu.org>
48605
48606         * config/srclist.txt (vasnprintf.c): sync lost.
48607
48608 2006-01-25  Jim Meyering  <jim@meyering.net>
48609
48610         Sync from the stable (b5) branch of coreutils:
48611
48612         * lib/fts.c (fts_children): Don't let close() clobber errno from
48613         failed fchdir().
48614
48615         * lib/fts.c (fts_stat): When following a symlink-to-directory,
48616         don't necessarily interpret stat-fails+lstat-succeeds as indicating
48617         a dangling symlink.  That can also happen at least for ELOOP.
48618         The fix: return FTS_SLNONE only when the stat errno is ENOENT.
48619         FYI, this bug predates the inclusion of fts.c in coreutils.
48620
48621         * lib/fts.c (fts_open): Put new maxarglen declaration and uses
48622         in their own block, so pre-c99 compilers don't object.
48623
48624         Avoid the double-free (first in fts_read, second in fts_close) that
48625         would occur when an `active' directory is made inaccessible (e.g.,
48626         via chmod a-x) during a traversal.
48627         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
48628         before returning.  Reproduce this failure by
48629         mkdir -p a/b; cd a; chmod a-x . b
48630         Reported by Stavros Passas.
48631
48632 2006-01-25  Jim Meyering  <jim@meyering.net>
48633
48634         * lib/fileblocks.c: Remove more useless parentheses.
48635         * lib/readutmp.h: Likewise.
48636
48637 2006-01-25  Bruno Haible  <bruno@clisp.org>
48638
48639         * lib/stdbool_.h (_Bool) [IRIX cc]: Define as 'signed char', to avoid
48640         warnings.
48641         Reported by Paul Eggert.
48642
48643 2006-01-25  Bruno Haible  <bruno@clisp.org>
48644
48645         * gnulib-tool (func_import): Use "trap :" instead of "trap -" to get
48646         rid of a trap command. For Solaris sh.
48647         Reported by Mark D. Baushke <mdb@gnu.org>.
48648
48649 2006-01-24  Simon Josefsson  <jas@extundo.com>
48650
48651         * lib/socket_.h (SHUT_WR, SHUT_RDWR): Don't hardcode, suggested by
48652         Bruno.
48653
48654 2006-01-24  Karl Berry  <karl@gnu.org>
48655
48656         * config/srclist.txt (argp-namefrob.h): sync lost.
48657
48658 2006-01-24  Jim Meyering  <jim@meyering.net>
48659
48660         * modules/openat (Files): Add lib/intprops.h.
48661         From Mark D. Baushke.
48662
48663 2006-01-24  Jim Meyering  <jim@meyering.net>
48664
48665         * m4/openat.m4 (gl_FUNC_OPENAT): Add AC_LIBSOURCES([intprops.h]).
48666         Reported by Mark D. Baushke.
48667
48668 2006-01-24  Jim Meyering  <jim@meyering.net>
48669
48670         * lib/socket_.h: Remove useless parentheses in uses of cpp `defined'.
48671
48672 2006-01-24  Bruno Haible  <bruno@clisp.org>
48673
48674         * modules/strnlen (Maintainer): Change from glibc to all.
48675
48676 2006-01-24  Bruno Haible  <bruno@clisp.org>
48677
48678         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check for IBM and HP-UX bugs.
48679         Patch by Paul Eggert.
48680
48681 2006-01-24  Bruno Haible  <bruno@clisp.org>
48682
48683         * lib/stdbool_.h (_Bool) [__cplusplus]: Don't define if the compiler
48684         already has it.
48685         Report and patch by Albert Chin-A-Young  <china@thewrittenword.com> on
48686         2005-11-26.
48687
48688         * lib/stdbool_.h (_Bool) [HP-UX cc, AIX cc,xlc]: Define as
48689         'signed char' to avoid problems with the built-in _Bool type.
48690         Reported by Paul Eggert on 2005-11-26.
48691
48692 2006-01-24  Bruno Haible  <bruno@clisp.org>
48693
48694         * gnulib-tool (func_import): Avoid constructing complicated sed
48695         expressions inside backquote.
48696         Report and solution by Mark D. Baushke <mdb@gnu.org>.
48697
48698 2006-01-23  Ulrich Drepper  <drepper@redhat.com>
48699
48700         These changes imported from libc.
48701         * lib/getopt.c: Use __fxprintf instead of inline stream orientation
48702         test and two separate function calls.
48703         * lib/strndup.c (__strndup): Add libc_hidden_def.
48704
48705 2006-01-23  Simon Josefsson  <jas@extundo.com>
48706
48707         * modules/lock-tests: Use check_PROGRAMS instead of noinst_PROGRAMS.
48708         Remove the test_*_SOURCES variable: automake infers it by default.
48709         * modules/tls-tests: Likewise.
48710
48711 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
48712
48713         Work around porting bugs reported by Dieter in
48714         <http://lists.gnu.org/archive/html/bug-bison/2006-01/msg00049.html>.
48715         * lib/getopt.c (_NOPROTO): Remove; no longer needed.
48716         Include <stdlib.h> and <unistd.h> in all environments; it's safe now.
48717         Include "getopt.h" first, to check interface.
48718         (getenv): Declare only if defined HAVE_DECL_GETENV &&
48719         !HAVE_DECL_GETENV.
48720         * lib/strndup.c [!_LIBC]: Include "strndup.h" to get prototype.
48721         (__strndup): Revert to K&R-style function dfns, the glibc style.
48722         * lib/strnlen.c: Don't claim it's taken from glibc; it's not.
48723         (strnlen, __strnlen): Remove #defines and #undefs; not needed.
48724         Include strnlen.h first, to get prototype properly.
48725         (strnlen): Renamed from __strnlen.
48726         Remove weak alias.
48727
48728 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
48729
48730         * m4/getopt.m4 (gl_PREREQ_GETOPT): Check for getenv decl.
48731
48732 2006-01-23  Paul Eggert  <eggert@cs.ucla.edu>
48733
48734         * config/srclist.txt: Adjust to reflect glibc reorganization.
48735         This affects only comments.
48736
48737 2006-01-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
48738
48739          * gnulib-tool, build-aux/csharpcomp.sh.in: Do not pass `-q' to mktemp.
48740          Reported by Bruce Korb <bkorb@gnu.org>.
48741
48742 2006-01-22  Paul Eggert  <eggert@cs.ucla.edu>
48743
48744         * lib/quotearg.c (quotearg_buffer_restyled): Add "default: break;"
48745         to pacify gcc -Wswitch-default.
48746
48747 2006-01-22  Bruno Haible  <bruno@clisp.org>
48748
48749         * lib/vasnprintf.c (VASNPRINTF): In the computation of the size of the
48750         temporary buffer for sprintf, take into account the precision also
48751         for 'd', 'i', 'u', 'o', 'x', 'X'.
48752
48753 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
48754
48755         * modules/argp-tests: New module
48756         * tests/test-argp.c: New file
48757         * tests/test-argp-2.sh: New file
48758
48759 2006-01-21  Sergey Poznyakoff  <gray@gnu.org.ua>
48760
48761         * lib/argp-help.c (usage_long_opt): Do not print DOC options.
48762         (__argp_base_name): Removed
48763         * lib/argp-namefrob.h (__argp_basename): Removed definition. Was a
48764         typo.
48765         (__argp_base_name): Provide macro definition or extern declaration
48766         depending on the configuration
48767
48768 2006-01-20  Simon Josefsson  <jas@extundo.com>
48769
48770         * modules/inet_ntop (Depends-on): Depend on sys_socket.
48771
48772 2006-01-20  Simon Josefsson  <jas@extundo.com>
48773
48774         * lib/inet_ntop.h: Unconditionally include sys/socket.h.
48775
48776 2006-01-20  Paul Eggert  <eggert@cs.ucla.edu>
48777
48778         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Use -Wl,-z,ignore
48779         rather than -Xlinker -z -Xlinker ignore, as it's more portable.
48780         Suggested by Bruno Haible.
48781
48782 2006-01-20  Karl Berry  <karl@gnu.org>
48783
48784         * config/srclist.txt (argp-fmtstream.h, localcharset.c): comment out
48785         until changes propagate, I guess.
48786
48787 2006-01-19  Simon Josefsson  <jas@extundo.com>
48788
48789         * m4/socklen.m4: Look in ws2tcpip.h too, for mingw32.
48790
48791 2006-01-19  Simon Josefsson  <jas@extundo.com>
48792
48793         * lib/socket_.h: Map SHUT_RD, SHUT_WR, SHUT_RDWR correctly.
48794
48795 2006-01-19  Simon Josefsson  <jas@extundo.com>
48796
48797         * gnulib-tool: Set check_PROGRAMS.
48798
48799         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
48800         modules/des-tests, modules/gc-arcfour-tests,
48801         modules/gc-arctwo-tests, modules/gc-des-tests,
48802         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
48803         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
48804         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
48805         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
48806         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
48807         modules/md5-tests, modules/readline, modules/rijndael-tests: Use
48808         check_PROGRAMS instead of noinst_PROGRAMS to be able to remove
48809         test_*_SOURCES.
48810
48811 2006-01-18  Simon Josefsson  <jas@extundo.com>
48812
48813         * modules/socklen (Depends-on): Depend on sys_socket.
48814
48815 2006-01-18  Simon Josefsson  <jas@extundo.com>
48816
48817         * modules/arcfour-tests, modules/arctwo-tests, modules/crc-tests,
48818         modules/des-tests, modules/gc-arcfour-tests,
48819         modules/gc-arctwo-tests, modules/gc-des-tests,
48820         modules/gc-hmac-md5-tests, modules/gc-hmac-sha1-tests,
48821         modules/gc-md2-tests, modules/gc-md4-tests, modules/gc-md5-tests,
48822         modules/gc-pbkdf2-sha1-tests, modules/gc-rijndael-tests,
48823         modules/gc-sha1-tests, modules/gc-tests, modules/hmac-md5-tests,
48824         modules/hmac-sha1-tests, modules/md2-tests, modules/md4-tests,
48825         modules/md5-tests, modules/readline, modules/rijndael-tests: Add
48826         $(EXEEXT) to automake TESTS variable, for mingw32.
48827
48828 2006-01-17  Simon Josefsson  <jas@extundo.com>
48829
48830         * modules/socklen (Include): Need sys/socket.h.
48831
48832 2006-01-17  Bruno Haible  <bruno@clisp.org>
48833
48834         * modules/ssize_t (Include): Add <sys/types.h>.
48835
48836 2006-01-16  Paul Eggert  <eggert@cs.ucla.edu>
48837
48838         * m4/lib-ignore.m4 (gl_IGNORE_UNUSED_LIBRARIES): Don't use ldd, as
48839         it's not portable and it doesn't work with cross-compiles.
48840         Problem reported by Bruno Haible.  Fix missing-$ typo in
48841         'test "gl_cv_ignore_unused_libraries" ...' that prevented
48842         -zignore from being used with Sun's C compiler.
48843
48844 2006-01-12  Simon Josefsson  <jas@extundo.com>
48845
48846         * lib/base64.c: Fix warning, reported by Bruno Haible
48847         <bruno@clisp.org> and patch by Paul Eggert <eggert@CS.UCLA.EDU>.
48848
48849 2006-01-12  Bruno Haible  <bruno@clisp.org>
48850
48851         * modules/ldd: New file.
48852         * build-aux/ldd.sh.in: New file.
48853         * MODULES.html.sh (Support for building libraries and executables): Add
48854         ldd.
48855
48856 2006-01-12  Bruno Haible  <bruno@clisp.org>
48857
48858         * m4/ldd.m4: New file.
48859
48860 2006-01-12  Bruno Haible  <bruno@clisp.org>
48861
48862         * gnulib-tool (func_import, func_create_testdir): Don't go into an
48863         endless loop while replacing $auxdir with build-aux.
48864
48865 2006-01-11  Simon Josefsson  <jas@extundo.com>
48866
48867         * lib/stdint_.h (SIZE_MAX): Add missing (.
48868
48869 2006-01-11  Paul Eggert  <eggert@cs.ucla.edu>
48870
48871         Sync from coreutils.
48872         * lib/md5.c: Fix commentary typos.
48873         (alignof, UNALIGNED_P): No need for a GCC-specific version.
48874         * lib/md5.h (__attribute__): Remove; unused.
48875         * lib/sha1.c: Fix commentary to match md5 better.
48876         * lib/sha1.h (struct sha1_ctx): Use a word buffer, not a byte buffer,
48877         so that we don't need to worry about alignment.  All uses changed.
48878         This merges the 2005-10-28 md5 change into sha1.
48879
48880 2006-01-11  Jim Meyering  <jim@meyering.net>
48881
48882         Sync from coreutils.
48883         * lib/md5.c (OP): Fix spacing.
48884
48885 2006-01-11  Bruno Haible  <bruno@clisp.org>
48886
48887         Ensure automatic ordering between gl_LOCK and gl_ARGP.
48888         * m4/lock.m4 (gl_LOCK_BODY): Renamed from gl_LOCK.
48889         (gl_LOCK): New macro, requiring gl_LOCK_BODY.
48890
48891 2006-01-11  Bruno Haible  <bruno@clisp.org>
48892
48893         Ensure automatic ordering between gl_LOCK and gl_ARGP.
48894         * gnulib-tool (func_import, func_create_testdir): Put gl_LOCK into
48895         the "early" section as well.
48896
48897 2006-01-11  Bruno Haible  <bruno@clisp.org>
48898
48899         Avoid "ar: no archive members specified" error on MacOS X.
48900         * gnulib-tool (func_modules_add_dummy): New function.
48901         (func_import, func_create_testdir): Invoke it.
48902
48903 2006-01-11  Bruno Haible  <bruno@clisp.org>
48904
48905         * gnulib-tool (func_import, func_create_testdir): Replace build-aux
48906         with $auxdir in AC_CONFIG_FILES statements.
48907
48908 2006-01-11  Bruno Haible  <bruno@clisp.org>
48909
48910         * gnulib-tool (func_emit_lib_Makefile_am, func_emit_tests_Makefile_am):
48911         Initialize also noinst_HEADERS to empty.
48912
48913 2006-01-11  Bruno Haible  <bruno@clisp.org>
48914
48915         * gnulib-tool (AUTOMAKEPATH, AUTOCONF, ACLOCAL, AUTOMAKE): New
48916         variables.
48917         (func_create_megatestdir): Call aclocal, autoconf, automake here, not
48918         autoreconf.
48919
48920 2006-01-11  Bruno Haible  <bruno@clisp.org>
48921
48922         * gnulib-tool (AUTOCONF, ACLOCAL, AUTOMAKE, AUTORECONF): Make
48923         overridable by the user.
48924         Reported by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
48925
48926 2006-01-10  Simon Josefsson  <jas@extundo.com>
48927
48928         * modules/sys_socket: New file.
48929
48930 2006-01-10  Simon Josefsson  <jas@extundo.com>
48931
48932         * m4/sys_socket_h.m4: New file.
48933
48934 2006-01-10  Simon Josefsson  <jas@extundo.com>
48935
48936         * lib/socket_.h: New file.
48937
48938 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
48939
48940         * modules/readutmp (Maintainer): Add myself.
48941
48942 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
48943
48944         * m4/memcoll.m4 (gl_MEMCOLL): Don't require AC_FUNC_MEMCMP, undoing
48945         the 2002-12-31 change.  Problem and fix reported by Bruno Haible.
48946         People who are still concerned with buggy memcmp implementations
48947         can invoke gl_FUNC_MEMCMP themselves.
48948
48949 2006-01-10  Paul Eggert  <eggert@cs.ucla.edu>
48950
48951         * lib/regex_internal.h (BITSET_WORD_BITS):
48952         Work around a bug in 64-bit PGC (before version 6.1-2), where the
48953         preprocessor mishandles large unsigned values as if they were signed.
48954         Problem reported by Claudio Fontana in
48955         <http://lists.gnu.org/archive/html/bug-gnulib/2005-12/msg00061.html>.
48956
48957 2006-01-10  Jim Meyering  <jim@meyering.net>
48958
48959         Avoid the double-free (first in fts_read, second in fts_close) that
48960         would occur when an `active' directory is made inaccessible (e.g.,
48961         via chmod a-x) during a traversal.
48962         * lib/fts.c (fts_read): After a failed fchdir, update sp->fts_cur
48963         before returning.  Reproduce this failure by
48964         mkdir -p a/b; cd a; chmod a-x . b
48965         Reported by Stavros Passas.
48966
48967         Sync from coreutils.
48968         * lib/sha1.c: Tweak grammar in a comment.
48969
48970 2006-01-10  Jim Meyering  <jim@meyering.net>
48971
48972         * m4/fpending.m4: Also include <stdio.h>, for Dragonfly.
48973         Patch by Joerg Sonnenberger.
48974
48975 2006-01-10  Bruno Haible  <bruno@clisp.org>
48976
48977         * modules/readutmp: Depend on module free.
48978         * modules/strtok_r: Depend on module restrict.
48979
48980 2006-01-10  Bruno Haible  <bruno@clisp.org>
48981
48982         * modules/gettext (configure.ac): Add an invocation of
48983         AM_GNU_GETTEXT_VERSION. Needed since autoreconf is used by gnulib-tool.
48984
48985 2006-01-10  Bruno Haible  <bruno@clisp.org>
48986
48987         * m4/localcharset.m4 (gl_LOCALCHARSET): Also test for getc_unlocked.
48988         Reported by Werner Lemberg <wl@gnu.org>.
48989
48990 2006-01-10  Bruno Haible  <bruno@clisp.org>
48991
48992         * lib/localcharset.c: Update from GNU gettext.
48993
48994 2006-01-10  Bruno Haible  <bruno@clisp.org>
48995
48996         * lib/argp.h (__const): Remove macro. Use const instead.
48997         * lib/argp-fmtstream.h (__const): Likewise.
48998         * lib/glob_.h (__const): Remove macro.
48999         * lib/glob-libc.h: Use const instead of __const.
49000
49001 2006-01-10  Bruno Haible  <bruno@clisp.org>
49002
49003         * gnulib-tool (func_emit_tests_Makefile_am): Emit an empty SUBDIR
49004         variable.
49005         Needed to avoid an automake error regarding the 'gettext' module.
49006
49007 2006-01-09  Simon Josefsson  <jas@extundo.com>
49008
49009         * modules/inet_ntop (Depends-on): Add restrict.
49010
49011 2006-01-09  Simon Josefsson  <jas@extundo.com>
49012
49013         * modules/gc-rijndael-tests (License): Put under LGPL.
49014
49015         * modules/gc-des-tests (License): Likewise.
49016
49017         * modules/gc-arcfour-tests (License): Likewise.
49018
49019         * modules/gc-arctwo-tests (License): Likewise.
49020
49021         * modules/gc-pbkdf2-sha1-tests (License): Likewise.
49022
49023         * modules/gc-hmac-sha1-tests (Files): Likewise.
49024
49025         * modules/gc-hmac-md5-tests (License): Likewise.
49026
49027         * modules/gc-sha1-tests (License): Likewise.
49028
49029         * modules/gc-md5-tests (License): Likewise.
49030
49031         * modules/gc-md4-tests (License): Likewise.
49032
49033         * modules/gc-md2-tests (License): Likewise.
49034
49035         * modules/gc-tests (License): Likewise.
49036
49037         * modules/des-tests (License): Likewise.
49038
49039         * modules/md4-tests (License): Likewise.
49040
49041         * modules/md2-tests (License): Likewise.
49042
49043 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
49044
49045         Sync from coreutils:
49046
49047         * MODULES.html.sh (build_lib): New section, with new lib-ignore module.
49048         * modules/lib-ignore: New file.
49049         * modules/mkdir-p (Files): Add chdir-safer.c, chdir-safer.h, lchmod.h,
49050         chdir-safer.m4, lchmod.m4.
49051         * modules/openat: Add mkdirat.c, openat-priv.h.
49052
49053 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
49054
49055         Sync from coreutils.
49056         * m4/lib-ignore.m4: New file.
49057         * m4/lchmod.m4: New file.
49058
49059 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
49060
49061         Sync from coreutils.
49062         * lib/chdir-long.c (cdb_free): Don't bother trying to open directory
49063         for write access: POSIX says that must fail.
49064         * lib/fts.c (diropen): Likewise.
49065         * lib/save-cwd.c (save_cwd): Likewise.
49066         * lib/chdir-long.c (cdb_free): Open with O_NOCTTY | O_NONBLOCK as
49067         well, for minor improvements on hosts that lack O_DIRECTORY.
49068         * lib/chown.c (rpl_chown) [CHOWN_MODIFIES_SYMLINK]:
49069         Don't try O_WRONLY unless O_RDONLY failed wth EACCES.
49070         Fall back on chown if open failed with EACCES.
49071
49072         * lib/gettime.c (gettime) [!defined OK_TO_USE_1S_CLOCK]:
49073         Report an error at compile-time if only a 1-second nominal clock
49074         resolution is found.
49075
49076         * lib/lchmod.h: New file.
49077         * lib/mkdir-p.c: Include lchmod.h, lchown.h.
49078         (make_dir_parents): Use lchown rather than chown, and
49079         lchmod rather than chmod.
49080
49081         * lib/mountlist.c (ME_DUMMY): "none" and "proc" file systems are
49082         dummies too.  Problem with "none" reported by Bob Proulx.  Problem with
49083         "proc" reported by n0dalus.
49084
49085         * lib/mountlist.c: Include <limits.h>.
49086         (dev_from_mount_options)
49087         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]:
49088         New function.  It no longer assumes "dev=" has the System V meaning
49089         on Linux (since it doesn't).  It also parses "dev=" more carefully.
49090         (read_file_system_list)
49091         [defined MOUNTED_GETMNTENT1 || defined MOUNTED_GETMNTENT2]: Use it.
49092         MOUNTED_GETMNTENT2 is new here; the code didn't used to look for
49093         dev= in that case.
49094
49095         * lib/posixtm.h (PDS_PRE_2000): New macro.
49096         * lib/posixtm.c (year): Arg is now syntax_bits rather than
49097         allow_century.  All usages changed.  Reject dates outside the range
49098         1969-1999 if PDS_PRE_2000 is used.
49099
49100 2006-01-09  Paul Eggert  <eggert@cs.ucla.edu>
49101
49102         Sync from coreutils.
49103         * doc/getdate.texi (General date syntax): Invalid dates are rejected.
49104         (Time of day items): Mention the possibility of leap seconds.
49105         Problem reported by Dr. David Alan Gilbert.
49106
49107 2006-01-09  Jim Meyering  <jim@meyering.net>
49108
49109         Sync from coreutils.
49110
49111         * lib/version-etc.c (COPYRIGHT_YEAR): Update to 2006.
49112
49113         * lib/chdir-safer.h, lib/chdir-safer.c: New files.
49114
49115         * lib/modechange.c (mode_compile): Reject an invalid mode string
49116         that starts with an octal digit.  From Andreas Gruenbacher.
49117
49118         * lib/openat.c: Include "fcntl--.h" and "unistd--.h", to map open
49119         and dup to open_safer and dup_safer, respectively.
49120         (openat_permissive): Fix typo in comment.
49121
49122         * lib/openat.c: Don't include <stdlib.h>, <unistd.h>, <fcntl.h>,
49123         "gettext.h"; either no longer needed or are guaranteed by openat.h.
49124         (_): Remove; no longer needed.
49125         (openat): Renamed from rpl_openat; no need for rpl_openat
49126         since openat.h renames openat for us.
49127         Replace most of the body with a call to openat_permissive,
49128         to avoid duplicate code.
49129         Port to (probably hypothetical) environments were mode_t is
49130         wider than int.
49131         (openat_permissive): Require mode arg, so that we can check
49132         types better.  Put it just after flags.  Change cwd failure
49133         indicator from pointer-to-bool to pointer-to-errno-value.
49134         All callers changed.
49135         Invoke openat_save_fail and/or openat_restore_fail if
49136         cwd_errno is null, so that openat can call us.
49137         (openat_permissive, fdopendir, fstatat, unlinkat):
49138         Simplify errno handling to avoid some duplicate code,
49139         as it's OK to set errno on success.
49140         * lib/openat.h: Revamp code so that function macros depend on
49141         __OPENAT_PREFIX only, not also on AT_FDCWD.
49142         (openat_ro): Remove.  Caller changed to use openat_permissive.
49143         (openat_permissive): Now a macro, if not a function.
49144         (openat_restore_fail, openat_save_fail): Now always functions,
49145         since mkdirat needs them even if __OPENAT_PREFIX is defined.
49146
49147         * lib/openat-priv.h: New file, defining macros used by mkdirat.c
49148         and openat.c.
49149         * lib/mkdirat.c: Include openat-priv.h.
49150         Remove definitions of macros defined therein.
49151         * lib/openat.c: Likewise.
49152
49153         * lib/mkdirat.c (mkdirat): New file and function.
49154         * lib/openat.h (mkdirat): Declare.
49155
49156         * lib/openat.c (fdopendir): Don't change errno when returning non-NULL.
49157
49158         * lib/openat.h (openat_permissive): Declare.
49159         (openat_ro): Define.
49160
49161         * lib/openat.c (EXPECTED_ERRNO): New macro.
49162         (openat_permissive): New function -- used in remove.c rewrite.
49163         (all functions): Set errno just before returning, only if there
49164         was an actual failure.
49165         Use EXPECTED_ERRNO rather than comparing against only ENOTDIR.
49166
49167         Emulate openat-family functions using Linux's procfs, if possible.
49168         Idea and some code based on Ulrich Drepper's glibc changes.
49169
49170         * lib/openat.c: (BUILD_PROC_NAME): New macro.
49171         Include <stdio.h>, <string.h>, "alloca.h" and "intprops.h".
49172         (rpl_openat): Emulate by trying to open /proc/self/fd/%d/%s,
49173         before falling back on save_cwd and restore_cwd.
49174         (fdopendir, fstatat, unlinkat): Likewise.
49175
49176         * lib/openat.c (fstatat, unlinkat): Perform the syscall directly,
49177         skipping the save_cwd...restore_cwd overhead, if FILE is absolute.
49178
49179         * lib/openat.c (rpl_openat): Use the promoted type (int), not mode_t,
49180         as second argument to va_arg.  Otherwise, some versions of gcc
49181         warn that `if this code is reached, the program will abort'.
49182
49183 2006-01-09  Jim Meyering  <jim@meyering.net>
49184
49185         Sync from coreutils.
49186         * m4/openat.m4 (gl_FUNC_OPENAT): Require and compile mkdirat.c.
49187         Require openat-priv.h.
49188
49189 2006-01-09  Bruno Haible  <bruno@clisp.org>
49190
49191         * modules/strnlen (Include): Use strnlen.h.
49192
49193 2006-01-09  Bruno Haible  <bruno@clisp.org>
49194
49195         * m4/stdint.m4 (gl_STDINT_H): Also test for <sys/bitypes.h>.
49196
49197 2006-01-09  Bruno Haible  <bruno@clisp.org>
49198
49199         * lib/sysexit_.h (EX_OK): New macro.
49200         Suggested by Martin Lambers <marlam@marlam.de>.
49201
49202 2006-01-09  Bruno Haible  <bruno@clisp.org>
49203
49204         * lib/stdint_.h: On Linux libc4 and libc5, include <sys/bitypes.h> and
49205         don't define _STDINT_H_NEED_SIGNED_INT_TYPES.
49206
49207 2006-01-09  Bruno Haible  <bruno@clisp.org>
49208
49209         * lib/stdint_.h (SIZE_MAX): Write the value without involving negative
49210         numbers.
49211
49212 2006-01-09  Bruno Haible  <bruno@clisp.org>
49213
49214         * lib/javacomp.sh.in: Move to ../build-aux/javacomp.sh.in.
49215         * lib/javaexec.sh.in: Move to ../build-aux/javaexec.sh.in.
49216         * lib/csharpcomp.sh.in: Move to ../build-aux/csharpcomp.sh.in.
49217         * lib/csharpexec.sh.in: Move to ../build-aux/csharpexec.sh.in.
49218
49219 2006-01-09  Bruno Haible  <bruno@clisp.org>
49220
49221         * build-aux/javacomp.sh.in: New file, moved from lib/.
49222         * modules/javacomp-script (Files): Update.
49223         (configure.ac): Add AC_CONFIG_FILES invocation.
49224         (EXTRA_DIST): Remove variable.
49225
49226         * build-aux/javaexec.sh.in: New file, moved from lib/.
49227         * modules/javaexec (Files): Update.
49228         (configure.ac): Add AC_CONFIG_FILES invocation.
49229         (EXTRA_DIST): Remove javaexec.sh.in.
49230
49231         * build-aux/csharpcomp.sh.in: New file, moved from lib/.
49232         * modules/csharpcomp-script (Files): Update.
49233         (configure.ac): Add AC_CONFIG_FILES invocation.
49234         (EXTRA_DIST): Remove variable.
49235
49236         * build-aux/csharpexec.sh.in: New file, moved from lib/.
49237         * modules/csharpexec (Files): Update.
49238         (configure.ac): Add AC_CONFIG_FILES invocation.
49239         (EXTRA_DIST): Remove csharpexec.sh.in.
49240
49241 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
49242
49243         Sync from coreutils.
49244
49245         Add POSIX ACL support
49246         * lib/acl.h (copy_acl, set_acl): Add declarations.
49247         * lib/acl.c (acl_entries): Add fallback implementation for POSIX ACL
49248         systems other than Linux.
49249         (chmod_or_fchmod): New function: use fchmod when possible,
49250         and chmod otherwise.
49251         (file_has_acl): Add a POSIX ACL implementation, with a
49252         Linux-specific subcase.
49253         (copy_acl): Add: copy an acl and S_ISUID, S_ISGID, and
49254         S_ISVTX from one file to another.  Fall back to fchmod/chmod when
49255         acls are unsupported.
49256         (set_acl): Add: set a file's acl and S_ISUID, S_ISGID, and
49257         S_ISVTX to a defined value.  Fall back to fchmod/chmod when acls
49258         are unsupported.
49259
49260 2006-01-09  Andreas Gruenbacher  <agruen@suse.de>
49261
49262         Sync from coreutils.
49263         * m4/acl.m4 (AC_FUNC_ACL): Add POSIX ACL and Linux-specific acl tests.
49264
49265 2006-01-07  Bruno Haible  <bruno@clisp.org>
49266
49267         * gnulib-tool (func_import): Add an AC_PROG_RANLIB dependency to
49268         gl_EARLY.
49269
49270 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
49271
49272         * lib/strftime.c (tzname): Don't declare if it is already #defined.
49273         Problem reported for Mingw by Mark Junker.
49274
49275 2006-01-04  Paul Eggert  <eggert@cs.ucla.edu>
49276
49277         * README: Gnulib normally doesn't generate a tarball.
49278
49279 2006-01-03  Paul Eggert  <eggert@cs.ucla.edu>
49280
49281         * lib/xtime.h (xtime_make, xtime_nonnegative_nsec, xtime_nsec): Use
49282         long int, not int, for nanosecond counts, so that people who are
49283         used to POSIX struct timespec won't be surprised.  Reported by Jim
49284         Meyering.
49285
49286 2005-12-28  Bruno Haible  <bruno@clisp.org>
49287
49288         * build-aux/config.rpath: Update from GNU gettext.
49289
49290 2005-12-16  Jim Meyering  <jim@meyering.net>
49291
49292         * modules/fprintftime: New module.
49293         * MODULES.html.sh (Date and time <time.h>): Add fprintftime.
49294
49295 2005-12-16  Jim Meyering  <jim@meyering.net>
49296
49297         * m4/fprintftime.m4: New file.
49298
49299 2005-12-16  Jim Meyering  <jim@meyering.net>
49300
49301         * lib/fprintftime.c, lib/fprintftime.h: New files.
49302
49303 2005-12-15  Simon Josefsson  <jas@extundo.com>
49304
49305         * modules/socklen (configure.ac): Fix M4 macro name, to align with
49306         new m4/socklen.m4.
49307
49308 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
49309
49310         * m4/argp.m4: Define HAVE_DECL_PROGRAM_INVOCATION_NAME and
49311         HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME
49312
49313 2005-12-10  Sergey Poznyakoff  <gray@gnu.org.ua>
49314
49315         * lib/argp-fmtstream.c (__argp_fmtstream_update): Fix coredump
49316         * lib/argp-help.c (fill_in_uparams): Check if the constructed
49317         struct uparams is valid. Fall back to the default values if it is
49318         not.
49319
49320 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
49321
49322         * modules/argp (Files): Add argp-pin.c
49323         (Depends-on): dirname
49324         (lib_SOURCES): Add argp-pin.c
49325
49326 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
49327
49328         * m4/argp.m4:  Check if program_invocation_name and
49329         program_invocation_short_name are declared and define appropriate
49330         macros if they are not.
49331
49332 2005-12-09  Sergey Poznyakoff  <gray@gnu.org.ua>
49333
49334         * lib/argp-help.c (__argp_base_name): New function
49335         (__argp_short_program_name): Rewrite using __argp_base_name
49336         * lib/argp-namefrob.h: Define program_invocation_name and
49337         program_invocation_short_name if requested
49338         (__argp_base_name): Add prototype
49339         * lib/argp-parse.c (argp_def): Use gettext wrappers
49340         (argp_default_parser): Use __argp_base_name
49341         * lib/argp-pin.c: New file. Defines program_invocation_name and
49342         program_invocation_short_name on systems that lack them.
49343
49344 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
49345
49346         * m4/stat-time.m4 (gl_STAT_TIME): Add check for
49347         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
49348         porting problem reported by Georg Schwarz in
49349         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
49350
49351 2005-12-07  Paul Eggert  <eggert@cs.ucla.edu>
49352
49353         * lib/stat-time.h (STATE_TIMESPEC, STAT_TIMESPEC_NS): Add check for
49354         TYPEOF_STRUCT_STAT_ST_ATIM_IS_STRUCT_TIMESPEC, to fix IRIX 5.3
49355         porting problem reported by Georg Schwarz in
49356         <http://lists.gnu.org/archive/html/bug-coreutils/2005-12/msg00083.html>.
49357
49358 2005-12-05  Bruno Haible  <bruno@clisp.org>
49359
49360         * lib/csharpcomp.sh.in (options_csc): For -l option, add a .dll suffix.
49361         * lib/csharpcomp.c (compile_csharp_using_sscli): Likewise.
49362         Reported by Mark Junker <mjscod@gmx.de>.
49363
49364 2005-12-02  Paul Eggert  <eggert@cs.ucla.edu>
49365
49366         * m4/socklen.m4 (gl_TYPE_SOCKLEN_T): Renamed from gl_SOCKLEN_T.
49367         Use implementation from Albert Chin, with some
49368         comments/corrections by Stepan Kasal and myself.
49369
49370 2005-12-02  Bruno Haible  <bruno@clisp.org>
49371
49372         * gnulib-tool (func_import): Accept GPLed build tool modules when
49373         --lgpl is given.
49374         * modules/csharpcomp-script: New file.
49375         * modules/csharpcomp: Depend on it.
49376         * modules/javacomp-script: New file.
49377         * modules/javacomp: Depend on it.
49378         Suggested by Simon Josefsson.
49379
49380 2005-12-01  Paul Eggert  <eggert@cs.ucla.edu>
49381
49382         * m4/regex.m4 (gl_REGEX): Check whether off_t can be used in a switch
49383         statement, to work around an HP-UX 10.20 compiler bug reported by
49384         Peter O'Gorman.
49385
49386 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
49387
49388         * modules/savedir (Depends-on): Add openat.
49389
49390 2005-11-29  Paul Eggert  <eggert@cs.ucla.edu>
49391
49392         * lib/stdint_.h (intmax_t) [defined intmax_t]: Do not declare.
49393         (uintmax_t) [defined uintmax_t]: Do not declare.
49394         (SIZE_MAX) [defined SIZE_MAX]: Do not define.
49395         This works around a problem if intmax_t.m4 and/or uintmax_t.m4
49396         and/or size_max.m4 are also used.  Problem reported by Mark D. Baushke.
49397         (SIZE_MAX): Define to ((size_t) -1), not (~(size_t)0), for the
49398         sake of portability to weird hosts that C allows (though we don't
49399         know of any practical examples).
49400
49401         * lib/savedir.h (fdsavedir): New decl.
49402         * lib/savedir.c (fdsavedir, savedirstream): New functions; the latter
49403         contains most of the former guts of savedir.
49404         (savedir): Use savedirstream.
49405         Include "openat.h".
49406
49407 2005-11-25  Paul Eggert  <eggert@cs.ucla.edu>
49408
49409         * modules/obstack (Files): Add m4/ulonglong.m4.
49410         Problem reported by Davide Angelocola.
49411
49412 2005-11-15  Paul Eggert  <eggert@cs.ucla.edu>
49413
49414         * lib/xstrtod.c: Don't bother with #pragma STDC FENV_ACCESS ON, as
49415         coreutils no longer futzes with rounding modes.
49416
49417 2005-11-14  Jim Meyering  <jim@meyering.net>
49418
49419         * lib/mkstemp-safer.c: Include <config.h>, required for possible
49420         replacement of mkstemp.
49421
49422 2005-11-10  Simon Josefsson  <jas@extundo.com>
49423
49424         * lib/readline.c: Remove EOL.
49425
49426 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
49427
49428         * modules/gethrxtime (Depends-on): Add gettime.
49429
49430 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
49431
49432         * m4/gethrxtime.m4 (gl_PREREQ_GETHRXTIME): Don't require AC_HEADER_TIME
49433         or gettimeofday; no longer needed.
49434
49435 2005-11-10  Paul Eggert  <eggert@cs.ucla.edu>
49436
49437         * lib/gethrxtime.c: Include "timespec.h" rather than the sys/time /
49438         time business.
49439         (gethrxtime) [! (HAVE_NANOUPTIME
49440         || (defined CLOCK_MONOTONIC && HAVE_CLOCK_GETTIME)
49441         || HAVE_MICROUPTIME)]: Fall back on gettime rather than rolling
49442         our own approximation.
49443
49444 2005-11-08  Eric Blake  <ebb9@byu.net>
49445
49446         * lib/inet_ntop.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
49447
49448 2005-11-08  Eric Blake  <ebb9@byu.net>
49449
49450         * lib/getaddrinfo.h: Use #if !, not #ifndef, for AC_CHECK_DECLS.
49451
49452 2005-11-04  Bruno Haible  <bruno@clisp.org>
49453
49454         * gnulib-tool: Implement --update mode.
49455
49456 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
49457
49458         Fix porting problem reported by Theodoros V. Kalamatianos.
49459         * lib/utimens.c (futimens) [HAVE_WORKING_UTIMES && HAVE_FUTIMES]:
49460         Don't assume that futimes failing means we must fail.
49461
49462 2005-10-30  Paul Eggert  <eggert@cs.ucla.edu>
49463
49464         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Revamp wording and local
49465         variables to suggest the intended function of the PATH_MAX check.
49466
49467 2005-10-30  Kean Johnston  <jkj@sco.com>
49468
49469         Trivial changes to support SCO systems.
49470         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Check for MAXPATHLEN as well
49471         as PATH_MAX.
49472         * m4/fpending.m4 (gl_FUNC_FPENDING): Correct check for SCO systems,
49473         where __ptr is null when no I/O is pending.
49474
49475 2005-10-29  Paul Eggert  <eggert@cs.ucla.edu>
49476
49477         * lib/getcwd.c (__getcwd): Don't assume that system calls after readdir
49478         leave errno alone.  Problem reported by Dmitry V. Levin.
49479
49480 2005-10-28  Simon Josefsson  <jas@extundo.com>
49481
49482         * tests/test-gc-md4.c, tests/test-gc-md5.c, tests/test-gc-sha1.c:
49483         Test more.
49484
49485         * tests/test-gc-md2.c, tests/test-md2.c: New files.
49486
49487         * modules/md2, modules/md2-tests: New files.
49488
49489 2005-10-28  Simon Josefsson  <jas@extundo.com>
49490
49491         * m4/inet_ntop.m4: More tests.
49492
49493         * m4/gc-md2.m4, md2.m4: New file.
49494
49495 2005-10-28  Simon Josefsson  <jas@extundo.com>
49496
49497         * lib/inet_ntop.h, inet_ntop.c: Make it work under mingw32: Add
49498         "restrict" keywords, as per POSIX.  Protect the function
49499         declaration around HAVE_DECL_INET_NTOP rather than HAVE_INET_NTOP.
49500         Don't use K&R prototypes.  Check the sprintf return values.
49501         Re-define EAFNOSUPPORT if not present.  Indent.
49502
49503         * lib/md5.h, md5.c: Simplify buffer handling visavi alignment,
49504         suggested by Bruno Haible <bruno@clisp.org>.
49505
49506         * lib/gc-gnulib.c, gc-libgcrypt.c: Check calloc return value.
49507
49508         * lib/gc.h: Add MD2 and RMD160 length defines.  Add prototypes.
49509
49510         * lib/gc-libgcrypt.c: Add MD2 (which is not available through
49511         libgcrypt).
49512
49513         * lib/gc-gnulib.c: Add MD2.  Implement gc_hash_* API.
49514
49515         * lib/md2.h, lib/md2.c: New files.
49516
49517 2005-10-28  Paul Eggert  <eggert@cs.ucla.edu>
49518
49519         * lib/savedir.c (savedir): Don't assume that xrealloc etc. leave
49520         errno alone.  Problem reported by Frederic Jolliton.
49521
49522 2005-10-27  Paul Eggert  <eggert@cs.ucla.edu>
49523
49524         * modules/verify (License): Change from GPL to LGPL.  This is a
49525         tiny module and there are apparently near-equivalents that are
49526         under the BSD license.
49527
49528 2005-10-24  Simon Josefsson  <jas@extundo.com>
49529
49530         * modules/sha1: Relicense to LGPL.
49531
49532 2005-10-24  Simon Josefsson  <jas@extundo.com>
49533
49534         * lib/md4.h: Shrink buffer size, now that we changed the type.
49535
49536 2005-10-23  Simon Josefsson  <jas@extundo.com>
49537
49538         * gnulib-tool (func_import): Fix --tests-base.
49539
49540 2005-10-22  Simon Josefsson  <jas@extundo.com>
49541
49542         * modules/arcfour (Depends-on): Need stdint.
49543
49544 2005-10-22  Simon Josefsson  <jas@extundo.com>
49545
49546         * m4/gc.m4: Don't be fooled by --disable-*random-device parameters,
49547         suggested by Bruno Haible <bruno@clisp.org>.  Fix error messages.
49548
49549 2005-10-22  Simon Josefsson  <jas@extundo.com>
49550
49551         * lib/md4.h, md4.c: Simplify buffer handling visavi alignment,
49552         suggested by Bruno Haible <bruno@clisp.org>.
49553
49554 2005-10-22  Simon Josefsson  <jas@extundo.com>
49555
49556         * lib/crc.h: Include stddef.h, for size_t.
49557
49558 2005-10-22  Simon Josefsson  <jas@extundo.com>
49559
49560         * lib/arcfour.h, arcfour.c: Use fixed size indices in the
49561         arcfour_context struct (simplify test vector testing in GNU
49562         Shishi).
49563
49564 2005-10-21  Simon Josefsson  <jas@extundo.com>
49565
49566         * modules/des, modules/des-tests: New files.
49567
49568         * modules/gc-des, modules/gc-des-tests: New files.
49569
49570         * tests/test-des.c, tests/test-gc-des.c: New file.
49571
49572 2005-10-21  Simon Josefsson  <jas@extundo.com>
49573
49574         * modules/arctwo, modules/arctwo-tests: New files.
49575
49576         * tests/test-arctwo.c: New file.
49577
49578         * modules/gc-arctwo, modules/gc-arctwo-tests: New files.
49579
49580         * tests/test-gc-arctwo.c: New file.
49581
49582 2005-10-21  Simon Josefsson  <jas@extundo.com>
49583
49584         * m4/gc.m4: Don't use libgcrypt if gcrypt.h isn't found, suggested by
49585         Bruno Haible <bruno@clisp.org>.
49586
49587         * m4/gc-des.m4: New file.
49588
49589 2005-10-21  Simon Josefsson  <jas@extundo.com>
49590
49591         * m4/arctwo.m4: New file.
49592
49593         * m4/gc-arctwo.m4: New file.
49594
49595 2005-10-21  Simon Josefsson  <jas@extundo.com>
49596
49597         * lib/rijndael-api-fst.c: Fix bugs in CBC mode for more than one
49598         block.
49599
49600 2005-10-21  Simon Josefsson  <jas@extundo.com>
49601
49602         * lib/hmac-md5.c (hmac_md5): Add comments, suggested by Bruno Haible
49603         <bruno@clisp.org>.
49604
49605         * lib/hmac-sha1.c (hmac_sha1): Likewise.
49606
49607         * lib/crc.c (crc32_update): Actually use crc parameter, suggested by
49608         Bruno Haible <bruno@clisp.org>.
49609
49610         * lib/crc.h: Include stdint.h directly, suggested by Bruno Haible
49611         <bruno@clisp.org>.
49612
49613 2005-10-21  Simon Josefsson  <jas@extundo.com>
49614
49615         * lib/gc-libgcrypt.c (gc_cipher_open): Handle ECB.
49616
49617 2005-10-21  Simon Josefsson  <jas@extundo.com>
49618
49619         * lib/gc-gnulib.c: Support ARCTWO in CBC mode.
49620
49621 2005-10-21  Simon Josefsson  <jas@extundo.com>
49622
49623         * lib/des.h, lib/des.c: New files.
49624
49625         * lib/gc-gnulib.c: Support DES.c
49626
49627 2005-10-21  Simon Josefsson  <jas@extundo.com>
49628
49629         * lib/arctwo.h, lib/arctwo.c: New files.
49630
49631         * lib/gc-gnulib.c: Support ARCTWO.
49632
49633 2005-10-21  Simon Josefsson  <jas@extundo.com>
49634
49635         * lib/arctwo.h (arctwo_setkey): Protect variable in CPP macro,
49636         suggested by Ralf Wildenhues <Ralf.Wildenhues@gmx.de>.
49637
49638 2005-10-21  Simon Josefsson  <jas@extundo.com>
49639
49640         * gnulib-tool (func_import, func_create_testdir): Define automake
49641         conditional GL_COND_LIBTOOL if libtool is used (to be used by modules
49642         Makefile.am snippet),
49643         suggested by Bruno Haible <bruno@clisp.org>.
49644
49645         * modules/gc (Makefile.am): Use it.
49646
49647 2005-10-21  Bruno Haible  <bruno@clisp.org>
49648
49649         * gnulib-tool (func_import, func_create_testdir): Add quoting to last
49650         patch.
49651
49652 2005-10-19  Simon Josefsson  <jas@extundo.com>
49653
49654         * tests/test-gc-rijndael.c: New file.
49655
49656         * modules/gc-rijndael, modules/gc-rijndael-test: New files.
49657
49658 2005-10-19  Simon Josefsson  <jas@extundo.com>
49659
49660         * tests/test-gc-md4.c, tests/test-gc-md5.c: Test gc_hash_buffer
49661         interface too.
49662
49663 2005-10-19  Simon Josefsson  <jas@extundo.com>
49664
49665         * tests/test-gc-arcfour.c: New file.
49666
49667         * modules/gc-arcfour, modules/gc-arcfour-tests: New files.
49668
49669 2005-10-19  Simon Josefsson  <jas@extundo.com>
49670
49671         * modules/gc-md4, modules/gc-md4-tests: New file.
49672
49673         * tests/test-gc-md4.c: New file.
49674
49675 2005-10-19  Simon Josefsson  <jas@extundo.com>
49676
49677         * m4/gc-md4.m4: New file.
49678
49679 2005-10-19  Simon Josefsson  <jas@extundo.com>
49680
49681         * m4/gc-hmac-md5.m4, gc-hmac-sha1.m4, gc-md4.m4,
49682         gc-md5.m4, gc-sha1.m4: Fix typo, suggested by Stepan Kasal
49683         <kasal@ucw.cz>.
49684
49685 2005-10-19  Simon Josefsson  <jas@extundo.com>
49686
49687         * m4/gc-arcfour.m4: New file.
49688
49689         * m4/gc-rijndael.m4: New file.
49690
49691 2005-10-19  Simon Josefsson  <jas@extundo.com>
49692
49693         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support MD4.
49694
49695 2005-10-19  Simon Josefsson  <jas@extundo.com>
49696
49697         * lib/gc-gnulib.c: Support ARCFOUR.
49698
49699 2005-10-19  Simon Josefsson  <jas@extundo.com>
49700
49701         * lib/gc-gnulib.c: Implement gc_cipher_* API, currently only with AES
49702         support.
49703
49704         * lib/gc.h: Add ECB enum type.
49705
49706         * lib/hmac-md5.c, hmac-sha1.c: Include memxor.h.
49707
49708 2005-10-18  Simon Josefsson  <jas@extundo.com>
49709
49710         * tests/test-md5.c: New file.
49711
49712         * modules/md5-tests: New file.
49713
49714 2005-10-18  Simon Josefsson  <jas@extundo.com>
49715
49716         * tests/test-md4.c: New file.
49717
49718         * modules/md4, modules/md4-tests: New files.
49719
49720 2005-10-18  Simon Josefsson  <jas@extundo.com>
49721
49722         * m4/md4.m4: New file.
49723
49724 2005-10-18  Simon Josefsson  <jas@extundo.com>
49725
49726         * lib/md4.h, lib/md4.c: New files, based on md5.?.
49727
49728 2005-10-17  Stepan Kasal  <kasal@ucw.cz>
49729
49730         * gnulib-tool (func_create_testdir): Omit the second check whether
49731         BUILT_SOURCES in nonempty.
49732
49733 2005-10-17  Simon Josefsson  <jas@extundo.com>
49734
49735         * tests/test-rijndael.c: New file.
49736
49737 2005-10-17  Simon Josefsson  <jas@extundo.com>
49738
49739         * modules/sha1: Depend on stdint instead of md5.
49740
49741         * modules/md5: Depend on stdint, remove uint32_t.
49742
49743 2005-10-17  Simon Josefsson  <jas@extundo.com>
49744
49745         * modules/gc-sha1-tests: New file.
49746
49747         * tests/test-gc-sha1.c: New file.
49748
49749 2005-10-17  Simon Josefsson  <jas@extundo.com>
49750
49751         * m4/md5.m4: Remove call to uint32_t.m4.
49752
49753 2005-10-17  Simon Josefsson  <jas@extundo.com>
49754
49755         * lib/sha1.c: Use uint32_t instead of md5_uint32.t
49756
49757         * lib/sha1.h: Use stdint.h and uint32_t instead of md5_uint32 from
49758         md5.h.
49759
49760         * lib/md5.c: Use uin32_t.  Fix non-gcc UNALIGNED_P macro.
49761
49762         * lib/md5.h: Use stdint.h and uint32_t.  Doc fix.
49763
49764 2005-10-17  Simon Josefsson  <jas@extundo.com>
49765
49766         * lib/gc.h, gc-libgcrypt.c: Add more hash types/functions.
49767
49768 2005-10-17  Simon Josefsson  <jas@extundo.com>
49769
49770         * lib/gc.h, gc-libgcrypt.c: Add ciphers.
49771
49772 2005-10-17  Simon Josefsson  <jas@extundo.com>
49773
49774         * lib/gc-libgcrypt.c (gc_hmac_sha1): Fix assert.
49775
49776         * lib/gc.h (gc_nonce, gc_pseudo_random, gc_random): Add prototypes.
49777
49778 2005-10-17  Bruno Haible  <bruno@clisp.org>
49779
49780         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Change the return statement so
49781         that it can also be used in a test.
49782
49783 2005-10-16  Bruno Haible  <bruno@clisp.org>
49784
49785         * gnulib-tool (func_emit_tests_Makefile_am): Also define
49786         TESTS_ENVIRONMENT, so that individual tests can augment it.
49787
49788         * gnulib-tool (func_create_testdir): Use an intermediate target for
49789         building $(BUILT_SOURCES). Needed because BUILT_SOURCES can contain
49790         macros, like $(ALLOCA_H), which cannot be passed through the command
49791         line.
49792
49793 2005-10-15  Simon Josefsson  <jas@extundo.com>
49794
49795         * modules/rijndael-tests: New file.
49796
49797         * modules/rijndael: New file.
49798
49799 2005-10-15  Simon Josefsson  <jas@extundo.com>
49800
49801         * m4/rijndael.m4: New file.
49802
49803 2005-10-15  Simon Josefsson  <jas@extundo.com>
49804
49805         * lib/rijndael-api-fst.h, lib/rijndael-api-fst.c: New files.
49806
49807         * lib/rijndael-alg-fst.h, lib/rijndael-alg-fst.c: New files.
49808
49809 2005-10-14  Simon Josefsson  <jas@extundo.com>
49810
49811         * tests/test-arcfour.c: New file.
49812
49813         * modules/arcfour, modules/arcfour-tests: New files.
49814
49815 2005-10-14  Simon Josefsson  <jas@extundo.com>
49816
49817         * m4/arcfour.m4: New file.
49818
49819 2005-10-14  Simon Josefsson  <jas@extundo.com>
49820
49821         * lib/arcfour.h, lib/arcfour.c: New files.
49822
49823 2005-10-14  Roland McGrath  <roland@redhat.com>
49824
49825         Import from libc.  [BZ #1331]
49826         * lib/obstack.h [!__STDC__] (obstack_int_grow_fast): Fix misnamed
49827         macro argument.
49828         Reported by Matej Vela <vela@debian.org>.
49829
49830 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
49831
49832         * lib/obstack.c [defined _LIBC && defined USE_IN_LIBIO]: Don't
49833         include <wchar.h>; no longer needed.
49834
49835 2005-10-14  Paul Eggert  <eggert@cs.ucla.edu>
49836
49837         * config/srclist.txt: Add glibc bug 321 for obstack.c, obstack.h.
49838
49839 2005-10-14  Jakub Jelinek  <jakub@redhat.com>
49840         and  Ulrich Drepper  <drepper@redhat.com>
49841
49842         Import from libc.
49843         * lib/obstack.c (print_and_abort) [defined _LIBC]: Use __fxprintf
49844         instead of inline stream orientation test and two separate
49845         function calls.  Pay no attention to USE_IN_LIBIO.
49846
49847 2005-10-13  Simon Josefsson  <jas@extundo.com>
49848
49849         * modules/gc-hmac-md5-tests: New file.
49850
49851         * tests/test-gc-hmac-sha1.c: New file.
49852
49853         * tests/test-gc.c (main): Remove MD5 and HMAC-MD5 tests.
49854
49855         * modules/gc-hmac-md5-tests: New file.
49856
49857         * tests/test-gc-md5.c: New file.
49858
49859         * modules/gc-md5-tests: New file.
49860
49861 2005-10-13  Simon Josefsson  <jas@extundo.com>
49862
49863         * lib/gc-pbkdf2-sha1.c (gc_pbkdf2_sha1): Optimize CEIL computation.
49864         Move memory allocation outside of loop.
49865
49866 2005-10-13  Paul Eggert  <eggert@cs.ucla.edu>
49867
49868         * lib/mkdir-p.c (make_dir_parents): Don't report an error if an
49869         intermediate directory is in a read-only file system.  Problem
49870         reported by Eric Blake.
49871
49872 2005-10-13  Oskar Liljeblad  <oskar@osk.mine.nu>
49873
49874         * modules/human (Depends-on): Depend on xstrtoumax, not xstrtol.
49875
49876 2005-10-12  Simon Josefsson  <jas@extundo.com>
49877
49878         * tests/test-hmac-sha1.c: New file.
49879
49880         * modules/hmac-sha1-tests: New file.
49881
49882         * modules/hmac-sha1: New file.
49883
49884 2005-10-12  Simon Josefsson  <jas@extundo.com>
49885
49886         * modules/gc-sha1: New file.
49887
49888 2005-10-12  Simon Josefsson  <jas@extundo.com>
49889
49890         * modules/gc-pbkdf2-sha1, modules/gc-pbkdf2-sha1-tests: New files.
49891
49892         * tests/test-gc-pbkdf2-sha1.c: New file.
49893
49894 2005-10-12  Simon Josefsson  <jas@extundo.com>
49895
49896         * modules/gc-md5, modules/gc-hmac-md5: New files.
49897
49898         * modules/gc (Files): Remove md5, memxor and hmac files.
49899
49900 2005-10-12  Simon Josefsson  <jas@extundo.com>
49901
49902         * m4/gc-pbkdf2-sha1.m4: New file.
49903
49904         * m4/gc-hmac-sha1.m4: New file.
49905
49906         * m4/gc-sha1: New file.
49907
49908         * m4/hmac-sha1.m4: New file.
49909
49910 2005-10-12  Simon Josefsson  <jas@extundo.com>
49911
49912         * m4/gc-md5.m4, m4/gc-hmac-md5.m4: New files.
49913
49914         * m4/gc.m4: Don't call gl_MD5, gl_MEMXOR or gl_HMAC_MD5.
49915
49916 2005-10-12  Simon Josefsson  <jas@extundo.com>
49917
49918         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Use Gc_rc for return types,
49919         suggested by Bruno Haible <bruno@clisp.org>.
49920
49921 2005-10-12  Simon Josefsson  <jas@extundo.com>
49922
49923         * lib/gc.h, gc-gnulib.c, gc-libgcrypt.c: Support SHA-1.
49924
49925 2005-10-12  Simon Josefsson  <jas@extundo.com>
49926
49927         * lib/gc-pbkdf2-sha1.c: New file.
49928
49929         * lib/gc.h: Add gc_pbkdf2_sha1 prototype.
49930
49931 2005-10-12  Simon Josefsson  <jas@extundo.com>
49932
49933         * lib/gc-libgcrypt.c (gc_hmac_sha1): New function.
49934
49935         * lib/gc-gnulib.c (gc_hmac_sha1): New function.
49936
49937 2005-10-12  Simon Josefsson  <jas@extundo.com>
49938
49939         * lib/gc-gnulib.c: Condition MD5 and HMAC-MD5 use on GC_USE_MD5 and
49940         GC_USE_HMAC_MD5, respectively.
49941
49942         * lib/gc-libgcrypt.c (gc_md5): Fix assert call.
49943         (gc_md5): Fix typo.
49944
49945         * lib/gc.h (gc_hash_buffer): Use gc_hash in prototype.
49946
49947         * lib/gc-libgcrypt.c (gc_hash_buffer): Ditto.
49948
49949         * lib/gc-gnulib.c (gc_hash_buffer): Ditto.
49950
49951 2005-10-12  Bruno Haible  <bruno@clisp.org>
49952
49953         * m4/stdbool.m4 (gl_STDBOOL_H): Define as an alias of AM_STDBOOL_H.
49954         Reported by Stepan Kasal <kasal@ucw.cz>.
49955
49956 2005-10-11  Simon Josefsson  <jas@extundo.com>
49957
49958         * tests/test-crc.c: New file.
49959
49960         * modules/crc, modules/crc-tests: New files.
49961
49962 2005-10-11  Simon Josefsson  <jas@extundo.com>
49963
49964         * m4/crc.m4: New file.
49965
49966 2005-10-11  Simon Josefsson  <jas@extundo.com>
49967
49968         * lib/gc.h: Add gc_hash and gc_hash_buffer.
49969
49970         * lib/gc-gnulib.c (gc_hash_buffer): Add.  Reorder #include's.
49971
49972         * lib/gc-libgcrypt.c (gc_hash_buffer): Add.
49973
49974 2005-10-11  Simon Josefsson  <jas@extundo.com>
49975
49976         * lib/crc.h, lib/crc.c: New files.
49977
49978         * lib/gc.h (gc_hash_buffer): Add doc.
49979
49980 2005-10-11  Bruno Haible  <bruno@clisp.org>
49981
49982         * modules/c-strcasestr: New file.
49983         * MODULES.html.sh (String handling <string.h>): Add c-strcasestr.
49984
49985 2005-10-11  Bruno Haible  <bruno@clisp.org>
49986
49987         * modules/c-strcase: New file.
49988         * MODULES.html.sh (String handling <string.h>): Add c-strcase.
49989
49990 2005-10-11  Bruno Haible  <bruno@clisp.org>
49991
49992         * lib/strcasecmp.c: Include limits.h.
49993         (strcasecmp): Avoid integer overflow on exotic platforms.
49994         * lib/strncasecmp.c: Include limits.h.
49995         (strncasecmp): Avoid integer overflow on exotic platforms.
49996         Reported by Paul Eggert.
49997
49998 2005-10-11  Bruno Haible  <bruno@clisp.org>
49999
50000         * lib/c-strcasestr.h: New file, from GNU gettext.
50001         * lib/c-strcasestr.c: New file, from GNU gettext.
50002
50003 2005-10-11  Bruno Haible  <bruno@clisp.org>
50004
50005         * lib/c-strcase.h: New file, from GNU gettext.
50006         * lib/c-strcasecmp.c: New file, from GNU gettext.
50007         * lib/c-strncasecmp.c: New file, from GNU gettext.
50008
50009 2005-10-10  Paul Eggert  <eggert@cs.ucla.edu>
50010
50011         * modules/mempcpy (License): GPL -> LGPL.
50012         * modules/strchrnul (License): Likewise.
50013         * modules/sysexits (License): Likewise.
50014
50015 2005-10-08  Simon Josefsson  <jas@extundo.com>
50016
50017         * config/srclist.txt: Bug 1423 is closed, but 1439 remains.
50018
50019 2005-10-07  Simon Josefsson  <jas@extundo.com>
50020
50021         * m4/memxor.m4: Remove gl_C_RESTRICT call.
50022
50023 2005-10-06  Simon Josefsson  <jas@extundo.com>
50024
50025         * tests/test-hmac-md5.c: New file.
50026
50027         * modules/hmac-md5-tests: New file.
50028
50029         * modules/hmac-md5: New file.
50030
50031 2005-10-06  Simon Josefsson  <jas@extundo.com>
50032
50033         * m4/hmac-md5.m4: New file.
50034
50035         * m4/memxor.m4: Require gl_C_RESTRICT.
50036
50037 2005-10-06  Simon Josefsson  <jas@extundo.com>
50038
50039         * lib/memxor.c (memxor): Avoid casts and warnings.
50040
50041 2005-10-06  Simon Josefsson  <jas@extundo.com>
50042
50043         * lib/hmac-md5.c: New file.
50044
50045         * lib/hmac.h: New file.
50046
50047 2005-10-06  Paul Eggert  <eggert@cs.ucla.edu>
50048
50049         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Check that bool
50050         promotes to int, not unsigned int, to catch the AIX 5.3
50051         compiler bug.
50052
50053 2005-10-05  Simon Josefsson  <jas@extundo.com>
50054
50055         * modules/memxor: New file.
50056
50057         * modules/iconv (Files): Move config.rpath to havelib, it is used
50058         there.
50059
50060         * modules/havelib (Files): Add config.rpath.
50061
50062 2005-10-05  Simon Josefsson  <jas@extundo.com>
50063
50064         * m4/memxor.m4: New file.
50065
50066 2005-10-05  Simon Josefsson  <jas@extundo.com>
50067
50068         * lib/memxor.c (memxor): Fix compiler error.
50069
50070         * lib/md5.h (MD5_DIGEST_SIZE, MD5_BLOCK_SIZE): Add, see also
50071         <http://sourceware.org/bugzilla/show_bug.cgi?id=1423>.
50072
50073         * lib/memxor.h, lib/memxor.c: New files.
50074
50075         * lib/getaddrinfo.h: Don't protect sys/types.h with HAVE_SYS_TYPES_H,
50076         we assume all systems have it, suggested by Jim Meyering
50077         <jim@meyering.net>.  Remove HAVE_SYS_SOCKET_H test too, to see if
50078         any systems lack sys/socket.h; mingw32 is known to lack it, but we
50079         don't support it yet anyway.  Also remove HAVE_NETDB_H test, for
50080         same reasons.
50081
50082 2005-10-05  Simon Josefsson  <jas@extundo.com>
50083
50084         * config/srclist.txt: Add glibc bug 1423 for md5.h.
50085
50086 2005-10-05  Paul Eggert  <eggert@cs.ucla.edu>
50087
50088         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Don't check for
50089         sys/socket.h, netdb.h, sys/types.h; the checks areno longer
50090         needed, since the source code now assumes these .h files.
50091
50092 2005-10-05  Derek Price  <derek@ximbiot.com>
50093
50094         * lib/getdelim.c (SIZE_MAX): New macro, if not already defined.
50095
50096 2005-10-05  Bruno Haible  <bruno@clisp.org>
50097
50098         * modules/stdint (License): Change to LGPL.
50099
50100 2005-10-04  Simon Josefsson  <jas@extundo.com>
50101
50102         * lib/getaddrinfo.h: Move sys/types.h include first, reported by "Mark
50103         D. Baushke" <mdb@gnu.org>.
50104
50105 2005-10-04  Bruno Haible  <bruno@clisp.org>
50106
50107         * lib/verify.h (verify_true): Provide alternative definition for C++.
50108
50109 2005-10-03  Paul Eggert  <eggert@cs.ucla.edu>
50110
50111         * lib/getdelim.c: Include getdelim.h first.  Include <limits.h>.
50112         (SSIZE_MAX): New macro, if not already defined.
50113         (getdelim): Fix buffer overrun on 64-bit hosts with lines longer
50114         than 2 GiB.
50115
50116 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
50117
50118         Sync from coreutils.
50119         * m4/openat.m4 (gl_FUNC_OPENAT): Check for fdopendir.
50120         * m4/ullong_max.m4 (gl_ULLONG_MAX): Simplify so that it merely
50121         defines ULONG_MAX_LT_ULLONG_MAX.  Thomas M.Ott reports that
50122         ULLONG_MAX doesn't work with 2.7.2.1.
50123
50124 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
50125
50126         * modules/xreadlink (Makefile.am): Remove lib_SOURCES.
50127         From Ben Pfaff.
50128
50129         * modules/exclude (Depends-on): Depend on verify.
50130         * modules/strtoimax (Depends-on): Likewise.
50131         * modules/utimecmp (Depends-on): Likewise.
50132
50133 2005-10-02  Paul Eggert  <eggert@cs.ucla.edu>
50134
50135         * lib/exclude.c: Include verify.h.
50136         (verify): Remove.  All callers changed to use verify.h's version.
50137         * lib/strtoimax.c: Likewise.
50138         * lib/utimecmp.c: Likewis.e
50139
50140         Sync from coreutils.
50141         * lib/.cppi-disable: Add getaddrinfo.h, getdelim.h, getline.h,
50142         getpass.c, mbchar.h, mbuiter.h, strcase.h, strnlen.h, strnlen1.h.
50143         * lib/.cvsignore: Add fts.h, search.h, t-fpending.
50144         * lib/settime.c (settime): Fix { typo in previous patch.  Also, don't
50145         bother returning ENOSYS if settimeofday or stime fails; just let
50146         them return whatever errno they want to return.
50147         * lib/utimens.c: Include unistd.h, for dup2.
50148         (futimens): Fix typo: HAVE_FUTIMESAT was misspelled in an #if.
50149         (futimens) [! HAVE_FUTIMESAT]: If !file, set errno before returning -1.
50150
50151 2005-10-02  Jim Meyering  <jim@meyering.net>
50152
50153         Sync from coreutils.
50154         * m4/utimes.m4 (gl_FUNC_UTIMES): Detect the version of utimes
50155         from glibc-2.2.5 that fails for read-only files.
50156
50157 2005-10-02  Jim Meyering  <jim@meyering.net>
50158
50159         Sync from coreutils.
50160         * lib/fts-cycle.c [HAVE_CONFIG_H]: Include <config.h>.
50161         * lib/openat-die.c: Use `#ifdef HAVE_CONFIG_H', not
50162         `#if HAVE_CONFIG_H'.
50163         * lib/openat.c (fdopendir): Do not define if HAVE_FDOPENDIR.
50164         Remove AT_FDCWD test.
50165         Do not consume the fd unless successful.
50166         * lib/openat.h (fdopendir): Do not define if HAVE_FDOPENDIR.
50167         * lib/settime.c (settime): Move the HAVE_STIME block `up' into an #elif
50168         block, so that we don't even try to compile it if settimeofday is
50169         available.  This works around a compilation failure on OSF1 V5.1,
50170         due to stime requiring a `long int*' while tv_sec is `int'.
50171
50172 2005-10-02  Alfred M. Szmidt  <ams@gnu.org>
50173
50174         Sync from coreutils.
50175         * m4/chdir-long.m4 (gl_FUNC_CHDIR_LONG): Compare $gl_have_path...
50176         against `yes', rather than just testing for nonempty.
50177
50178 2005-10-01  Simon Josefsson  <jas@extundo.com>
50179
50180         * m4/getaddrinfo.m4: Include sys/types.h for sys/socket.h, on FreeBSD
50181         and Darwin.
50182
50183         * m4/getaddrinfo.m4: Use AC_GNU_SOURCE, GNU only declare getaddrinfo
50184         as an (POSIX) extension.  Check for sys/types.h, sys/socket.h, and
50185         netdb.h too, needed by getaddrinfo.h.  Check if getaddrinfo,
50186         freeaddrinfo and gai_strerror are declared by the POSIX headers.
50187         Check if struct addrinfo is declared.
50188
50189 2005-10-01  Simon Josefsson  <jas@extundo.com>
50190
50191         * lib/getaddrinfo.h: Protect #include's of sys/socket.h and netdb.h.
50192         Only define struct addrinfo if !HAVE_STRUCT_ADDRINFO.  Protect
50193         AI_* and EAI_* definitions.  Protect function declarations.
50194
50195 2005-10-01  Jim Meyering  <jim@meyering.net>
50196
50197         Sync from coreutils.
50198
50199         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Look for getservbyname in these
50200         libraries [inet nsl socket xnet].  Nelson Beebe reported that with
50201         native cc on Solaris 7, getaddrinfo.c requires -lsocket.
50202         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
50203         in the inet and nsl libraries.  Required on Solaris 5.7.
50204
50205 2005-10-01  Jim Meyering  <jim@meyering.net>
50206
50207         Sync from coreutils.
50208         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Check for gethostbyname
50209         in the inet and nsl libraries.  Required on Solaris 5.7.
50210
50211 2005-10-01  Eric Blake  <ebb9@byu.net>  (tiny change)
50212
50213         * lib/getdelim.c (getdelim): Remove unused variables.
50214
50215 2005-09-29  Paul Eggert  <eggert@cs.ucla.edu>
50216
50217         * lib/xtime.h (XTIME_PRECISION): Now of type int, not long long int,
50218         so that the code works even with ancient cpp.  Portability problem
50219         with GCC 2.7.2.1 reported by Thomas M.Ott.
50220
50221 2005-09-27  Paul Eggert  <eggert@cs.ucla.edu>
50222
50223         * modules/regex (Depends-on): Add strcase.
50224
50225         * modules/gethostname (Licence): Change from GPL to LGPL, since
50226         gethostname.c is a trivial implementation of a standard library
50227         function.
50228         * modules/poll (License): Change from GPL to LGPL, since it's
50229         derived from LGPL code.
50230
50231 2005-09-27  Jim Meyering  <jim@meyering.net>
50232
50233         * lib/getcwd.c: Change #ifdef<TAB>HAVE_CONFIG_H to #ifdef
50234         HAVE_CONFIG_H.
50235
50236         * lib/intprops.h (signed_type_or_expr__): Define.
50237         (INT_STRLEN_BOUND) [__GNUC__]: Use a slightly tighter bound
50238         for unsigned types.
50239
50240 2005-09-26  Paul Eggert  <eggert@cs.ucla.edu>
50241
50242         * lib/verify.h (verify_expr): Remove, replacing with:
50243         (verify_true): New macro that returns true instead of void.
50244         (verify_type__): Remove.
50245         (verify): Use verify_true rather than verify_type__.
50246
50247 2005-09-26  Bruno Haible  <bruno@clisp.org>
50248
50249         * modules/mbchar (Include): Mention that HAVE_WCHAR_H && HAVE_WCTYPE_H
50250         is necessary.
50251         (lib_SOURCES): Remove mbchar.c.
50252         * modules/mbfile (Include): Mention that HAVE_MBRTOWC is necessary.
50253         (Files): Add m4/mbrtowc.m4.
50254         * modules/mbiter: Likewise.
50255         * modules/mbuiter: Likewise.
50256
50257 2005-09-26  Bruno Haible  <bruno@clisp.org>
50258
50259         * m4/mbchar.m4 (gl_MBCHAR): Check for wchar.h and wctype.h. Don't
50260         compile mbchar.c if they are not both present.
50261         * m4/mbfile.m4 (gl_MBFILE): Require gl_FUNC_MBRTOWC.
50262         * m4/mbiter.m4 (gl_MBITER): Likewise.
50263         * m4/strstr.m4 (gl_PREREQ_STRSTR): Use AC_REQUIRE.
50264         * m4/strcasestr.m4 (gl_PREREQ_STRCASESTR): Likewise.
50265         * m4/strcase.m4 (gl_PREREQ_STRCASECMP): Likewise.
50266
50267 2005-09-25  Jim Meyering  <jim@meyering.net>
50268
50269         * modules/inet_ntop (Depends-on): Add socklen, since inet_ntop.c
50270         also uses socklen_t.
50271
50272 2005-09-24  Paul Eggert  <eggert@cs.ucla.edu>
50273
50274         * lib/utimens.c (ENOSYS): Define if not already defined.
50275         (futimens): Support having a null PATH if the file descriptor
50276         is nonnegative.
50277
50278         * lib/regex_internal.h (__GNUC_PREREQ, always_inline, inline, pure):
50279         Remove.
50280         (__attribute): Define to empty unless GCC 3.1 or later.
50281         This works around a core dump on OpenBSD 3.4, which has GCC
50282         2.95.3, which dumps core when given __attribute__(()).  It also
50283         simplifies other tests, since we really don't want to bother with
50284         worrying about which ancient version of GCC supported what.
50285         Original problem reported by Yoann Vandoorselaere, with part of
50286         the fix suggested by Derek Price.
50287
50288 2005-09-24  Jim Meyering  <jim@meyering.net>
50289
50290         * lib/verify.h (verify_type__): Use `unsigned int' as the bitfield type
50291         so we can once again use a positive bitfield width of 1 -- now we
50292         don't have to explain why we were using a bitfield width of 2.
50293
50294 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
50295
50296         * m4/regex.m4 (gl_REGEX): If replacing, define regcomp to rpl_regcomp,
50297         and similarly for the other external symbols.  Problem reported
50298         by James Gallager.
50299
50300         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Catch Sun Studio 10u1 on Linux
50301         bug reported by Jim Meyering.
50302
50303         * m4/utimens.m4 (gl_UTIMENS): Check for futimesat.
50304         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Undo previous change;
50305         not needed, since socklen is a prerequisite module.
50306
50307 2005-09-23  Paul Eggert  <eggert@cs.ucla.edu>
50308
50309         * lib/getaddrinfo.c [HAVE_NETINET_IN_H]: Include <netinet/in.h>.
50310         Problem reported by Eric Blake.
50311         (getaddrinfo): Initialize se so that it's not garbage.
50312         Redo internal storage allocation so that it doesn't make unportable
50313         assumptions about alignment.
50314         Fix a memory leak.
50315
50316         * lib/utimens.c (futimens): Use futimesat if available.
50317         Prefer it to futimes since it doesn't have the futimes bug.
50318
50319         * lib/verify.h (GL_CONCAT0, GL_CONCAT): Remove.
50320         (verify): Don't use the __LINE__ trick, as it doesn't work in general.
50321         Instead, declare a function that returns a pointer to an array,
50322         and use verify_type__ to declare the size of the array.
50323         Problem and germ of a solution reported by Bruno Haible.
50324         (verify_type__): Use 2, not 1, for bitfield size, to avoid
50325         a warning with Irix 6.5 cc.  Problem reported by Bruno Haible.
50326
50327 2005-09-23  Jim Meyering  <jim@meyering.net>
50328
50329         Sync from coreutils.
50330         Correct build failure (socklen_t not defined) on at least
50331         mips-sgi-irix6.5 and alphaev67-dec-osf5.1.
50332         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Require gl_SOCKLEN_T.
50333
50334 2005-09-23  Jim Meyering  <jim@meyering.net>
50335
50336         * modules/getaddrinfo (Depends-on): Add socklen.
50337
50338 2005-09-23  Bruno Haible  <bruno@clisp.org>
50339
50340         * tests/test-verify.c: New file.
50341
50342 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
50343
50344         Sync from coreutils.
50345
50346         * modules/argmatch (Depends-on): Add verify.
50347         * modules/getloadavg (Depends-on): Depend on fcntl-safer, not
50348         unistd-safer.
50349         * modules/save-cwd (Depends-on): Likewise.
50350
50351         * modules/openat (Files): Add lib/openat-die.c.
50352         (Depends-on): Remove error, exitfail.
50353         Add dirname.
50354
50355         * modules/verify: New file.
50356         * MODULES.html.sh (Diagnostics <assert.h>): New section,
50357         with "verify" module.
50358
50359 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
50360
50361         Sync from coreutils.
50362
50363         * m4/backupfile.m4, calloc.m4, chown.m4, cloexec.m4, dup2.m4:
50364         * m4/fileblocks.m4, free.m4, ftruncate.m4, getcwd.m4, getpagesize.m4:
50365         * m4/getugroups.m4, group-member.m4, idcache.m4, link-follow.m4:
50366         * m4/mkstemp.m4, mktime.m4, mountlist.m4, nanosleep.m4, pathmax.m4:
50367         * m4/physmem.m4, posixver.m4, putenv.m4, safe-read.m4, same.m4:
50368         * m4/save-cwd.m4, stdio-safer.m4, unistd-safer.m4, unlinkdir.m4:
50369         * m4/userspec.m4, xgetcwd.m4, xreadlink.m4:
50370         Don't bother checking for string.h, stdlib.h, unistd.h.
50371         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't require
50372         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK; that's now the lstat
50373         module's job.
50374         * m4/jm-macros.m4 (gl_MACROS): Likewise.
50375         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_LSTAT.
50376
50377         * m4/getdate.m4 (gl_C_COMPOUND_LITERALS): New macro.
50378         (gl_GETDATE): Use it.
50379
50380         * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Don't bother checking for unistd.h.
50381
50382 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
50383
50384         Sync from coreutils.
50385
50386         * lib/.cppi-disable: Add regcomp.c, regex_internal.c, regex_internal.h,
50387         stat-time.h.
50388         * lib/argmatch.h: Include verify.h
50389         (ARGMATCH_VERIFY): Use verify rather than rolling our own.
50390         (ARGMATCH_ASSERT): Remove; unused.
50391         * lib/canonicalize.c: Assume STDC_HEADERS.
50392         * lib/exclude.c: Include "strcase.h".
50393         * lib/regex_internal.h [!defined _LIBC]: Likewise.
50394         * lib/getusershell.c: Include stdio--.h rather than stdio.h
50395         and stdio-safer.h.
50396         (getusershell): Call fopen, not fopen_safer.
50397         * lib/save-cwd.c: Include fcntl--.h rather than fcntl.h.
50398         Do not include unistd-safer.h.
50399         (save_cwd): Don't call fd_safer; no longer needed
50400         now that we include fcntl--.h.
50401
50402         * lib/getdate.y (relative_time): New type.
50403         (RELATIVE_TIME_0): New constant.
50404         (parser_control): Use relative_time instead of doing it ourselves.
50405         (%union): Add new relative_time rel member.
50406         (tYEAR_UNIT, tMONTH_UNIT, tHOUR_UNIT, tMINUTE_UNIT, tSEC_UNIT):
50407         Now typeless.
50408         (relunit, relunit_snumber): Now of type rel.
50409         (zone, rel, relunit, get_date): Adjust to above changes.
50410
50411         * lib/getloadavg.c: Include fcntl--.h rather than fcntl.h.
50412         Do not include unistd-safer.h.
50413         (getloadavg): Don't call fd_safer; no longer needed
50414         now that we include fcntl--.h.
50415
50416         * lib/mkdir-p.c (ENOSYS): Define to EEXIST if not defined.
50417         (make_dir_parents): Treat ENOSYS like EEXIST.
50418
50419         Improve quality of diagnostics on restore_cwd failure.
50420         * lib/mkdir-p.h (make_dir): Remove.  All uses replaced by mkdir.
50421         (make_dir_parents): Last arg is now int * (for errno), not bool *.
50422         * lib/mkdir-p.c (make_dir, make_dir_parents): Likewise.
50423         Rewrite "mkdir -p" algorithm to avoid the need for "stat"
50424         each time through the loop.  Do not diagnose restore_cwd failure;
50425         that is the caller's job (and perhaps the caller does not care).
50426
50427         * lib/mkdir-p.c (CLEANUP_CWD, CLEANUP): Remove.
50428         (make_dir_parents): Revamp to avoid need for CLEANUP_CWD, CLEANUP.
50429         If the file already exists but is not a directory, don't bother
50430         to try to make its parents.
50431         Close potential file descriptor leak if we can't chdir("/") (!).
50432         Don't always return true if chdir($PWD) fails; return true only
50433         if the requested action was done successfully (except for the
50434         chdir($PWD)).
50435         Don't log final directory unless we actually made it.
50436         Refactor to avoid duplicate code to fix up permissions.
50437         Don't attempt to fix up parent permissions if chdir($PWD) fails.
50438
50439         * lib/strftime.c (my_strftime): Rewrite the previous change slightly,
50440         to make it a bit faster and (I hope) clearer.
50441         * lib/strftime.c (my_strftime): Add support for %:z, %::z, %:::z.
50442         Fix bug in formats like %2N.
50443
50444         * lib/verify.h: New file.
50445
50446 2005-09-22  Paul Eggert  <eggert@cs.ucla.edu>
50447
50448         Sync from coreutils.
50449         * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO): Check for netinet/in.h.
50450
50451 2005-09-22  Jim Meyering  <jim@meyering.net>
50452
50453         Sync from coreutils.
50454
50455         * m4/lstat.m4 (gl_FUNC_LSTAT):
50456         Use AC_LIBSOURCES to require lstat.c and lstat.h.
50457         Remove obsolete comment.
50458         * m4/xreadlink.m4: Use AC_LIBSOURCES and AC_LIBOBJ.
50459         * m4/xstrtod.m4: Likewise.
50460
50461         * m4/openat.m4 (gl_FUNC_OPENAT): Add openat-die.c.
50462
50463 2005-09-22  Jim Meyering  <jim@meyering.net>
50464
50465         Sync from coreutils.
50466
50467         * lib/backupfile.c: Use ARGMATCH_VERIFY, just in case.
50468
50469         * lib/posixtm.c (posixtime) [lint]: Initialize *all* of tm0, not just
50470         the .tm_year member, since otherwise gcc-4.0 would now warn about
50471         tm_zone, tm_gmtoff, tm_isdst, tm_yday, tm_wday.
50472
50473         * lib/quotearg.c (quotearg_n_options): Change code to be suboptimal, in
50474         order to avoid an unsuppressible warning from gcc on 64-bit systems.
50475
50476         * lib/getdate.y (get_date): Undo part of the 2005-04-04 change, so that
50477         the command "date -d'2005-03-27 +1 day'" succeeds once again, even
50478         when run in a time zone for which daylight savings time is in effect
50479         for the starting date.
50480
50481         * lib/mkdir-p.c (make_dir_parents): Don't let a failed chdir($PWD)
50482         stop us from restricting permissions of just-created absolute-named
50483         directories.
50484         * lib/mkdir-p.c (CLEANUP_CWD): Return *true*, not false when failing
50485         to restore initial working directory.
50486         * lib/mkdir-p.c (make_dir_parents): New parameter:
50487         different_working_dir, to tell caller if/when we change the working
50488         directory and are unable to return to the initial one.
50489         * lib/mkdir-p.h (make_dir_parents): Update prototype.
50490         * lib/mkdir-p.c (CLEANUP_CWD): Change one more `return 1' to
50491         `return false'.  This fixes a bug introduced on 2004-07-30.
50492
50493         * lib/openat.c (fdopendir): Be sure to close the supplied
50494         file descriptor before returning.  This makes our replacement
50495         implementation a little closer to Solaris's, where fdopendir
50496         ties the file descriptor to the returned DIR* pointer.
50497         * lib/openat.c (unlinkat): New function.
50498         * lib/openat.h (unlinkat): Add prototype.
50499         * lib/openat-die.c (openat_save_fail): Rename from openat_save_die.
50500         (openat_restore_fail): Rename from openat_restore_die.
50501         * lib/openat.c, openat.h: Reflect s/_die/_fail/ renaming.
50502
50503         Provide an alternative to exiting immediately upon save_cwd or
50504         restore_cwd failure.  Now, an application can arrange e.g.,
50505         to perform a longjump in that case.
50506         * lib/openat.c: Include dirname.h.
50507         Use IS_ABSOLUTE_FILE_NAME rather than testing for leading slash.
50508         (rpl_openat, fdopendir, fstatat): Call openat_save_die
50509         and openat_restore_die rather than calling error directly.
50510         Don't include "error.h" or "exitfail.h"; they're no longer needed.
50511
50512         * lib/openat-die.c (openat_save_die, openat_restore_die): New file.
50513         * lib/openat.h (openat_save_die, openat_restore_die): Declare and
50514         define.
50515
50516         * lib/strftime.c [FPRINTFTIME] (fprintftime): Provide a new interface:
50517         size_t fprintftime (FILE *fp, char const *fmt, struct tm const *tm,
50518                             int utc, int nanoseconds);
50519         Background:
50520         date should not have to allocate a megabyte of virtual memory to
50521         handle a format argument like +%1048575T.  When implemented with
50522         strftime, it must allocate such a buffer, use strftime to fill it
50523         in, print it, then free it.
50524         With fprintftime, it simply prints everything and exits.
50525         With no need for memory allocation, that's one fewer way to fail.
50526         * lib/strftime.c (my_strftime): Parse the colons of %:::z *after* the
50527         optional field width, not before, so we accept %9:z, not %:9z.
50528         (my_strftime): Be sure to use L_('x') for literals.
50529
50530         * lib/backupfile.c, lib/canon-host.c, lib/canonicalize.c, lib/chown.c:
50531         * lib/cloexec.c, lib/dup-safer.c, lib/dup2.c, lib/euidaccess.c:
50532         * lib/fd-safer.c, lib/fileblocks.c, lib/fopen-safer.c, lib/fsusage.c:
50533         * lib/ftruncate.c, lib/getcwd.c, lib/getcwd.h, lib/getloadavg.c:
50534         * lib/getopt_.h, lib/getpagesize.h, lib/getugroups.c:
50535         * lib/group-member.c, lib/human.h, lib/idcache.c, lib/mkdir-p.c:
50536         * lib/mountlist.c, lib/nanosleep.c, lib/pathmax.h, lib/physmem.c:
50537         * lib/posixver.c, lib/putenv.c, lib/raise.c, lib/safe-read.c:
50538         * lib/same.c, lib/save-cwd.c, lib/setenv.c, lib/settime.c:
50539         * lib/tempname.c, lib/unlinkdir.c, lib/unsetenv.c, lib/userspec.c:
50540         * lib/xgethostname.c, lib/xreadlink.c:
50541         Assume HAVE_UNISTD_H, i.e., include <unistd.h> unconditionally.
50542
50543         * lib/chown.c, lib/cloexec.c, lib/dup-safer.c, lib/dup2.c:
50544         * lib/fsusage.c, lib/getcwd.c, lib/getloadavg.c, lib/mountlist.c:
50545         * lib/openat.h, lib/save-cwd.c, lib/tempname.c:
50546         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
50547         and don't include <sys/file.h>).
50548
50549 2005-09-22  Eric Blake  <ebb9@byu.net>  (tiny change)
50550
50551         Sync from coreutils.
50552
50553         * lib/getloadavg.c (getloadavg) [__CYGWIN__]: Port to cygwin.
50554         [__linux__]: Allocate a big enough buffer for /proc/loadavg.
50555         [!LDAV_DONE]: Avoid unused variable warning.
50556
50557 2005-09-21  Bruno Haible  <bruno@clisp.org>
50558
50559         * lib/unicodeio.h (unicode_to_mb): New declaration.
50560
50561 2005-09-20  Derek Price  <derek@ximbiot.com>
50562
50563         * lib/getaddrinfo.c: Don't include <netdb.h> included from
50564         getaddrinfo.h.
50565
50566 2005-09-20  Bruno Haible  <bruno@clisp.org>
50567
50568         * gnulib-tool: Remove trailing slashes from the values specified for
50569         --source-base, --m4-base, --tests-base, --aux-dir.
50570         Suggested by Simon Josefsson <jas@extundo.com>.
50571
50572 2005-09-20  Bruno Haible  <bruno@clisp.org>
50573
50574         * gnulib-tool (func_all_modules, func_modules_transitive_closure,
50575         func_modules_to_filelist, func_import, func_create_testdir): Make all
50576         sorting results locale-independent, so that gnulib-cache.m4 doesn't
50577         change when gnulib-tool is invoked in a different locale.
50578
50579 2005-09-19  Simon Josefsson  <jas@extundo.com>
50580
50581         * m4/socklen.m4: Fix typo.
50582
50583 2005-09-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
50584
50585         Use a consistent style for including <config.h>.
50586         * lib/__fpending.c, lib/acl.c, lib/argmatch.c, lib/argp-help.c,
50587         lib/argp-parse.c, lib/argp-pvh.c, lib/backupfile.c, lib/basename.c,
50588         lib/c-stack.c, lib/calloc.c, lib/check-version.c, lib/cloexec.c,
50589         lib/closeout.c, lib/copy-file.c, lib/creat-safer.c, lib/cycle-check.c,
50590         lib/dirfd.c, lib/dirname.c, lib/dup-safer.c, lib/dup2.c,
50591         lib/euidaccess.c, lib/exclude.c, lib/exitfail.c, lib/fatal-signal.c,
50592         lib/fd-safer.c, lib/file-type.c, lib/fileblocks.c, lib/filemode.c,
50593         lib/filenamecat.c, lib/findprog.c, lib/fnmatch.c, lib/fopen-safer.c,
50594         lib/free.c, lib/fsusage.c, lib/ftruncate.c, lib/full-write.c,
50595         lib/fwriteerror.c, lib/getaddrinfo.c, lib/getcwd.c, lib/getdelim.c,
50596         lib/getline.c, lib/getlogin_r.c, lib/getndelim2.c, lib/getnline.c,
50597         lib/getopt1.c, lib/getpass.c, lib/group-member.c, lib/hard-locale.c,
50598         lib/hash-pjw.c, lib/hash.c, lib/human.c, lib/idcache.c,
50599         lib/inet_ntop.c, lib/isdir.c, lib/long-options.c, lib/malloc.c,
50600         lib/memcasecmp.c, lib/memcmp.c, lib/memcoll.c, lib/memcpy.c,
50601         lib/memmove.c, lib/mkdir-p.c, lib/modechange.c, lib/mountlist.c,
50602         lib/open-safer.c, lib/physmem.c, lib/pipe-safer.c, lib/pipe.c,
50603         lib/poll.c, lib/posixver.c, lib/progname.c, lib/progreloc.c,
50604         lib/putenv.c, lib/quote.c, lib/quotearg.c, lib/readline.c,
50605         lib/readlink.c, lib/realloc.c, lib/regex.c, lib/rename.c, lib/rmdir.c,
50606         lib/rpmatch.c, lib/safe-read.c, lib/same.c, lib/save-cwd.c,
50607         lib/savedir.c, lib/sig2str.c, lib/strcspn.c, lib/strerror.c,
50608         lib/stripslash.c, lib/strncasecmp.c, lib/strndup.c, lib/strnlen.c,
50609         lib/strnlen1.c, lib/strsep.c, lib/strstr.c, lib/strtod.c,
50610         lib/strtoimax.c, lib/strtol.c, lib/strverscmp.c, lib/tempname.c,
50611         lib/time_r.c, lib/userspec.c, lib/utimecmp.c, lib/version-etc-fsf.c,
50612         lib/version-etc.c, lib/wait-process.c, lib/xalloc-die.c, lib/xgetcwd.c,
50613         lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c, lib/xreadlink.c,
50614         lib/xsetenv.c, lib/xstrndup.c, lib/xstrtoimax.c, lib/xstrtol.c,
50615         lib/xstrtoumax.c, lib/yesno.c:
50616         Standardize inclusion of config.h.
50617         * lib/__fpending.h, lib/dirfd.h, lib/getdate.h, lib/human.h,
50618         lib/inttostr.h:  Removed inclusion of config.h from header files.
50619         * lib/inttostr.c:  Adjusted in-tree users.
50620         * lib/timespec.h: Remove superfluous warning to include config.h.
50621         * lib/atexit.c, lib/chdir-long.c, lib/chown.c, lib/fchown-stub.c,
50622         lib/getgroups.c, lib/gettimeofday.c, lib/lchown.c, lib/lstat.c,
50623         lib/mkdir.c, lib/mkstemp.c, lib/nanosleep.c, lib/openat.c, lib/raise.c,
50624         lib/readtokens0.c, lib/readutmp.c, lib/unlinkdir.c: Guard inclusion of
50625         config.h with HAVE_CONFIG_H.
50626
50627 2005-09-19  Jim Meyering  <jim@meyering.net>
50628
50629         * modules/pathmax (License): Change to LGPL.
50630
50631 2005-09-19  Derek Price  <derek@ximbiot.com>
50632
50633         * config/srclist.txt: glibc's glob.h is now in lib/glob-libc.h.
50634
50635 2005-09-19  Bruno Haible  <bruno@clisp.org>
50636
50637         * gnulib-tool (import): Provide default for --tests-base.
50638
50639 2005-09-19  Bruno Haible  <bruno@clisp.org>
50640
50641         * doc/quote.texi: New file, extracted from gnulib.texi.
50642         * doc/ctime.texi: New file, extracted from gnulib.texi.
50643         * doc/inet_ntoa.texi: New file, extracted from gnulib.texi.
50644         * doc/gnulib-tool.texi: New file, extracted from gnulib.texi.
50645         * doc/gnulib.texi: Include them.
50646
50647 2005-09-18  Bruno Haible  <bruno@clisp.org>
50648
50649         Portability fix.
50650         * gnulib-tool (func_readlink): New function.
50651         (func_ln_if_changed): Use it.
50652
50653 2005-09-18  Bruno Haible  <bruno@clisp.org>
50654
50655         * gnulib-tool: Support --with-tests also with --import.
50656         (func_emit_tests_Makefile_am): Use variables $m4base and $testsbase.
50657         (func_import): Use variables $testsbase and $inctests. Emit a
50658         gl_TESTS_BASE form into gnulib-cache.m4. Create $testsbase/Makefile.am.
50659         Remind the user to add AC_CONFIG_FILES($testsdir/Makefile) and
50660         SUBDIRS += $testsdir.
50661         (func_create_testdir): Update.
50662
50663 2005-09-18  Bruno Haible  <bruno@clisp.org>
50664
50665         * gnulib-tool: Revise --dry-run implementation. Use variable $doit
50666         instead of $dry_run.
50667         (func_cp_if_changed, func_mv_if_changed): Remove functions.
50668         (func_ln_if_changed): Don't handle dry-run here.
50669         (func_import): In dry-run mode, detect more precisely which actions
50670         would be performed, and don't use "...ing" verbs.
50671
50672 2005-09-18  Bruno Haible  <bruno@clisp.org>
50673
50674         * gnulib-tool (func_tmpdir): New function, taken from GNU gettextize.
50675         (func_import): Use join on two temporary files instead of three nested
50676         loops, in order to determine which files are new or old.
50677
50678 2005-09-18  Bruno Haible  <bruno@clisp.org>
50679
50680         * gnulib-tool (func_import): Comment out code that spits out the
50681         new files with --dry-run.
50682
50683 2005-09-18  Bruno Haible  <bruno@clisp.org>
50684
50685         * doc/gnulib.texi (Invoking gnulib-tool): 50% rewritten.
50686
50687 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
50688
50689         * lib/stat-time.h: New file.
50690         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP, ATIME_CMP, CTIME_CMP):
50691         (MTIME_CMP, TIMESPEC_NS): Remove.  Now done by stat-time.h,
50692         in a different way.
50693         (timespec_cmp): New function.
50694         * lib/utimecmp.c: Include stat-time.h.
50695         (SYSCALL_RESOLUTION): Depend on whether various struct stat
50696         members exist, not on the obsolescent ST_MTIM_NSEC.
50697         (utimecmp): Use the new stat-time functions rater than TIMESPEC_NS.
50698
50699 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
50700
50701         * config/srclist.txt: Remove glibc bug 1033 and uncomment mktime.c.
50702
50703 2005-09-16  Paul Eggert  <eggert@cs.ucla.edu>
50704
50705         * MODULES.html.sh (File system functions): Add stat-time.
50706         * modules/stat-time: New file.
50707         * modules/timespec (Files): Remove m4/st_mtim.m4; this
50708         is now done in a different way, by the stat-time module.
50709         * modules/utimecmp (Depends-on): Add stat-time.
50710
50711 2005-09-15  Paul Eggert  <eggert@cs.ucla.edu>
50712
50713         * m4/st_mtim.m4: Remove.  Superseded by...
50714         * m4/stat-time.m4: New file.
50715         * m4/timespec.m4 (gl_TIMESPEC): Require AC_C_INLINE.
50716         Do not invoke AC_STRUCT_ST_MTIM_NSEC; no longer needed.
50717
50718 2005-09-15  Derek Price  <derek@ximbiot.com>
50719
50720         * m4/strstr.m4 (gl_FUNC_STRSTR): Don't define strstr here.
50721
50722 2005-09-15  Derek Price  <derek@ximbiot.com>
50723
50724         * lib/regex_internal.h: Blank `pure' for GNUC < 3.
50725         * lib/regex_internal.c: Ditto, using this...
50726         (__GNUC_PREREQ): ...new macro.
50727         * lib/regcomp.c, regexec.c: Blank `always_inline' for GNUC < 3.1
50728         using...
50729         (__GNUC_PREREQ): ...this new macro.
50730
50731         * lib/strstr.h: Include string.h. Define strstr as a macro here.
50732
50733 2005-09-15  Derek Price  <derek@ximbiot.com>
50734             Paul Eggert  <eggert@cs.ucla.edu>
50735
50736         * lib/regcomp.c, regexec.c, regex_internal.c: Back out previous
50737         changes, consolidating in...
50738         * lib/regex_internal.h: ...this file.
50739
50740 2005-09-13  Jim Meyering  <jim@meyering.net>
50741
50742         * lib/canon-host.c: Filter through gnu indent and reword comments
50743         slightly.
50744         * lib/canon-host.h (ch_strerror_r): Tweak cpp indentation and spacing.
50745
50746 2005-09-13  Derek Price  <derek@ximbiot.com>
50747
50748         * lib/canon-host.c (canon_host_r): Set *cherror on memory allocation
50749         failure.
50750         Reported by Jim Meyering  <jim@meyering.net>.
50751
50752 2005-09-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
50753
50754         * lib/base64.c: Typo.
50755         (base64_encode): Put b64str in initialized data section.
50756
50757 2005-09-12  Paul Eggert  <eggert@cs.ucla.edu>
50758
50759         Merge glibc and coreutils changes into gnulib, plus a few
50760         extra fixes.
50761         * lib/md5.c: Use #error rather than a string.
50762         (CYCLIC): New macro, from glibc source.  Use it instead of rol.
50763         * lib/md5.h (__GNUC_PREREQ, __THROW): Define if not defined already.
50764         (__attribute__): Define to empty for non recent-GCC.
50765         (__md5_buffer, __md5_finish_ctx, __md5_init_ctx, __md5_process_block):
50766         (__md5_process_bytes, __md5_read_ctx, __md5_stream):
50767         Renamed from their non-__ counterparts, with new macros replacing
50768         them if not _LIBC.  Add __THROW attribute.
50769         (rol): Remove.
50770         (struct md5_ctx): Align buffer if using GCC.
50771         * lib/sha1.h (struct sha1_ctx): Likewise.
50772         * lib/sha1.c (SWAP): Renamed from the NOTSWAP.  All uses changed.
50773         The old name was backwards.
50774         (NOTSWAP): Remove; not used.
50775         (rol): New macro, moved here from md5.h.
50776         (sha1_process_block): Remove a FIXME that doesn't make sense.
50777
50778 2005-09-12  Derek Price  <derek@ximbiot.com>
50779
50780         Return usable errors from canon-host.
50781         * lib/canon-host.h: New file.
50782         * lib/canon-host.c (canon_host): Wrap...
50783         (canon_host_r): ...this new function, which now relies exclusively on
50784         getaddrinfo.
50785         (ch_strerror): New function.
50786         (last_cherror): New global.
50787         * lib/getaddrinfo.c: Move include of getaddrinfo.h first to test
50788         interface.
50789         (getaddrinfo): Add AI_CANONNAME functionality.  Don't do arithmetic on
50790         void *.
50791         (freeaddrinfo): Free ai->ai_canonname when set.
50792
50793 2005-09-12  Derek Price  <derek@ximbiot.com>
50794
50795         Make canon-host require getaddrinfo.
50796         * m4/canon-host.m4 (gl_CANON_HOST): Remove most dependencies.
50797         AC_LIBSOURCE canon-host.h.  Call...
50798         (gl_PREREQ_CANON_HOST): ...this new function, which requires
50799         gl_GETADDRINFO.
50800         * m4/getaddrinfo.m4 (gl_GETADDRINFO): Compile gai_strerror when needed.
50801
50802 2005-09-12  Derek Price  <derek@ximbiot.com>
50803
50804         * modules/canon-host: Add canon-host.h.  Depend on getaddrinfo.  Make
50805         LGPL.
50806         * modules/getaddrinfo: Add link to opengroup spec.  Depend on strdup.
50807
50808 2005-09-12  Derek Price  <derek@ximbiot.com>
50809
50810         * lib/gai_strerror.c: Include config.h when available.  Include
50811         getaddrinfo.h before other headers to test interface.
50812         Reported by Larry Jones <lawrence.jones@ugs.com>.
50813
50814 2005-09-12  Derek Price  <derek@ximbiot.com>
50815             Paul Eggert  <eggert@cs.ucla.edu>
50816
50817         * modules/glob (Files): Add glob-libc.h.
50818
50819 2005-09-12  Derek Price  <derek@ximbiot.com>
50820             Paul Eggert  <eggert@cs.ucla.edu>
50821
50822         * m4/glob.m4 (gl_GLOB_SUBSTITUTE): AC_LIBSOURCES for glob.c,
50823         glob_.h, glob-libc.h.
50824         (gl_PREREQ_GLOB): Remove _SYS_CDEFS_H hack; no longer needed.
50825
50826 2005-09-12  Derek Price  <derek@ximbiot.com>
50827             Paul Eggert  <eggert@cs.ucla.edu>
50828
50829         * lib/glob-libc.h: Renamed from glob_.h.  The new version is
50830         taken from libc's glob.h, except with '#ifdef __GLOB_GNULIB'
50831         protecting things that should be done only in gnulib contexts.
50832         * lib/glob_.h: New file, containing only the glob things needed for
50833         gnulib.
50834         (GLOB_PREFIX): Remove.  All uses changed to look for __GLOB_GNULIB.
50835         (__GLOB_CONCAT, __GLOB_XCONCAT, __GLOB_ID): Remove; no longer needed.
50836         (glob, globfree, glob_pattern_p): Now defined simply in terms of
50837         rpl_glob, rpl_globfree, rpl_glob_pattern_p.
50838         (__GLOB_GNULIB): New macro, to keep the glob.h changes clearer
50839         and to respect the namespace rules better.
50840
50841 2005-09-08  Simon Josefsson  <jas@extundo.com>
50842
50843         * modules/socklen: New file.
50844
50845 2005-09-08  Simon Josefsson  <jas@extundo.com>
50846
50847         * m4/socklen.m4: New file.
50848
50849 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
50850
50851         * modules/utimens (Files): Add m4/utimbuf.m4, since
50852         m4/utimens.m4 requires gl_CHECK_TYPE_STRUCT_UTIMBUF.
50853         Reported by Sergey Poznyakoff.
50854
50855 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
50856
50857         * lib/glob.c (glob, globfree, __glob_pattern_p): Use old-style function
50858         definitions, since that's the preferred style in glibc.
50859         Fix a minor spacing issue, and update copyright notice to match
50860         glibc's.
50861
50862 2005-09-08  Paul Eggert  <eggert@cs.ucla.edu>
50863
50864         * config/srclist.txt: Remove glibc bug 1061; it's been fixed.
50865
50866 2005-09-06  Simon Josefsson  <jas@extundo.com>
50867
50868         * lib/getpass.c (getpass): Fix typo, test for HAVE_TCSETATTR and not
50869         TCSETATTR.  Reported by Derek Price <derek@ximbiot.com>.
50870
50871 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
50872
50873         * lib/regex_internal.h (bitset_not): Add parens to avoid gcc -Wall
50874         warning.
50875
50876 2005-09-06  Paul Eggert  <eggert@cs.ucla.edu>
50877
50878         * config/srclist.txt: Add glibc bug 1302.
50879
50880 2005-09-05  Paul Eggert  <eggert@cs.ucla.edu>
50881
50882         Change bitset word type from unsigned int to unsigned long int,
50883         as this has better performance on typical 64-bit hosts.
50884         Port bitset code to hosts with unusual word sizes.
50885         * lib/regcomp.c (build_equiv_class, build_charclass, build_range_exp):
50886         (build_collating_symbol):
50887         Prefer bitset to re_bitset_ptr_t in prototypes, when the actual
50888         argument is a bitset.  This is merely a style issue, but it makes
50889         it clearer that an entire array is expected.
50890         (re_compile_fastmap_iter, init_dfa, init_word_char, optimize_subexps):
50891         * lib/regcomp.c (lower_subexp, parse_bracket_exp, built_charclass_op):
50892         Port to the case where bitset_word is not the same as unsigned int.
50893         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
50894         (bitset_not, bitset_merge, bitset_set_all, bitset_mask):
50895         Likewise.
50896         * lib/regexec.c (check_dst_limits_calc_pos_1,
50897         check_subexp_matching_top):
50898         (build_trtable, group_nodes_into_DFAstates):
50899         Likewise.
50900         * lib/regcomp.c (re_compile_fastmap_iter, utf8_sb_map, optimize_utf8):
50901         Don't assume that SBC_MAX is a multiple of BITSET_WORD_BITS.
50902         * lib/regex_internal.h (bitset_set_all, bitset_not): Likewise.
50903         * lib/regexec.c (group_nodes_into_DFAstates): Likewise.
50904         * lib/regcomp.c (utf8_sb_map): Don't assume UINT_MAX == 0xffffffff.
50905         * lib/regcomp.c (optimize_subexps, lower_subexp):
50906         Work even if bitset_word has holes in its bitwise representation.
50907         * lib/regex_internal.h (BITSET_WORD_BITS): Likewise.
50908         * lib/regexec.c (check_dst_limits_calc_pos_1,
50909         check_subexp_matching_top):
50910         Likewise.
50911         * lib/regex_internal.c (re_string_reconstruct):
50912         Don't assume UCHAR_MAX == 255.
50913         * lib/regex_internal.h (bitset_set_all): Likewise.
50914         * lib/regex_internal.h (BITSET_WORD_BITS): Renamed from UINT_BITS.
50915         All uses changed.
50916         (BITSET_WORDS): Renamed from BITSET_UINTS.  All uses changed.
50917         (bitset_word): New type, replacing 'unsigned int' for bitset uses.
50918         All uses changed.
50919         (BITSET_WORD_MAX): New macro.
50920         (bitset_set, bitset_clear, bitset_contain, bitset_empty):
50921         (bitset_set_all, bitset_copy):  Now inline functions, not macros.
50922         (bitset_empty, bitset_copy):
50923         Prefer sizeof (bitset) to multiplying it out ourselves.
50924         (bitset_not_merge): Remove; unused.
50925         (bitset_contain): Return bool, not unsigned int with one bit on.
50926         All callers changed.
50927         * lib/regexec.c (build_trtable): Don't assume bitset has no stricter
50928         alignment than re_node_set; do this by defining a new internal
50929         type struct dests_alloc and using it to allocate memory.
50930
50931 2005-09-05  Bruno Haible  <bruno@clisp.org>
50932
50933         * gnulib-tool (func_import): Fix comparison in handling of symbolic
50934         links.
50935
50936 2005-09-04  Martin Lambers  <marlam@marlam.de>  (tiny change)
50937
50938         * modules/size_max (Makefile.am): Add size_max.h
50939
50940 2005-09-04  Derek Price  <derek@ximbiot.com>
50941
50942         * gnulib-tool (func_import): Fix reversed $symbolic logic.
50943
50944 2005-09-03  Simon Josefsson  <jas@extundo.com>
50945
50946         * gnulib-tool: Fix typo.
50947
50948 2005-09-03  Simon Josefsson  <jas@extundo.com>
50949
50950         * config/srclist.txt: Add glibc bug 1293.
50951
50952 2005-09-03  Derek Price  <derek@ximbiot.com>
50953
50954         * m4/getlogin_r (gl_GETLOGIN_R): Fix cut & paste error.
50955         From Larry Jones <lawrence.jones@ugs.com>.
50956
50957 2005-09-02  Simon Josefsson  <jas@extundo.com>
50958
50959         * modules/socklen: New file.
50960
50961 2005-09-02  Simon Josefsson  <jas@extundo.com>
50962
50963         * modules/havelib: New module.
50964
50965         * modules/gettext, modules/iconv, modules/lock, modules/readline:
50966         Use havelib.
50967
50968 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
50969
50970         Check for arithmetic overflow when calculating sizes, to prevent
50971         some buffer-overflow issues.  These patches are conservative, in the
50972         sense that when I couldn't determine whether an overflow was possible,
50973         I inserted a run-time check.
50974         * lib/regex_internal.h (re_xmalloc, re_xrealloc, re_x2realloc): New
50975         macros.
50976         (SIZE_MAX) [!defined SIZE_MAX]: New macro.
50977         (re_alloc_oversized, re_x2alloc_oversized, re_xnmalloc):
50978         (re_xnrealloc, re_x2nrealloc): New inline functions.
50979         * lib/regcomp.c (init_dfa, analyze, build_range_exp,
50980         parse_bracket_exp):
50981         (build_equiv_class, build_charclass): Check for arithmetic overflow
50982         in size expression calculations.
50983         * lib/regex_internal.c (re_string_realloc_buffers):
50984         (build_wcs_upper_buffer, re_node_set_add_intersect):
50985         (re_node_set_init_union, re_node_set_insert, re_node_set_insert_last):
50986         (re_dfa_add_node, register_state): Likewise.
50987         * lib/regexec.c (re_search_stub, re_copy_regs, re_search_internal):
50988         (prune_impossible_nodes, push_fail_stack, set_regs, check_arrival):
50989         (build_trtable, extend_buffers, match_ctx_init, match_ctx_add_entry):
50990         (match_ctx_add_subtop, match_ctx_add_sublast): Likewise.
50991
50992 2005-09-02  Paul Eggert  <eggert@cs.ucla.edu>
50993
50994         * modules/inttostr (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
50995         m4/ulonglong.m4.  Problem reported by Martin Lambers.
50996
50997 2005-09-02  Bruno Haible  <bruno@clisp.org>
50998
50999         Support for lib vs. lib64 distinction on biarch platforms.
51000         * m4/lib-prefix.m4 (AC_LIB_PREPARE_MULTILIB): New macro.
51001         (AC_LIB_PREFIX): Require it. Use $acl_libdirstem instead of 'lib'.
51002         * m4/lib-link.m4 (AC_LIB_LINKFLAGS_BODY): Likewise.
51003
51004 2005-09-02  Bruno Haible  <bruno@clisp.org>
51005
51006         * gnulib-tool (import): In the other first-use case, provide defaults
51007         as well.
51008
51009 2005-09-02  Bruno Haible  <bruno@clisp.org>
51010
51011         * config/srclist.txt: lib-link.m4 and lib-prefix.m4 currently have
51012         patches not yet found in the latest gettext release.
51013
51014 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
51015
51016         * lib/glob.c (GET_LOGIN_NAME_MAX): Renamed from LOGIN_NAME_MAX,
51017         to avoid a collision with bits/local_lim.h in glibc.
51018         All uses changed.  Problem reported by Dmitry V. Levin in
51019         <http://sources.redhat.com/bugzilla/show_bug.cgi?id=1060>.
51020
51021         * lib/regex_internal.c (build_wcs_upper_buffer): Fix portability
51022         bugs in int versus size_t comparisons.
51023         (re_string_context_at): Fix bug where the code assumed that
51024         Idx is signed.
51025
51026         Use bool where appropriate.
51027         * lib/regcomp.c (re_set_fastmap): ICASE arg is bool, not int.
51028         All callers changed.
51029         (calc_eclosure_iter): Likewise, for ROOT arg.
51030         (parse_bracket_element): Likewise, for ACCEPT_HYPHEN arg.
51031         (build_charclass_op): Likewise, for NON_MATCH arg.
51032         * lib/regex_internal.c (re_string_allocate, re_string_construct):
51033         (re_string_construct_common): Likewise, for ICASE arg.
51034         * lib/regexec.c (re_search_2_stub, re_search_stub):
51035         Likewise, for RET_LEN arg.
51036         (check_matching): Likewise, for FL_LONGEST_MATCH arg.
51037         (set_regs): Likewise, for FL_BACKTRACK arg.
51038         * lib/regcomp.c (re_compile_fastmap_iter, optimize_utf8):
51039         (duplicate_node_closure, calc_inveclosure, calc_eclosure):
51040         (calc_eclosure_iter, parse_bracket_exp):
51041         Use bool for internal variables that are booleans.
51042         * lib/regexec.c (re_search_internal, check_matching,
51043         proceed_next_node):
51044         (set_regs, build_sifted_states, sift_states_bkref):
51045         (check_arrival_add_next_nodes, check_arrival_expand_ecl_sub):
51046         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
51047         (find_collation_sequence_value):
51048         Likewise.
51049         * lib/regex_internal.c (re_node_set_insert, re_node_set_insert_last):
51050         (re_node_set_compare):
51051         Return bool, not int. All callers changed.
51052         * lib/regexec.c (check_halt_node_context, check_dst_limits):
51053         (build_trtable, check_node_accept): Likewise.
51054         * lib/regex_internal.h: Include stdbool.h.
51055
51056         Fix bugs uncovered when converting to bool.
51057         * lib/regcomp.c (calc_eclosure_iter): Check for storage allocation
51058         failure instead of charging ahead blindly.
51059         * lib/regex_internal.c (register_state): Likewise.
51060         * lib/regexec.c (re_search_2_stub): Use simpler method than boolean
51061         for freeing internal storage.
51062         (group_nodes_into_DFA_states): Use unsigned int, not int, for
51063         bitset pieces used as boolean, to avoid undefined behavior
51064         on hosts that do int overflow checking.
51065
51066 2005-09-01  Paul Eggert  <eggert@cs.ucla.edu>
51067
51068         * config/srclist.txt: Add glibc bugs 1285-1287.
51069
51070 2005-09-01  Jim Meyering  <jim@meyering.net>
51071
51072         * m4/lchown.m4: Require gl_FUNC_CHOWN, for the definition of
51073         CHOWN_MODIFIES_SYMLINK, which is used by lchown.c.
51074         Require gl_STAT_MACROS, too.
51075
51076 2005-09-01  Bruno Haible  <bruno@clisp.org>
51077
51078         * gnulib-tool (import): In the first-use case, provide defaults.
51079
51080 2005-09-01  Bruno Haible  <bruno@clisp.org>
51081
51082         * gnulib-tool (func_import): Remove the .tmp files.
51083
51084 2005-09-01  Bruno Haible  <bruno@clisp.org>
51085
51086         * gnulib-tool (func_import): Fix handling of symbolic links.
51087
51088 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
51089
51090         On 64-bit hosts (where size_t is 64 bits and int is 32 bits), the
51091         old glibc regex code mishandles strings longer than 2**31 bytes.
51092         This patch fixes this when the regex code is used in gnulib
51093         (i.e., outside glibc).
51094
51095         This patch should not affect the use of the regex code inside
51096         glibc.  No doubt this problem also needs to be handled for glibc
51097         as well, but the result will be an incompatible change to the
51098         glibc ABI, and the old ABI will have to be supported too.  That
51099         can be the the subject for another patch.
51100
51101         * lib/regex.h (_REGEX_LARGE_OFFSETS): New feature-test macro,
51102         governing whether the rest of this patch is active.  By default,
51103         the macro is disabled and the patch has no effect.
51104         (regoff_t) [defined _REGEX_LARGE_OFFSETS]: Define to off_t, not int.
51105         (__re_idx_t, __re_size_t, __re_long_size_t): New types.
51106         (struct re_pattern_buffer, re_search, re_search_2, re_match):
51107         (re_match_2, re_set_registers): Use the new types.
51108         * lib/regex_internal.h (Idx, re_hashval_t): New types.
51109         (REG_MISSING, REG_ERROR, REG_VALID_INDEX, REG_VALID_NONZERO_INDEX):
51110         New macros.
51111         (re_node_set, re_charset_t, re_token_t, re_string_realloc_buffers):
51112         (re_string_context_at, bin_tree_t, re_dfastate_t):
51113         (struct re_state_table_entry, state_array_t, re_sub_match_last_t):
51114         (re_sub_match_top_t, re_match_context_t, re_sift_context_t):
51115         (struct re_fail_stack_ent_t, struct re_fail_stack_t, struct re_dfa_t):
51116         (re_string_char_size_at, re_string_wchar_at):
51117         (re_string_elem_size_at):
51118         Use the new types and macros to port to 64-bit hosts.
51119         Use unsigned types for internal values, so that the code
51120         mostly works even for arrays larger than SSIZE_MAX.
51121         * lib/regcomp.c (re_compile_internal, init_dfa, duplicate_node):
51122         (search_duplicated_node, calc_eclosure_iter, fetch_number):
51123         (parse_reg_exp, parse_branch, parse_expression, parse_sub_exp):
51124         (build_equiv_class, build_charclass, re_compile_fastmap_iter):
51125         (free_dfa_content, create_initial_state, optimize_utf8, analyze):
51126         (optimize_subexps, calc_first, link_nfa_nodes, duplicate_node_closure):
51127         (calc_inveclosure, parse_dup_op, build_range_exp):
51128         (build_collating_symbol, parse_bracket_exp, build_charclass_op):
51129         (fetch_number, create_token_tree, mark_opt_subexp):
51130         Likewise.
51131         * lib/regex_internal.c (re_string_construct_common,
51132         create_ci_newstate):
51133         (create_cd_newstate, re_string_allocate, re_string_construct):
51134         (re_string_realloc_buffers, build_wcs_upper_buffer):
51135         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
51136         (re_string_reconstruct, re_string_peek_byte_case):
51137         (re_string_fetch_byte_case, re_string_context_at):
51138         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
51139         (re_node_set_init_copy, re_node_set_add_intersect):
51140         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
51141         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
51142         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
51143         (re_acquire_state, re_acquire_state_context, register_state):
51144         Likewise.
51145         * lib/regex.c (match_ctx_init, match_ctx_add_entry,
51146         search_cur_bkref_entry):
51147         (match_ctx_add_subtop, match_ctx_add_sublast, sift_ctx_init):
51148         (re_search_internal, re_search_2_stub, re_search_stub)
51149         (re_copy_regs, check_matching, check_halt_state_context, update_regs):
51150         (push_fail_stack, sift_states_iter_mb, build_sifted_states):
51151         (update_cur_sifted_state, check_dst_limits):
51152         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
51153         (check_subexp_limits, sift_states_bkref, merge_state_array):
51154         (check_subexp_matching_top, get_subexp, get_subexp_sub):
51155         (find_subexp_node, check_arrival, check_arrival_add_next_nodes):
51156         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
51157         (expand_bkref_cache, check_node_accept_bytes):
51158         (group_nodes_into_DFAstates, check_node_accept, regexec, re_match):
51159         (re_search, re_match_2, re_search_2, prune_impossible_nodes):
51160         (acquire_init_state_context, check_halt_node_context):
51161         (proceed_next_node, pop_fail_stack, set_regs, free_fail_stack_return):
51162         (sift_states_backward, clean_state_log_if_needed):
51163         (sub_epsilon_src_nodes, add_epsilone_src_nodes, merge_state_with_log):
51164         (find_recover_state, transit_state_sb, transit_state_mb):
51165         (transit_state_bkref, build_trtable, match_ctx_clean):
51166         Likewise.
51167         * lib/regcomp.c (parse_dup_op): Add an extra test if Idx is unsigned,
51168         to work around an assumption that REG_MISSING is negative.
51169
51170         * lib/regcomp.c (re_comp) [defined _REGEX_RE_COMP || defined _LIBC]:
51171         (seek_collating_symbol_entry) [defined _LIBC]:
51172         (lookup_collation_sequence_value) [defined _LIBC]:
51173         (build_range_exp, build_collating_symbol) [defined _LIBC]:
51174         Use prototypes rather than old-style function definitions.
51175         * lib/regexec.c (re_exec) [defined _REGEX_RE_COMP || defined _LIBC]:
51176         (transit_state_sb) [0]:
51177         (find_collation_sequence_value) [defined _LIBC]: Likewise.
51178
51179         * lib/regexec.c (re_search_internal): Simplify update of rm_so and
51180         rm_eo.
51181
51182         * lib/regcomp.c (re_compile_fastmap_iter, init_dfa, init_word_char):
51183         (optimize_subexps, lower_subexp):
51184         Don't assume 1<<31 has defined behavior on hosts with 32-bit int,
51185         since the signed shift might overflow.  Use 1u<<31 instead.
51186         * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain):
51187         Likewise.
51188         * lib/regexec.c (check_dst_limits_calc_pos_1,
51189         check_subexp_matching_top): Likewise.
51190
51191         * lib/regcomp.c (optimize_subexps, lower_subexp):
51192         Use CHAR_BIT rather than 8, for clarity.
51193         * lib/regexec.c (check_dst_limits_calc_pos_1):
51194         (check_subexp_matching_top): Likewise.
51195         * lib/regcomp.c (init_dfa): Make table_size unsigned, so that we don't
51196         have to worry about portability issues when shifting it left.
51197         Remove no-longer-needed test for table_size > 0.
51198         * lib/regcomp.c (parse_sub_exp): Do not shift more bits than there are
51199         in a word, as the resulting behavior is undefined.
51200         * lib/regexec.c (check_dst_limits_calc_pos_1): Likewise;
51201         in one case, a <= should have been an <, and in another case the
51202         whole test was missing.
51203         * lib/regex_internal.h (BYTE_BITS): Remove.  All uses changed to
51204         the standard name CHAR_BIT.
51205         * lib/regexec.c (match_ctx_add_entry): Don't assume that ~0 == -1;
51206         this is not true on one's complement and signed-magnitude hosts.
51207
51208         * lib/regex_internal.h (re_sub_match_top_t): Remove unused member
51209         next_last_offset.
51210         (struct re_dfa_t): Remove unused member states_alloc.
51211         * lib/regcomp.c (init_dfa): Don't initialize unused members.
51212
51213 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
51214
51215         * m4/regex.m4 (gl_REGEX): Require AC_SYS_LARGEFILE, Define
51216         _REGEX_LARGE_OFFSETS).  Test for regoff_t/off_t bug in 64-bit
51217         and large-file glibc and in 32-bit large-file Solaris.
51218
51219 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
51220
51221         * lib/regex_internal.c (re_string_reconstruct): Don't assume buffer
51222         lengths fit in regoff_t; this isn't true if regoff_t is the same
51223         width as size_t.
51224         * lib/regex.c (re_search_internal): 5th arg is LAST_START
51225         (= START + RANGE) instead of RANGE.  This avoids overflow
51226         problems when regoff_t is the same width as size_t.
51227         All callers changed.
51228         (re_search_2_stub): Check for overflow when adding the
51229         sizes of the two strings.
51230         (re_search_stub): Check for overflow when adding START
51231         to RANGE; if it occurs, substitute the extreme value.
51232
51233 2005-08-31  Paul Eggert  <eggert@cs.ucla.edu>
51234
51235         * config/srclist.txt: Add glibc bugs 1273, 1278-1282, 1284.
51236
51237 2005-08-31  Jim Meyering  <jim@meyering.net>
51238
51239         * lib/regcomp.c (search_duplicated_node): Make first pointer arg
51240         a pointer-to-const.
51241         * lib/regex_internal.c (create_ci_newstate, create_cd_newstate):
51242         (register_state): Likewise.
51243         * lib/regexec.c (search_cur_bkref_entry, check_dst_limits):
51244         (check_dst_limits_calc_pos_1, check_dst_limits_calc_pos):
51245         (group_nodes_into_DFAstates): Likewise.
51246
51247 2005-08-31  Jim Meyering  <jim@meyering.net>
51248
51249         * check-module: Add a FIXME comment.
51250
51251 2005-08-31  Eric Blake  <ebb9@byu.net>
51252
51253         * modules/unistd-safer (Files): Add unistd--.h.
51254         * modules/stdio-safer (Files): Add stdio--.h.
51255
51256 2005-08-31  Derek Price  <derek@ximbiot.com>
51257
51258         * lib/getdelim.c (getdelim): Return EOF on EOF.
51259         Reported by Larry Jones <lawrence.jones@ugs.com>.
51260
51261 2005-08-31  Bruno Haible  <bruno@clisp.org>
51262
51263         Avoid unnecessary diffs in the generated lib/Makefile.am.
51264         * gnulib-tool (func_emit_lib_Makefile_am): Don't write the cmd into
51265         the generated files.
51266         (func_import): Don't set cmd.
51267
51268 2005-08-31  Bruno Haible  <bruno@clisp.org>
51269
51270         * lib/strstr.c: Include <stddef.h>, for NULL.
51271         * lib/strcasestr.c: Likewise.
51272         Reported by Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
51273
51274 2005-08-31  Bruno Haible  <bruno@clisp.org>
51275
51276         * gnulib-tool: New option --macro-prefix.
51277         (func_import): Use macro_prefix.
51278         (import): Handle option --macro-prefix.
51279
51280 2005-08-31  Bruno Haible  <bruno@clisp.org>
51281
51282         * gnulib-tool (import): Rename most ac_* variables to cached_*.
51283         Also use new variables cached_lgpl, cached_libtool.
51284
51285 2005-08-31  Bruno Haible  <bruno@clisp.org>
51286
51287         * gnulib-tool (func_import): Require AC_GNU_SOURCE etc. instead of
51288         always instantiating them.
51289
51290 2005-08-31  Bruno Haible  <bruno@clisp.org>
51291
51292         * gnulib-tool (func_import): Read the previous cached settings
51293         from gnulib-cache.m4 and gnulib-comp.m4. Remove files that were
51294         earlier added by gnulib but are now dropped. Warn when a gnulib file
51295         overwrites a non-gnulib file.
51296
51297 2005-08-31  Bruno Haible  <bruno@clisp.org>
51298
51299         * gnulib-tool (func_import): Generate two files gnulib-cache.m4 and
51300         gnulib-comp.m4 instead of a single gnulib.m4, to make it easy for
51301         projects that don't keep autogenerated files in CVS. Put into
51302         actioncmd only the specified modules, not the transitive closure.
51303
51304 2005-08-31  Bruno Haible  <bruno@clisp.org>
51305
51306         * gnulib-tool (func_import): Fix defaulting of $libname and $libtool.
51307         Create directories that shall be filled.
51308         (import): Don't look for gl_* macros in configure.ac. Recurse across
51309         all directories containing a gnulib-cache.m4 files, if meaningful.
51310
51311 2005-08-31  Bruno Haible  <bruno@clisp.org>
51312
51313         * gnulib-tool (func_import): Emit also a stub for gl_LIBTOOL.
51314         (import): Set seen_libtool when we see gl_LIBTOOL.
51315
51316 2005-08-31  Bruno Haible  <bruno@clisp.org>
51317
51318         * gnulib-tool (func_import): Also copy m4/gnulib-tool.m4. Omit
51319         declaration macro definitions from generated gnulib.m4.
51320
51321 2005-08-30  Oskar Liljeblad  <oskar@osk.mine.nu>
51322
51323         * lib/iconvme.h: Add prototype for iconv_alloc.
51324
51325 2005-08-29  Simon Josefsson  <jas@extundo.com>
51326
51327         * lib/iconvme.c: Fix errno.
51328
51329 2005-08-29  Bruno Haible  <bruno@clisp.org>
51330
51331         * gnulib-tool: Enclose all occurrences of $destdir in "...", so
51332         that it works when the directory contains spaces.
51333
51334 2005-08-29  Bruno Haible  <bruno@clisp.org>
51335
51336         * gnulib-tool (import): Avoid unnecessary spaces in $avoidlist.
51337
51338 2005-08-29  Bruno Haible  <bruno@clisp.org>
51339
51340         * gnulib-tool (func_import): Emit more comments into gnulib.m4.
51341         Emit more advice.
51342
51343 2005-08-29  Bruno Haible  <bruno@clisp.org>
51344         and Stepan Kasal  <kasal@ucw.cz>
51345
51346         * check-module: If more parameters are given, check each of them
51347         separately; add more exceptions, as noted by Jim Meyering.
51348         (check_module): New procedure.
51349         (%exempt_header): Now contains all exceptions.
51350
51351 2005-08-29  Ben Pfaff  <blp@cs.stanford.edu>
51352
51353         * modules/byteswap (Makefile.am): Fix rule to not assume GNU make.
51354
51355 2005-08-29  Oskar Liljeblad  <oskar@osk.mine.nu>
51356
51357         * lib/iconvme.c: Split iconv_string into iconv_alloc.
51358
51359 2005-08-28  Bruno Haible  <bruno@clisp.org>
51360
51361         * m4/gnulib-tool.m4: New file.
51362
51363 2005-08-27  Jim Meyering  <jim@meyering.net>
51364
51365         * modules/unistd-safer (Files): Add pipe-safer.c.
51366         * modules/fcntl-safer (Files): Add creat-safer.c.
51367
51368 2005-08-27  Jim Meyering  <jim@meyering.net>
51369
51370         * m4/stdlib-safer.m4: New file.  From coreutils.
51371         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Add stdio--.h.
51372         * m4/fcntl-safer.m4 (gl_FCNTL_SAFER): Add creat-safer.c to the
51373         AC_LIBSOURCES list and arrange to compile it via AC_LIBOBJ.
51374         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise, add pipe-safer.c.
51375         Add pipe-safer.c and unistd--.h to the AC_LIBSOURCES list.
51376
51377 2005-08-27  Jim Meyering  <jim@meyering.net>
51378
51379         * lib/fopen-safer.c: Merge minor changes from coreutils.
51380         * lib/dup-safer.c: Likewise.
51381         * lib/fd-safer.c: Likewise.
51382
51383         Merge from coreutils.
51384         * lib/stdio--.h: New file.
51385         * lib/stdlib--.h: New file.
51386         * lib/mkstemp-safer.c: New file.
51387
51388         GNU tar needs these.
51389         * lib/pipe-safer.c: New file.
51390         * lib/creat-safer.c: New file.
51391         * lib/fcntl--.h (creat): Define to creat_safer.
51392         * lib/fcntl-safer.h: Include <sys/types.h> and declare creat_safer.
51393         * lib/unistd--.h (pipe): Define to pipe_safer.
51394         * lib/unistd-safer.h: Declare pipe_safer.
51395
51396 2005-08-26  Simon Josefsson  <jas@extundo.com>
51397
51398         * lib/getpass.c: Use _WIN32 instead of WIN32, suggested by Bruno
51399         Haible <bruno@clisp.org>.
51400
51401 2005-08-26  Paul Eggert  <eggert@cs.ucla.edu>
51402
51403         * lib/regex_internal.h: Remove all references to
51404         RE_NO_INTERNAL_PROTOTYPES; no longer neeeded now that we assume C89
51405         or better.
51406         (bitset_not, bitset_merge, bitset_not_merge):
51407         (bitset_mask, re_string_allocate, re_string_construct):
51408         (re_string_reconstruct, re_string_destruct, re_string_elem_size_at):
51409         (re_string_char_size_at, re_string_wchar_at, re_string_peek_byte_case):
51410         (re_string_fetch_byte_case, re_node_set_alloc, re_node_set_init_1):
51411         (re_node_set_init_2, re_node_set_init_copy, re_node_set_add_intersect):
51412         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
51413         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
51414         (re_node_set_remove_at, re_dfa_add_node, re_acquire_state):
51415         (re_acquire_state_context):
51416         Remove unnecessary forward decls.
51417         (re_string_char_size_at, re_string_wchar_at, re_string_elem_size_at):
51418         Put __attribute at function definition,
51419         now that the function decl has been removed.
51420         * lib/regex_internal.c (re_string_peek_byte_case):
51421         (re_string_fetch_byte_case, re_node_set_compare, re_node_set_contains):
51422         Likewise.
51423
51424 2005-08-25  Stepan Kasal  <kasal@ucw.cz>
51425
51426         * m4/regex.m4: Add AC_PREREQ(2.50).
51427         (gl_REGEX): If --with-included-regex was given, skip the autodetection.
51428
51429 2005-08-25  Simon Josefsson  <jas@extundo.com>
51430
51431         * m4/getpass.m4: Check for termios.h, tcgetattr, tcsetattr, and
51432         __fsetlocking.
51433
51434 2005-08-25  Simon Josefsson  <jas@extundo.com>
51435
51436         * lib/getpass.c: Add WIN32 implementation.  Conditionalize use of
51437         termios.h, tcgetattr, tcsetattr and __fsetlocking.  Remove some
51438         GLIBC specific code.
51439
51440 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
51441
51442         Make regex safe for g++.  This fixes one real bug (an "err"
51443         that should have been "*err").  g++ problem reported by
51444         Sam Steingold.
51445         * lib/regex_internal.h (re_calloc): New macro, consistent with
51446         re_malloc etc.  All callers of calloc changed to use re_calloc.
51447         * lib/regex_internal.c (build_wcs_upper_buffer): Return reg_errcode_t,
51448         not int.  All callers changed.
51449         * lib/regcomp.c (re_compile_fastmap_iter): Don't use
51450         alloca (mb_cur_max); just use an array of size MB_LEN_MAX.
51451         * lib/regexec.c (push_fail_stack): Use re_realloc, not realloc.
51452         (find_recover_state): Change "err" to "*err"; this fixes what
51453         appears to be a real bug.
51454         (check_arrival_expand_ecl_sub): Be consistent about reg_errcode_t
51455         versus int.
51456
51457 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
51458
51459         * modules/regex (Depends-on): Add malloc, since the code
51460         assumes that !malloc(0) means failure.
51461
51462 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
51463
51464         * lib/regexec.c (set_regs): Don't alloca with an unbounded size.
51465
51466         alloca modernization/simplification for regex.
51467         * lib/regex.c: Remove portability cruft for alloca.  This no longer
51468         needs to be at the start of the file, and can be moved into
51469         regex_internal.h and simplified.
51470         * lib/regex_internal.h: Include <alloca.h>.
51471         (__libc_use_alloca) [!defined _LIBC]: New macro.
51472         * lib/regexec.c (build_trtable): Remove "#ifdef _LIBC", since the code
51473         now works outside glibc.
51474
51475 2005-08-25  Paul Eggert  <eggert@cs.ucla.edu>
51476
51477         * config/srclist.txt: Add glibc bugs 1241, 1245.
51478
51479 2005-08-25  Jim Meyering  <jim@meyering.net>
51480
51481         * lib/open-safer.c: Include <config.h>.
51482         Otherwise, we'd lose LARGEFILE support in any file using
51483         e.g. "fcntl--.h"
51484
51485 2005-08-25  Bruno Haible  <bruno@clisp.org>
51486
51487         * m4/minmax.m4: Require autoconf 2.52.
51488         (gl_MINMAX_IN_HEADER): Add comments. Use m4_pushdef/m4_popdef instead
51489         of define/undefine. Use AS_TR_SH and AS_TR_CPP as more robust
51490         alternatives of translit over the alphabet.
51491         Based on a patch from Stepan Kasal <kasal@ucw.cz>.
51492
51493 2005-08-24  Simon Josefsson  <jas@extundo.com>
51494
51495         * tests/test-getpass.c: New file.
51496
51497 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
51498
51499         * m4/regex.m4 (gl_REGEX): Use POSIX-compliant spellings when testing
51500         for GNU regex features.
51501
51502 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
51503
51504         * lib/regcomp.c (regerror): 2nd arg is 'restrict', as per POSIX.
51505         * lib/regex.h (regerror): Likewise.
51506
51507         * lib/regex.c: Do not include <sys/types.h>, as POSIX no longer
51508         requires this.  (The code never needed it.)
51509
51510         * lib/regcomp.c, regex_internal.c, regex_internal.h, regexec.c:
51511         All uses of recently-renamed identifiers changed to use the new,
51512         POSIX-compliant names.  The code will build and run just fine
51513         without these changes, but it's better to eat our own dog food
51514         and use the standard-conforming names.
51515
51516         * lib/regex.h: Fix a multitude of POSIX name space violations.
51517         These changes have an effect only for programs that define
51518         _POSIX_C_SOURCE, _POSIX_SOURCE, or _XOPEN_SOURCE; they
51519         do not change anything for programs compiled in the normal way.
51520         Also, there is no effect on the ABI.
51521
51522         (_REGEX_SOURCE): New macro.
51523         Do not include <stddef.h> if _XOPEN_SOURCE and VMS are both
51524         defined and _GNU_SOURCE is not; this fixes a name space violation.
51525
51526         Rename the following macros to obey POSIX requirements.
51527         The old names are still visible as macros if _REGEX_SOURCE is defined.
51528         (REG_BACKSLASH_ESCAPE_IN_LISTS): renamed from
51529         RE_BACKSLASH_ESCAPE_IN_LISTS.
51530         (REG_BK_PLUS_QM): renamed from RE_BK_PLUS_QM.
51531         (REG_CHAR_CLASSES): renamed from RE_CHAR_CLASSES.
51532         (REG_CONTEXT_INDEP_ANCHORS): renamed from RE_CONTEXT_INDEP_ANCHORS.
51533         (REG_CONTEXT_INDEP_OPS): renamed from RE_CONTEXT_INDEP_OPS.
51534         (REG_CONTEXT_INVALID_OPS): renamed from RE_CONTEXT_INVALID_OPS.
51535         (REG_DOT_NEWLINE): renamed from RE_DOT_NEWLINE.
51536         (REG_DOT_NOT_NULL): renamed from RE_DOT_NOT_NULL.
51537         (REG_HAT_LISTS_NOT_NEWLINE): renamed from RE_HAT_LISTS_NOT_NEWLINE.
51538         (REG_INTERVALS): renamed from RE_INTERVALS.
51539         (REG_LIMITED_OPS): renamed from RE_LIMITED_OPS.
51540         (REG_NEWLINE_ALT): renamed from RE_NEWLINE_ALT.
51541         (REG_NO_BK_BRACES): renamed from RE_NO_BK_BRACES.
51542         (REG_NO_BK_PARENS): renamed from RE_NO_BK_PARENS.
51543         (REG_NO_BK_REFS): renamed from RE_NO_BK_REFS.
51544         (REG_NO_BK_VBAR): renamed from RE_NO_BK_VBAR.
51545         (REG_NO_EMPTY_RANGES): renamed from RE_NO_EMPTY_RANGES.
51546         (REG_UNMATCHED_RIGHT_PAREN_ORD): renamed from
51547         RE_UNMATCHED_RIGHT_PAREN_ORD.
51548         (REG_NO_POSIX_BACKTRACKING): renamed from RE_NO_POSIX_BACKTRACKING.
51549         (REG_NO_GNU_OPS): renamed from RE_NO_GNU_OPS.
51550         (REG_DEBUG): renamed from RE_DEBUG.
51551         (REG_INVALID_INTERVAL_ORD): renamed from RE_INVALID_INTERVAL_ORD.
51552         (REG_IGNORE_CASE): renamed from RE_ICASE.  This renaming is a bit
51553         unusual, since we can't clash with the POSIX REG_ICASE.
51554         (REG_CARET_ANCHORS_HERE): renamed from RE_CARET_ANCHORS_HERE.
51555         (REG_CONTEXT_INVALID_DUP): renamed from RE_CONTEXT_INVALID_DUP.
51556         (REG_NO_SUB): renamed from RE_NO_SUB.
51557         (REG_SYNTAX_EMACS): renamed from RE_SYNTAX_EMACS.
51558         (REG_SYNTAX_AWK): renamed from RE_SYNTAX_AWK.
51559         (REG_SYNTAX_GNU_AWK): renamed from RE_SYNTAX_GNU_AWK.
51560         (REG_SYNTAX_POSIX_AWK): renamed from RE_SYNTAX_POSIX_AWK.
51561         (REG_SYNTAX_GREP): renamed from RE_SYNTAX_GREP.
51562         (REG_SYNTAX_EGREP): renamed from RE_SYNTAX_EGREP.
51563         (REG_SYNTAX_POSIX_EGREP): renamed from RE_SYNTAX_POSIX_EGREP.
51564         (REG_SYNTAX_ED): renamed from RE_SYNTAX_ED.
51565         (REG_SYNTAX_SED): renamed from RE_SYNTAX_SED.
51566         (_REG_SYNTAX_POSIX_COMMON): renamed from _RE_SYNTAX_POSIX_COMMON.
51567         (REG_SYNTAX_POSIX_BASIC): renamed from RE_SYNTAX_POSIX_BASIC.
51568         (REG_SYNTAX_POSIX_MINIMAL_BASIC): renamed from
51569         RE_SYNTAX_POSIX_MINIMAL_BASIC.
51570         (REG_SYNTAX_POSIX_EXTENDED): renamed from RE_SYNTAX_POSIX_EXTENDED.
51571         (REG_SYNTAX_POSIX_MINIMAL_EXTENDED): renamed from
51572         RE_SYNTAX_POSIX_MINIMAL_EXTENDED.
51573         (REG_DUP_MAX): renamed from RE_DUP_MAX.  No need to undef it.
51574         (REG_UNALLOCATED): Renamed from REGS_UNALLOCATED.
51575         (REG_REALLOCATE): Renamed from REGS_REALLOCATE.
51576         (REG_FIXED): Renamed from REGS_FIXED.
51577         (REG_NREGS): Renamed from RE_NREGS.
51578
51579         (REG_ICASE, REG_NEWLINE, REG_NOSUB): Do not depend on the values
51580         of other REG_* macros, since POSIX says the user is allowed to
51581         #undef these macros selectively.
51582
51583         (reg_errcode_t): Update comment stating what other tables need
51584         to be consistent.
51585
51586         Rename the following enum values to obey POSIX requirements.
51587         The old names are still visible as macros.
51588         (_REG_ENOSYS): Renamed from REG_ENOSYS.  Define even if _XOPEN_SOURCE
51589         is not defined, since GNU is supposed to be a superset of POSIX as
51590         much as possible, and since we want reg_errcode_t to be a signed
51591         type for implementation consistency.
51592         (_REG_NOERROR): Renamed from REG_NOERROR.
51593         (_REG_NOMATCH): Renamed from REG_NOMATCH.
51594         (_REG_BADPAT): Renamed from REG_BADPAT.
51595         (_REG_ECOLLATE): Renamed from REG_ECOLLATE.
51596         (_REG_ECTYPE): Renamed from REG_ECTYPE.
51597         (_REG_EESCAPE): Renamed from REG_EESCAPE.
51598         (_REG_ESUBREG): Renamed from REG_ESUBREG.
51599         (_REG_EBRACK): Renamed from REG_EBRACK.
51600         (_REG_EPAREN): Renamed from REG_EPAREN.
51601         (_REG_EBRACE): Renamed from REG_EBRACE.
51602         (_REG_BADBR): Renamed from REG_BADBR.
51603         (_REG_ERANGE): Renamed from REG_ERANGE.
51604         (_REG_ESPACE): Renamed from REG_ESPACE.
51605         (_REG_BADRPT): Renamed from REG_BADRPT.
51606         (_REG_EEND): Renamed from REG_EEND.
51607         (_REG_ESIZE): Renamed from REG_ESIZE.
51608         (_REG_ERPAREN): Renamed from REG_ERPAREN.
51609         (REG_ENOSYS, REG_NOERROR, REG_NOMATCH, REG_BADPAT, REG_ECOLLATE):
51610         (REG_ECTYPE, REG_EESCAPE, REG_ESUBREG, REG_EBRACK, REG_EPAREN):
51611         (REG_EBRACE, REG_BADBR, REG_ERANGE, REG_ESPACE, REG_BADRPT, REG_EEND):
51612         (REG_ESIZE, REG_ERPAREN): Now macros, not enum constants.
51613
51614         (_REG_RE_NAME, _REG_RM_NAME): New macros.
51615         (REG_TRANSLATE_TYPE): Renamed from RE_TRANSLATE_TYPE.  All uses
51616         changed.  But support the old name if the new one is not defined
51617         and if _REGEX_SOURCE.
51618
51619         Change the following member names in struct re_pattern_buffer.
51620         The old names are still supported if !_REGEX_SOURCE.
51621         The new names are always supported, regardless of _REGEX_SOURCE.
51622         (re_buffer): Renamed from buffer.
51623         (re_allocated): Renamed from allocated.
51624         (re_used): Renamed from used.
51625         (re_syntax): Renamed from syntax.
51626         (re_fastmap): Renamed from fastmap.
51627         (re_translate): Renamed from translate.
51628         (re_can_be_null): Renamed from can_be_null.
51629         (re_regs_allocated): Renamed from regs_allocated.
51630         (re_fastmap_accurate): Renamed from fastmap_accurate.
51631         (re_no_sub): Renamed from no_sub.
51632         (re_not_bol): Renamed from not_bol.
51633         (re_not_eol): Renamed from not_eol.
51634         (re_newline_anchor): Renamed from newline_anchor.
51635
51636         Change the following member names in struct re_registers.
51637         The old names are still supported if !_REGEX_SOURCE.
51638         The new names are always supported, regardless of _REGEX_SOURCE.
51639         (rm_num_regs): Renamed from num_regs.
51640         (rm_start): Renamed from start.
51641         (rm_end): Renamed from end.
51642
51643         (re_set_syntax, re_compile_pattern, re_compile_fastmap):
51644         (re_search, re_search_2, re_match, re_match_2, re_set_registers):
51645         Prepend __ to parameter names.
51646
51647         Undo yesterday's changes.
51648
51649 2005-08-24  Paul Eggert  <eggert@cs.ucla.edu>
51650
51651         * config/srclist.txt: Remove glibc bug 1233 and add 1236, which
51652         supersedes it. Add glibc bugs 1237, 1238, 1240.  Comment out
51653         lib/regex.c.
51654
51655 2005-08-24  Jim Meyering  <jim@meyering.net>
51656
51657         Sync from coreutils.
51658         * m4/fcntl-safer.m4: New file.
51659
51660         * m4/xgetcwd.m4: Use AC_LIBSOURCES and AC_LIBOBJ to indicate source
51661         and object files for this module.
51662
51663 2005-08-24  Jim Meyering  <jim@meyering.net>
51664
51665         Sync from coreutils.
51666         * lib/fcntl--.h, lib/fcntl-safer.h, lib/open-safer.c: New files.
51667
51668 2005-08-24  Jim Meyering  <jim@meyering.net>
51669
51670         * modules/xgetcwd (Makefile.am): Remove `lib_SOURCES += ...' line,
51671         now that xgetcwd.m4 requires xgetcwd.c and xgetcwd.h.
51672
51673 2005-08-24  Jim Meyering  <jim@meyering.net>
51674
51675         * modules/fcntl-safer: New module.
51676         * modules/fts (Depends-on): Add fcntl-safer.
51677         * MODULES.html.sh (File descriptor based Input/Output):
51678         Add fcntl-safer.
51679
51680 2005-08-24  Bruno Haible  <bruno@clisp.org>
51681
51682         Support for unit test modules.
51683         * modules/README: Mention tests modules.
51684         * modules/TEMPLATE-TESTS: New file.
51685         * gnulib-tool: New options --extract-tests-module, --with-tests and
51686         --tests-base (unused for the moment).
51687         (testsbase, inctests): New variables.
51688         (func_all_modules): Exclude TEMPLATE-TESTS and *-tests.
51689         (func_verify_module): Exclude TEMPLATE-TESTS.
51690         (func_verify_nontests_module, func_verify_tests_module): New functions.
51691         (func_get_dependencies): Add implicit dependency for tests modules.
51692         (func_get_tests_module): New function.
51693         (func_modules_transitive_closure): When --with-tests was specified,
51694         include the unit tests as well, unless explicitly avoided.
51695         (func_emit_lib_Makefile_am): Ignore the tests modules here.
51696         (func_emit_tests_Makefile_am): New function.
51697         (func_create_testdir): When --with-tests was specified, emit a
51698         tests/ directory.
51699         * MODULES.html.sh (Future developments): Update.
51700
51701 2005-08-24  Bruno Haible  <bruno@clisp.org>
51702
51703         * modules/tls-tests: New file.
51704         * tests/test-tls.c: New file, from GNU gettext.
51705
51706 2005-08-24  Bruno Haible  <bruno@clisp.org>
51707
51708         * modules/lock-tests: New file.
51709         * tests/test-lock.c: New file, from GNU gettext.
51710
51711 2005-08-24  Bruno Haible  <bruno@clisp.org>
51712
51713         * lib/lock.h: Add multiple inclusion guard.
51714         * lib/tls.h: Add multiple inclusion guard.
51715
51716 2005-08-24  Bruno Haible  <bruno@clisp.org>
51717
51718         * gnulib-tool: Add support for the --aux-dir option to
51719         --create-testdir, --create-megatestdir, --test, --megatest.
51720         (func_create_testdir, func_create_megatestdir): Optionally emit a
51721         AC_CONFIG_AUX_DIR directive.
51722         (create-testdir, create-megatestdir, test, megatest): Provide a
51723         default value for $auxdir.
51724
51725 2005-08-24  Bruno Haible  <bruno@clisp.org>
51726
51727         * gnulib-tool (import): Use compound statement instead of subshell
51728         where possible.
51729
51730 2005-08-24  Bruno Haible  <bruno@clisp.org>
51731
51732         * gnulib-tool (import): Change --aux-dir default to "build-aux".
51733
51734 2005-08-24  Bruno Haible  <bruno@clisp.org>
51735
51736         * gnulib-tool (func_version): Update.
51737
51738 2005-08-24  Bruno Haible  <bruno@clisp.org>
51739
51740         * gnulib-tool (func_import, func_create_testdir,
51741         func_create_megatestdir): Quote all autoconf macro arguments.
51742
51743 2005-08-24  Bruno Haible  <bruno@clisp.org>
51744
51745         * gnulib-tool (func_create_megatestdir): Call autoreconf without the
51746         option --force, because --force causes the aclocal.m4 of each
51747         subdirectory to be newer than the corresponding config.h.in.
51748
51749 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
51750
51751         * m4/regex.m4 (gl_INCLUDED_REGEX): Remove; no longer used.
51752         All contents moved to gl_REGEX.
51753         (gl_REGEX): Don't bother checking whether lib/regex.c exists;
51754         assume that it does.
51755
51756 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
51757
51758         * lib/regex.h (REG_NOSYS)
51759         [!defined _XOPEN_SOURCE && 200112L <= _POSIX_C_SOURCE]:
51760         Define, since POSIX requires it as of 2001.
51761         (_REG_ENOSYS)
51762         [! (defined _XOPEN_SOURCE || 200112L <= _POSIX_C_SOURCE)]:
51763         New private symbol, used to keep the enum signed in all cases.
51764         * lib/regex.h (RE_NO_EMPTY_RANGES): Fix doc bug reported by James
51765         Youngman in
51766         <http://lists.gnu.org/archive/html/bug-gnulib/2005-07/msg00132.html>.
51767
51768         * lib/regex_internal.c (re_string_skip_chars, register_state):
51769         (calc_state_hash):
51770         Remove forward decls; no longer needed now that we use prototypes.
51771         * lib/regexec.c (acquire_init_state_context, check_halt_node_context):
51772         (proceed_next_node, pop_fail_stack, sub_epsilon_src_nodes):
51773         (clean_state_log_if_needed): Likewise.
51774
51775 2005-08-23  Paul Eggert  <eggert@cs.ucla.edu>
51776
51777         * config/srclist.txt: Add glibc bugs 1231-1233.
51778
51779 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
51780
51781         Fix problems reported by Sam Steingold in
51782         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00007.html>.
51783         * lib/regexec.c (sift_states_bkref): Fix portability bug: the code
51784         assumed that reg_errcode_t is a signed type, which is not
51785         necessarily true if _XOPEN_SOURCE is not defined.
51786         * lib/regex_internal.c (calc_state_hash): Put 'inline' before type,
51787         since some compilers warn about it otherwise.
51788
51789 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
51790
51791         * lib/regcomp.c (create_initial_state): Remove duplicate decl.
51792         (init_word_char, create_initial_state, duplicate_node_closure):
51793         (fetch_token, peek_token_bracket, build_range_exp):
51794         (build_collating_symbol): Remove forward decls; no longer needed
51795         now that we use prototypes.
51796
51797         * lib/regcomp.c:
51798         (re_compile_pattern, re_set_syntax, re_compile_fastmap):
51799         (re_compile_fastmap_iter, regcomp, regerror, regfree):
51800         (re_compile_internal, init_dfa, init_word_char, free_workarea_compile):
51801         (create_initial_state, optimize_utf8, analyze, postorder, preorder):
51802         (optimize_subexps, lower_subexps, lower_subexp, calc_first, calc_next):
51803         (link_nfa_nodes, duplicate_node_closure, search_duplicated_node):
51804         (duplicate_node, calc_inveclosure, calc_eclosure, calc_eclosure_iter):
51805         (fetch_token, peek_token, peek_token_bracket, parse, parse_reg_exp):
51806         (parse_branch, parse_expression, parse_sub_exp, parse_dup_op):
51807         (build_range_exp, build_collating_symbol, parse_bracket_exp):
51808         (parse_bracket_element, parse_bracket_symbol, build_equiv_class):
51809         (build_charclass, build_charclass_op, fetch_number, create_tree):
51810         (create_token_tree, mark_opt_subexp, duplicate_tree):
51811         Use prototypes rather than old-style definitions.
51812
51813         * lib/regex_internal.c:
51814         (re_string_allocate, re_string_construct, re_string_realloc_buffers):
51815         (re_string_construct_common, build_wcs_buffer, build_wcs_upper_buffer):
51816         (re_string_skip_chars, build_upper_buffer, re_string_translate_buffer):
51817         (re_string_reconstruct, re_string_peek_byte_case):
51818         (re_string_fetch_byte_case, re_string_destruct, re_string_context_at):
51819         (re_node_set_alloc, re_node_set_init_1, re_node_set_init_2):
51820         (re_node_set_init_copy, re_node_set_add_intersect):
51821         (re_node_set_init_union, re_node_set_merge, re_node_set_insert):
51822         (re_node_set_insert_last, re_node_set_compare, re_node_set_contains):
51823         (re_node_set_remove_at, re_dfa_add_node, calc_state_hash):
51824         (re_acquire_state, re_acquire_state_context, register_state):
51825         (create_ci_newstate, create_cd_newstate, free_state):
51826         Likewise.
51827         * lib/regexec.c (regexec, re_match, re_search, re_match_2,
51828         re_search_2):
51829         (re_search_2_stub, re_search_stub, re_copy_regs, re_set_registers):
51830         (re_search_internal, prune_impossible_nodes):
51831         (acquire_init_state_context, check_matching, static):
51832         (check_halt_node_context, check_halt_state_context, proceed_next_node):
51833         (push_fail_stack, pop_fail_stack, set_regs, free_fail_stack_return):
51834         (update_regs, sift_states_backward, build_sifted_states):
51835         (clean_state_log_if_needed, merge_state_array):
51836         (update_cur_sifted_state, add_epsilon_src_nodes):
51837         (sub_epsilon_src_nodes, check_dst_limits, check_dst_limits_calc_pos_1):
51838         (check_dst_limits_calc_pos, check_subexp_limits, sift_states_bkref):
51839         (sift_states_iter_mb, transit_state, merge_state_with_log, static):
51840         (find_recover_state, check_subexp_matching_top, transit_state_mb):
51841         (transit_state_bkref, get_subexp, get_subexp_sub, find_subexp_node):
51842         (check_arrival, check_arrival_add_next_nodes):
51843         (check_arrival_expand_ecl, check_arrival_expand_ecl_sub):
51844         (expand_bkref_cache, build_trtable, group_nodes_into_DFAstates):
51845         (check_node_accept_bytes, check_node_accept, extend_buffers):
51846         (match_ctx_init, match_ctx_clean, match_ctx_free, match_ctx_add_entry):
51847         (search_cur_bkref_entry, match_ctx_add_subtop, match_ctx_add_sublast):
51848         (sift_ctx_init):
51849         Likewise.
51850
51851         * lib/regex_internal.h:
51852         (re_string_allocate, re_string_construct, re_string_reconstruct):
51853         (re_string_realloc_buffers, build_wcs_buffer, build_wcs_upper_buffer):
51854         (build_upper_buffer, re_string_translate_buffer, re_string_destruct):
51855         (re_string_elem_size_at, re_string_char_size_at, re_string_wchar_at):
51856         (re_string_context_at, re_string_peek_byte_case):
51857         (re_string_fetch_byte_case): Declare even if RE_NO_INTERNAL_PROTOTYPES
51858         is defined, since we now use prototypes always.
51859
51860         * lib/regex.h (_RE_ARGS): Remove.  No longer needed, since we assume
51861         C89 or better.  All uses removed.
51862
51863 2005-08-20  Paul Eggert  <eggert@cs.ucla.edu>
51864
51865         * config/srclist.txt: Add glibc bugs 1220-1227.
51866
51867 2005-08-20  Jim Meyering  <jim@meyering.net>
51868
51869         * lib/regexec.c (regexec, re_search_stub) [!_LIBC]: Omit declaration
51870         of unused local, dfa.
51871
51872 2005-08-20  Bruno Haible  <bruno@clisp.org>
51873
51874         * m4/regex.m4 (gl_PREREQ_REGEX): Require AC_GNU_SOURCE.
51875
51876 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
51877
51878         * lib/regex_internal.c (re_string_realloc_buffers, re_node_set_insert):
51879         (re_node_set_insert_last, re_dfa_add_node):
51880         Rename local variables to avoid GCC shadowing warnings.
51881
51882 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
51883
51884         * lib/regex_internal.c (re_acquire_state, re_acquire_state_context)
51885         [defined lint]: Suppress bogus uninitialized-variable warnings.
51886
51887         * lib/regcomp.c (duplicate_node): Return new index, not an error code,
51888         and let the caller return REG_ESPACE if out of space.  This
51889         removes an uninitialied-variable warning with GCC 4.0.1, and also
51890         avoids taking the address of a local variable.  All callers
51891         changed.
51892
51893 2005-08-19  Paul Eggert  <eggert@cs.ucla.edu>
51894
51895         * config/srclist.txt: Comment out $LIBCSRC/posix/regex_internal.c,
51896         $LIBCSRC/posix/regexec.c.
51897         Add glibc bug 1217 for regcomp.c.
51898
51899 2005-08-19  Jim Meyering  <jim@meyering.net>
51900
51901         * lib/regexec.c (proceed_next_node): Redo local variables to
51902         avoid GCC shadowing warnings.
51903
51904 2005-08-18  Bruno Haible  <bruno@clisp.org>
51905
51906         * lib/strstr.c (strstr): Fix return value in multibyte case.
51907         * lib/strcasestr.c (strcasestr): Likewise.
51908
51909 2005-08-17  Paul Eggert  <eggert@cs.ucla.edu>
51910
51911         * lib/regex.h: Remove useless space-before-tab.  From coreutils.
51912
51913 2005-08-17  Jim Meyering  <jim@meyering.net>
51914
51915         Make the %s format (seconds since the epoch) work for a negative
51916         number and when used with a zero-padded field width, e.g. %015s.
51917
51918         * lib/strftime.c (my_strftime): Move the `do_number_sign_and_padding'
51919         label so that it precedes the code to set `digits'.  Otherwise,
51920         %0Ns wouldn't work.  Before this change, `date -d @-22 +%05s' would
51921         print `00-22'.  Now, it prints `-0022', as it should.
51922
51923 2005-08-17  Bruno Haible  <bruno@clisp.org>
51924
51925         * modules/strstr (Files): Add m4/mbrtowc.m4.
51926         (Depends-on): Add mbuiter.
51927
51928 2005-08-17  Bruno Haible  <bruno@clisp.org>
51929
51930         * modules/strcasestr: New file.
51931         * MODULES.html.sh (String handling, based on ANSI C 89): Add
51932         strcasestr.
51933
51934 2005-08-17  Bruno Haible  <bruno@clisp.org>
51935
51936         * modules/strcase (Depends-on): Add mbuiter. Remove strnlen1, mbchar.
51937
51938 2005-08-17  Bruno Haible  <bruno@clisp.org>
51939
51940         * modules/mbuiter: New file.
51941         * MODULES.html.sh (Extended multibyte and wide character utilities):
51942         Add mbuiter.
51943
51944 2005-08-17  Bruno Haible  <bruno@clisp.org>
51945
51946         * m4/strstr.m4 (gl_FUNC_STRSTR): Use the replacement function always.
51947         (gl_PREREQ_STRSTR): Use gl_FUNC_MBRTOWC.
51948
51949 2005-08-17  Bruno Haible  <bruno@clisp.org>
51950
51951         * m4/strcasestr.m4: New file.
51952
51953 2005-08-17  Bruno Haible  <bruno@clisp.org>
51954
51955         * lib/strstr.h: Ignore HAVE_STRSTR, always declare the gnulib function.
51956         * lib/strstr.c: Completely rewritten, with multibyte locale support.
51957
51958 2005-08-17  Bruno Haible  <bruno@clisp.org>
51959
51960         * lib/strcasestr.h: New file.
51961         * lib/strcasestr.c: New file.
51962
51963 2005-08-17  Bruno Haible  <bruno@clisp.org>
51964
51965         * lib/strcasecmp.c: Use mbuiter.h.
51966
51967 2005-08-17  Bruno Haible  <bruno@clisp.org>
51968
51969         * lib/mbuiter.h: New file.
51970
51971 2005-08-16  Paul Eggert  <eggert@cs.ucla.edu>
51972
51973         * m4/getopt.m4 (gl_GETOPT_CHECK_HEADERS): Do not override the results
51974         of gl_GETOPT_SUBSTITUTE.  That way, if both gl_GETOPT_SUBSTITUTE
51975         and gl_GETOPT are both invoked via different paths (as happens
51976         with GNU tar CVS because it uses both argp and getopt), the former
51977         wins.
51978
51979 2005-08-16  Bruno Haible  <bruno@clisp.org>
51980
51981         * modules/tls: New file.
51982         * MODULES.html.sh (Multithreading): Add tls.
51983
51984 2005-08-16  Bruno Haible  <bruno@clisp.org>
51985
51986         * modules/strnlen1: New file.
51987         * MODULES.html.sh (String handling): Add strnlen1.
51988
51989 2005-08-16  Bruno Haible  <bruno@clisp.org>
51990
51991         * modules/strcase (Files): Add m4/mbrtowc.m4.
51992         (Depends-on): Add strnlen1, mbchar.
51993
51994 2005-08-16  Bruno Haible  <bruno@clisp.org>
51995
51996         * modules/mbiter: New file.
51997         * MODULES.html.sh (Extended multibyte and wide character utilities):
51998         Add mbiter.
51999
52000 2005-08-16  Bruno Haible  <bruno@clisp.org>
52001
52002         * modules/mbfile: New file.
52003         * MODULES.html.sh (Extended multibyte and wide character utilities):
52004         Add mbfile.
52005
52006 2005-08-16  Bruno Haible  <bruno@clisp.org>
52007
52008         * modules/mbchar: New file.
52009         * MODULES.html.sh (Extended multibyte and wide character utilities):
52010         New section.
52011
52012 2005-08-16  Bruno Haible  <bruno@clisp.org>
52013
52014         * m4/tls.m4: New file, from GNU gettext.
52015
52016 2005-08-16  Bruno Haible  <bruno@clisp.org>
52017
52018         * m4/strcase.m4 (gl_FUNC_STRCASECMP): Use the replacement function
52019         always.
52020         (gl_PREREQ_STRCASECMP): Use gl_FUNC_MBRTOWC.
52021
52022 2005-08-16  Bruno Haible  <bruno@clisp.org>
52023
52024         * m4/mbiter.m4: New file.
52025
52026 2005-08-16  Bruno Haible  <bruno@clisp.org>
52027
52028         * m4/mbfile.m4: New file.
52029
52030 2005-08-16  Bruno Haible  <bruno@clisp.org>
52031
52032         * m4/mbchar.m4: New file.
52033
52034 2005-08-16  Bruno Haible  <bruno@clisp.org>
52035
52036         * lib/tls.h: New file, from GNU gettext.
52037         * lib/tls.c: New file, from GNU gettext.
52038
52039 2005-08-16  Bruno Haible  <bruno@clisp.org>
52040
52041         * lib/strnlen1.h: New file.
52042         * lib/strnlen1.c: New file.
52043
52044 2005-08-16  Bruno Haible  <bruno@clisp.org>
52045
52046         * lib/strcasecmp.c (struct mbiter_multi): Remove at_end field.
52047         (mbi_init): Update.
52048         (mbi_avail, mbi_advance): Let the iteration end before the terminating
52049         NUL byte, not after it.
52050
52051 2005-08-16  Bruno Haible  <bruno@clisp.org>
52052
52053         * lib/strcase.h (strcasecmp): Add note in comments.
52054         * lib/strncasecmp.c: Use code from strcasecmp.c.
52055         * lib/strcasecmp.c: Use mbchar module. Define private mbiter variant.
52056         (strcasecmp): Work correctly in multibyte locales.
52057
52058 2005-08-16  Bruno Haible  <bruno@clisp.org>
52059
52060         * lib/mbiter.h: New file.
52061
52062 2005-08-16  Bruno Haible  <bruno@clisp.org>
52063
52064         * lib/mbfile.h: New file.
52065
52066 2005-08-16  Bruno Haible  <bruno@clisp.org>
52067
52068         * lib/mbchar.h: New file.
52069         * lib/mbchar.c: New file.
52070
52071 2005-08-16  Bruno Haible  <bruno@clisp.org>
52072
52073         * lib/mbchar.h (mb_cmp, mb_casecmp): Order the invalid characters after
52074         the valid ones. Makes the comparison operations transitive:
52075         cmp (a, b) < 0 && cmp (b, c) < 0 ==> cmp (a, c) < 0.
52076         * lib/strcasecmp.c (strcasecmp): Use mb_casecmp.
52077
52078 2005-08-15  Simon Josefsson  <jas@extundo.com>
52079
52080         * modules/ssize_t (License): Change to 'unlimited'.
52081
52082         * gnulib-tool (sed_extract_prog): Recognize 'unlimited' license.
52083
52084 2005-08-15  Paul Eggert  <eggert@cs.ucla.edu>
52085
52086         * config/srclist.txt: Comment out $LIBCSRC/posix/regex.h.
52087         Add comments for each pending glibc patch.
52088
52089 2005-08-15  Bruno Haible  <bruno@clisp.org>
52090
52091         * lib/regex.h (__restrict_arr): Don't define to __restrict if
52092         __cplusplus is defined.
52093
52094 2005-08-14  Jim Meyering  <jim@meyering.net>
52095
52096         Sync from coreutils.
52097
52098         * lib/fts-cycle.c (setup_dir, enter_dir, leave_dir, free_dir):
52099         Use the hash-table-based cycle-detection code not just when
52100         FTS_TIGHT_CYCLE_CHECK if specified, but also with FTS_LOGICAL.
52101         Reported by James Youngman in
52102         <http://lists.gnu.org/archive/html/bug-gnulib/2005-08/msg00011.html>.
52103         * lib/fts_.h: Mention that with FTS_LOGICAL, we use
52104         FTS_TIGHT_CYCLE_CHECK.
52105         * lib/fts.c (fts_cross_check) [FTS_DEBUG]:
52106         s/active_dir_ht/fts_cycle.ht/. This lets us compile with -DFTS_DEBUG,
52107         once again.
52108         * lib/fts.c [! _LIBC]: Include "lstat.h" rather than rolling our own.
52109         * lib/fts.c (fd_safer): Remove decl.
52110         Include fcntl--.h rather than unistd-safer.h
52111         (fts_safe_changedir): Don't call fd_safer; no longer needed
52112         now that we include fcntl--.h.
52113
52114 2005-08-12  Simon Josefsson  <jas@extundo.com>
52115
52116         * modules/getndelim2: Use ssize_t module.
52117         * modules/getnline: Likewise.
52118         * modules/safe-read: Likewise.
52119         * modules/xreadlink: Likewise.
52120
52121         * modules/ssize_t: New file.
52122
52123 2005-08-12  Simon Josefsson  <jas@extundo.com>
52124
52125         * m4/readline.m4: Look for termcap, curses or ncurses if required.
52126
52127 2005-08-12  Simon Josefsson  <jas@extundo.com>
52128
52129         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
52130         ssize_t.
52131
52132 2005-08-12  Simon Josefsson  <jas@extundo.com>
52133
52134         * MODULES.html.sh (Extra functions based on ANSI C 89: Misc): Add
52135         readline, getdelim and check_version.
52136         (Support for systems lacking ISO C 99: Sizes of integer types):
52137         Add size_max.
52138
52139 2005-08-12  Bruno Haible  <bruno@clisp.org>
52140
52141         * m4/readline.m4 (gl_FUNC_READLINE): Look for ncurses first.
52142
52143 2005-08-11  Simon Josefsson  <jas@extundo.com>
52144
52145         * modules/readline: New file.
52146
52147         * modules/strnlen (Files): Add strnlen.h.
52148
52149 2005-08-11  Simon Josefsson  <jas@extundo.com>
52150
52151         * m4/readline.m4: New file.
52152
52153 2005-08-11  Simon Josefsson  <jas@extundo.com>
52154
52155         * lib/readline.h, readline.c: New file.
52156
52157 2005-08-11  Simon Josefsson  <jas@extundo.com>
52158
52159         * doc/gnulib.texi (Initial import, Finishing touches): Mention
52160         gl_AVOID.
52161
52162 2005-08-11  Bruno Haible  <bruno@clisp.org>
52163
52164         * lib/strnlen.h (strnlen): Change parameter name to match comment.
52165
52166 2005-08-10  Stepan Kasal  <kasal@ucw.cz>
52167
52168         * m4/onceonly_2_57.m4: Really require Autoconf 2.57.
52169
52170 2005-08-10  Simon Josefsson  <jas@extundo.com>
52171
52172         * tests/test-iconvme.c: New file.
52173
52174 2005-08-10  Simon Josefsson  <jas@extundo.com>
52175
52176         * m4/strnlen.m4: New file.
52177
52178         * m4/strndup.m4: Don't check for strnlen declaration, done in
52179         strnlen.m4.
52180
52181 2005-08-10  Simon Josefsson  <jas@extundo.com>
52182
52183         * lib/strndup.c: Use strnlen.h.
52184
52185         * lib/strnlen.h: New file.
52186
52187 2005-08-08  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>  (tiny change)
52188
52189         * README: Typos.
52190
52191 2005-08-02  Simon Josefsson  <jas@extundo.com>
52192
52193         * modules/readline: New file.
52194
52195 2005-08-02  Simon Josefsson  <jas@extundo.com>
52196
52197         * modules/getdelim: New file.
52198
52199         * modules/getline: Rewrite, don't use getndelim2.
52200
52201 2005-08-02  Simon Josefsson  <jas@extundo.com>
52202
52203         * m4/getline.m4: Separate out getdelim stuff into separate module.
52204
52205         * m4/getdelim.m4: New file.
52206
52207 2005-08-02  Simon Josefsson  <jas@extundo.com>
52208
52209         * lib/getline.h, getline.c: Rewrite.
52210
52211         * lib/getdelim.h, lib/getdelim.c: New files, ported from glibc.
52212
52213 2005-07-31  Bruno Haible  <bruno@clisp.org>
52214
52215         * lib/lock.h (gl_lock_initializer): New macro.
52216         (gl_lock_define_initialized): Use it.
52217         (gl_rwlock_initializer): New macro.
52218         (gl_rwlock_define_initialized): Use it.
52219         (gl_recursive_lock_initializer): New macro.
52220         (gl_recursive_lock_define_initialized): Use it.
52221
52222 2005-07-30  Karl Berry  <karl@gnu.org>
52223
52224         * doc/gnulib.texi (Initial import): mention -I$(top_builddir)/lib.
52225         Report from Ben Pfaff, regarding getopt.
52226
52227 2005-07-26  Paul Eggert  <eggert@cs.ucla.edu>
52228
52229         Add support to getopt for Emacs, which doesn't use LIBOBJS in the
52230         normal way.
52231         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE_HEADER): New macro.
52232         (gl_GETOPT_SUBSTITUTE): Use it.  Invoke gl_PREREQ_GETOPT.
52233         (gl_GETOPT_IFELSE, gl_GETOPT_CHECK_HEADERS): New macros.
52234         (gl_GETOPT): Use the new macros.  Most of the implementation
52235         is moved to the new macros.  This is for programs like Emacs
52236         that don't want all the functionality of gl_GETOPT.
52237
52238 2005-07-26  Bruno Haible  <bruno@clisp.org>
52239
52240         * m4/lock.m4: Update from GNU gettext.
52241
52242 2005-07-26  Bruno Haible  <bruno@clisp.org>
52243
52244         * lib/lock.h: Update from GNU gettext.
52245         * lib/lock.c: Update from GNU gettext.
52246
52247 2005-07-25  Paul Eggert  <eggert@cs.ucla.edu>
52248
52249         * m4/regex.m4 (gl_INCLUDED_REGEX): Use AC_RUN_IFELSE instead of the
52250         obsolescent AC_TRY_RUN.  Include the default includes files, for
52251         'exit'.
52252
52253 2005-07-24  Bruno Haible  <bruno@clisp.org>
52254
52255         * modules/visibility: New file.
52256         * MODULES.html.sh (Misc): Add visibility.
52257
52258 2005-07-24  Bruno Haible  <bruno@clisp.org>
52259
52260         * m4/visibility.m4: New file.
52261
52262 2005-07-24  Bruno Haible  <bruno@clisp.org>
52263
52264         * doc/visibility.texi: New file.
52265
52266 2005-07-22  Bruno Haible  <bruno@clisp.org>
52267
52268         * modules/alloca-opt (Makefile.am): Remove explicit dependency on
52269         $(ALLOCA_H), redundant through BUILT_SOURCES.
52270         * modules/argz (Makefile.am): Remove explicit dependency on $(ARGZ_H),
52271         redundant through BUILT_SOURCES.
52272         * modules/byteswap (Makefile.am): Remove explicit dependency on
52273         $(BYTESWAP_H), redundant through BUILT_SOURCES.
52274         * modules/fnmatch (Makefile.am): Remove explicit dependency on
52275         $(FNMATCH_H), redundant through BUILT_SOURCES.
52276         * modules/getopt (Makefile.am): Remove explicit dependency on
52277         $(GETOPT_H), redundant through BUILT_SOURCES.
52278         * modules/glob (Makefile.am): Remove explicit dependency on $(GLOB_H),
52279         redundant through BUILT_SOURCES.
52280         * modules/poll (Makefile.am): Remove explicit dependency on $(POLL_H),
52281         redundant through BUILT_SOURCES.
52282         * modules/stdbool (Makefile.am): Remove explicit dependency on
52283         $(STDBOOL_H), redundant through BUILT_SOURCES.
52284         * modules/stdint (Makefile.am): Remove explicit dependency on
52285         $(STDINT_H), redundant through BUILT_SOURCES.
52286         * modules/sysexits (Makefile.am): Add $(SYSEXITS_H) to BUILT_SOURCES.
52287         Remove explicit dependency on $(SYSEXITS_H).
52288         Reported by Alexandre Duret-Lutz <adl@src.lip6.fr>.
52289
52290 2005-07-18  Simon Josefsson  <jas@extundo.com>
52291
52292         * lib/check-version.c (check_version): Accept identical versions too.
52293
52294 2005-07-18  Bruno Haible  <bruno@clisp.org>
52295
52296         * modules/lock: New file.
52297         * MODULES.html.sh (Multithreading): New section.
52298
52299 2005-07-18  Bruno Haible  <bruno@clisp.org>
52300
52301         * m4/lock.m4: New file, from GNU gettext.
52302
52303 2005-07-18  Bruno Haible  <bruno@clisp.org>
52304
52305         * lib/lock.h: New file, from GNU gettext.
52306         * lib/lock.c: New file, from GNU gettext.
52307
52308 2005-07-18  Bruno Haible  <bruno@clisp.org>
52309
52310         * lib/lock.h (gl_once_t): New type.
52311         (gl_once_define, gl_once): New macros.
52312         * lib/lock.c (fresh_once): New variable.
52313         (glthread_once, glthread_once_call, glthread_once_singlethreaded): New
52314         functions.
52315
52316 2005-07-16  Simon Josefsson  <jas@extundo.com>
52317
52318         * doc/gnulib.texi (Library version handling): Add ELF symbol collision
52319         workaround, suggested by Bruno.
52320
52321 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
52322
52323         * modules/xalloc (Depends-on): Add xalloc-die.
52324         * modules/xvasprintf (Depends-on): Add xalloc-die.
52325
52326 2005-07-15  Paul Eggert  <eggert@cs.ucla.edu>
52327
52328         * lib/quotearg.c: Add translator comment suggested by Bruno Haible,
52329         with a minor change.
52330
52331 2005-07-15  Bruno Haible  <bruno@clisp.org>
52332
52333         * m4/poll.m4 (gl_FUNC_POLL): Check against MacOS X 10.4 poll() bug.
52334         When using lib/poll.c, define poll as rpl_poll.
52335
52336 2005-07-14  Paul Eggert  <eggert@cs.ucla.edu>
52337
52338         * modules/argp (Depends-on): Remove unlocked-io.
52339
52340 2005-07-14  Derek Price  <derek@ximbiot.com>
52341
52342         * m4/glob.m4 (gl_GLOB): Cache glob interface check result.  Add check
52343         for glob symlink bug.
52344
52345 2005-07-14  Bruno Haible  <bruno@clisp.org>
52346
52347         * m4/argp.m4 (gl_ARGP): Remove invocation of gl_FUNC_GLIBC_UNLOCKED_IO.
52348         Instead, test for *_unlocked function declarations directly.
52349
52350 2005-07-11  Simon Josefsson  <jas@extundo.com>
52351
52352         * modules/size_max: New file.
52353
52354         * modules/xsize: Depend on size_max module for size_max.m4.
52355
52356 2005-07-11  Simon Josefsson  <jas@extundo.com>
52357
52358         * lib/size_max.h: New file.
52359
52360 2005-07-11  Paul Eggert  <eggert@cs.ucla.edu>
52361
52362         * lib/version-etc-fsf.c (version_etc_copyright): Parameterize the
52363         copyright symbol and the year.
52364         * lib/version-etc.c (COPYRIGHT_YEAR): New constant.
52365         (version_etc_va): Use parameterized copyright notice.
52366         Reword to conform to the current GNU coding standards.
52367
52368 2005-07-11  Karl Berry  <karl@gnu.org>
52369
52370         * doc/gnulib.texi (Quoting): new node.
52371         (Initial import): more info, from Patrice.
52372
52373 2005-07-11  Bruno Haible  <bruno@clisp.org>
52374
52375         * gnulib-tool (func_usage): Document option --avoid.
52376         (Command line options): Handle --avoid.
52377         (func_acceptable): New function.
52378         (func_modules_transitive_closure): Use it.
52379
52380 2005-07-11  Bruno Haible  <bruno@clisp.org>
52381
52382         * MODULES.html.sh: Use shortcut URLs to the www.opengroup.org site.
52383         Reported by Jim Meyering.
52384
52385 2005-07-10  Bruno Haible  <bruno@clisp.org>
52386
52387         * m4/size_max.m4 (gl_SIZE_MAX): Cast ~(size_t)0 back to size_t.
52388         Needed when size_t is smaller than 'unsigned int'.
52389         Reported by Paul Eggert.
52390
52391 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
52392
52393         * modules/argp (Depends-on): Add unlocked-io
52394
52395 2005-07-09  Sergey Poznyakoff  <gray@gnu.org.ua>
52396
52397         * lib/argp-namefrob.h: Include unlocked-io.h. Removed unnecessary
52398         block of defines.
52399
52400 2005-07-08  Paul Eggert  <eggert@cs.ucla.edu>
52401
52402         * config/srclist.txt: Comment out regcomp.c, since we have a porting
52403         fix now.
52404
52405 2005-07-08  Eric Blake  <ebb9@byu.net>  (tiny change)
52406         and Paul Eggert  <eggert@cs.ucla.edu>
52407
52408         * lib/regcomp.c (init_dfa, build_range_exp): Store __btowc value
52409         in wint_t, not wchar_t.  Remove now-unnecessary cast.
52410
52411 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
52412
52413         * modules/regex (Files): Add lib/regex_internal.c,
52414         lib/regex_internal.h, lib/regexec.c, lib/regcomp.c, m4/codeset.m4.
52415         (Depends-on): Add extensions.
52416         (Makefile.am): Remove lib_SOURCES; now done by m4 code.
52417
52418 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
52419
52420         * m4/backupfile.m4 (gl_BACKUPFILE): Use AC_CHECK_FUNCS_ONCE on
52421         pathconf.
52422         * m4/same.m4 (gl_SAME): Likewise.
52423         Require AC_SYS_LONG_FILE_NAMES; bug reported by Gerrit P. Haase.
52424
52425         * m4/regex.m4: Adjust to new libc regex implementation.
52426         (gl_INCLUDED_REGEX): Add AC_LIBSOURCES for
52427         all the .c and .h parts of (the new) regex.
52428         Quote the m4 stuff better.
52429         Check for RE_ICASE bug of old gnulib.
52430         Check for REG_STARTEND of recent libc.
52431         Rename local variables from jm_* to gl_*.
52432         Quote operand of "test -f".
52433         Say "recent enough" version of libc, not "version 2".
52434         (gl_PREREQ_REGEX): Remove AC_FUNC_ALLOCA, since alloca is a
52435         prerequisite module.  Remove AC_HEADER_STDC; no longer needed.
52436         Check for locale.h, isblank, mbrtowc, wcrtomb, wcscoll.
52437         Remove check for btowc, isascii.
52438         Require AM_LANGINFO_CODESET.
52439
52440 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
52441
52442         * lib/regex.c, regex.h: Sync from libc.
52443         * lib/regcomp.c, lib/regexec_internal.c, lib/regex_internal.h:
52444         * lib/regexec.c:
52445         New files, synced from libc, except that regex_internal.h
52446         currently has a small porting fix.
52447
52448 2005-07-07  Paul Eggert  <eggert@cs.ucla.edu>
52449
52450         * config/srclist.txt: Add regcomp.c, regex.c, regex.h,
52451         regex_internal.c, regexec.c.
52452         Add regex_internal.h too, but as a comment, since the libc version
52453         is currently broken in gnulib mode.
52454
52455 2005-07-06  Paul Eggert  <eggert@cs.ucla.edu>
52456
52457         Support programs like Emacs that use gnulib but not gettext.
52458         * MODULES.html.sh (Internationalization functions): Add gettext-h.
52459         * modules/gettext-h: New file.
52460         * modules/gettext (Files): Remove lib/gettext.h.
52461         (Depends-on): Add gettext-h.
52462         (Makefile.am): Remove lib_SOURCES.
52463         * modules/argmatch, modules/c-stack, modules/closeout:
52464         * modules/copy-file, modules/csharpcomp, modules/csharpexec:
52465         * modules/execute, modules/file-type, modules/getaddrinfo:
52466         * modules/getopt, modules/human, modules/javacomp:
52467         * modules/javaexec, modules/mkdir-p, modules/obstack:
52468         * modules/openat, modules/pagealign_alloc, modules/pipe:
52469         * modules/quotearg, modules/regex, modules/rpmatch:
52470         * modules/unicodeio, modules/userspec, modules/version-etc:
52471         * modules/wait-process, modules/xalloc-die, modules/xmemcoll:
52472         * modules/xsetenv:
52473         Depend on gettext-h, not gettext.
52474
52475 2005-07-05  Paul Eggert  <eggert@cs.ucla.edu>
52476
52477         * gnulib-tool (func_import): Add support for 'public domain' license.
52478         * modules/alloca, modules/atexit, modules/memmove:
52479         Now public domain, not GPL.
52480         * modules/dup2, modules/getpagesize, modules/malloc, modules/memset:
52481         * modules/realloc, modules/strerror, modules/strtod:
52482         Now LGPL, not GPL.
52483
52484 2005-07-05  Bruno Haible  <bruno@clisp.org>
52485
52486         * m4/mbrtowc.m4 (gl_FUNC_MBRTOWC): Upgrade to version from current
52487         autoconf CVS. Needed for mingw.
52488
52489 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
52490
52491         Remove the dependency of the strftime module on the tzset module.
52492         * modules/strftime (Depends-on): Remove dependency on tzset.
52493
52494 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
52495
52496         Remove the dependency of the strftime module on the tzset module.
52497         * m4/strftime.m4 (gl_FUNC_STRFTIME): Don't require
52498         gl_FUNC_TZSET_CLOBBER.
52499
52500 2005-07-03  Paul Eggert  <eggert@cs.ucla.edu>
52501
52502         Remove the dependency of the strftime module on the tzset module.
52503         * lib/strftime.c (my_strftime)
52504         [! defined _LIBC && ! HAVE_RUN_TZSET_TEST]:
52505         Copy the input structure, to work around some of the bug with
52506         Solaris 2.5.1 and Solaris 2.6.  If you still care about these old
52507         Solaris releases, you should also use the tzset module, but we won't
52508         require it as a dependency any more since we don't want LGPLed code
52509         to depend on GPLed code.
52510
52511 2005-07-02  Jim Meyering  <jim@meyering.net>
52512
52513         * m4/chown.m4, cloexec.m4, dup2.m4, fsusage.m4:
52514         * m4/getcwd-path-max.m4, getcwd.m4, mkstemp.m4, mountlist.m4:
52515         * m4/pagealign_alloc.m4, save-cwd.m4, unistd-safer.m4:
52516         Don't check for fcntl.h, and don't test for HAVE_FCNTL_H.
52517
52518 2005-07-02  Jim Meyering  <jim@meyering.net>
52519
52520         * lib/backupfile.c (backup_args): Change a `0' to NULL.
52521
52522 2005-07-01  Paul Eggert  <eggert@cs.ucla.edu>
52523
52524         * lib/xnanosleep.c: Include timespec.h, since OpenBSD 3.4 <time.h>
52525         declares only 'struct timespec;' (!).
52526
52527 2005-07-01  Jim Meyering  <jim@meyering.net>
52528
52529         * lib/chown.c, cloexec.c, dup-safer.c, dup2.c, fsusage.c, getcwd.c:
52530         * lib/getloadavg.c, mountlist.c, openat.h, pagealign_alloc.c:
52531         * lib/save-cwd.c, tempname.c:
52532         Assume HAVE_FCNTL_H (i.e., include <fcntl.h> unconditionally,
52533         and don't include <sys/file.h>).
52534
52535 2005-06-29  Jim Meyering  <jim@meyering.net>
52536
52537         * lib/mkdir-p.c (make_dir_parents): Don't apply sizeof to a hard-coded
52538         type name.  Use the variable name instead.
52539         * lib/idcache.c (getuser, getuidbyname, getgroup, getgidbyname):
52540         Likewise.
52541
52542 2005-06-28  Simon Josefsson  <jas@extundo.com>
52543
52544         * modules/check-version (Files): Add check-version.m4.
52545
52546 2005-06-28  Simon Josefsson  <jas@extundo.com>
52547
52548         * m4/check-version.m4: New file, suggested by Jim Meyering
52549         <jim@meyering.net>.
52550
52551 2005-06-28  Simon Josefsson  <jas@extundo.com>
52552
52553         * lib/check-version.h, lib/check-version.c: New files.
52554
52555 2005-06-28  Simon Josefsson  <jas@extundo.com>
52556
52557         * lib/base64.c (base64_encode): Indent.  Rename 'b64' to avoid
52558         collision with global variable.  Better indentation.  Don't
52559         increment buffer pointer beyond buffer end.  Based on comments
52560         from Paul Eggert <eggert@cs.ucla.edu>.
52561
52562         * lib/base64.h: Indent.
52563
52564 2005-06-28  Simon Josefsson  <jas@extundo.com>
52565
52566         * doc/gnulib.texi (Library version handling): New section.
52567
52568 2005-06-28  Jim Meyering  <jim@meyering.net>
52569
52570         * check-module (find_included_lib_files): Hard-code another
52571         pair of exceptions: fts.c includes fts-cycle.c and unistd-safer.h
52572         but modules/fts-lgpl (correctly) does not list those files.
52573
52574         * modules/canonicalize (Files): Add lib/pathmax.h.
52575
52576 2005-06-25  Simon Josefsson  <jas@extundo.com>
52577
52578         * modules/check-version: New file.
52579
52580 2005-06-24  Paul Eggert  <eggert@cs.ucla.edu>
52581
52582         * lib/canon-host.c (canon-host): Append trailing "," to 0 in
52583         initializer of struct addrinfo, as an indication that we don't
52584         care how many members the structure has.
52585
52586 2005-06-24  Derek Price  <derek@ximbiot.com>
52587         and Bruno Haible  <bruno@clisp.org>
52588
52589         Remove stat module & update lstat.
52590         * m4/lstat.m4 (gl_FUNC_LSTAT): Drop AC_FUNC_LSTAT in favor of
52591         AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
52592         * m4/stat.m4: Remove this file.
52593
52594 2005-06-24  Derek Price  <derek@ximbiot.com>
52595         and Bruno Haible  <bruno@clisp.org>
52596
52597         Remove stat module & update lstat.
52598         * lib/stat.c: Remove this file...
52599         (slash_aware_lstat): ...moving this content and its support...
52600         * lib/lstat.c (rpl_lstat): ...into here.
52601         * lib/lstat.h: New file.
52602
52603 2005-06-24  Derek Price  <derek@ximbiot.com>
52604         and Bruno Haible  <bruno@clisp.org>
52605
52606         Remove stat module & update lstat.
52607         * config/srclist.txt (libc sources): Remove stat.
52608
52609 2005-06-24  Derek Price  <derek@ximbiot.com>
52610         and Bruno Haible  <bruno@clisp.org>
52611
52612         Remove stat module & update lstat.
52613         * MODULES.html.sh (stat): Remove.
52614         * MODULES.html: Regenerated.
52615         * modules/lstat (Description): Correct function name.
52616         (Files): Add "lstat.h".
52617         (Depends-on): Remove stat, add xalloc, stat-macros.
52618         * modules/stat: Remove this file.
52619         (Include): Add "lstat.h", remove <sys/stat.h>.
52620
52621 2005-06-23  Paul Eggert  <eggert@cs.ucla.edu>
52622
52623         * lib/mktime.c: Include <string.h> even if !DEBUG.  (From glibc.)
52624         (ranged_convert): Don't save conversion in a temporary struct.
52625         This causes a warning with GCC 4.0.0, and anyway in the typical
52626         case it's not worth the extra 100 bytes or so of code.
52627         (ranged_convert, __mktime_internal): When calling a function via a
52628         pointer P, use P () rather than (*P) (), as we now assume C89 or
52629         better.
52630
52631 2005-06-22  Paul Eggert  <eggert@cs.ucla.edu>
52632
52633         * lib/readutmp.c (desirable_utmp_entry): Fix bug where "who -b" and
52634         "who -r" failed to give output.  Problem reported by Tim Waugh.
52635
52636         * lib/xmalloc.c (HAVE_GNU_CALLOC): New constant.
52637         (xcalloc): Use it to avoid needless tests.
52638         Problem reported by Jim Meyering.
52639
52640 2005-06-20  Derek Price  <derek@ximbiot.com>
52641
52642         * m4/bison.m4: Note that precious decls of YACC & YFLAGS will be
52643         unnecessary for Autoconfs > 2.59c.
52644
52645 2005-06-16  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
52646
52647         * lib/argp.h (__option_is_short): Check upper limit of
52648         __key. Isprint() requires its argument to have the value
52649         of an unsigned char or EOF.
52650
52651 2005-06-16  Jim Meyering  <jim@meyering.net>
52652
52653         * lib/calloc.c (rpl_calloc): Allocate a 1-byte buffer (not 1xS or Nx1)
52654         when either N or S is zero.
52655
52656 2005-06-16  Derek Price  <derek@ximbiot.com>
52657
52658         * m4/bison.m4: Declare YACC & YFLAGS precious.
52659
52660 2005-06-10  Paul Eggert  <eggert@cs.ucla.edu>
52661
52662         * lib/fnmatch.c (fnmatch): If there is an encoding error in a
52663         multibyte string or pattern, fall back on unibyte matching.
52664         Problem reported by James Youngman.
52665
52666 2005-06-08  Bruno Haible  <bruno@clisp.org>
52667
52668         * modules/csharpcomp: New file.
52669         * MODULES.html.sh (C#): Add csharpcomp.
52670
52671 2005-06-08  Bruno Haible  <bruno@clisp.org>
52672
52673         * m4/csharpcomp.m4: New file, from GNU gettext.
52674
52675 2005-06-08  Bruno Haible  <bruno@clisp.org>
52676
52677         * lib/csharpcomp.h: New file, from GNU gettext.
52678         * lib/csharpcomp.c: New file, from GNU gettext.
52679         * lib/csharpcomp.sh.in: New file, from GNU gettext.
52680
52681 2005-06-08  Bruno Haible  <bruno@clisp.org>
52682
52683         * lib/binary-io.h (fileno): Undefine before defining it. Avoids a gcc
52684         warning on mingw.
52685
52686 2005-06-07  Derek Price  <derek@ximbiot.com>
52687
52688         Sync from CVS.
52689         * lib/glob_.h: Indent nested #ifdef.
52690
52691 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
52692
52693         Sync from coreutils.
52694         Use "file name" when talking about file names, instead of "filename"
52695         or "path", as per the GNU coding standards.
52696         * lib/mkdir-p.c: Renamed from makepath.c.
52697         (make_dir_parents): Renamed from make_path.  All callers changed.
52698         * lib/mkdir-p.h: Likewise.  All includers changed.
52699         * lib/filenamecat.c: Renamed from path-concat.c.
52700         (file_name_concat): Renamed from path_concat.  All callers changed.
52701         [TEST_FILE_NAME_CONCAT]: Renamed from TEST_PATH_CONCAT.
52702         * lib/filenamecat.h: Likewise.  All includers changed.
52703         * lib/acl.c: Don't use "path" or "filename" to mean "file name"
52704         in comments or local variable names.
52705         * lib/basename.c: Likewise.
52706         * lib/canonicalize.c, canonicalize.h: Likewise.
52707         * lib/dirname.c, dirname.h: Likewise.
52708         * lib/euidaccess.c: Likewise.
52709         * lib/exclude.c: Likewise
52710         * lib/fnmatch_.h, fnmatch_loop.c: Likewise.
52711         * lib/fsusage.c, fsuage.h: Likewise.
52712         * lib/fts.c, fts_.h: Likewise.
52713         * lib/getcwd.c: Likewise.
52714         * lib/getloadavg.c: Likewise.
52715         * lib/mkstemp.c: Likewise.
52716         * lib/mountlist.c, mountlist.h: Likewise.
52717         * lib/openat.c, openat.h: Likewise.
52718         * lib/readlink-stub.c: Likewise.
52719         * lib/readutmp.c, readutmp.h: Likewise.
52720         * lib/rename.c: Likewise.
52721         * lib/rmdir.c: Likewise.
52722         * lib/same.c: Likewise.
52723         * lib/savedir.c: Likewise.
52724         * lib/stripslash.c: Likewise.
52725         * lib/tempname.c: Likewise.
52726         * lib/xreadlink.c: Likewise.
52727         * lib/exclude.c (excluded_file_name): Renamed from excluded_filename.
52728         All uses changed.
52729         * lib/exclude.h: Likewise.
52730
52731         * lib/euidaccess.c (getuid, getgid, getuid, getegid)
52732         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
52733         * lib/idcache.c (getpwuid, getpwnam, getgrgid, getgrnam)
52734         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
52735         * lib/pathmax.h: Include <limits.h> unconditionally, since other
52736         files have been getting away with it for years (MORE/BSD 4.3
52737         is extinct now).
52738         * lib/userspec.c (getpwnam, getgrnam, getgrgid)
52739         [!defined _POSIX_VERSION]: Remove decls; not needed these days.
52740
52741         * lib/pathmax.h (_POSIX_PATH_MAX) [!defined _POSIX_PATH_MAX]:
52742         Define to 256, not 255, as per modern POSIX.
52743
52744 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
52745
52746         Sync from coreutils.
52747         Use "file name" when talking about file names, instead of "filename"
52748         or "path", as per the GNU coding standards.
52749         * MODULES.html.sh: mkdir-p renamed from makepath.
52750         filenamecat renamed from path-concat.
52751         * modules/filenamecat: Renamed from modules/path-concat.
52752         (Files): filenamecat.h and filenamecat.c renamed from
52753         path-concat.h and path-concat.c.
52754         (configure.ac): gl_FILE_NAME_CONCAT, not gl_PATH_CONCAT.
52755         (Include): filenamecat.h, not path-concat.h.
52756         * modules/mkdir-p: Renamed from modules/makepath.
52757         (Files): mkdir-p.h and mkdir-p.c renamed from makepath.h and
52758         makepath.c.
52759         (configure.ac): gl_MKDIR_PARENTS, not gl_MAKEPATH.
52760         (Include): mkdir-p.h, not makepath.h.
52761
52762 2005-06-02  Paul Eggert  <eggert@cs.ucla.edu>
52763
52764         Sync from coreutils.
52765         * m4/mkdir-p.m4: Renamed from makepath.m4.
52766         (gl_MKDIR_PARENTS): Renamed from gl_MAKEPATH.  All uses changed.
52767         Rename files from makepath.c to mkdir-p.c, and from
52768         makepath.h to mkdir-p.h.
52769         * m4/filenamecat.m4: Renamed from path-concat.m4.
52770         (gl_FILE_NAME_CONCAT): Renamed from gl_PATH_CONCAT.  All uses changed.
52771         Rename files from path-concat.c to filenamecat.c,
52772         and from path-concat.h to filenamecat.h.
52773         * m4/getcwd-path-max.m4: Don't use "path" or "filename" to mean
52774         "file name" in local variables or comments.
52775         * m4/rename.m4: Likewise.
52776
52777 2005-06-01  Bruno Haible  <bruno@clisp.org>
52778
52779         * modules/csharpexec: New file.
52780         * MODULES.html.sh (C#): New section.
52781
52782 2005-06-01  Bruno Haible  <bruno@clisp.org>
52783
52784         * m4/csharp.m4: New file, from GNU gettext.
52785         * m4/csharpexec.m4: New file, from GNU gettext.
52786
52787 2005-06-01  Bruno Haible  <bruno@clisp.org>
52788
52789         * lib/csharpexec.h: New file, from GNU gettext.
52790         * lib/csharpexec.c: New file, from GNU gettext.
52791         * lib/csharpexec.sh.in: New file, from GNU gettext.
52792
52793 2005-05-31  Derek Price  <derek@ximbiot.com>
52794             Paul Eggert  <eggert@cs.ucla.edu>
52795
52796         Sync from cvs.
52797         * m4/glob.m4: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
52798
52799 2005-05-31  Derek Price  <derek@ximbiot.com>
52800             Paul Eggert  <eggert@cs.ucla.edu>
52801
52802         Sync from cvs.
52803         * lib/glob_.h: s/MISSING_SYS_CDEFS_H/_SYS_CDEFS_H/ and comment.
52804
52805 2005-05-29  Derek Price  <derek@ximbiot.com>
52806
52807         * config/srclist.txt (glob_.h, glob.c): Add these files.
52808
52809 2005-05-29  Derek Price  <derek@ximbiot.com>
52810
52811         * MODULES.html.sh: Add glob to Enhanced POSIX.2001 section.
52812         * modules/glob: New file.
52813         * modules/getlogin_r: Add link to POSIX spec in description.
52814
52815 2005-05-29  Derek Price  <derek@ximbiot.com>
52816             Paul Eggert  <eggert@cs.ucla.edu>
52817
52818         * m4/glob.m4: New file.
52819
52820 2005-05-29  Derek Price  <derek@ximbiot.com>
52821             Paul Eggert  <eggert@cs.ucla.edu>
52822
52823         * lib/glob_.h, lib/glob.c: New files.
52824
52825 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
52826
52827         * modules/fts (Files): Remove m4/inttypes-pri.m4.
52828         * modules/fts-lgpl (Depends-on): Remove gettext.
52829
52830 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
52831
52832         * m4/fts.m4 (gl_FUNC_FTS_CORE): Don't check for inttypes.h or stdint.h,
52833         and don't require gt_INTTYPES_PRI.
52834
52835 2005-05-27  Paul Eggert  <eggert@cs.ucla.edu>
52836
52837         * lib/getlogin_r.c (getlogin_r): Don't set errno to 0 on return.
52838
52839         * lib/fts.c: Don't worry about debugging on pre-C99-compatible hosts;
52840         the configuration hassle isn't worth it.
52841         Include inttypes.h and stdint.h unconditionally if FTS_DEBUG.
52842         (LONGEST_MODIFIER, PRIuMAX): Remove.
52843
52844 2005-05-27  Bruno Haible  <bruno@clisp.org>
52845
52846         * lib/getlogin_r.h: Remove second include of <stddef.h>.
52847
52848 2005-05-26  Paul Eggert  <eggert@cs.ucla.edu>
52849
52850         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Define
52851         _POSIX_PTHREAD_SEMANTICS for Solaris.
52852
52853 2005-05-25  Derek Price  <derek@ximbiot.com>
52854
52855         * MODULES.html.sh: Add getlogin_r to POSIX.2001 support section.
52856
52857 2005-05-25  Derek Price  <derek@ximbiot.com>
52858             Paul Eggert  <eggert@cs.ucla.edu>
52859
52860         * modules/getlogin_r, m4/getlogin_r.m4: New files.
52861         * lib/getlogin_r.c, getlogin_r.h: New files.
52862
52863 2005-05-25  Bruno Haible  <bruno@clisp.org>
52864             Derek Price  <derek@ximbiot.com>
52865
52866         * lib/getlogin_r.h: Simplify API documentation.
52867
52868 2005-05-23  Derek Price  <derek@ximbiot.com>
52869
52870         * modules/minmax (Files): Add m4/minmax.m4.
52871         (configure.ac): Add gl_MINMAX.
52872
52873 2005-05-22  Paul Eggert  <eggert@cs.ucla.edu>
52874
52875         * lib/fts.c (fd_safer) [_LGPL_PACKAGE]: New static function,
52876         so that unistd-safer.h (GPL'ed code) need not be included.
52877
52878 2005-05-22  Bruno Haible  <bruno@clisp.org>
52879
52880         * m4/minmax.m4: New file.
52881         Based on a patch by Derek Price <derek@ximbiot.com>.
52882
52883 2005-05-22  Bruno Haible  <bruno@clisp.org>
52884
52885         * lib/stdint_.h (_STDINT_H_HAVE_INT64): New macro. Use it in #ifdefs.
52886         (INT64_MIN): Fix definition.
52887         Suggested by Paul Eggert <eggert@cs.ucla.edu>.
52888
52889         * lib/stdint_.h (_STDINT_H_NEED_SIGNED_INT_TYPES): Renamed from
52890         NEED_SIGNED_INT_TYPES.
52891
52892         * lib/stdint_.h (_STDINT_H_HAVE_SYSTEM_INTTYPES): Renamed from
52893         HAVE_SYSTEM_INTTYPES.
52894
52895 2005-05-22  Bruno Haible  <bruno@clisp.org>
52896
52897         * lib/minmax.h: Include <limits.h> only when it defines MIN, MAX.
52898         Also include <sys/param.h> if it defines MIN, MAX.
52899         Based on a patch by Derek Price <derek@ximbiot.com>.
52900
52901 2005-05-21  Jim Meyering  <jim@meyering.net>
52902
52903         * modules/fts (Files): Add m4/inttypes-pri.m4.
52904         (Depends-on): Add lstat and remove gettext.  Alphabetize.
52905
52906 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
52907
52908         New fts module.
52909         * lib/fts.c: Don't include "cycle-check.h" or "hash.h".
52910         (setup_dir, free_dir): New functions.
52911         (enter_dir, leave_dir): Define trivial
52912         alternatives of _LGPL_PACKAGE.  Move to fts-cycle.c if !_LGPL_PACKAGE.
52913         (HT_INITIAL_SIZE, ENTER_DIR): Remove.  All uses removed.
52914         (LEAVE_DIR): Fix typo: pass Fts and Ent to leave_dir.
52915         (struct Active_dir, AD_compare, AD_hash, enter_dir, leave_dir):
52916         Move to fts-cycle.c.
52917         (fts_open): Use setup_dir.
52918         (fts_close): Use free_dir.
52919         (fts_read): Have just one copy of the ENTER_DIR code rather than three.
52920         This adds a label and some gotos, but the alternatives were messier.
52921         Check for memory allocation failure when entering a dir.
52922         (fts_stat) [_LGPL_PACKAGE]: Bring back glibc cycle detection code.
52923         * lib/fts_.h (_LGPL_PACKAGE) [defined _LIBC]: New macro.
52924         (FTS): New member fts_cycle, that is a union that contains the
52925         old active_dir_ht and cycle_state.  All uses changed to mention
52926         fts_cycle.ht and fts_cycle.state.
52927         * lib/fts-cycle.c: New file, containing GPL'ed code migrated out of
52928         fts.c, with the following changes:
52929         (setup_dir, free_dir): New functions.
52930         (enter_dir): Now returns bool.  Return true if successful, false
52931         if memory exhausted.  All callers changed.
52932         Do not bother partly cleaning up on
52933         memory allocation failure; that is free_dir's job.
52934         However, free ad if hash_insert fails, to avoid memory leak.
52935         (enter_dir, leave_dir): Accommodate change to FTS by inspecting
52936         fts->fts_options to see which union member to use.
52937
52938 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
52939
52940         * m4/fts.m4 (gl_FUNC_FTS_CORE): Renamed from gl_FUNC_FTS.
52941         (gl_FUNC_FTS, gl_FUNC_FTS_LGPL): New macros.
52942
52943 2005-05-20  Paul Eggert  <eggert@cs.ucla.edu>
52944
52945         * MODULES.html.sh (File system functions): Add fts, fts-lgpl.
52946
52947 2005-05-20  Jim Meyering  <jim@meyering.net>
52948
52949         * lib/unlinkdir.h (cannot_unlink_dir) [UNLINK_CANNOT_UNLINK_DIR]:
52950         Now a macro, to pacify GCC.
52951
52952 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
52953
52954         * m4/chown.m4 (gl_FUNC_CHOWN): Correct sense of test for honoring IDs
52955         of -1.
52956
52957 2005-05-20  Eric Blake  <ebb9@byu.net>  (tiny change)
52958
52959         * lib/chown.c (rpl_chown): Return -1 on failure.
52960
52961 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
52962
52963         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME]):
52964         Don't check for stddef.h.
52965         * m4/fts.m4 (gl_FUNC_FTS): Don't require AC_HEADER_STDC, as we
52966         don't use its results.
52967         Don't check for fcntl.h, stddef.h, stdlib.h, string.h, unistd.h,
52968         since we include them unconditionally.  Don't require
52969         AM_STDBOOL_H, since stdbool is a prerequisite.
52970         Don't require AC_C_CONST, AC_TYPE_SIZE_T or check for ptrdiff_t
52971         since we assume C89 or better.
52972         Don't require AC_FUNC_CLOSEDIR_VOID, AC_FUNC_LSTAT, or AC_FUNC_STAT,
52973         as we don't use their results.
52974         Don't check for fchdir, memmove, memset, strrchr, as we use
52975         them unconditionally.
52976         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Don't define
52977         GETTIMEOFDAY_CLOBBERS_LOCALTIME_BUFFER, since nobody uses it.
52978
52979 2005-05-18  Paul Eggert  <eggert@cs.ucla.edu>
52980
52981         * lib/canonicalize.c: Include canonicalize.h first, to test interface.
52982         Include <stddef.h> unconditionally, since we assume C89 now.
52983         All uses of PTR_INT_TYPE replaced by ptrdiff_t.
52984         * lib/fts.c: Include fts_.h first, to check interface.
52985         Do not include intprops.h; no longer needed.
52986         Include cycle-check.h and hash.h, since fts_.h no longer does.
52987         Remove unnecessary casts of closedir to void.
52988         (fts_build): Use a simpler method (not involving TYPE_SIGNED) to
52989         decide whether to decrement nlinks.
52990         * lib/fts_.h: Do not include hash.h or cycle-check.h; no longer needed.
52991         (FTS): Use struct hash_table * instead of Hash_table, so that
52992         we no longer need to include hash.h here.
52993
52994 2005-05-18  Jim Meyering  <jim@meyering.net>
52995
52996         * modules/dirfd (License): Change to LGPL.  Most of the code
52997         is already in the public domain.
52998
52999 2005-05-18  Jim Meyering  <jim@meyering.net>
53000
53001         * m4/fts.m4 (AC_LIBSOURCES): Add intprops.h to the list.
53002         Reported by Yoann Vandoorselaere.
53003
53004 2005-05-17  Jim Meyering  <jim@meyering.net>
53005
53006         * m4/fts.m4: New file, from coreutils.
53007
53008 2005-05-17  Jim Meyering  <jim@meyering.net>
53009
53010         * lib/fts.c, lib/fts_.h: New files, from coreutils.
53011
53012 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
53013
53014         Sync from coreutils.
53015         * m4/unlinkdir.m4: New file.
53016
53017 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
53018
53019         Sync from coreutils.
53020         * lib/unlinkdir.c, lib/unlinkdir.h: New files.
53021         * lib/gethrxtime.c, lib/gethrxtime.h, lib/getpass.h, lib/mountlist.h,
53022         lib/path-concat.c, lib/regex.h, lib/unlocked-io.h, lib/xtime.h:
53023         White space changes only.
53024         * lib/makepath.c (make_path): Port to hosts where leading "//" is
53025         special.
53026         * lib/yesno.c: Include getline.h, not ctype.h.
53027         (yesno): Don't remove leading white space; POSIX doesn't allow it.
53028         Use getline to remove arbitrary restriction on response length.
53029
53030 2005-05-14  Paul Eggert  <eggert@cs.ucla.edu>
53031
53032         * config/srclist-update: Spell out "Street" in FSF postal
53033         mail address; this is the style the FSF seems to prefer.
53034
53035         * build-aux/depcomp, build-aux/install-sh, build-aux/mdate-sh,
53036         build-aux/missing, build-aux/mkinstalldirs: Sync from Automake;
53037         this updates FSF postal mail address.
53038
53039         Sync from coreutils.
53040         * modules/unlinkdir: New file.
53041         * modules/yesno (Depends-on): Add getline.
53042         * MODULES.html.sh (File system functions): Add unlinkdir.
53043
53044 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
53045
53046         * lib/byteswap_.h, lib/getsubopt.h, lib/iconvme.h, lib/strsep.c,
53047         lib/strsep.h:
53048         Change the initial comment to refer to GPL, not LGPL.
53049         gnulib-tool will change it to LGPL as needed.
53050
53051         * lib/__fpending.c, lib/acl.c, lib/acl.h, lib/alloca_.h, lib/allocsa.c,
53052         lib/allocsa.h, lib/argmatch.c, lib/argmatch.h, lib/argp-ba.c,
53053         lib/argp-eexst.c, lib/argp-fmtstream.c, lib/argp-fmtstream.h,
53054         lib/argp-fs-xinl.c, lib/argp-help.c, lib/argp-namefrob.h,
53055         lib/argp-parse.c, lib/argp-pv.c, lib/argp-pvh.c, lib/argp-xinl.c,
53056         lib/argp.h, lib/argz.c, lib/argz_.h, lib/asnprintf.c, lib/asprintf.c,
53057         lib/atanl.c, lib/backupfile.c, lib/backupfile.h, lib/base64.c,
53058         lib/base64.h, lib/basename.c, lib/binary-io.h, lib/byteswap_.h,
53059         lib/c-ctype.c, lib/c-ctype.h, lib/c-stack.c, lib/c-stack.h,
53060         lib/c-strtod.c, lib/calloc.c, lib/canon-host.c, lib/canonicalize.c,
53061         lib/canonicalize.h, lib/ceill.c, lib/chdir-long.c, lib/chdir-long.h,
53062         lib/chown.c, lib/classpath.c, lib/classpath.h, lib/cloexec.c,
53063         lib/closeout.c, lib/closeout.h, lib/concatpath.c, lib/config.charset,
53064         lib/copy-file.c, lib/copy-file.h, lib/cycle-check.c, lib/cycle-check.h,
53065         lib/diacrit.c, lib/diacrit.h, lib/dirfd.c, lib/dirfd.h, lib/dirname.c,
53066         lib/dirname.h, lib/dummy.c, lib/dup-safer.c, lib/dup2.c, lib/eealloc.h,
53067         lib/error.c, lib/error.h, lib/euidaccess.c, lib/exclude.c,
53068         lib/exclude.h, lib/execute.c, lib/execute.h, lib/exit.h,
53069         lib/exitfail.c, lib/exitfail.h, lib/expl.c, lib/fatal-signal.c,
53070         lib/fatal-signal.h, lib/fd-safer.c, lib/file-type.c, lib/file-type.h,
53071         lib/fileblocks.c, lib/filemode.c, lib/filemode.h, lib/findprog.c,
53072         lib/findprog.h, lib/floorl.c, lib/fnmatch.c, lib/fnmatch_.h,
53073         lib/fnmatch_loop.c, lib/fopen-safer.c, lib/free.c, lib/frexpl.c,
53074         lib/fsusage.c, lib/fsusage.h, lib/full-read.c, lib/full-read.h,
53075         lib/full-write.c, lib/full-write.h, lib/fwriteerror.c,
53076         lib/fwriteerror.h, lib/gai_strerror.c, lib/gcd.c, lib/gcd.h,
53077         lib/getaddrinfo.c, lib/getaddrinfo.h, lib/getcwd.c, lib/getcwd.h,
53078         lib/getdate.h, lib/getdate.y, lib/getdomainname.c, lib/getdomainname.h,
53079         lib/getgroups.c, lib/gethostname.c, lib/gethrxtime.c, lib/gethrxtime.h,
53080         lib/getline.c, lib/getline.h, lib/getloadavg.c, lib/getndelim2.c,
53081         lib/getndelim2.h, lib/getnline.c, lib/getnline.h, lib/getopt.c,
53082         lib/getopt1.c, lib/getopt_.h, lib/getopt_int.h, lib/getpagesize.h,
53083         lib/getpass.c, lib/getpass.h, lib/getsubopt.c, lib/getsubopt.h,
53084         lib/gettext.h, lib/gettime.c, lib/gettimeofday.c, lib/getugroups.c,
53085         lib/getusershell.c, lib/group-member.c, lib/group-member.h,
53086         lib/hard-locale.c, lib/hard-locale.h, lib/hash-pjw.c, lib/hash-pjw.h,
53087         lib/hash.c, lib/hash.h, lib/human.c, lib/human.h, lib/iconvme.c,
53088         lib/iconvme.h, lib/idcache.c, lib/inet_ntop.h, lib/intprops.h,
53089         lib/inttostr.c, lib/inttostr.h, lib/isdir.c, lib/javacomp.c,
53090         lib/javacomp.h, lib/javacomp.sh.in, lib/javaexec.c, lib/javaexec.h,
53091         lib/javaexec.sh.in, lib/lbrkprop.h, lib/lchown.c, lib/ldexpl.c,
53092         lib/linebreak.c, lib/linebreak.h, lib/linebuffer.c, lib/linebuffer.h,
53093         lib/localcharset.c, lib/localcharset.h, lib/logl.c, lib/long-options.c,
53094         lib/long-options.h, lib/lstat.c, lib/makepath.c, lib/makepath.h,
53095         lib/malloc.c, lib/mathl.h, lib/mbswidth.c, lib/mbswidth.h, lib/md5.c,
53096         lib/md5.h, lib/memcasecmp.c, lib/memcasecmp.h, lib/memchr.c,
53097         lib/memcmp.c, lib/memcoll.c, lib/memcoll.h, lib/memcpy.c, lib/memmem.c,
53098         lib/memmem.h, lib/mempcpy.c, lib/mempcpy.h, lib/memrchr.c,
53099         lib/memrchr.h, lib/memset.c, lib/minmax.h, lib/mkdir.c, lib/mkdtemp.c,
53100         lib/mkdtemp.h, lib/mkstemp.c, lib/mktime.c, lib/modechange.c,
53101         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
53102         lib/obstack.c, lib/obstack.h, lib/openat.c, lib/openat.h,
53103         lib/pagealign_alloc.c, lib/pagealign_alloc.h, lib/path-concat.c,
53104         lib/path-concat.h, lib/pathmax.h, lib/pathname.h, lib/physmem.c,
53105         lib/physmem.h, lib/pipe.c, lib/pipe.h, lib/poll.c, lib/poll_.h,
53106         lib/posixtm.c, lib/posixtm.h, lib/posixver.c, lib/printf-args.c,
53107         lib/printf-args.h, lib/printf-parse.c, lib/printf-parse.h,
53108         lib/progname.c, lib/progname.h, lib/progreloc.c, lib/putenv.c,
53109         lib/quote.c, lib/quote.h, lib/quotearg.c, lib/quotearg.h, lib/raise.c,
53110         lib/readlink.c, lib/readtokens.c, lib/readtokens.h, lib/readtokens0.c,
53111         lib/readtokens0.h, lib/readutmp.c, lib/readutmp.h, lib/realloc.c,
53112         lib/ref-add.sin, lib/ref-del.sin, lib/regex.c, lib/regex.h,
53113         lib/rename.c, lib/rmdir.c, lib/rpmatch.c, lib/safe-read.c,
53114         lib/safe-read.h, lib/safe-write.c, lib/safe-write.h, lib/same.c,
53115         lib/same.h, lib/save-cwd.c, lib/save-cwd.h, lib/savedir.c,
53116         lib/savedir.h, lib/setenv.c, lib/setenv.h, lib/settime.c,
53117         lib/sh-quote.c, lib/sh-quote.h, lib/sha1.c, lib/sha1.h, lib/sig2str.c,
53118         lib/sig2str.h, lib/sincosl.c, lib/snprintf.c, lib/snprintf.h,
53119         lib/sqrtl.c, lib/stat-macros.h, lib/stat.c, lib/stdbool_.h,
53120         lib/stdint_.h, lib/stdio-safer.h, lib/stpcpy.c, lib/stpcpy.h,
53121         lib/stpncpy.c, lib/stpncpy.h, lib/strcase.h, lib/strcasecmp.c,
53122         lib/strchrnul.c, lib/strchrnul.h, lib/strcspn.c, lib/strdup.c,
53123         lib/strdup.h, lib/strerror.c, lib/strftime.c, lib/strftime.h,
53124         lib/stripslash.c, lib/strndup.c, lib/strndup.h, lib/strnlen.c,
53125         lib/strpbrk.c, lib/strpbrk.h, lib/strsep.c, lib/strsep.h, lib/strstr.c,
53126         lib/strstr.h, lib/strtod.c, lib/strtoimax.c, lib/strtok_r.c,
53127         lib/strtok_r.h, lib/strtol.c, lib/strtoll.c, lib/strtoul.c,
53128         lib/strtoull.c, lib/strverscmp.c, lib/strverscmp.h, lib/sysexit_.h,
53129         lib/tempname.c, lib/time_r.c, lib/time_r.h, lib/timegm.c, lib/timegm.h,
53130         lib/timespec.h, lib/trigl.c, lib/trigl.h, lib/ucs4-utf16.h,
53131         lib/ucs4-utf8.h, lib/unicodeio.c, lib/unicodeio.h, lib/unistd-safer.h,
53132         lib/unlocked-io.h, lib/unsetenv.c, lib/userspec.c, lib/utf16-ucs4.h,
53133         lib/utf8-ucs4.h, lib/utime.c, lib/utimecmp.c, lib/utimecmp.h,
53134         lib/utimens.c, lib/vasnprintf.c, lib/vasnprintf.h, lib/vasprintf.c,
53135         lib/vasprintf.h, lib/version-etc-fsf.c, lib/version-etc.c,
53136         lib/version-etc.h, lib/vsnprintf.c, lib/vsnprintf.h, lib/w32spawn.h,
53137         lib/wait-process.c, lib/wait-process.h, lib/xalloc-die.c, lib/xalloc.h,
53138         lib/xallocsa.c, lib/xallocsa.h, lib/xasprintf.c, lib/xgetcwd.c,
53139         lib/xgetcwd.h, lib/xgetdomainname.c, lib/xgetdomainname.h,
53140         lib/xgethostname.c, lib/xmalloc.c, lib/xmemcoll.c, lib/xnanosleep.c,
53141         lib/xreadlink.c, lib/xreadlink.h, lib/xsetenv.c, lib/xsetenv.h,
53142         lib/xsize.h, lib/xstrndup.c, lib/xstrndup.h, lib/xstrtod.c,
53143         lib/xstrtod.h, lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h,
53144         lib/xstrtoumax.c, lib/xtime.h, lib/xvasprintf.c, lib/xvasprintf.h,
53145         lib/yesno.c, lib/yesno.h:
53146         Update FSF postal mail address.
53147
53148 2005-05-13  Paul Eggert  <eggert@cs.ucla.edu>
53149
53150         * MODULES.html.sh, README, gnulib-tool, tests/test-base64.c,
53151         tests/test-memmem.c, tests/test-stpncpy.c:
53152         Update FSF postal mail address.
53153
53154 2005-05-13  Bruno Haible  <bruno@clisp.org>
53155
53156         * lib/stdint_.h (int64_t, uint64_t, int_least64_t, uint_least64_t,
53157         int_fast64_t, uint_fast64_t, intmax_t, uintmax_t, INT64_MIN, INT64_MAX,
53158         UINT64_MAX, INT_LEAST64_MIN, INT_LEAST64_MAX, UINT_LEAST64_MAX,
53159         INT_FAST64_MIN, INT_FAST64_MAX, UINT_FAST64_MAX, INTMAX_MIN,
53160         INTMAX_MAX, UINTMAX_MAX, INT64_C, UINT64_C, INTMAX_C, UINTMAX_C):
53161         Add support for 64-bit integers in the MSVC compiler.
53162
53163 2005-05-12  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
53164
53165         * modules/getdate (Makefile.am): Add getdate.c to EXTRA_DIST
53166
53167 2005-05-12  Eric Blake  <ebb9@byu.net>  (tiny change)
53168
53169         * gnulib-tool (func_import): Sort and uniquify recommended includes.
53170
53171 2005-05-11  Paul Eggert  <eggert@cs.ucla.edu>
53172
53173         * doc/getdate.texi (General date syntax): Don't say that date
53174         date --iso-8601=ns generates acceptable dates; it doesn't yet.
53175         Problem reported by Nic Ferrier.
53176
53177 2005-05-10  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
53178
53179         * lib/getaddrinfo.c: Don't fail when SOCK_STREAM or SOCK_DGRAM are
53180         specified in ai_socktype. Fix invalid ai_protocol
53181         check. ai_protocol is usually set to 0 or depending on
53182         ai_family/ai_socktype to IPPROTO_TCP / IPPROTO_UDP.  Checking for
53183         SOCK_STREAM / SOCK_DGRAM in ai_protocol was invalid.  Set
53184         ai_socktype / ai_protocol in the returned addrinfo structure.
53185
53186 2005-05-10  Simon Josefsson  <jas@extundo.com>
53187
53188         * m4/getaddrinfo.m4: Look in libnsl/libsocket for getaddrinfo, from
53189         Yoann Vandoorselaere <yoann.v@prelude-ids.com>.
53190
53191 2005-05-10  Karl Berry  <karl@gnu.org>
53192
53193         * doc/fdl.texi, gpl.texi, lgpl.texi, COPYING: update FSF address
53194         (from http://www.gnu.org/licenses).
53195         * doc/COPYING.LIB: also rename to COPYING.LESSER.
53196         * doc/COPYING.DOC: remove; per rms, only needed in doc files, so
53197         fdl.texi suffices.
53198
53199 2005-05-10  Karl Berry  <karl@gnu.org>
53200
53201         * config/srclist.txt (COPYING.LESSER): rename from COPYING.LIB.
53202         (COPYING.DOC): remove.
53203
53204         * config/srclist-update: new FSF address.
53205
53206 2005-05-10  Derek Price  <derek@ximbiot.com>
53207
53208         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 bug, not decl, when
53209         possible.
53210
53211 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
53212             Bruno Haible  <bruno@clisp.org>
53213
53214         * modules/inet_ntop: New file.
53215         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
53216         inet_ntop.
53217
53218 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
53219             Bruno Haible  <bruno@clisp.org>
53220
53221         * m4/inet_ntop.m4: New file.
53222
53223 2005-05-09  Yoann Vandoorselaere  <yoann.v@prelude-ids.com>
53224             Bruno Haible  <bruno@clisp.org>
53225
53226         * lib/inet_ntop.h: New file.
53227         * lib/inet_ntop.c: New file, from glibc with modifications.
53228
53229 2005-05-09  Paul Eggert  <eggert@cs.ucla.edu>
53230
53231         * modules/time_r (License): Change to LGPL.
53232         * modules/extensions (License): Change to LGPL.  Actually,
53233         the license is more permissive than that, but currently gnulib-tool
53234         doesn't know how to handle more-permissive licenses.
53235
53236         * modules/stat-macros (Depends-on): Don't depend on stat-macros (!).
53237         Problem reported by Dave Love.
53238
53239 2005-05-08  Jim Meyering  <jim@meyering.net>
53240
53241         * lib/classpath.c (PATH_SEPARATOR): Remove insignificant trailing
53242         blank.
53243
53244 2005-05-06  Paul Eggert  <eggert@cs.ucla.edu>
53245
53246         * modules/argmatch (Depends-on): Add stdbool.
53247         * modules/backupfile (Depends-on): Likewise.
53248         * modules/chdir-long (Depends-on): Likewise.
53249         * modules/closeout (Depends-on): Likewise.
53250         * modules/cycle-check (Depends-on): Likewise.
53251         * modules/dirname (Depends-on): Likewise.
53252         * modules/fnmatch (Depends-on): Likewise.
53253         * modules/fsusage (Depends-on): Likewise.
53254         * modules/fwriteerror (Depends-on): Likewise.
53255         * modules/getcwd (Depends-on): Likewise.
53256         * modules/getloadavg (Depends-on): Likewise.
53257         * modules/hard-locale (Depends-on): Likewise.
53258         * modules/makepath (Depends-on): Likewise.
53259         * modules/mountlist (Depends-on): Likewise.
53260         * modules/nanosleep (Depends-on): Likewise.
53261         * modules/posixtm (Depends-on): Likewise.
53262         * modules/quotearg (Depends-on): Likewise.
53263         * modules/readtokens (Depends-on): Likewise.
53264         * modules/readtokens0 (Depends-on): Likewise.
53265         * modules/readutmp (Depends-on): Likewise.
53266         * modules/save-cwd (Depends-on): Likewise.
53267         * modules/strftime (Depends-on): Likewise.
53268         * modules/userspec (Depends-on): Likewise.
53269         * modules/utimecmp (Depends-on): Likewise.
53270         * modules/xgetcwd (Depends-on): Likewise.
53271         * modules/xnanosleep (Depends-on): Likewise.
53272         * modules/xstrtod (Depends-on): Likewise.
53273         * modules/yesno (Depends-on): Likewise.
53274
53275 2005-05-05  Paul Eggert  <eggert@cs.ucla.edu>
53276
53277         * m4/getopt.m4 (gl_GETOPT): Check for Solaris 10 getopt, and avoid
53278         needless checks.
53279
53280 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
53281
53282         Merge from coreutils.  Among other things,
53283         add bulletproofing for cases where stdin, stdout, or stderr are closed.
53284         * lib/fd-safer.c: New file.
53285         * lib/fcntl-safer.h, open-safer.c: Remove.
53286         * lib/chdir-long.c: Fix comment "fetish" -> "coreutils".
53287         * lib/dup-safer.c: Include unistd-safer.h first.
53288         Don't include errno.h.
53289         (dup_safer) [!defined F_DUPFD]: Let fd_safer do the real work.
53290         * lib/file-type.h: Don't assume invoker included sys/stat.h first.
53291         * lib/file-type.c: Rely on file-type.h change.
53292         * lib/getloadavg.c: Include unistd-safer.h.
53293         (getloadavg): Use safer open.
53294         * lib/getusershell.c: Include "stdio-safer.h".
53295         (getusershell): Use safer fopen.
53296         * lib/long-options.c (long_options): Use NULL rather than 0.
53297         * lib/modechange.h (mode_free): Remove; all callers changed to invoke
53298         'free'.
53299         * lib/modechange.c: Likewise.
53300         xstrtol.h, stdbool.h, stddef.h: Don't include; no longer needed.
53301         (MODE_DONE): New constant.
53302         (struct mode_change): Remove 'next' member.
53303         (make_node_op_equals): New function; like the old one of the
53304         same name, except it allocates an array.
53305         (mode_compile, mode_create_from_ref): Use it.
53306         (mode_compile): Allocate result as an array, not a linked list.
53307         Parse octal string ourself, so that we catch mistakes like "+0".
53308         (mode_adjust): Arg is an array, not a linked list.
53309         * lib/modechange.c: Include stat-macros.h, xalloc.h.
53310         (S_ISDIR, S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR):
53311         (S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH, S_IRXWU):
53312         (S_IRWXG, S_IRWXO, CHMOD_MODE_BITS):
53313         Remove.  This is now stat-macros.h's job.
53314         (talloc): Remove.  All callers replaced by xalloc, so that
53315         our invokers don't have to worry about reporting memory failures.
53316         (make_node_op_equals): Remove.
53317         (MODE_ORDINARY_CHAGE, MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
53318         New constants.
53319         (struct mode_change): Moved here from modechange.h.
53320         (mode_append_entry): Remove.
53321         (mode_compile): Remove MASKED_OPS arg, since it encouraged
53322         apps to have incorrect behavior.  Use simpler algorithm for head
53323         and tail.  Don't futz with umask; that's now the job of mode_adjust.
53324         Detect more invalid usages rather than having somewhat-random behavior.
53325         Don't insert an "a=" action, as that leads to incorrect behavior.
53326         (mode_compile, mode_create_from_ref): Return NULL on error instead
53327         of an enum, since now there's only one way to have an error.  All
53328         callers changed.
53329         (mode_adjust): Accept new arg UMASK_VALUE, and interpret it
53330         at the correct time.  Simplify calculation of "+u" and its ilk.
53331         Don't mishandle "+X".
53332         (mode_free): Remove "register" and localize decls.
53333         * lib/modechange.h (MODE_X_IF_ANY_X, MODE_COPY_EXISTING):
53334         (struct mode_change): Move to modechange.c; callers don't
53335         need to see this stuff.
53336         (MODE_MASK_EQUALS, MODE_MASK_PLUS, MODE_MASK_MINUS, MODE_MASK_ALL):
53337         (MODE_INVALID, MODE_MEMORY_EXHAUSTED, MODE_BAD_REFERENCE): Remove.
53338         (mode_change, mode_adjust): Reflect the new signatures noted above.
53339         * lib/nanosleep.c (rpl_nanosleep): Include "timespec.h" before macros
53340         that might redefine system include files.
53341         (siginterrupt) [!HAVE_SIGINTERRUPT]: New macro.
53342         (my_usleep): Use NULL rather than (void *) 0.
53343         (rpl_nanosleep) [!defined SA_NOCLDSTOP]:
53344         Use siginterrupt to specify that system calls should be interrupted.
53345         (rpl_nanosleep): Move initialization of suspended closer to call of
53346         my_usleep.
53347         * lib/readutmp.h (read_utmp): New arg OPTIONS.  All uses changed.
53348         * lib/readutmp.c: Likewise.  Include signal.h, stdbool.h.
53349         (desirable_utmp_entry): New function.
53350         (read_utmp) [defined UTMP_NAME_FUNCTION]: Redo memory allocation
53351         using x2nrealloc, to simplify logic.
53352         (read_utmp) [!defined UTMP_NAME_FUNCTION]: Check for overflow in
53353         size calculation.  Do not assume utmp file is a regular file.
53354         * lib/readutmp.h (UT_PID): Moved here from ../src/who.c.
53355         (READ_UTMP_CHECK_PIDS): New constant.
53356         * lib/save-cwd.c: Include unistd-safer.h.
53357         (save_cwd): Use fd_safer.
53358         * lib/tempname.c (S_ISDIR, S_IRUSR, S_IRUSR, S_IWUSR, S_IXUSR): Remove.
53359         [!_LIBC] Include "stat-macros.h" instead.
53360         * lib/unistd-safer.h (fd_safer): New decl.
53361
53362 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
53363
53364         * modules/getloadavg (Depends-on): Add unistd-safer.
53365         * modules/getusershell (Depends-on): Add stdio-safer.
53366         * modules/lstat (Depends-on): Remove xalloc.
53367         * modules/mkstemp (Depends-on): Add stat-macros.
53368         * modules/modechange (Depends-on): Remove xstrtol.
53369         Add stat-macros, xalloc.
53370         * modules/save-cwd (Depends-on): Add unistd-safer.
53371         * modules/stdio-safer (Makefile.am): Remove lib_SOURCES.
53372         * modules/unistd-safer (Files): Add lib/fd-safer.c
53373         (Makefile.am): Remove lib_SOURCES.
53374
53375         * MODULES.html.sh (Enhancements for POSIX:2001 functions):
53376         Remove fcntl-safer; unistd-safer supersedes it.
53377
53378 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
53379
53380         * m4/euidaccess.m4 (gl_PREREQ_EUIDACCESS): Don't require
53381         AC_HEADER_STAT.
53382         * m4/lchown.m4 (gl_FUNC_CHOWN): Likewise.
53383         (gl_PREREQ_CHOWN): Remove.
53384         * m4/lstat.m4 (gl_FUNC_LSTAT): Require AC_FUNC_LSTAT instead of calling
53385         it.  Don't require AC_HEADER_STAT.
53386         (gl_PREREQ_LSTAT): Remove.
53387         * m4/mkstemp.m4 (gl_PREREQ_TEMPNAME): Check stdint.h only once.
53388         Don't require AC_HEADER_STAT.
53389         * m4/rmdir.m4 (gl_FUNC_RMDIR): Don't require AC_HEADER_STAT.
53390         (gl_PREREQ_RMDIR): Remove.
53391         * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME): Don't
53392         mention stat-macros.h or AC_HEADER_STAT, since we'll make
53393         the stat-macros module a prerequisite.
53394         * m4/file-type.m4 (gl_FILE_TYPE): Likewise.
53395         * m4/filemode.m4 (gl_FILEMODE): Likewise.
53396         * m4/makepath.m4 (gl_MAKEPATH): Likewise.
53397         * m4/modechange.m4 (gl_MODECHANGE): Likewise.
53398         * m4/clock_time.m4 (gl_CLOCK_TIME): Use gl_ rather than fetish_ for
53399         variable names.
53400         * m4/rmdir-errno.m4 (gl_FUNC_RMDIR_NOTEMPTY): Renamed from
53401         fetish_FUNC_RMDIR_NOTEMPTY.  All uses changed.  Use gl_ for
53402         variable prefixes.
53403         * m4/fcntl-safer.m4: Remove.
53404         * m4/stdio-safer.m4 (gl_STDIO_SAFER): Use AC_LIBSOURCES and AC_LIBOBJ.
53405         * m4/unistd-safer.m4 (gl_UNISTD_SAFER): Likewise.
53406         Invoke gl_PREREQ_FD_SAFER.
53407         (gl_PREREQ_FD_SAFER): New macro.
53408         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): Check for siginterrupt.
53409         * m4/readutmp.m4 (gl_READUTMP): Require AC_C_INLINE.
53410         Use AC_CHECK_HEADERS_ONCE and AC_CHECK_FUNCS_ONCE when possible.
53411         Remove duplicate call to AC_LIBOBJ(readutmp).
53412         (gl_PREREQ_READUTMP): Remove.  All uses inlined.
53413
53414         * m4/mmap-anon.m4 (gl_FUNC_MMAP_ANON): Check for message, not for
53415         MAP_ANON.  Problem reported by Moriyoshi Koizumi to bug-cvs.
53416
53417 2005-05-01  Paul Eggert  <eggert@cs.ucla.edu>
53418
53419         * MODULES.html.sh (Misc): Add byteswap.
53420
53421 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
53422
53423         * modules/getcwd (Depends-on): Add extensions.
53424         * modules/openat (Depends-on): Likewise.
53425
53426 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
53427
53428         * modules/byteswap: New file.
53429
53430 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
53431
53432         * m4/byteswap.m4: New file.
53433
53434 2005-05-01  Oskar Liljeblad  <oskar@osk.mine.nu>
53435
53436         * lib/byteswap_.h: New file.
53437
53438 2005-04-25  Karl Berry  <karl@gnu.org>
53439
53440         * m4/gettext.m4: Update from GNU gettext 0.14.4.
53441
53442 2005-04-25  Albert Chin  <china@thewrittenword.com>
53443
53444         * lib/regex.c: Include <stdio.h>, as a workaround to a Compaq Desktop
53445         Toolkit C bug.
53446
53447 2005-04-21  Oskar Liljeblad  <oskar@osk.mine.nu>
53448
53449         * gnulib-tool (Options): Add -s for --symlink/--symbolic.
53450         (func_ln_if_changed) Remove forcibly for no error message
53451         in case file does not exist.
53452
53453 2005-04-19  Simon Josefsson  <jas@extundo.com>
53454
53455         * gnulib-tool (Options): Make --symlink mean --symbolic.
53456
53457 2005-04-18  Oskar Liljeblad  <oskar@osk.mine.nu>
53458
53459         * doc/gnulib.texi (Initial import): Fix.  Mention --aux-dir.
53460
53461 2005-04-16  Simon Josefsson  <jas@extundo.com>
53462
53463         * modules/getpass-gnu (Makefile.am): Don't mention getpass.h.
53464
53465 2005-04-15  Simon Josefsson  <jas@extundo.com>
53466
53467         * m4/getpass.m4 (gl_FUNC_GETPASS): Use AC_LIBSOURCES.
53468
53469 2005-04-15  Simon Josefsson  <jas@extundo.com>
53470
53471         * gnulib-tool: Rename --symlink to --symbolic.
53472
53473 2005-04-15  Oskar Liljeblad  <oskar@osk.mine.nu>
53474
53475         * gnulib-tool: Add -s, --symlink option to gnulib-tool to make
53476         symbolic links to files instead of copying/moving.  Add --aux-dir,
53477         specifying directory relative --dir where auxiliary build tools
53478         are placed.
53479
53480 2005-04-14  Bruno Haible  <bruno@clisp.org>
53481
53482         * modules/allocsa (License): Change to LGPL.
53483         Requested by Yoann Vandoorselaere <yoann@prelude-ids.org>.
53484
53485 2005-04-13  Paul Eggert  <eggert@cs.ucla.edu>
53486
53487         * lib/getdate.y (zone): Allow relunit_snumber after tZONE, so
53488         that "UTC +1 second" continues to work.  Problem reported
53489         by Dmitry V. Levin.
53490         (relunit_snumber): New rule.
53491         (relunit): Use it.
53492
53493 2005-04-12  Paul Eggert  <eggert@cs.ucla.edu>
53494
53495         * lib/getdate.y (universal_time_zone_table): New constant.
53496         (time_zone_table): Remove GMT, UT, UTC entries; they're now in
53497         universal_time_zone_table.
53498         (lookup_zone): Prefer universal_time_zone_table to
53499         local_time_zone_table, so that "GMT" time stamps are allowed in
53500         London during the summer.  Problem reported by Ian Abbott.
53501
53502 2005-04-12  Jim Meyering  <jim@meyering.net>
53503
53504         * lib/human.c (humblock): Set *options even when returning due to
53505         xstrtoumax conversion failure.  Thanks to a used-uninitialized
53506         warning from gcc-4.
53507
53508 2005-04-09  Jim Meyering  <jim@meyering.net>
53509
53510         * lib/posixtm.c (posixtime) [lint]: Avoid spurious warning from gcc-4's
53511         -Wuninitialized: initialize tm0.tm_year.
53512
53513 2005-04-04  Paul Eggert  <eggert@cs.ucla.edu>
53514
53515         * lib/getdate.y (parser_control): rels_seen is now a boolean, not a
53516         count, since there's no maximum.  All uses changed.
53517         Add member dsts_seen.
53518         (local_zone): Accumulate dsts_seen rather than relying on tm_isdst
53519         not being INT_MAX.
53520         (get_date): Initialize dsts_seen, and check that it doesn't go over 1.
53521         Use pc_rels_seen to decide whther a date is absolute.
53522
53523         * lib/getdate.y (number): Don't overwrite year.
53524         (get_date): Initialize pc.year.digits to 0, not 4, to enable above
53525         check.
53526
53527 2005-04-02  Simon Josefsson  <jas@extundo.com>
53528
53529         * lib/getaddrinfo.h: Fix OpenBSD compilation failure, inspired by tiny
53530         patch from Yoann Vandoorselaere <yoann@prelude-ids.org>.
53531
53532 2005-03-28  Eric Blake  <ebb9@byu.net>  (tiny change)
53533
53534         * m4/getcwd-path-max.m4: Return success on systems such as Cygwin
53535         where no absolute path name can be longer than PATH_MAX.
53536
53537 2005-03-27  Jim Meyering  <jim@meyering.net>
53538
53539         * lib/argmatch.c: Clarify comment: null-terminated -> NULL-terminated.
53540
53541 2005-03-26  Paul Eggert  <eggert@cs.ucla.edu>
53542
53543         * lib/intprops.h (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND):
53544         "one's complement" -> "ones' complement" in comment, as per Knuth.
53545         "value of type" -> "type or expression" in comment.
53546         * lib/mktime.c, strftime.c: Propagate intprops.h comment nits.
53547
53548 2005-03-26  Jim Meyering  <jim@meyering.net>
53549
53550         Comment nits.
53551         * lib/intprops.h: Add the apostrophe in `(one|two)'s complement'.
53552         Correct typos: s/or/of/.
53553
53554 2005-03-26  Jim Meyering  <jim@meyering.net>
53555
53556         * modules/check-include-files: Move to ../ and rename to...
53557         * check-module: ...this.
53558
53559 2005-03-25  Jim Meyering  <jim@meyering.net>
53560
53561         * modules/xvasprintf (Files): Add xalloc.h.
53562
53563 2005-03-23  Paul Eggert  <eggert@cs.ucla.edu>
53564
53565         * modules/gettext (Files): config/config.rpath ->
53566         build-aux/config.rpath
53567         * modules/iconv (Files): Likewise.
53568         Problem reported by Oskar Liljeblad.
53569
53570 2005-03-23  Jim Meyering  <jim@meyering.net>
53571
53572         * modules/check-include-files: New script to check for
53573         missing dependencies, multiple includes, etc.
53574
53575         * modules/c-strtold (Depends-on): Add xalloc.
53576         * modules/c-strtod (Depends-on): Add xalloc.
53577         * modules/hash (Depends-on): Add xalloc.
53578         (Files): Remove lib/xalloc.h.
53579
53580         * modules/gethrxtime (Files): Add lib/gethrxtime.h.
53581         * modules/userspec (Files): Add lib/inttostr.h.
53582
53583 2005-03-23  Jim Meyering  <jim@meyering.net>
53584
53585         * lib/canonicalize.c: Remove duplicate `#include "stat-macros.h"'.
53586
53587 2005-03-22  Jim Meyering  <jim@meyering.net>
53588
53589         * modules/stat-macros: New module.
53590         * modules/canonicalize, modules/euidaccess, modules/file-type,
53591         * modules/filemode, modules/lchown, modules/makepath,
53592         * modules/rmdir, modules/stat: Depend on new stat-macros module
53593         rather than listing lib/stat-macros.h manually.
53594         Don't add stat-macros.h to lib_SOURCES or list it in Files: section.
53595
53596 2005-03-22  Jim Meyering  <jim@meyering.net>
53597
53598         * m4/stat-macros.m4 (gl_STAT_MACROS): New file/macro.
53599
53600 2005-03-22  Bruno Haible  <bruno@clisp.org>
53601
53602         * config/srclist.txt: Replace target directory 'config' with
53603         'build-aux'.
53604         * config/config.guess, config.sub, config.rpath, depcomp, install-sh:
53605         * config/mdate-sh, missing, mkinstalldirs, texinfo.tex: Move to
53606         ../build-aux/.
53607
53608 2005-03-21  Paul Eggert  <eggert@cs.ucla.edu>
53609
53610         * modules/chdir-long (Depends-on): Add mempcpy.
53611
53612         * modules/acl, modules/backupfile, modules/c-strtod,
53613         modules/c-strtold, modules/canon-host, modules/canonicalize,
53614         modules/cloexec, modules/closeout, modules/dirfd, modules/dirname,
53615         modules/exclude, modules/exitfail, modules/file-type,
53616         modules/filemode, modules/fpending, modules/fsusage, modules/getcwd,
53617         modules/getdate, modules/getline, modules/getpagesize,
53618         modules/getpass, modules/getugroups, modules/group-member,
53619         modules/hard-locale, modules/hash, modules/human, modules/idcache,
53620         modules/inttostr, modules/long-options, modules/makepath,
53621         modules/md5, modules/memcasecmp, modules/memcoll,
53622         modules/modechange, modules/mountlist, modules/path-concat,
53623         modules/pathmax, modules/physmem, modules/posixtm, modules/posixver,
53624         modules/quote, modules/quotearg, modules/readtokens, modules/readutmp,
53625         modules/safe-read, modules/safe-write, modules/same, modules/savedir,
53626         modules/settime, modules/sha1, modules/sig2str, modules/strdup,
53627         modules/strftime, modules/strndup, modules/strverscmp,
53628         modules/timespec, modules/unlocked-io, modules/userspec,
53629         modules/utimecmp, modules/utimens, modules/xalloc, modules/xstrtol,
53630         modules/yesno:
53631         Remove lib_SOURCES line from Makefile.am section, as this is now
53632         done automatically by the corresponding Autoconf macro.
53633
53634 2005-03-21  Jim Meyering  <jim@meyering.net>
53635
53636         Changes imported from coreutils.
53637
53638         * lib/cycle-check.c: Don't include xalloc.h.
53639
53640         * lib/path-concat.c: Don't include assert.h.
53641         (path_concat): Remove assertion that would have triggered
53642         for ABASE starting with more than one slash.
53643         Reported by Andreas Schwab.
53644
53645         * lib/path-concat.c (path_concat): Set *BASE_IN_RESULT
53646         properly when ABASE is an absolute file name.
53647         Correct the description of this function.
53648         Include <assert.h>.
53649         Add an assertion and a test driver.
53650         This fixes a bug introduced on 2004-07-02.
53651         Andreas Schwab reported the resulting failure of cp --parents:
53652         http://lists.gnu.org/archive/html/bug-coreutils/2005-01/msg00130.html
53653
53654 2005-03-21  Jim Meyering  <jim@meyering.net>
53655
53656         * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG): Invoke gl_FUNC_MEMRCHR.
53657         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Check for memrchr decl.
53658
53659 2005-03-21  Jim Meyering  <jim@meyering.net>
53660         and  Paul Eggert  <eggert@cs.ucla.edu>
53661
53662         * m4/acl.m4, m4/backupfile.m4, m4/c-strtod.m4, m4/canon-host.m4,
53663         m4/canonicalize.m4, m4/cloexec.m4, m4/closeout.m4, m4/dirfd.m4,
53664         m4/dirname.m4, m4/exclude.m4, m4/exitfail.m4, m4/file-type.m4,
53665         m4/filemode.m4, m4/fpending.m4, m4/fsusage.m4, m4/getcwd.m4,
53666         m4/getdate.m4, m4/getline.m4, m4/getpagesize.m4, m4/getpass.m4,
53667         m4/getugroups.m4, m4/group-member.m4, m4/hard-locale.m4, m4/hash.m4,
53668         m4/human.m4, m4/idcache.m4, m4/inttostr.m4, m4/long-options.m4,
53669         m4/makepath.m4, m4/md5.m4, m4/memcasecmp.m4, m4/memcoll.m4,
53670         m4/modechange.m4, m4/mountlist.m4, m4/nanosleep.m4, m4/path-concat.m4,
53671         m4/pathmax.m4, m4/physmem.m4, m4/posixtm.m4, m4/posixver.m4,
53672         m4/quote.m4, m4/quotearg.m4, m4/readtokens.m4, m4/readutmp.m4,
53673         m4/safe-read.m4, m4/safe-write.m4, m4/same.m4, m4/savedir.m4,
53674         m4/settime.m4, m4/sha1.m4, m4/sig2str.m4, m4/strdup.m4, m4/strftime.m4,
53675         m4/strndup.m4, m4/strverscmp.m4, m4/timespec.m4, m4/unlocked-io.m4,
53676         m4/userspec.m4, m4/utimecmp.m4, m4/utimens.m4, m4/xalloc.m4,
53677         m4/xnanosleep.m4, m4/xstrtol.m4, m4/yesno.m4:
53678         Use AC_LIBSOURCES and AC_LIBOBJ to indicate source and object files
53679         for these modules.
53680
53681 2005-03-18  Paul Eggert  <eggert@cs.ucla.edu>
53682
53683         * lib/strftime.c (my_strftime): If the underlying strftime returns 0
53684         (which shouldn't happen), generate nothing instead of returning 0
53685         immediately, so that nstrftime (NULL, ...) doesn't return 0.
53686
53687 2005-03-16  Bruno Haible  <bruno@clisp.org>
53688
53689         * modules/stdint (Makefile.am): Use HAVE_LONG_LONG_64BIT instead of
53690         HAVE_LONGLONG_64BIT.
53691
53692 2005-03-16  Bruno Haible  <bruno@clisp.org>
53693
53694         * m4/stdint.m4 (gl_STDINT_H): Define HAVE_LONG_LONG_64BIT instead of
53695         HAVE_LONGLONG_64BIT.
53696
53697 2005-03-16  Bruno Haible  <bruno@clisp.org>
53698
53699         * lib/stdint_.h: Use HAVE_LONG_LONG_64BIT instead of
53700         HAVE_LONGLONG_64BIT.
53701
53702 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
53703
53704         * lib/strftime.c (my_strftime): Prepend space to format so that we can
53705         reliably distinguish strftime failure from empty output on POSIX
53706         hosts.
53707
53708 2005-03-15  Paul Eggert  <eggert@cs.ucla.edu>
53709
53710         * lib/iconvme.c (SIZE_MAX): New macro, if not already defined.
53711         (iconv_string): Don't guess a size-zero buffer, as that might cause
53712         buffer overrun.  Instead, avoid multiplying by MB_LEN_MAX if the
53713         result would be 'too large', where 'too large' is (heuristically)
53714         the square root of SIZE_MAX, divided by MB_LEN_MAX to allay
53715         overflow concerns.  This will prevent some unwanted malloc failures
53716         when the inputs are very large.
53717
53718 2005-03-15  Karl Berry  <karl@gnu.org>
53719
53720         * config/srclist.txt (config.rpath): from gettext.
53721         * config/config.rpath: update.
53722
53723 2005-03-15  Bruno Haible  <bruno@clisp.org>
53724
53725         * lib/regex.c (byte_re_match_2_internal): Rename local variable 'not'
53726         to 'negate'.
53727
53728         * lib/regex.c (byte_re_match_2_internal): Reduce scope of same_str_p
53729         variable.
53730
53731         * lib/regex.c (EXTEND_BUFFER, regcomp): Cast the realloc/malloc
53732         results.
53733
53734 2005-03-14  Simon Josefsson  <jas@extundo.com>
53735
53736         * lib/timegm.h: Use proper prototype CPP guards, reported by Dave Love
53737         <fx@gnu.org>.
53738
53739 2005-03-14  Paul Eggert  <eggert@cs.ucla.edu>
53740
53741         * lib/mktime.c (TYPE_TWOS_COMPLEMENT, TYPE_ONES_COMPLEMENT,
53742         TYPE_SIGNED_MAGNITUDE, TYPE_MINIMUM, TYPE_MAXIMUM): Sync from
53743         intprops.h.
53744         * lib/strtol.c: Likewise.
53745
53746 2005-03-14  Jim Meyering  <jim@meyering.net>
53747
53748         * lib/strftime.c (my_strftime) [HAVE_STRFTIME && ! (_NL_CURRENT
53749         && HAVE_STRUCT_ERA_ENTRY)]: Initialize the first byte of ubuf[]
53750         to be nonzero so that we (and caller) can detect the difference
53751         between a valid zero-length expansion and an error return, even
53752         when the underlying strftime fails before writing anything into
53753         that location.
53754
53755 2005-03-14  Bruno Haible  <bruno@clisp.org>
53756
53757         * m4/lib-link.m4, gettext.m4, nls.m4, po.m4:
53758         Update from GNU gettext 0.14.3.
53759
53760 2005-03-10  Jim Meyering  <jim@meyering.net>
53761
53762         * m4/save-cwd.m4 (gl_SAVE_CWD): Check for fchdir.
53763
53764 2005-03-10  Jim Meyering  <jim@meyering.net>
53765
53766         * lib/save-cwd.c [!HAVE_FCHDIR]: Define open, fchdir, and chdir_long
53767         so that this module works on systems without fchdir.
53768
53769 2005-03-09  Paul Eggert  <eggert@cs.ucla.edu>
53770
53771         Factor int-properties macros into a single file, except for
53772         glibc-related files.
53773         * lib/intprops.h: New file.
53774         * lib/getloadavg.c: Include it instead of limits.h.
53775         (INT_STRLEN_BOUND): Remove.
53776         * lib/human.c: Include intprops.h.
53777         (group_number): Use INT_STRLEN_BOUND instead of rolling it ourself.
53778         * lib/human.h (LONGEST_HUMAN_READABLE): Use 146/485 rather than
53779         302/1000.
53780         * lib/inttostr.h: Include intprops.h instead of limits.h.
53781         (INT_STRLEN_BOUND, INT_BUFSIZE_BOUND): Remove.
53782         * lib/mktime.c (TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT): New macros,
53783         for consistency with intprops.h.
53784         (time_t_is_integer, twos_complement_arithmetic): Use them.
53785         * lib/sig2str.h: Include <signal.h>, intprops.h.
53786         (INT_STRLEN_BOUND): Remove.
53787         * lib/strftime.c (TYPE_SIGNED): Remove.
53788         (INT_STRLEN_BOUND): Switch to same implementation as intprops.h.
53789         * lib/strtol.c: Adjust comments to match intprops.h.
53790         * lib/userspec.c: Include intprops.h.
53791         (TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Remove.
53792         * lib/utimecmp.c, xnanosleep.c, xstrtol.c: Likewise.
53793         * lib/utimecmp.c (utimecmp): Use TYPE_IS_INTEGER, TYPE_TWOS_COMPLEMENT
53794         instead of rolling our own expressions.
53795         * lib/xstrtol.c: Include xstrtol.h first, to test interface.
53796
53797         * lib/strftime.c: Include <stdbool.h>.  Use bool where appropriate,
53798         instead of int.
53799         (my_strftime): Do not mishandle years close to INT_MAX, by doing
53800         the right thing even if adding 1900 would overflow.  Similarly
53801         for tm_mon + 1 and tm_yday + 1.
53802         Make %Y always equivalent to %C%y, and similarly for %G and %g.
53803         (DO_NUMBER, DO_NUMBER_SPACEPAD): Set digits to d, not a conditional.
53804         (DO_SIGNED_NUMBER): New macro.
53805         (my_strftime) [HAVE_TZNAME]: Don't dump core if tp->tm_dst > 1.
53806
53807 2005-03-07  Bruno Haible  <bruno@clisp.org>
53808
53809         * m4/mmap-anon.m4 (MAP_FILE, MAP_FAILED): Remove definitions.
53810
53811 2005-03-07  Bruno Haible  <bruno@clisp.org>
53812
53813         * lib/pagealign_alloc.c (MAP_FILE, MAP_FAILED): Define fallbacks.
53814
53815 2005-03-04  Derek R. Price  <derek@ximbiot.com>
53816
53817         * gnulib-tool (func_cp_if_changed, func_mv_if_changed): New functions.
53818         (func_import): Only replace files via --import when they have actually
53819         changed.
53820
53821 2005-03-03  Derek R. Price  <derek@ximbiot.com>
53822
53823         * m4/mmap-anon.m4: New file.
53824         * m4/pagealign_alloc.m4: New file.
53825
53826 2005-03-03  Derek R. Price  <derek@ximbiot.com>
53827             Bruno Haible  <bruno@clisp.org>
53828
53829         * modules/pagealign_alloc: New file.
53830         * MODULES.html.sh (Memory management functions): Add pagealign_alloc.
53831
53832 2005-03-03  Derek R. Price  <derek@ximbiot.com>
53833             Bruno Haible  <bruno@clisp.org>
53834
53835         * lib/pagealign_alloc.h: New file.
53836         * lib/pagealign_alloc.c: New file.
53837
53838 2005-03-03  Bruno Haible  <bruno@clisp.org>
53839
53840         * m4/inttypes.m4, isc-posix.m4, once-only.m4:
53841         Use an all-permissive copyright notice, recommended by RMS.
53842
53843 2005-03-02  Bruno Haible  <bruno@clisp.org>
53844
53845         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Undo the replacement here. Because
53846         of AIX, the replacement has to be done only after <string.h> is
53847         included, therefore not in config.h. stpncpy.h does the replacement,
53848         and stpncpy.c uses it.
53849
53850 2005-03-02  Bruno Haible  <bruno@clisp.org>
53851
53852         * lib/stpncpy.h (stpncpy): Define as a macro without arguments, so that
53853         stpncpy.c uses it.
53854
53855 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
53856
53857         Remove workaround for bug in Linux kernel 2.6.8 or thereabouts.
53858         The workaround isn't strictly needed for POSIX conformance, and
53859         it's too much of a pain to configure and maintain.  We'll ask
53860         people to fix their kernels instead.
53861         * lib/xnanosleep.c: Don't include gethrxtime.h or xtime.h.
53862         (NANOSLEEP_BUG_WORKAROUND): Remove.
53863         (xnanosleep): Remove the workaround.
53864
53865 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
53866
53867         * modules/gettime (Makefile.am): Remove lib_SOURCES line.
53868         Reported by Derek Price.
53869         (Include): Add "timespec.h".
53870
53871         * modules/xnanosleep (Depends-on): Remove gethrxtime.
53872
53873 2005-03-01  Paul Eggert  <eggert@cs.ucla.edu>
53874
53875         * m4/xnanosleep.m4 (gl_XNANOSLEEP): Remove configuration attempting
53876         to detect nanosleep bug.
53877
53878 2005-03-01  Bruno Haible  <bruno@clisp.org>
53879
53880         * lib/vasnprintf.c (EOVERFLOW): Define to a fallback if needed.
53881
53882 2005-02-26  Paul Eggert  <eggert@cs.ucla.edu>
53883
53884         * modules/gethrxtime: New file.
53885         * modules/xnanosleep (Files): Add m4/xnanosleep.m4.
53886         (Depends-on): Add gethrxtime.
53887         (configure.ac): Add gl_XNANOSLEEP.
53888         (Makefile.am): Remove lib_SOURCES line.
53889
53890 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
53891
53892         * m4/gethrxtime.m4, m4/xnanosleep.m4: New files.
53893         * m4/gettime.m4 (gl_GETTIME): Check for nanotime.
53894
53895 2005-02-25  Paul Eggert  <eggert@cs.ucla.edu>
53896
53897         * lib/gethrxtime.h, lib/gethrxtime.c, lib/xtime.h: New files.
53898         * lib/timespec.h (gettime): Return void, since it always
53899         succeeds now.  All uses changed.
53900         * lib/gettime.c (gettime) Likewise.
53901         [HAVE_NANOTIME]: Prefer nanotime.
53902         Assume gettimeofday succeeds, as POSIX requires.
53903         Assime time () succeeds, since other code already does.
53904         * lib/xnanosleep.c: Include xtime.h and gethrxtime.h, not xalloc.h.
53905         (timespec_subtract): Remove.
53906         (NANOSLEEP_BUG_WORKAROUND): New constant.
53907         (xnanosleep): Use gethrxtime rather than gettime; this simplifies
53908         things considerably.  Use it only on GNU/Linux hosts, since the
53909         workaround shouldn't be needed elsewhere.
53910
53911 2005-02-24  Bruno Haible  <bruno@clisp.org>
53912
53913         * modules/gettext (Files): Add m4/glibc2.m4.
53914
53915 2005-02-24  Bruno Haible  <bruno@clisp.org>
53916
53917         * m4/gettext.m4, intdiv0.m4, intmax.m4, inttypes-pri.m4, lcmessage.m4:
53918         * m4/lib-link.m4, lib-prefix.m4, nls.m4, po.m4, printf-posix.m4:
53919         * m4/progtest.m4:
53920         Update from GNU gettext 0.14.2.
53921         * m4/glibc2.m4: New file, from GNU gettext 0.14.2.
53922
53923 2005-02-24  Bruno Haible  <bruno@clisp.org>
53924
53925         * lib/localcharset.c: Update from GNU gettext 0.14.2.
53926         * lib/config.charset: Update from GNU gettext 0.14.2.
53927
53928 2005-02-24  Bruno Haible  <bruno@clisp.org>
53929
53930         * lib/gettext.h: Update from GNU gettext 0.14.2.
53931
53932 2005-02-23  Simon Josefsson  <jas@extundo.com>
53933
53934         * m4/iconvme.m4: New file.
53935
53936 2005-02-23  Jim Meyering  <jim@meyering.net>
53937
53938         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Revert yesteday's
53939         change.
53940         Thanks to Bruno Haible for catching it.
53941
53942 2005-02-22  Simon Josefsson  <jas@extundo.com>
53943
53944         * modules/iconvme: New file.
53945
53946         * MODULES.html.sh: Add iconvme.
53947
53948 2005-02-22  Simon Josefsson  <jas@extundo.com>
53949
53950         * lib/iconvme.h, lib/iconvme.c: New files, from libc.
53951
53952 2005-02-22  Simon Josefsson  <jas@extundo.com>
53953
53954         * config/srclist.txt: Sync iconvme.h, iconvme.c from libc.
53955
53956 2005-02-22  Jim Meyering  <jim@meyering.net>
53957
53958         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Fix typo:
53959         s/ifndef/ifdef/.
53960
53961 2005-02-20  Neil Conway  <neilc@samurai.com>
53962
53963         * lib/xgethostname.c (xgethostname): Check for ENOMEM, which is
53964         returned by OSX/Darwin if the specified buffer is not large
53965         enough for the hostname.
53966
53967 2005-02-03  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
53968
53969         * lib/argp-help.c (__argp_help): Create a fake struct argp_state and
53970         pass it to _help, otherwise the latter coredumps trying to
53971         dereference state.root_argp.
53972
53973 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
53974
53975         * modules/chdir-long (Depends-on): Add memrchr.
53976         * modules/memrchr (Files): Add lib/memrchr.h.
53977         (Include): "memrchr.h".
53978
53979 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
53980
53981         * m4/memrchr.m4 (gl_FUNC_MEMRCHR): Add AC_LIBSOURCES, for memrchr.h.
53982
53983 2005-02-03  Paul Eggert  <eggert@cs.ucla.edu>
53984
53985         * lib/memrchr.h: New file.
53986         * lib/chdir-long.c: Include it.
53987         * lib/memrchr.c [!defined _LIBC]: Include it rather than <string.h>
53988         Don't bother including stddef.h.
53989
53990 2005-02-01  Paul Eggert  <eggert@cs.ucla.edu>
53991
53992         * lib/mountlist.h (MOUNTLIST_H_): New macro, to protect against double
53993         inclusion.
53994         Include <sys/types.h>, for dev_t.
53995         (ME_DUMMY, ME_REMOTE): Move from here....
53996         * lib/mountlist.c (ME_DUMMY, ME_REMOTE): To here.
53997         (ME_DUMMY): Count "subfs" as a dummy.  Problem reported by
53998         Dmitry V. Levin.
53999         Include mountlist.h first, to test the interface.
54000
54001 2005-01-29  Bruno Haible  <bruno@clisp.org>
54002
54003         * lib/progname.c (program_name): Initialize.
54004         Needed when linking statically on MacOS X.
54005
54006 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
54007
54008         Sync from coreutils.
54009         * modules/getloadavg (Files): Remove m4/getloadavg.m4.
54010         (Depends-on): Add c-strtod.
54011         (configure.ac): Replace gl_FUNC_GETLOADAVG with AC_FUNC_GETLOADAVG.
54012
54013 2005-01-28  Paul Eggert  <eggert@cs.ucla.edu>
54014
54015         Sync from coreutils.
54016         * m4/getloadavg.m4, glibc.m4, search-libs.m4: Remove.
54017
54018         Remove files that are specific to coreutils.
54019         * m4/check-decl.m4, jm-macros.m4, lib-check.m4, prereq.m4: Remove.
54020
54021 2005-01-28  Bruno Haible  <bruno@clisp.org>
54022
54023         * modules/javacomp: New file.
54024         * MODULES.html.sh (Java): Add javacomp.
54025
54026 2005-01-28  Bruno Haible  <bruno@clisp.org>
54027
54028         * m4/javacomp.m4: New file, from GNU gettext.
54029
54030 2005-01-28  Bruno Haible  <bruno@clisp.org>
54031
54032         * lib/javacomp.sh.in: New file, from GNU gettext.
54033         * lib/javacomp.h: New file, from GNU gettext.
54034         * lib/javacomp.c: New file, from GNU gettext.
54035
54036 2005-01-26  Simon Josefsson  <jas@extundo.com>
54037
54038         * lib/gai_strerror.c: Use GPL in header.
54039
54040 2005-01-26  Bruno Haible  <bruno@clisp.org>
54041
54042         * modules/javaexec: New file.
54043         * MODULES.html.sh (Java): Add javaexec.
54044
54045 2005-01-26  Bruno Haible  <bruno@clisp.org>
54046
54047         * m4/javaexec.m4: New file, from GNU gettext.
54048
54049 2005-01-26  Bruno Haible  <bruno@clisp.org>
54050
54051         * lib/javaexec.sh.in: New file, from GNU gettext.
54052         * lib/javaexec.h: New file, from GNU gettext.
54053         * lib/javaexec.c: New file, from GNU gettext.
54054
54055 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
54056
54057         * modules/lchown (Depends-on): Remove lchown.h
54058
54059 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
54060
54061         * m4/sysexits.m4 (gl_SYSEXITS): Reverted logic. SYSEXITS_H
54062         must be defined if the header file was not found, in order
54063         to provide a replacement. Reported by Todd Vierling <tv@duh.org>
54064
54065 2005-01-24  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
54066
54067         * lib/argp-help.c (hol_entry_help): Avoid using non-constant
54068         initializers for struct pentry_state.
54069         (__argp_error): Check return value of __asprintf
54070         (__argp_failure): Translate error message
54071
54072         * lib/argp-parse.c: Removed braces around the expansion of N_()
54073
54074 2005-01-23  Paul Eggert  <eggert@cs.ucla.edu>
54075
54076         * m4/acl.m4, afs.m4, alloca.m4, argp.m4, assert.m4, atexit.m4,
54077         backupfile.m4, base64.m4, bison.m4, c-bs-a.m4, c-stack.m4,
54078         c-strtod.m4, calloc.m4, canon-host.m4, canonicalize.m4,
54079         clock_time.m4, cloexec.m4, closeout.m4, d-ino.m4, d-type.m4,
54080         dirfd.m4, dirname.m4, dos.m4, dup2.m4, error.m4, euidaccess.m4,
54081         exclude.m4, exitfail.m4, extensions.m4, fcntl-safer.m4,
54082         file-type.m4, fileblocks.m4, filemode.m4, fnmatch.m4, fpending.m4,
54083         free.m4, fstypename.m4, fsusage.m4, ftruncate.m4, getaddrinfo.m4,
54084         getcwd-path-max.m4, getcwd.m4, getdate.m4, getdomainname.m4,
54085         getgroups.m4, gethostname.m4, getline.m4, getndelim2.m4,
54086         getnline.m4, getopt.m4, getpagesize.m4, getpass.m4, getsubopt.m4,
54087         gettime.m4, gettimeofday.m4, getugroups.m4, getusershell.m4,
54088         group-member.m4, hard-locale.m4, hash.m4, host-os.m4, human.m4,
54089         idcache.m4, inttostr.m4, isdir.m4, jm-winsz1.m4, jm-winsz2.m4,
54090         link-follow.m4, long-options.m4, ls-mntd-fs.m4, lstat.m4,
54091         makepath.m4, mathl.m4, md5.m4, memcasecmp.m4, memchr.m4,
54092         memcmp.m4, memcoll.m4, memcpy.m4, memmem.m4, memmove.m4,
54093         memrchr.m4, memset.m4, mkdir-slash.m4, mkstemp.m4, mktime.m4,
54094         modechange.m4, mountlist.m4, nanosleep.m4, obstack.m4,
54095         path-concat.m4, pathmax.m4, perl.m4, physmem.m4, poll.m4,
54096         posixtm.m4, posixver.m4, putenv.m4, quote.m4, quotearg.m4,
54097         readdir.m4, readtokens.m4, readutmp.m4, regex.m4, rename.m4,
54098         restrict.m4, rmdir-errno.m4, rmdir.m4, rpmatch.m4, same.m4,
54099         savedir.m4, settime.m4, sha1.m4, sig2str.m4, snprintf.m4,
54100         sockpfaf.m4, st_dm_mode.m4, st_mtim.m4, stat.m4, stdint.m4,
54101         stdio-safer.m4, strchrnul.m4, strdup.m4, strerror.m4,
54102         strerror_r.m4, strftime.m4, strndup.m4, strnlen.m4, strsep.m4,
54103         strtod.m4, strtoimax.m4, strtok_r.m4, strtol.m4, strtoll.m4,
54104         strtoul.m4, strtoull.m4, strtoumax.m4, strverscmp.m4, sysexits.m4,
54105         time_r.m4, timegm.m4, timespec.m4, tm_gmtoff.m4, tzset.m4,
54106         uint32_t.m4, uintptr_t.m4, unistd-safer.m4, unlink-busy.m4,
54107         unlocked-io.m4, uptime.m4, userspec.m4, utimbuf.m4, utime.m4,
54108         utimecmp.m4, utimens.m4, utimes-null.m4, vsnprintf.m4, xalloc.m4,
54109         xgetcwd.m4, xreadlink.m4, xstrndup.m4, xstrtod.m4, xstrtoimax.m4,
54110         xstrtol.m4, xstrtoumax.m4, yesno.m4:
54111         Use an all-permissive copyright notice, recommended by RMS.
54112
54113 2005-01-21  Paul Eggert  <eggert@cs.ucla.edu>
54114
54115         * modules/chdir-long (Depends-on): Remove mempcpy.
54116
54117 2005-01-21  Jim Meyering  <jim@meyering.net>
54118
54119         * lib/openat.h (AT_SYMLINK_NOFOLLOW): Define to 4096, so it's the
54120         same value as for Solaris 9.
54121
54122         * lib/chdir-long.c (chdir_long): Rewrite to remove limitation on
54123         component length.  This included changing the parameter to be
54124         of type `char *' rather than `char const *'.
54125         * lib/chdir-long.h (chdir_long): Update prototype.
54126
54127         * lib/openat.c (fdopendir, fstatat): New functions.
54128         * lib/openat.h: Include headers required for use of DIR and struct
54129         stat.
54130         [AT_SYMLINK_NOFOLLOW]: Define.
54131         (fdopendir, fstatat): Add prototypes.
54132
54133 2005-01-21  Bruno Haible  <bruno@clisp.org>
54134
54135         * modules/classpath: New file.
54136         * MODULES.html.sh (Java): Add classpath.
54137
54138 2005-01-21  Bruno Haible  <bruno@clisp.org>
54139
54140         * lib/classpath.h: New file, from GNU gettext.
54141         * lib/classpath.c: New file, from GNU gettext.
54142
54143 2005-01-20  Simon Josefsson  <jas@extundo.com>
54144
54145         * modules/version-etc-fsf: New file.
54146
54147 2005-01-20  Simon Josefsson  <jas@extundo.com>
54148
54149         * lib/version-etc-fsf.c: New file, with version_etc_copyright.
54150         * lib/version-etc.c: Remove version_etc_copyright.
54151         * lib/version-etc.h (version_etc_copyright): Use [] instead of * in
54152         prototype, suggested by Paul Eggert <eggert@CS.UCLA.EDU>.
54153
54154 2005-01-20  Simon Josefsson  <jas@extundo.com>
54155
54156         * lib/base64.h (isbase64): Add.
54157
54158         * lib/base64.c (isb64): Rename to isbase64, use to_uchar instead of
54159         using a unsigned prototype, don't inline.
54160         (base64_decode): Use it.
54161
54162 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
54163
54164         * m4/save-cwd.m4 (gl_SAVE_CWD): Remove check for fcntl; we now assume
54165         it.
54166
54167 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
54168
54169         * lib/save-cwd.c (save_cwd): Remove code to support the case
54170         where fchdir is missing or flaky.
54171
54172 2005-01-20  Paul Eggert  <eggert@cs.ucla.edu>
54173
54174         * MODULES.html.sh (Command-line arguments): Add version-etc-fsf.
54175
54176 2005-01-19  Paul Eggert  <eggert@cs.ucla.edu>
54177
54178         * modules/mempcpy (Makefile.am): Remove mention of mempcpy.h;
54179         AC_LIBSOURCES now does this.
54180         * MODULES.html.sh (Sizes of integer types <limits.h>): New element,
54181         with new ullong_max module.
54182
54183 2005-01-19  Bruno Haible  <bruno@clisp.org>
54184
54185         * modules/sh-quote: New file.
54186         * MODULES.html.sh (Executing programs): Add sh-quote.
54187
54188 2005-01-19  Bruno Haible  <bruno@clisp.org>
54189
54190         * lib/sh-quote.h: New file, from GNU gettext.
54191         * lib/sh-quote.c: New file, from GNU gettext.
54192
54193 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
54194
54195         Merge from coreutils.
54196         * m4/ullong_max.m4: New file.
54197         * m4/jm-macros.m4 (gl_MACROS): Require gl_ULLONG_MAX.
54198         (gl_MACROS): Assume localeconv exists.
54199
54200 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
54201
54202         Merge changes from coreutils, as described below in several
54203         changelogs dated today.
54204
54205         * lib/save-cwd.c: Include "save-cwd.h" before other include files.
54206         (O_DIRECTORY): Remove; not needed here, since "." must be
54207         a directory.  All uses removed.
54208         (save_cwd): Use __sgi || __sun, not sun || __sun.  __sun is
54209         universal on Suns, and we also need to test for IRIX.
54210         Revamp code to use 'if' rather than '#if'.
54211         Avoid unnecessary comparison of cwd->desc to 0.
54212
54213         * lib/utimens.c (futimens): Robustify the previous patch, by checking
54214         for known valid error numbers rather than observed invalid ones.
54215
54216 2005-01-18  Paul Eggert  <eggert@cs.ucla.edu>
54217
54218         * modules/ullong_max: New file.
54219
54220         * modules/chdir-long, modules/openat: New files.
54221         * modules/save-cwd (Depends-on): Depend on chdir-long.
54222         (Makefile.am): Remove lib_SOURCES; now handled by AC_LIBSOURCES.
54223
54224 2005-01-18  Jim Meyering  <jim@meyering.net>
54225
54226         Merge from coreutils.
54227         * m4/chdir-long.m4, m4/openat.m4: New files.
54228         * m4/save-cwd.m4 (gl_SAVE_CWD): Add AC_LIBSOURCES for save-cwd.c,
54229         save-cwd.h.  Add AC_LIBOBJ for save-cwd.
54230         * m4/chown.m4 (gl_FUNC_CHOWN): When cross-compiling, assume that chown
54231         is sane and DOES follow symlinks.  Besides, testing 20 different
54232         systems found no broken chown implementations.
54233         Prompted by a change in rsync's copy of this macro.
54234         * m4/jm-macros.m4 (gl_MACROS): Require gl_FUNC_CHDIR_LONG.
54235
54236         * m4/lchown.m4 (gl_FUNC_LCHOWN): Use AC_LIBSOURCES.
54237
54238         * m4/utimes.m4: Work around tests/touch/empty-file failure on a system
54239         (sparc64, Linux-2.4.28, glibc-2.3.3) that didn't honor utimes'
54240         NULL-means-set-to-current-time semantics.
54241         Remove temporary file immediately, rather than waiting
54242         for configure's at-exit trap code to do it.
54243
54244 2005-01-18  Jim Meyering  <jim@meyering.net>
54245
54246         * lib/version-etc.c (version_etc_copyright): Update copyright date.
54247
54248         * lib/utimens.c (futimens): Account for the fact that futimes
54249         can also fail with errno == ENOSYS or errno == ENOENT.
54250         Patch from Dmitry V. Levin.
54251
54252         Change the name of the robust chdir function from chdir to chdir_long.
54253         * lib/save-cwd.c: Include chdir-long.h rather than chdir.h.
54254         (restore_cwd): Use chdir_long, not chdir.
54255         * lib/chdir-long.c: Renamed from chdir.c.
54256         * lib/chdir-long.h: Renamed from chdir.h.
54257         [!defined PATH_MAX]: Define chdir_long to chdir on systems like the
54258         Hurd.
54259
54260 2005-01-18  Bruno Haible  <bruno@clisp.org>
54261
54262         * m4/allocsa.m4, m4/codeset.m4, m4/copy-file.m4, m4/eaccess.m4:
54263         * m4/eealloc.m4, m4/eoverflow.m4, m4/execute.m4, m4/fatal-signal.m4:
54264         * m4/findprog.m4, m4/glibc21.m4, m4/iconv.m4, m4/intmax_t.m4:
54265         * m4/inttypes_h.m4, m4/lib-ld.m4, m4/lib-link.m4, m4/lib-prefix.m4:
54266         * m4/linebreak.m4, m4/localcharset.m4, m4/longdouble.m4:
54267         * m4/longlong.m4, m4/mbrtowc.m4, m4/mbstate_t.m4, m4/mbswidth.m4:
54268         * m4/mkdtemp.m4, m4/pipe.m4, m4/readlink.m4, m4/safe-read.m4:
54269         * m4/safe-write.m4, m4/setenv.m4, m4/sig_atomic_t.m4:
54270         * m4/signalblocking.m4, m4/signed.m4, m4/size_max.m4, m4/ssize_t.m4:
54271         * m4/stdbool.m4, m4/stdint_h.m4, m4/stpcpy.m4, m4/stpncpy.m4:
54272         * m4/strcase.m4, m4/strcspn.m4, m4/strpbrk.m4, m4/strstr.m4:
54273         * m4/ucs4-utf.m4, m4/uintmax_t.m4, m4/ulonglong.m4, m4/unicodeio.m4:
54274         * m4/utf-ucs4.m4, m4/vasnprintf.m4, m4/vasprintf.m4:
54275         * m4/wait-process.m4, m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4:
54276         Use an all-permissive copyright notice, recommended by RMS.
54277
54278 2005-01-18  Bob Proulx  <bob@proulx.com>
54279
54280         * lib/obstack.c [DEFAULT_ALIGNMENT]: Use an intermediate type to
54281         simplify offsetof() macro construct to avoid compile failure with
54282         native HP-UX 11.0 ANSI C compiler.
54283
54284 2005-01-17  Bruno Haible  <bruno@clisp.org>
54285
54286         * lib/stpncpy.c: Remove HAVE_STPNCPY and gnu_stpncpy renaming,
54287         redundant because stpncpy.m4 takes care of it.
54288
54289 2005-01-17  Bruno Haible  <bruno@clisp.org>
54290
54291         * lib/progreloc.c: Include xalloc.h instead of xmalloc.h.
54292
54293 2005-01-17  Bruno Haible  <bruno@clisp.org>
54294
54295         * lib/progreloc.c (xstrdup): Define as strdup if no xmalloc should be
54296         used.
54297
54298 2005-01-17  Bruno Haible  <bruno@clisp.org>
54299
54300         * lib/fwriteerror.h (fwriteerror): Change specification to include
54301         fclose.
54302         * lib/fwriteerror.c: Include <stdbool.h>.
54303         (fwriteerror): At the end, close the file stream. Record whether
54304         stdout was already closed.
54305
54306 2005-01-17  Bruno Haible  <bruno@clisp.org>
54307
54308         * lib/execute.c (environ): Declare if needed.
54309         * lib/pipe.c (environ): Likewise.
54310         Reported by Michael Schloh von Bennewitz <michael.schloh@cw.com>.
54311
54312 2005-01-11  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
54313
54314         * modules/argp: Depend on vsnprintf
54315
54316 2005-01-10  Jim Meyering  <jim@meyering.net>
54317
54318         * modules/closeout (Depends-on): Add atexit.
54319
54320 2005-01-06  Bruno Haible  <bruno@clisp.org>
54321
54322         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Rename stpncpy to gnu_stpncpy here.
54323
54324 2005-01-04  Paul Eggert  <eggert@cs.ucla.edu>
54325
54326         * lib/human.c (SIZE_MAX, UINTMAX_MAX): Move these conditional
54327         definitions to be after all include files, to avoid collisions.
54328         Problem reported by Bob Proulx.
54329
54330 2005-01-04  Jim Meyering  <jim@meyering.net>
54331
54332         Changes imported from coreutils.
54333         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Rather than using "conftestXXXXXX"
54334         as the mkstemp template, use a temporary directory and an
54335         8.3-friendly template to avoid trouble on systems like DJGPP.
54336         Reported by Juan M. Guerrero via Stepan Kasal.
54337         * m4/(gl_FUNC_MKSTEMP): Include <unistd.h> for the declaration of
54338         close. Remove the temporary directory right away, rather than waiting
54339         for configure's at-exit trap code to do it.
54340         Suggestion from Stepan Kasal.
54341
54342 2005-01-01  Simon Josefsson  <jas@extundo.com>
54343
54344         * gnulib-tool: Print #include directives when --import'ing.
54345
54346 2004-12-28  Simon Josefsson  <jas@extundo.com>
54347
54348         * tests/test-base64.c: Include required header files.  Remove
54349         unused variables.
54350
54351 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
54352
54353         * modules/error (Depends-on): Remove gettext.
54354
54355 2004-12-28  Paul Eggert  <eggert@cs.ucla.edu>
54356
54357         * lib/error.c [!_LIBC && !ENABLE_NLS]: Do not include "gettext.h";
54358         not needed.  This removes a dependency on the gettext module.
54359         [defined _LIBC]: Do not include <libintl.h>; not needed.
54360
54361 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
54362
54363         * m4/c-strtod.m4 (gl_C99_STRTOLD): New macro.
54364         (gl_C_STRTOD): Use it instead of AC_CHECK_DECLS_ONCE(strtold).
54365
54366 2004-12-24  Paul Eggert  <eggert@cs.ucla.edu>
54367
54368         * lib/c-strtod.c (STRTOD): Depend on HAVE_C99_STRTOLD, not
54369         HAVE_DECL_STRTOLD.
54370
54371 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
54372
54373         * modules/getdate (Depends-on): Remove alloca-opt.
54374
54375 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
54376
54377         * m4/getdate.m4 (gl_GETDATE): Remove AC_FUNC_ALLOCA.
54378
54379 2004-12-23  Paul Eggert  <eggert@cs.ucla.edu>
54380
54381         * lib/argp-parse.c: Include <stddef.h>.
54382         (alignof, alignto): New macros.
54383         (parser_init): Don't assume that void * is aligned sufficiently
54384         for struct option.
54385
54386         * lib/getdate.y (YYSTACK_USE_ALLOCA): Define to 0, since there's no
54387         need to extend the stack.
54388         (YYINITDEPTH): New macro, so that the initial stack isn't overly
54389         large.
54390
54391 2004-12-22  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
54392
54393         * lib/argp-parse.c (parser_init): Avoid arithmetics on void pointers.
54394
54395 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
54396
54397         * modules/regex (lib_SOURCES): Remove regex.c, undoing previous
54398         (2004-10-24) change.  Apparently this was a false alarm.
54399
54400         * modules/getdate: Depend on alloca-opt, not alloca.
54401
54402 2004-12-19  Paul Eggert  <eggert@cs.ucla.edu>
54403
54404         * lib/alloca_.h: Conditionalize on _GNULIB_ALLOCA_H, not _ALLOCA_H.
54405         Remove now-obsolete comment about AIX.
54406         * lib/getdate.y: Include <alloca.h> only if HAVE_ALLOCA.
54407         (YYSTACK_USE_ALLOCA): Define to 0 if !HAVE_ALLOCA.
54408         (YYMAXDEPTH): New macro.
54409
54410 2004-12-18  Simon Josefsson  <jas@extundo.com>
54411
54412         * modules/alloca: Depend on alloca-opt, instead of duplicating it.
54413
54414 2004-12-18  Bruno Haible  <bruno@clisp.org>
54415
54416         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Also test for sigaction.
54417
54418 2004-12-18  Bruno Haible  <bruno@clisp.org>
54419
54420         * lib/fatal-signal.c (fatal_signals): Make non-const.
54421         (init_fatal_signals): New function.
54422         (uninstall_handlers, install_handlers): Ignore signals that were set to
54423         SIG_IGN.
54424         (at_fatal_signal): Call init_fatal_signals.
54425         (init_fatal_signal_set): Likewise. Ignore signals that were set to
54426         SIG_IGN.
54427         Reported by Paul Eggert.
54428
54429 2004-12-18  Bruno Haible  <bruno@clisp.org>
54430
54431         * doc/alloca.texi: New file.
54432         * doc/alloca-opt.texi: New file.
54433
54434 2004-12-17  Jim Meyering  <jim@meyering.net>
54435
54436         * config/install-sh: Use `(exit N); exit N', not `(exit N); exit'.
54437         Otherwise, install-sh could exit with improper exit status when
54438         exiting via a trapped interrupt.  Thanks to a report from Bob Proulx.
54439
54440 2004-12-16  Simon Josefsson  <jas@extundo.com>
54441
54442         * tests/test-base64.c: Add license.
54443
54444 2004-12-15  Stepan Kasal  <address@hidden>
54445
54446         * gnulib-tool (func_emit_lib_Makefile_am): Shorten a long sed command.
54447
54448 2004-12-12  Paul Eggert  <eggert@cs.ucla.edu>
54449
54450         * modules/getcwd (Files): Add m4/d-ino.m4.
54451         Suggested by Mark D. Baushke.
54452
54453 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
54454
54455         * lib/getdate.y (textint): New member "negative".
54456         (time_zone_hhmm): New function.
54457         Expect 14 shift-reduce conflicts, not 13.
54458         (o_colon_minutes): New rule.
54459         (time, zone): Use it to add support for +HH:MM, UTC+HH:MM.
54460         (yylex): Set the "negative" member of signed numbers.
54461
54462 2004-12-08  Paul Eggert  <eggert@cs.ucla.edu>
54463
54464         * doc/getdate.texi (Time of day items, Time zone items):
54465         Describe new formats +00:00, UTC+00:00.
54466
54467 2004-12-07  Paul Eggert  <eggert@cs.ucla.edu>
54468
54469         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): Fix typo in previous change:
54470         spurious "-l"s.  Problem reported by Stepan Kasal.
54471
54472 2004-12-06  Paul Eggert  <eggert@cs.ucla.edu>
54473
54474         * m4/ls-mntd-fs.m4 (AC_FUNC_GETMNTENT): New macro, to work around bug
54475         in Autoconf 2.59.  Problem reported by Mark D. Baushke.
54476
54477 2004-12-04  Simon Josefsson  <jas@extundo.com>
54478
54479         * modules/getaddrinfo (License): Add LGPL, reported by Yoann
54480         Vandoorselaere <yoann@prelude-ids.org>.
54481
54482 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
54483
54484         Changes imported from coreutils.
54485         * m4/hard-locale.m4 (gl_HARD_LOCALE): Assume locale.h and setlocale
54486         exist.
54487         * m4/human.m4 (gl_HUMAN): Assume locale.h and localeconv exist.
54488
54489 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
54490
54491         Changes imported from coreutils.
54492         * lib/hard-locale.c: Assume <locale.h> exists.
54493         Include "strdup.h".
54494         (GLIBC_VERSION): New macro.
54495         (hard_locale): Assume setlocale exists.
54496         Rewrite to avoid #ifdef.
54497         Use strdup rather than malloc + strcpy.
54498         * lib/human.c: Assume <locale.h> exists.
54499         (human_readable): Assume localeconv exists.
54500
54501 2004-12-04  Paul Eggert  <eggert@cs.ucla.edu>
54502
54503         * modules/hard-locale (Depends-on): Add strdup.
54504
54505 2004-12-01  Jakub Jelinek  <jakub@redhat.com>
54506
54507         * lib/mktime.c (__mktime_internal): If SEC_REQUESTED != SEC,
54508         convert T2, not T.  (Imported from libc.)
54509
54510 2004-11-30  Simon Josefsson  <jas@extundo.com>
54511
54512         * modules/restrict (License): Change to LGPL.
54513
54514 2004-11-30  Simon Josefsson  <jas@extundo.com>
54515
54516         * m4/restrict.m4: Add copyright and copying conditions.
54517
54518 2004-11-30  Simon Josefsson  <jas@extundo.com>
54519
54520         * m4/base64.m4: New file.
54521
54522 2004-11-30  Simon Josefsson  <jas@extundo.com>
54523
54524         * MODULES.html.sh (Extra functions based on ANSI C 89): Add
54525         base64.
54526
54527         * tests/test-base64.c: New file.
54528
54529         * modules/base64: New file.
54530
54531 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
54532
54533         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX):
54534         Define HAVE_PARTLY_WORKING_GETCWD if getcwd is partly working.
54535
54536         * m4/readutmp.m4 (gl_READUTMP): Don't check for sys/param.h.
54537
54538 2004-11-30  Paul Eggert  <eggert@cs.ucla.edu>
54539
54540         * lib/getcwd.c (is_ENAMETOOLONG): New macro.
54541         (__getcwd.c): Don't restore errno; glibc doesn't.
54542         [HAVE_PARTLY_WORKING_GETCWD && !defined AT_FDCWD]: Try system getcwd
54543         first, falling back to our code only if its results look suspicious.
54544         Ensure that the resulting buffer is only as large as necessary.
54545
54546         * lib/readutmp.c: Include readutmp.h first.
54547         Include <errno.h>, since readutmp.h no longer does that.
54548         * lib/readutmp.h: Don't include <errno.h>,
54549         <sys/param.h>, <time.h>; not needed to establish interface.
54550         (errno): Remove decl.
54551         (HAVE_STRUCT_XTMP_UT_TYPE): Remove; no longer needed.
54552         (UT_TYPE_EQ, UT_TYPE_NOT_DEFINED, UT_TYPE_BOOT_TIME,
54553         UT_TYPE_USER_PROCESS, IS_USER_PROCESS): New macros.
54554
54555 2004-11-28  Simon Josefsson  <jas@extundo.com>
54556
54557         * lib/base64.h, base64.c: New file.
54558
54559 2004-11-27  Paul Eggert  <eggert@cs.ucla.edu>
54560
54561         * lib/getcwd.h: New file, which I forgot to check in on 2004-11-25.
54562
54563 2004-11-26  Paul Eggert  <eggert@cs.ucla.edu>
54564
54565         * modules/getcwd (Files): Add lib/getcwd.h, m4/getcwd.m4.
54566         (Depends-on): Remove pathmax, same.  Add mempcpy.
54567         (configure.ac): GL_FUNC_GETCWD_PATH_MAX -> gl_FUNC_GETCWD.
54568         (Makefile.am): Append getcwd.h to lib_SOURCES.
54569         (Include): Add getcwd.h.
54570         (Maintainer): Change from Jim Meyering to "all, glibc",
54571         since getdate now uses intended-for-glibc code.
54572         * modules/xgetcwd (Files): Remove m4/getcwd.m4.
54573         (Depends-on): Depend on getcwd.  Do not depend on pathmax.
54574
54575 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
54576
54577         Fix problems reported by Scott S. Tinsley for HP-UX 11.11 using
54578         HP's ANSI C compiler.
54579         * lib/fsusage.c (statvfs) [HAVE_SYS_STATVFS_H]: Remove decl.
54580         Declaring int functions causes warnings on some modern systems and
54581         shouldn't be needed to compile on ancient ones.
54582         * lib/same.c (MIN) [defined MIN]: Don't define, since it's already
54583         defined.
54584
54585         * lib/getcwd.c: Replace by a copy of glibc/sysdeps/posix/getcwd.c, but
54586         with the following changes.
54587         (__set_errno): Parenthesize properly.
54588         Include <stdbool.h>.
54589         (MIN, MAX, MATCHING_INO): New macros.
54590         (__getcwd): Define with prototype, not K&R form.
54591         Use heuristics to allocate default buffer on stack if possible.
54592         If AT_FDCWD is defined, use openat and fstatat to avoid O(N**2)
54593         behavior, and to avoid the PATH_MAX limit when computing
54594         ../../../../...
54595         Use MATCHING_INO to compare inode number to file.
54596         Check for arithmetic overflow in size calculations.
54597         Fix bug in reallocation of dot array that caused getcwd to fail
54598         on directories nested deeper than 75.
54599         Be more careful about saving errno on error.
54600         Do not use realloc; use only free+malloc, as this is a bit
54601         more flexible and avoids a needless copy operation.
54602         Do not inspect st_dev and st_ino for symbolic links; POSIX
54603         doesn't specify the latter.
54604         Check for closedir errors.
54605         Avoid needless casts.
54606         Use "#ifdef weak_alias" around weak_alias, to be like other
54607         glibc code.
54608         The following changes to getcwd.c have effect only when used in
54609         gnulib; they have no effect inside glibc proper.
54610         (#pragma alloca) [defined _AIX && !defined __GNUC__]: Remove,
54611         as alloca isn't used.
54612         (alloca, __alloca): Likewise.
54613         [!_LIBC]: Include "getcwd.h", "mempcpy.h".
54614         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
54615         unconditionally, as gnulib assumes C89 or better.
54616         Do not include <sys/param.h>.
54617         (errno) [!defined __GNU_LIBRARY__ && !defined STDC_HEADERS]: Remove
54618         no-longer-necessary 'extern int errno' decl; gnulib assumes C89 or
54619         better.
54620         (NULL) [!defined NULL]: Remove; we assume C89 or better.
54621         Include <dirent.h> in a way that is compatible with modern Autoconf.
54622         (_D_ALLOC_NAMELEN, _D_EXACT_NAMLEN):
54623         New macros, if not already defined.
54624         Include <unistd.h> if _LIBC, not if __GNU_LIBRARY__.
54625         Use "_LIBC", not "defined _LIBC", for consistency.
54626         (HAVE_MEMPCPY): Remove; no longer needed now that gnulib has
54627         a mempcpy module.
54628         (__lstat, __closedir, __opendir, __readdir) [!_LIBC]: New macros.
54629         (GETCWD_RETURN_TYPE): Remove.  All uses replaced by char *.
54630         * lib/xgetcwd.c: David MacKenzie's old code was removed, so give
54631         credit only to Jim Meyering and adjust the copyright dates.
54632         Do not include <limits.h>, <stdio.h>, <sys/types.h>,
54633         <stdlib.h>, <unistd.h>, "pathmax.h".
54634         Instead, include "xgetcwd.h" (first) and "getcwd.h".
54635         (INITIAL_BUFFER_SIZE): Remove.
54636         (xgetcwd): Rely on getcwd, since we now depend on a reliable one.
54637
54638 2004-11-25  Paul Eggert  <eggert@cs.ucla.edu>
54639
54640         * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX): Renamed from
54641         GL_FUNC_GETCWD_PATH_MAX for consistency.  All uses changed.
54642         Use the _ONCE methods, for efficiency.
54643         Check for fcntl.h.  In test program, include <errno.h>
54644         and <fcntl.h> if available.  Remove old K&R cruft from
54645         test program.  Check for common errors in GNU/Linux,
54646         OpenBSD, and Solaris.  Just set gl_cv_func_getcwd_path_max;
54647         don't do AC_LIBOBJ, as that's getcwd.m4's job.
54648         * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL): Renamed from
54649         AC_FUNC_GETCWD_NULL.  All used changed.  Change cache variable
54650         name accordingly.
54651         (gl_FUNC_GETCWD, gl_PREREQ_GETCWD): New macros.  Revamp to
54652         accommodate new getcwd.c.
54653         * m4/jm-macros.m4 (gl_MACROS): Don't require GL_FUNC_GETCWD_PATH_MAX.
54654         * m4/prereq.m4 (gl_PREREQ): Add gl_FUNC_MEMPCPY.
54655         * m4/xgetcwd.m4 (gl_XGETCWD): Replace with gl_FUNC_GETCWD, since
54656         that's all we need now.
54657
54658 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
54659
54660         * m4/argp.m4 (gl_ARGP): Require gl_GETOPT_SUBSTITUTE unconditionally:
54661         argp-parse.c depends on getopt internals, that means we should
54662         always use our getopt, to be on the safe side.
54663         * m4/getopt.m4 (gl_GETOPT): Check if GETOPT_H is already set, in
54664         order not to spoil the result of an eventual previous invocation
54665         of gl_GETOPT_SUBSTITUTE.
54666
54667 2004-11-23  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
54668
54669         * lib/getopt_.h: Re-addition of __getopt_argv_const caused
54670         redefinition warnings. To avoid them, include the defines
54671         in `#if !defined __need_getopt ... #endif'. The only place
54672         where __getopt_argv_const is used is in definitions
54673         of getopt_long and getopt_long_only below, which are as well
54674         protected by `#ifndef __need_getopt'.
54675         [defined __GETOPT_PREFIX && !defined __need_getopt]: Undef
54676         __need_getopt after including <stdio.h> and <unistd.h> These
54677         headers might have defined it.
54678
54679 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
54680
54681         * m4/utimens.m4 (gl_UTIMENS): Check for futimes function.
54682
54683 2004-11-23  Paul Eggert  <eggert@cs.ucla.edu>
54684
54685         * lib/utimens.c (__attribute__, ATTRIBUTE_UNUSED): New macros.
54686         (futimens): New function, which uses futimes if available.
54687         (futimens, utimens): Support timespec==NULL, with same semantics
54688         as utime and utimens.
54689         * lib/utimens.h (futimens): New decl.
54690
54691 2004-11-23  Jim Meyering  <jim@meyering.net>
54692
54693         * lib/getopt_.h: Remove trailing blanks.
54694
54695 2004-11-23  Jim Meyering  <jim@meyering.net>
54696
54697         * lib/__fpending.c: Add comment.
54698
54699 2004-11-22  Paul Eggert  <eggert@cs.ucla.edu>
54700
54701         * modules/canonicalize (Depends-on): Add xreadlink.
54702         Problem reported by James Youngman.
54703
54704 2004-11-20  Paul Eggert  <eggert@cs.ucla.edu>
54705
54706         * lib/getopt_.h (__GETOPT_CONCAT, __GETOPT_XCONCAT, __GETOPT_ID):
54707         New macros.
54708         (getopt, getopt_long, getopt_long_only, optarg, opterr, optind,
54709         optopt): Use them instead of invoking ## directly; otherwise, the
54710         symbols will be __GETOPT_PREFIXgetopt rather than rpl_getopt.
54711
54712 2004-11-19  Bruno Haible  <bruno@clisp.org>
54713
54714         * lib/strtok_r.c: Move comments from here...
54715         * lib/strtok_r.h: ... to here.
54716
54717 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
54718
54719         * m4/calloc.m4 (_AC_FUNC_CALLOC_IF): Check for buggy calloc
54720         implementations that mishandle size_t overflow.
54721
54722 2004-11-17  Paul Eggert  <eggert@cs.ucla.edu>
54723
54724         * lib/realloc.c (rpl_realloc): Call 'free' if n==0, since realloc
54725         might fail.  Problem reported by Yoann Vandoorselaere.
54726         * lib/calloc.c (rpl_calloc): Defend against buggy calloc
54727         implementations that mishandle size_t overflow.
54728
54729 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
54730
54731         * modules/canon-host (Depends-on): Add strdup.
54732
54733 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
54734
54735         * m4/canon-host.m4 (gl_CANON_HOST): Check for getaddrinfo.
54736
54737 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
54738
54739         * lib/canon-host.c: Include "strdup.h".
54740         (canon_host): Use getaddrinfo if available, so that IPv6 works.
54741         Use strdup instead of malloc/strcpy to duplicate strings.
54742
54743         * lib/human.h (LONGEST_HUMAN_READABLE): Add 1 for space before unit.
54744         (human_space_before_unit): New constant.
54745         * lib/human.c (human_readable): Support it.
54746
54747         * lib/xgetcwd.c: Include <limits.h>, for PATH_MAX.
54748         (xgetcwd): Set errno correctly when failing.
54749         Work around Solaris 9 bug: getcwd sets errno==ERANGE even though
54750         the failure is actually due to a PATH_MAX problem.
54751
54752         Further getopt changes to make it more likely that glibc will
54753         buy the changes back.
54754         * lib/getopt.c (POSIXLY_CORRECT): New constant.
54755         (getopt): Use it, so to preserve glibc semantic
54756         * lib/getopt1.c (getopt_long, getopt_long_only): Arg is char * const *
54757         when compiling for libc.
54758         * lib/getopt_.h (__getopt_argv_const): Bring it back.
54759         (getopt_long, getopt_long_only): Use it.
54760
54761         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
54762         _getopt_internal): New arg POSIXLY_CORRECT.  All callers changed.
54763         (getopt): Argv is now char * const *, as per standard.
54764         (_getopt_internal_r, _getopt_internal): Argv is now char **,
54765         not char *__getopt_argv_const *.
54766         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
54767         _getopt_long_only_r): Likewise.
54768         * lib/getopt_.h (getopt, getopt_long, geopt_long_only): Likewise.
54769         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
54770         _getopt_long_r, _getopt_long_only_r): Likewise.
54771         * lib/getopt_.h (__getopt_argv_const): Remove.
54772         (getopt): Argv is now char * const *, as per standard.
54773
54774         * lib/getdate.y (tORDINAL): New token.
54775         (day, relunit): Allow it for relative times.
54776         (relative_time_table): Use tORDINAL for ordinals.
54777
54778 2004-11-16  Paul Eggert  <eggert@cs.ucla.edu>
54779
54780         * doc/getdate.texi (General date syntax): "next" is 1, not 2.
54781         Document that "second" isn't allowed as an ordinal number.
54782
54783 2004-11-16  Jim Meyering  <jim@meyering.net>
54784
54785         * modules/closeout (Depends-on): Add fpending.
54786
54787 2004-11-15  Jim Meyering  <jim@meyering.net>
54788
54789         * lib/closeout.c: Include "__fpending.h" once again.
54790         Include <stdbool.h>.
54791         (close_stdout): Don't fail just because stdout was closed initially,
54792         since some programs don't write to stdout in the normal course of
54793         operation (other than --version and --help), and we don't want this
54794         function to make e.g. `touch file >&-' fail.
54795         But do fail if it was closed and someone has tried to write to it.
54796         E.g., `printf foo >&-' must fail.
54797
54798 2004-11-13  Jim Meyering  <jim@meyering.net>
54799
54800         * m4/jm-macros.m4: Do require gl_FUNC_FPENDING.
54801
54802 2004-11-12  Simon Josefsson  <jas@extundo.com>
54803
54804         * config/srclist.txt: Add strtok_r.c, glibc bought our changes, but a
54805         small doc fix is still pending.
54806
54807 2004-11-11  Simon Josefsson  <jas@extundo.com>
54808
54809         * modules/strtok_r: New file.
54810
54811         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
54812         strtok_r.
54813
54814 2004-11-11  Simon Josefsson  <jas@extundo.com>
54815
54816         * m4/strtok_r.m4: New file.
54817
54818         * m4/getopt.m4: Replace opterr.
54819
54820 2004-11-11  Simon Josefsson  <jas@extundo.com>
54821
54822         * lib/strtok_r.h, strtok_r.c: New file.
54823
54824 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
54825
54826         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): Define __GETOPT_PREFIX instead
54827         of replacing opterr, getopt, etc.  This should handle the
54828         powerpc-apple-darwin5.5 problem recently noted by Simon Josefsson.
54829
54830 2004-11-11  Paul Eggert  <eggert@cs.ucla.edu>
54831
54832         * lib/getopt_.h (__getopt_argv_const): New macro, to be used so that
54833         we can stop lying to compilers about the constness of argv when we
54834         are compiled outside glibc.
54835         (getopt, getopt_long, getopt_long_only): Use it.
54836         * lib/getopt.c (_getopt_initialize, _getopt_internal_r,
54837         _getopt_internal, getopt): Likewise.
54838         * lib/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
54839         _getopt_long_only_r): Likewise.
54840         * lib/getopt_int.h (_getopt_internal, _getopt_internal_r,
54841         _getopt_long_r, _getopt_long_only_r): Likewise.
54842
54843         * lib/getopt_.h [defined __GETOPT_PREFIX && !defined __need_getopt]:
54844         Include <stdlib.h> and <stdio.h>, and <unistd.h> if available.
54845         Then rename getopt to __GETOPT_PREFIX##getopt, and so forth for
54846         the other external symbols.
54847         (getopt) [!defined __GNU_LIBRARY]: Use prototype, not old-style
54848         declaration, since the above renaming now works around collisions.
54849
54850 2004-11-11  Jim Meyering  <jim@meyering.net>
54851
54852         * lib/linebreak.c: Remove trailing blanks.
54853         * lib/alloca_.h: Likewise.
54854         * lib/acosl.c: Likewise.
54855         * lib/euidaccess.c: Likewise.
54856         * lib/allocsa.h: Likewise.
54857
54858 2004-11-10  Simon Josefsson  <jas@extundo.com>
54859
54860         * m4/getaddrinfo.m4: New file.
54861
54862 2004-11-10  Simon Josefsson  <jas@extundo.com>
54863
54864         * lib/getaddrinfo.h, lib/getaddrinfo.c: New files.
54865
54866 2004-11-10  Simon Josefsson  <jas@extundo.com>
54867
54868         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
54869         getaddrinfo.
54870
54871         * modules/getaddrinfo: New file.
54872
54873 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
54874
54875         * m4/prereq.m4 (gl_PREREQ): Require gt_FUNC_SETENV.
54876
54877 2004-11-10  Paul Eggert  <eggert@cs.ucla.edu>
54878
54879         * lib/mktime.c (SHR): New macro, which is a portable
54880         substitute for >> that should work even on Crays.
54881         (TIME_T_MIDPOINT, ydhms_diff, __mktime_internal): Use it.
54882         Problem reported by Mark D. Baushke in
54883         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00071.html>.
54884         * lib/getdate.y (SHR): Likewise.
54885         (tm_diff): Use it.
54886         * lib/strftime.c (SHR): Likewise.
54887         (tm_diff): Use it.
54888         * lib/quotearg.c (struct quoting_options): Use unsigned int for
54889         quote_these_too, so that right shifts are well defined.  All uses
54890         changed.
54891
54892 2004-11-10  Jim Meyering  <jim@meyering.net>
54893
54894         Ensure that no close failure goes unreported.
54895         * lib/closeout.c (close_stdout): Always close stdout.  I.e., don't
54896         return early when it seems there's nothing to flush.
54897         Don't include __fpending.h.
54898
54899 2004-11-10  Jim Meyering  <jim@meyering.net>
54900
54901         * modules/closeout (Depends-on): Remove fpending.
54902
54903 2004-11-10  Jim Meyering  <jim@meyering.net>
54904
54905         * m4/jm-macros.m4 (gl_MACROS): Don't require gl_FUNC_FPENDING.
54906
54907 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
54908
54909         * m4/strftime.m4 (_gl_STRFTIME_PREREQS): Remove.  Move its body to
54910         gl_FUNC_STRFTIME.
54911         (gl_FUNC_STRFTIME): Use AC_CHECK_FUNCS_ONCE and AC_CHECK_HEADERS_ONCE
54912         and AC_REQUIRE when possible, to avoid duplicate checks.
54913         Check for <wchar.h>.
54914
54915 2004-11-09  Paul Eggert  <eggert@cs.ucla.edu>
54916
54917         * lib/strftime.c (DO_MULTIBYTE): Check for wchar.h, too.
54918
54919 2004-11-09  Bruno Haible  <bruno@clisp.org>
54920
54921         * m4/sockpfaf.m4: New file.
54922
54923 2004-11-05  Bruno Haible  <bruno@clisp.org>
54924
54925         * lib/readlink.c: Include stddef.h, needed for size_t on Woe32.
54926         Reported by Mark D. Baushke <mdb@cvshome.org>.
54927
54928 2004-11-04  Bruno Haible  <bruno@clisp.org>
54929
54930         2004-09-11  Bruno Haible  <bruno@clisp.org>
54931                 * allocsa.valgrind: New file.
54932         2004-02-06  Bruno Haible  <bruno@clisp.org>
54933                 * allocsa.h (sa_alignof): Define differently with HP-UX cc, to
54934                 avoid a bug of this cc on HP-UX 10.20 dealing with enums.
54935                 Reported by Christopher Seip <chris.seip@hp.com>.
54936
54937 2004-11-04  Bruno Haible  <bruno@clisp.org>
54938
54939         * modules/allocsa (Files): Add lib/allocsa.valgrind.
54940         (Makefile.am): Distribute it.
54941
54942 2004-11-03  Paul Eggert  <eggert@cs.ucla.edu>
54943
54944         * lib/xreadlink.c (xreadlink): AIX and HP-UX readlink return -1
54945         with errno == ERANGE if the buffer is too small.
54946         Problem reported by Mark D. Baushke.
54947
54948 2004-11-03  Albert Chin  <china@thewrittenword.com>
54949             Paul Eggert  <eggert@cs.ucla.edu>
54950
54951         * m4/uint32_t.m4 (gl_AC_TYPE_UINT32_T): When determining uint32_t
54952         equivalent, substitute $ac_type for equivalent type rather than
54953         blindly using uint32_t *always* which won't work if uint32_t is not
54954         available.  Define _UINT32_T to work around typedef of uint32_t if
54955         <sys/sched.h>, <pthread.h>, or <semaphore.h> used on Solaris
54956         2.5.1.
54957
54958 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
54959
54960         * m4/jm-macros.m4: Sync from coreutils.
54961         (gl_MACROS): Check for mbrlen, for pathchk.
54962         (gl_CHECK_ALL_TYPES): Require AC_TYPE_MBSTATE_T, for pathchk.
54963
54964 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
54965
54966         * lib/xreadlink.c (MAXSIZE): New macro.
54967         (xreadlink): Use it instead of SSIZE_MAX.  Ensure initial buffer
54968         size does not exceed MAXSIZE.  Avoid cast.
54969         As suggested by Mark D. Baushke in
54970         <http://lists.gnu.org/archive/html/bug-gnulib/2004-11/msg00009.html>,
54971         if readlink fails with buffer size just under MAXSIZE, try again
54972         with MAXSIZE.
54973
54974 2004-11-02  Paul Eggert  <eggert@cs.ucla.edu>
54975
54976         * config/srclist.txt: Add mktime.c; glibc bought all our changes.
54977
54978 2004-11-02  Derek R. Price  <derek@ximbiot.com>
54979         and  Paul Eggert  <eggert@cs.ucla.edu>
54980
54981         * lib/getdate.y [!TEST]: Include <stdio.h>, since we use sprintf now.
54982         (get_date): Overparenthesize to avoid GCC warning.
54983
54984 2004-11-02  Bruno Haible  <bruno@clisp.org>
54985
54986         * m4/setenv.m4 (gt_FUNC_SETENV): Define VOID_UNSETENV if unsetenv()
54987         returns void.
54988
54989 2004-11-02  Bruno Haible  <bruno@clisp.org>
54990
54991         * lib/setenv.h (unsetenv): Define as a macro if the system's unsetenv()
54992         function returns void.
54993
54994 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
54995
54996         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for declarations of
54997         fflush_unlocked, flockfile, funlockfile, funlockfile,
54998         fputs_unlocked, putc_unlocked.
54999
55000 2004-11-01  Paul Eggert  <eggert@cs.ucla.edu>
55001
55002         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
55003         (funlockfile, fputs_unlocked, putc_unlocked): Don't define if
55004         already declared.
55005
55006 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
55007
55008         * modules/getdate (Files): Add doc/getdate.texi.
55009         (Depends-on): Add setenv, xalloc.
55010
55011 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
55012
55013         * lib/getdate.y: Add support for TZ="foo" within a date string.
55014         Fix some bugs near time_t boundaries.  Reject dates with
55015         out-of-range components, e.g., "Sept 31".
55016         Include <stdlib.h>, "setenv.h", "xalloc.h".
55017         (ISDIGIT_LOCALE): Remove; unused.
55018         Note that the TZ and time functions used here are not reentrant.
55019         (mktime_ok, get_tz): New functions.
55020         (TZBUFSIZE): New constant.
55021         (get_date): Parse leading TZ="foo".  Reject out-of-range components;.
55022         This requires that we sometimes generate our own TZ="XXX..." setting.
55023
55024 2004-10-29  Paul Eggert  <eggert@cs.ucla.edu>
55025
55026         * doc/getdate.texi: New file, from coreutils with modifications for
55027         the new TZ parsing.
55028
55029 2004-10-27  Derek R. Price  <derek@ximbiot.com>
55030
55031         * lib/mktime.c (not_equal_tm): Remove redundant check.
55032
55033 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
55034
55035         * modules/regex (lib_SOURCES): Add regex.c.
55036         Reported by James Youngman in
55037         <http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00199.html>.
55038
55039 2004-10-24  Paul Eggert  <eggert@cs.ucla.edu>
55040
55041         * lib/getdate.y: Use Bison 1.875 features, and some minor
55042         code cleanups.  This change does not affect semantics.
55043         Don't include <stdlib.h>; no longer needed.
55044         Don't include unlocked-io.h; only the "#if TEST" code uses
55045         stdio, and performance isn't crucial there.
55046         (PC, YYLEX_PARAM, YYPARSE_PARAM): Remove; replaced by
55047         Bison 1.875 features as described below.
55048         All uses of "PC." replaced by "pc->".
55049         (YYSTYPE): Add a forward declaration.
55050         (yylex, yyerror): Use full prototypes in forward decls.
55051         Use "%pure-parser" rather than obsolescent "%pure_parser".
55052         Use %parse-param and %lex-param instead of obsolescent
55053         YYPARSE_PARAM and YYLEX_PARAM.
55054         (meridian_table, month_and_day_table, time_units_table,
55055         relative_time_table, time_zone_table, military_table,
55056         lookup_zone, lookup_word, get_date):
55057         Use NULL instead of 0 where appropriate.
55058         (to_hour): Avoid abort (), to avoid a dependency on
55059         stdlib.h.
55060         (yyerror, yylex): Now accepts parser_control * arg.
55061         (main) [TEST]: Use '\0' rather than 0 for char.
55062
55063 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
55064
55065         * m4/getpagesize.m4 (gl_GETPAGESIZE): Check for <sys/param.h>.
55066
55067 2004-10-22  Paul Eggert  <eggert@cs.ucla.edu>
55068
55069         * lib/getpagesize.c (getpagesize): Don't assume <sys/param.h> exists.
55070         It's now the caller's responsibility to handle the case where
55071         !HAVE_GETPAGESIZE && !defined getpagesize.
55072
55073         * lib/mktime.c (leapyear): Arg is long int, not int.
55074
55075 2004-10-18  Paul Eggert  <eggert@cs.ucla.edu>
55076
55077         * lib/argp-fs-xinl.c, argp-xinl.c: Update from glibc.
55078
55079 2004-10-17  Paul Eggert  <eggert@cs.ucla.edu>
55080
55081         * gnulib-tool (func_emit_lib_Makefile_am): Fix typo: a $ was
55082         missing.  Problem reported by James Youngman.
55083
55084 2004-10-16  Simon Josefsson  <jas@extundo.com>
55085
55086         * gnulib-tool: Fix comments.  Fix parse problem.
55087         (func_emit_lib_Makefile_am): Don't hard code a in libgl_a_SOURCES.
55088
55089 2004-10-15  Paul Eggert  <eggert@cs.ucla.edu>
55090
55091         * m4/getopt.m4 (gl_GETOPT): Detect and reject the incompatible BSD
55092         implementation of getopt_long.  Problem reported by Alexander Taler in:
55093         http://lists.gnu.org/archive/html/bug-gnulib/2004-10/msg00103.html
55094
55095 2004-10-15  Bruno Haible  <bruno@clisp.org>
55096
55097         * gnulib-tool: Untabify. Initialize supplied_libname.
55098         (func_usage): More homogenous output.
55099         (func_modules_transitive_closure, func_modules_to_filelist,
55100         func_emit_lib_Makefile_am): New functions.
55101         (func_import): New function, extracted from big case statement. Use
55102         func_get_license, func_modules_transitive_closure,
55103         func_modules_to_filelist, func_emit_lib_Makefile_am. Initialize
55104         opt_lgpl. Don't use test -a, as it's not portable.
55105         (func_create_testdir): Use func_modules_transitive_closure,
55106         func_modules_to_filelist, func_emit_lib_Makefile_am.
55107
55108 2004-10-15  Bruno Haible  <bruno@clisp.org>
55109
55110         * gnulib-tool (func_import): Let gl_INIT define LTALLOCA when needed.
55111
55112 2004-10-15  Bruno Haible  <bruno@clisp.org>
55113
55114         * gnulib-tool (func_emit_lib_Makefile_am): Add markers to separate
55115         the portions belonging to each module.
55116         Suggested by Derek Robert Price <derek@ximbiot.com>.
55117
55118 2004-10-12  Simon Josefsson  <jas@extundo.com>
55119
55120         * lib/getpass.c (fflush_unlocked, flockfile, funlockfile)
55121         (fputs_unlocked, putc_unlocked) [!_LIBCS && !USE_UNLOCKED_IO]: Map
55122         to real functions.
55123
55124 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
55125
55126         * modules/vsnprintf: New file.
55127
55128 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
55129
55130         * m4/vsnprintf.m4: New file.
55131
55132 2004-10-11  Yoann Vandoorselaere  <yoann@prelude-ids.org>
55133
55134         * lib/vsnprintf.h: New file.
55135         * lib/vsnprintf.c: New file.
55136
55137 2004-10-11  Bruno Haible  <bruno@clisp.org>
55138
55139         * MODULES.html.sh (Support for systems lacking ISO C 99): Add
55140         vsnprintf.
55141
55142 2004-10-10  Paul Eggert  <eggert@cs.ucla.edu>
55143
55144         * config/srclistvars.sh: Add GNUSTANDARDS (for eggert only).
55145
55146 2004-10-07  Bruno Haible  <bruno@clisp.org>
55147
55148         * lib/snprintf.c (snprintf): Avoid a memory allocation if the result
55149         fits into the provided buffer.
55150
55151 2004-10-06  Paul Eggert  <eggert@cs.ucla.edu>
55152
55153         * lib/diacrit.c, diacrit.h: Add GPL notice.
55154
55155         * lib/atanl.c, logl.c: Add GPL notice, to match glibc's added LGPL
55156         notice.
55157         * lib/atanl.c (atanl): Keep the code as similar to glibc as possible.
55158         * lib/logl.c (logl): Keep the code as similar to glibc as possible.
55159         This avoids a potential constant-folding bug.
55160
55161 2004-10-05  Bruno Haible  <bruno@clisp.org>
55162
55163         * m4/strsep.m4 (gl_FUNC_STRSEP): Require AC_GNU_SOURCE. Don't check
55164         for the declaration of strsep.
55165
55166 2004-10-05  Bruno Haible  <bruno@clisp.org>
55167
55168         * lib/strsep.h: Don't declare strsep() if HAVE_STRSEP.
55169
55170 2004-10-04  Simon Josefsson  <jas@extundo.com>
55171
55172         * modules/memmem: New file.
55173         * tests/test-memmem.c: New file.
55174         * MODULES.html.sh (Extra functions based on ANSI C 89): Add memmem.
55175
55176 2004-10-04  Simon Josefsson  <jas@extundo.com>
55177
55178         * m4/memmem.m4: New file.
55179
55180 2004-10-04  Simon Josefsson  <jas@extundo.com>
55181
55182         * lib/memmem.h: New file.
55183         * lib/memmem.c: New file, taken from glibc.
55184
55185 2004-10-04  Simon Josefsson  <jas@extundo.com>
55186
55187         * lib/error.c, md5.c, regex.c: Use '#if USE_UNLOCKED_IO' instead of
55188         '#ifdef USE_UNLOCKED_IO'.
55189
55190 2004-10-04  Simon Josefsson  <jas@extundo.com>
55191
55192         * config/srclist.txt: Add memmem from glibc.
55193
55194 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
55195
55196         * modules/xalloc (Files, Makefile.am): Remove xstrdup.c.
55197
55198         * modules/argmatch, modules/argp, modules/closeout, modules/error,
55199         modules/exclude, modules/getdate, modules/getline,
55200         modules/getndelim2, modules/getpass, modules/getpass-gnu,
55201         modules/getusershell, modules/linebuffer, modules/md5,
55202         modules/mountlist, modules/posixtm, modules/readtokens,
55203         modules/readutmp, modules/regex, modules/sha1,
55204         modules/version-etc, modules/yesno:
55205         Remove dependency on unlocked-io.
55206
55207 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
55208
55209         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Remove.  All uses removed.
55210
55211         * m4/unlocked-io.m4: Add copyright notice.
55212         (gl_FUNC_GLIBC_UNLOCKED_IO): Define USE_UNLOCKED_IO.
55213
55214 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
55215
55216         * lib/xalloc.h (xmemdup): Renamed from xclone.  All uses changed.
55217         * lib/xmalloc.c (xmemdup): Likewise.
55218         * lib/xalloc.h (CCLONE, CLONE, NEW, XCALLOC, XMALLOC, XREALLOC,
55219         XFREE): Remove these long-obsolescent macros.
55220         * lib/xmalloc.c (xstrdup): Implementation moved here from xstrdup.c
55221         * lib/xstrdup.c: Remove.
55222
55223         * lib/regex.c (re_comp): Cast gettext return value to char *,
55224         Problem reported by Martin Neitzel via Mark D. Baushke.
55225
55226 2004-10-04  Paul Eggert  <eggert@cs.ucla.edu>
55227
55228         * lib/argmatch.c, closeout.c, error.c, exclude.c, getdate.y,
55229         getndelim2.c, getpass.c, getusershell.c, linebuffer.c,
55230         md5.c, mountlist.c, posixtm.c, readtokens.c, readutmp.c,
55231         regex.c, sha1.c, version-etc.c, yesno.c:
55232         Include "unlocked-io.h" only if USE_UNLOCKED_IO.
55233         * lib/unlocked-io.h: Don't worry about USE_UNLOCKED_IO; that's now
55234         the includer's responsibility.
55235
55236         Sync from coreutils.
55237
55238         * lib/modechange.c (mode_compile): Don't decrement a pointer that
55239         points to the start of a string, as the C Standard says the
55240         resulting behavior is undefined.
55241
55242         * lib/backupfile.h (enum backuptype): Rename none -> no_backups,
55243         simple -> simple_backups, numbered_existing ->
55244         numbered_existing_backups, numbered -> numbered_backups
55245         to avoid shadowing problems.  All uses changed.
55246         * lib/argmatch.c (enum backuptype) [defined TEST]: Likewise.
55247         * lib/backupfile.c (check_extension, numbered_backup):
55248         Rename locals to avoid shadowing 'basename'.
55249         * lib/backupfile.h (VALID_BACKUP_TYPE): Don't evaluate arg more than
55250         once.
55251
55252         * lib/.cppi-disable: Add getopt_.h, getopt_int.h.
55253         * lib/.cvsignore: Add getopt.h.
55254
55255 2004-10-04  Bruno Haible  <bruno@clisp.org>
55256
55257         * modules/README: New file.
55258         * gnulib-tool (func_all_modules, func_verify_module): modules/README is
55259         not a module.
55260
55261 2004-10-02  Jim Meyering  <jim@meyering.net>
55262
55263         * lib/dirfd.h, getpagesize.h: Add copyright notice.
55264
55265 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
55266
55267         * modules/strsep: New file.
55268
55269 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
55270
55271         * m4/strsep.m4: New file.
55272
55273 2004-10-01  Yoann Vandoorselaere  <yoann@prelude-ids.org>
55274
55275         * lib/strsep.h: New file.
55276         * lib/strsep.c: New file.
55277
55278 2004-10-01  Simon Josefsson  <jas@extundo.com>
55279
55280         * lib/snprintf.c (snprintf): Handle size==0.
55281
55282 2004-10-01  Simon Josefsson  <jas@extundo.com>
55283             Bruno Haible  <bruno@clisp.org>
55284
55285         * lib/snprintf.c: Include <stdarg.h>, <stdlib.h>, <string.h>.
55286         (snprintf): Declare 'args'.
55287
55288 2004-10-01  Paul Eggert  <eggert@cs.ucla.edu>
55289
55290         * lib/snprintf.c: Remove comments as to why each header is needed.
55291
55292 2004-10-01  Bruno Haible  <bruno@clisp.org>
55293
55294         * MODULES.html.sh: Add strsep.
55295
55296 2004-09-30  Simon Josefsson  <jas@extundo.com>
55297
55298         * modules/snprintf: New file.
55299
55300 2004-09-30  Simon Josefsson  <jas@extundo.com>
55301
55302         * m4/snprintf.m4: New file.
55303
55304 2004-09-30  Simon Josefsson  <jas@extundo.com>
55305
55306         * lib/snprintf.h, lib/snprintf.c: New files.
55307
55308 2004-09-30  Sergey Poznyakoff  <gray@Mirddin.farlep.net>
55309
55310         * lib/argp-help.c (canon_doc_option): Fixed coredump if *name==NULL
55311         (hol_entry_help): Never translate an empty string.
55312         Do not translate option tag (opt->name) if OPTION_NO_TRANS is set
55313         * lib/argp.h (OPTION_NO_TRANS): New option.
55314
55315 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
55316
55317         * modules/argp (Maintainer): Replace Simon Josefsson
55318         by Sergey Poznyakoff.
55319
55320 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
55321
55322         * config/srclist.txt: Comment-out argp/argp.h, until we get the argp
55323         changes merged back into glibc.
55324
55325 2004-09-30  Paul Eggert  <eggert@cs.ucla.edu>
55326
55327         * MODULES.html.sh (Support for systems lacking ISO C 99): Add snprintf.
55328
55329 2004-09-29  Oskar Liljeblad  <oskar@osk.mine.nu>
55330
55331         * lib/xvasprintf.c: Include xalloc.h.
55332         (xvasprintf): Use xalloc_die, not xmalloc_die.
55333
55334 2004-09-29  Bruno Haible  <bruno@clisp.org>
55335
55336         * modules/alloca-opt: New file, derived from modules/alloca.
55337         * modules/allocsa: Depend on alloca-opt instead of alloca.
55338         * modules/setenv: Likewise.
55339         * modules/vasnprintf: Likewise.
55340         * MODULES.html.sh: Add alloca-opt.
55341
55342 2004-09-28  Simon Josefsson  <jas@extundo.com>
55343
55344         * gnulib-tool: New parameter --lgpl, to asseert that modules are
55345         LGPL, and to replace license template from GPL to LGPL.
55346
55347 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
55348
55349         * modules/dummy: Change license to LGPL.
55350
55351 2004-09-28  Paul Eggert  <eggert@cs.ucla.edu>
55352
55353         * lib/dummy.c: Change copyright notice to FSF, and license to GPL.
55354
55355 2004-09-24  Simon Josefsson  <jas@extundo.com>
55356
55357         * modules/minmax (License): Change from GPL to LGPL.
55358
55359 2004-09-23  Simon Josefsson  <jas@extundo.com>
55360
55361         * gnulib-tool (--import): Typo.
55362
55363 2004-09-23  Simon Josefsson  <jas@extundo.com>
55364
55365         * gnulib-tool (--import): Make sure *.m4 end up in m4/ by default.
55366
55367 2004-09-22  Bruno Haible  <bruno@clisp.org>
55368
55369         * modules/*: Add 'License' field.
55370         * gnulib-tool: Accept --extract-license option.
55371         (func_get_license): New function.
55372
55373 2004-09-21  Bruno Haible  <bruno@clisp.org>
55374
55375         * modules/vasnprintf (Files): Add m4/stdint_h.m4, m4/inttypes_h.m4.
55376         Reported by Simon Josefsson.
55377
55378 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
55379
55380         * modules/inttostr (Files): Add m4/longlong.m4, since it uses
55381         gl_AC_TYPE_LONG_LONG.
55382
55383 2004-09-20  Paul Eggert  <eggert@cs.ucla.edu>
55384
55385         * config/srclist.txt: Add getsubopt.c, since libc bought our changes.
55386
55387 2004-09-18  Simon Josefsson  <jas@extundo.com>
55388         and  Paul Eggert  <eggert@cs.ucla.edu>
55389
55390         * gnulib-tool: Replace various ad-hoc automake/autoconf/aclocal
55391         calls with autoreconf.  Define GL_LIB.
55392
55393 2004-09-14  Karl Berry  <karl@gnu.org>
55394
55395         * config/srclist.txt: unsync setenv.c, sigh.
55396
55397 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
55398
55399         * lib/argp-pvh.c (argp_program_version_hook): Provide initial value.
55400         Problem reported by Bruno Haible in:
55401         http://lists.gnu.org/archive/html/bug-tar/2004-09/msg00023.html
55402
55403 2004-09-13  Paul Eggert  <eggert@cs.ucla.edu>
55404
55405         * config/srclist.txt: Comment out argp-pvh.c.
55406
55407 2004-09-11  Paul Eggert  <eggert@cs.ucla.edu>
55408
55409         * lib/mempcpy.h: Wrap the entire include file inside #ifndef mempcpy,
55410         in case some system header has #define'd it.  Problem reported by
55411         Soeren D. Schulze in
55412         <http://lists.gnu.org/archive/html/bug-gnulib/2004-09/msg00017.html>.
55413
55414 2004-09-09  Karl Berry  <karl@gnu.org>
55415
55416         * regex.[ch]: delete from the root.  These were supposed to be
55417                 synced with emacs cvs, but this has not happened for about
55418                 a year, and anyway nothing else uses emacs regex.[ch].
55419                 bug-gnulib mail from Jeff Bailey, 9 Sep 2004 15:49:24 -0700.
55420                 lib/regex[.ch] is untouched.
55421
55422 2004-09-09  Bruno Haible  <bruno@clisp.org>
55423
55424         * modules/vasnprintf (Files): Add m4/eoverflow.m4.
55425
55426 2004-09-09  Bruno Haible  <bruno@clisp.org>
55427
55428         * m4/eoverflow.m4: New file, taken from GNU libiconv eilseq.m4 with
55429         modifications.
55430         * m4/vasnprintf.m4 (gl_FUNC_VASNPRINTF): Require gl_EOVERFLOW.
55431
55432 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
55433
55434         * modules/xvasprintf: New file.
55435         * MODULES.html.sh (Extra functions based on ANSI C 89): Add vasprintf.
55436
55437 2004-09-08  Oskar Liljeblad  <oskar@osk.mine.nu>
55438
55439         * lib/xvasprintf.h: New file.
55440         * lib/xvasprintf.c: New file.
55441         * lib/xasprintf.c: New file.
55442
55443 2004-09-08  Bruno Haible  <bruno@clisp.org>
55444
55445         * m4/stdint.m4: New file, taken from GNU clisp with modifications.
55446
55447 2004-09-08  Bruno Haible  <bruno@clisp.org>
55448
55449         * lib/vasnprintf.c (VASNPRINTF): Signal EOVERFLOW if the resulting
55450         length is > INT_MAX.
55451         * lib/vasprintf.c (vasprintf): Don't test for length > INT_MAX any
55452         more.
55453
55454 2004-09-08  Bruno Haible  <bruno@clisp.org>
55455
55456         * lib/stdint_.h: New file, taken from GNU clisp.
55457
55458 2004-09-08  Bruno Haible  <bruno@clisp.org>
55459             Oskar Liljeblad  <oskar@osk.mine.nu>
55460
55461         * modules/stdint: New file.
55462         * MODULES.html.sh (Support for systems lacking ISO C 99): Add stdint.
55463
55464 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
55465
55466         Import from coreutils.
55467         * lib/userspec.c: Don't use <alloca.h>, so that we don't use alloca on
55468         strings on unbounded length.  alloca's performance benefits aren't
55469         that important here.
55470         (V_STRDUP): Remove.
55471         (parse_with_separator): New function, with most of the internals
55472         of the old parse_user_spec.  Allow user to omit both user and group,
55473         for compatibility with FreeBSD.
55474         Clone only the user name, not the entire spec.
55475         Do not set *uid, *gid unless entirely successful.
55476         Avoid memory leak in some failing cases.
55477         Fix regression for USER.GROUP reported by Dmitry V. Levin in
55478         <http://lists.gnu.org/archive/html/bug-coreutils/2004-08/msg00102.html>
55479         (parse_user_spec): Rewrite to use parse_with_separator.
55480
55481 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
55482
55483         * modules/userspec: Don't depend on alloca.
55484
55485 2004-08-19  Paul Eggert  <eggert@cs.ucla.edu>
55486
55487         * m4/userspec.m4 (gl_USERSPEC): Don't require AC_FUNC_ALLOCA.
55488
55489 2004-08-17  Paul Eggert  <eggert@cs.ucla.edu>
55490
55491         * MODULES.html.sh: Add xalloc-die, c-strtod, c-strtold, raise,
55492         readtokens0, getcwd, fcntl-safer, canonicalize, cycle-check,
55493         utimecmp, utimens, xnanosleep.  Rename sha to sha1.
55494
55495 2004-08-16  Simon Josefsson  <jas@extundo.com>
55496
55497         * gnulib-tool: Use sed instead of autoconf --trace, inspired by
55498         libtoolize behaviour by "Gary V. Vaughan" <gary@gnu.org>.
55499         Add --dry-run for --import.
55500         Let user provided command line parameters override configure.ac
55501         settings.
55502
55503 2004-08-12  Simon Josefsson  <jas@extundo.com>
55504
55505         * m4/getopt.m4 (gl_GETOPT_SUBSTITUTE): New macro,
55506         as discussed with Paul Eggert in threads rooted at
55507         <http://lists.gnu.org/archive/html/bug-gnulib/2004-06/msg00039.html>
55508         and
55509         <http://lists.gnu.org/archive/html/bug-gnulib/2004-07/msg00001.html>.
55510         Before, the test was empty, and relied on ELIDE_CODE in source
55511         code.)
55512         (gl_PREREQ_GETOPT): New macro.
55513         (gl_GETOPT): Use them.
55514
55515 2004-08-12  Simon Josefsson  <jas@extundo.com>
55516
55517         * lib/getopt.c, getopt1.c: Remove ELIDE_CODE hack.
55518         * lib/getopt_.h: Renamed from getopt.h.
55519
55520 2004-08-12  Simon Josefsson  <jas@extundo.com>
55521
55522         * gnulib-tool: Add --source-base, --m4-base, --libtool options.
55523         Change default library name from libfoo to libgnu.
55524         Now, if you have a configure.ac that says:
55525                 gl_SOURCE_BASE(gl)
55526                 gl_M4_BASE(gl/m4)
55527                 gl_MODULES(error getopt etcetera)
55528                 gl_INIT
55529         you can import all you need by running:
55530                 ../gnulib/gnulib-tool --import
55531
55532         * modules/getopt (Files): Rename getopt.h to getopt_.h.
55533         (Makefile.am): Rewrite, use logic from argz.
55534         (Include): Use <getopt.h> instead of "getopt.h".
55535
55536 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
55537
55538         * modules/argp (Files): Add m4/unlocked-io.m4.
55539         (Depends-on): Add extensions.
55540
55541 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
55542
55543         * m4/argp.m4 (gl_ARGP): Do not check for argp.h or argp_parse; nobody
55544         uses HAVE_ARGP_H or HAVE_ARGP_PARSE.
55545         Require gl_FUNC_GLIBC_UNLOCKED_IO, gl_USE_SYSTEM_EXTENSIONS.
55546         Check for program_invocation_name, program_invocation_short_name,
55547         flockfile, funlockfile, features.h, _getopt_long_only_r.
55548
55549 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
55550
55551         * lib/argp-help.c, argp-parse.c: Use "gettext.h" instead of
55552         its complicated substitute.
55553         * lib/argp-help.c: Include <errno.h>, for program_invocation_short_name
55554         and program_invocation_name.
55555         (__argp_basename) [!_LIBC]: Remove; the only use was
55556         replaced by its body.
55557         (__argp_short_program_name): Change condition from
55558         !defined __argp_short_program_name to
55559         ! (defined _LIBC || HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME),
55560         to match argp-namefrob.h.
55561         (__argp_failure): Don't assume strerror_r returns char *.
55562         * lib/argp-parse.c (N_): Define unconditionally.
55563         (argp_default_options): Fill out initializers with 0 to avoid
55564         gcc warnings.
55565
55566 2004-08-12  Paul Eggert  <eggert@cs.ucla.edu>
55567
55568         * config/srclist.txt: Remove getopt.c, getopt.h (renamed to getopt_.h),
55569         getopt1.c.
55570
55571 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
55572
55573         Merge from coreutils.
55574
55575         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for wmemchr and wmemcpy.
55576
55577         * m4/obstack.m4 (gl_PREREQ_OBSTACK): Require
55578         gl_AC_HEADER_INTTYPES_H, gl_AC_HEADER_STDINT_H, gl_AC_TYPE_UINTMAX_T.
55579
55580 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
55581
55582         Merge from coreutils.
55583
55584         * lib/fnmatch.c (WIDE_CHAR_SUPPORT): Don't set to 1 if missing
55585         wmemchr or wmemcpy.  Problem reported by Robert Dahlem
55586         for Reliant Unix 5.43.
55587
55588         * lib/obstack.c: Include <inttypes.h> and <stdint.h> if available.
55589         (union fooround): Use uintmax_t, not long int.
55590         The rest is a merge from libc:
55591         [defined _LIBC]: Include <shlib-compat.h>.
55592         (_obstack) [defined _LIBC]: Remove after 2.3.4.
55593
55594         * lib/settime.c (settime): Recode to avoid warning with
55595         Sun Forte C 6U2.
55596
55597         * lib/strverscmp.c: Convert to UTF-8.
55598
55599 2004-08-11  Paul Eggert  <eggert@cs.ucla.edu>
55600
55601         * modules/obstack (Files): Add m4/inttypes_h.m4, m4/stdint_h.m4,
55602         m4/uintmax_t.m4.
55603
55604 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
55605
55606         * modules/xalloc-die: New file.
55607         * modules/xalloc: Remove dependencies on error, gettext, exitfail.
55608
55609         * modules/md5 (Files): Add m4/uint32_t.m4.
55610         * modules/sha1: Renamed from modules/sha.
55611         (Files):
55612         Rename lib/sha.h to lib/sha1.h.
55613         Rename lib/sha.c to lib/sha1.c.
55614         Rename m4/sha.m4 to m4/sha1.m4.
55615         (lib_SOURCES): Likewise.
55616         (configure.ac): Rename gl_SHA to gl_SHA1.
55617         (Include): sha.h -> sha1.h.
55618
55619 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
55620
55621         * m4/uint32_t.m4, m4/uintptr_t.m4: New files.
55622         * m4/sha1.m4: Renamed from sha.m4.
55623         (gl_SHA1): Renamed from gl_SHA.  All uses changed.
55624
55625 2004-08-09  Paul Eggert  <eggert@cs.ucla.edu>
55626
55627         * lib/obstack.h (obstack_empty_p):
55628         Don't assume that chunk->contents is suitably aligned.
55629         * lib/obstack.c (_obstack_begin, _obstack_begin_1, _obstack_newchunk):
55630         Likewise. Problem reported by Benno in
55631         <http://sources.redhat.com/ml/libc-alpha/2004-08/msg00055.html>.
55632
55633         * lib/chown.c (rpl_chown): Work even if the file is writeable but not
55634         readable.  This could be improved further but it'd take some work.
55635
55636 2004-08-08  Simon Josefsson  <jas@extundo.com>
55637
55638         * modules/xgethostname (Depends-on): Remove exit and error (not
55639         used).
55640
55641         * modules/getpass-gnu: Add getpass.h.
55642         (Depends-on): Add stdbool.
55643         * modules/getpass: Add getpass.h.
55644
55645 2004-08-08  Simon Josefsson  <jas@extundo.com>
55646
55647         * m4/getpass.m4 (gl_FUNC_GETPASS, gl_FUNC_GETPASS_GNU):
55648         Check getpass declaration.
55649
55650 2004-08-08  Simon Josefsson  <jas@extundo.com>
55651
55652         * lib/xgethostname.c: Don't include error.h (not used).
55653
55654         * lib/getpass.h: Add.
55655         * lib/getpass.c: Include getpass.h first.
55656
55657 2004-08-08  Paul Eggert  <eggert@cs.ucla.edu>
55658
55659         * lib/xalloc-die.c: New file.
55660         * lib/xalloc.h (xalloc_fail_func, xalloc_msg_memory_exhausted): Remove.
55661         All uses removed.
55662         * lib/xmalloc.c (xalloc_fail_func, xalloc_msg_memory_exhausted):
55663         Likewise. Move inclusions of gettext.h, error.h, exitfail.h to
55664         xalloc-die.c.
55665         (_, N_, xalloc_die): Move to xalloc-die.c.
55666         * lib/userspec.c (parse_user_spaec): Use xstrdup rather than strdup,
55667         so that we needn't mess with xalloc_msg_memory_exhausted.
55668
55669         * lib/sha1.h: Renamed from sha.h.
55670         (SHA1_H): Renamed from _SHA_H.
55671         (sha1_ctx): Renamed from sha_ctx.
55672         (sha1_init_ctx): Renamed from sha_init_ctx.
55673         (sha1_process_block): Renamed from sha_process_block.
55674         (sha1_process_bytes): Renamed from sha_process_bytes.
55675         (sha1_finish_ctx): Renamed from sha_finish_ctx.
55676         (sha1_read_ctx): Renamed from sha_read_ctx.
55677         (sha1_stream): Renamed from sha_stream.
55678         (sha1_buffer): Renamed from sha_buffer.
55679         * lib/sha1.c: Likewise; renamed from sha.c.
55680         Do not include <sys/types.h>.
55681         Include <stddef.h> rather than <stdlib.h>.
55682
55683 2004-08-08  Bruno Haible  <bruno@clisp.org>
55684
55685         * lib/pathname.h (FILE_SYSTEM_PREFIX_LEN): Renamed from
55686         FILESYSTEM_PREFIX_LEN.
55687         * lib/progreloc.c: Likewise.
55688         * lib/concatpath.c (concatenated_pathname): Use FILE_SYSTEM_PREFIX_LEN.
55689
55690 2004-08-06  Simon Josefsson  <jas@extundo.com>
55691
55692         * modules/progname (Depends-on): Don't depend on stdbool.
55693
55694 2004-08-06  Simon Josefsson  <jas@extundo.com>
55695
55696         * modules/getsubopt: New file.
55697         * MODULES.html.sh (Support for systems lacking POSIX:2001): Add
55698         getsubopt.
55699
55700 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
55701
55702         More merge from coreutils.
55703
55704         * m4/utimens.m4, m4/utimecmp.m4: New files.
55705         * m4/backupfile.m4, euidacces.m4, acl.m4, afs.m4, calloc.m4, dirfd.m4,
55706         fsusage.m4, jm-macros.m4, ls-mntd-fs.m4, md5.m4, mountlist.m4,
55707         prereq.m4, sha.m4: Import changes from coreutils.
55708
55709 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
55710
55711         More merge from coreutils.
55712         * modules/raise, modules/readtokens0, modules/utimens:
55713         * modules/utimecmp, module/xnanosleep: New files.
55714         * modules/strftime: Add lib/strftime.h.
55715         Change include from <time.h> to "strftime.h".
55716         * modules/yesno: Add lib/yesno.h.
55717         * modules/backupfile: Remove lib/addext.c.
55718         * modules/euidaccess: Add stat-macros.h.
55719         * modules/canonicalize, modules/euidaccess,
55720         modules/filemode, modules/lchown, modules/makepath,
55721         modules/rmdir, modules/stat: Likewise.
55722
55723 2004-08-06  Paul Eggert  <eggert@cs.ucla.edu>
55724
55725         Merge from tar.
55726         * lib/argp-help.c (make_hol, hol_append): Don't assume that
55727         SIZE_MAX is a valid preprocessor constant.
55728         (__argp_basename): Change from "#ifndef _LIBC"
55729         to "#ifndef __argp_short_program_name", so that
55730         we don't compile these functions for tar.
55731
55732         More merges from coreutils.
55733         * lib/raise.c, lib/readtokens0.h, lib/readtokens0.c, lib/strftime.h:
55734         * lib/utimens.h, lib/utimens.c, lib/utimecmp.h, lib/utimecmp.c:
55735         * lib/xnanosleep.h, lib/xnanosleep.c, lib/yesno.h: New files.
55736         * lib/addext.c: Remove; no longer needed.
55737         * lib/yesno.c, lib/argmatch.h, lib/argmatch.c, lib/backupfile.h,
55738         lib/backupfile.c, lib/euidaccess.c, lib/filemode.c, lib/closeout.c,
55739         lib/dup2.c, lib/exclude.c, lib/fileblocks.c, lib/filemode.c,
55740         lib/fnmatch.c, lib/fnmtahc_loop.c, lib/fopen-safer.c, lib/fsusage.c,
55741         lib/fsusage.h, lib/ftruncate.c, lib/full-write.c, lib/getdate.y,
55742         lib/getloadavg.c, lib/getugroups.c, lib/hard-locale.c,
55743         lib/hard-locale.h, lib/hash.c, lib/human.c, lib/human.h, lib/lchown.c,
55744         lib/lchown.h, lib/makepath.c, lib/makepath.h, lib/md5.c, lib/md5.h,
55745         lib/memchr.c, lib/memcoll.c, lib/memrchr.c, lib/modechange.c,
55746         lib/modechange.h, lib/mountlist.c, lib/mountlist.h, lib/nanosleep.c,
55747         lib/posixtm.c, lib/putenv.c, quotearg.c, lib/quotearg.h,
55748         lib/readtokens.c, lib/readutmp.c, lib/readutmp.h, lib/rmdir.c,
55749         lib/safe-read.c, lib/save-cwd.c, lib/savedir.c, lib/setenv.c,
55750         lib/sig2str.c, lib/stat.c, lib/strtoimax.c, lib/strverscmp.c,
55751         lib/userspec.c, lib/utime.c, lib/version-etc.c., lib/xgethostname.c,
55752         lib/xmemcoll.c, lib/xreadlink.c, lib/xstrtod.c, lib/xstrtod.h,
55753         lib/xstrtoimax.c, lib/xstrtol.c, lib/xstrtol.h, lib/xstrtoumax.c:
55754         Import changes from coreutils.
55755
55756 2004-08-05  Simon Josefsson  <jas@extundo.com>
55757
55758         * m4/strdup.m4: Always run gl_PREREQ_STRDUP, since strdup.h need it.
55759
55760 2004-08-05  Simon Josefsson  <jas@extundo.com>
55761
55762         * m4/getsubopt.m4: New file.
55763
55764 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
55765
55766         Merge from coreutils.
55767
55768         * m4/c-strtod.m4, m4/canonicalize.m4, m4/fcntl-safer.m4:
55769         * m4/getcwd-path-max.m4: New files.
55770
55771         * m4/dos.m4 (gl_AC_DOS): filesystem -> file system renaming.
55772         FILESYSTEM_PREFIX_LEN ->
55773         FILE_SYSTEM_PREFIX_LEN.
55774         FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX ->
55775         FILE_SYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX.
55776         FILESYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR ->
55777         FILE_SYSTEM_BACKSLASH_IS_FILE_NAME_SEPARATOR.
55778
55779         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't require gl_AC_DOS, the
55780         prerequisite modules now handle the DOS stuff.
55781         Don't check for unistd.h.
55782
55783 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
55784
55785         Merge from coreutils.
55786
55787         * lib/.gdb-history: Remove; this doesn't belong here.
55788
55789         * lib/c-strtod.c, lib/c-strtod.h, lib/c-strtold.c, lib/cycle-check.c:
55790         * lib/cycle-check.h, lib/dev-ino.h, lib/canonicalize.h:
55791         * lib/canonicalize.c, lib/fcntl-safer.h, lib/fcntl-safer.c:
55792         * lib/getcwd.c: New files.
55793
55794         * lib/dirname.h: Include <stdbool.h>.
55795         (FILE_SYSTEM_PREFIX_LEN): Renamed from FILESYSTEM_PREFIX_LEN,
55796         for consistency with POSIX terminology.  All uses changed.
55797         (IS_ABSOLUTE_FILE_NAME, IS_RELATIVE_FILE_NAME): New macros.
55798         (strip_trailing_slashes): Use bool for booleans.
55799         * lib/stripslash.c (strip_trailing_slashes): Likewise.
55800
55801         * lib/error.c: Work around bug in OpenBSD 3.4 sterror_r: it
55802         sometimes returns a positive errno value even when it succeeds.
55803         (print_errno_message) [!LIBC]: Fall back on strerror if
55804         __strerror_r fails.
55805
55806         * lib/path-concat.c (mempcpy): Don't define if a system header defines
55807         it. Don't include stdio.h, stdlib.h, unistd.h, strdup.h.
55808         (longest_relative_suffix): New function.
55809         (path_concat): Use it.  Assume first argument is not NULL.
55810         Port to DOS.  Omit redundant separators.
55811         Report an error instead of returning NULL.
55812         Use mempcpy instead of memcpy.
55813         (xpath_concat): Remove: not declared or used.
55814
55815         * lib/same.h: Include <stdbool.h>
55816         (same_name): Return bool, not int.
55817         * lib/same.c (same_name): Likewise.
55818         (errno): Don't declare; we assume C89 or better now.
55819
55820         * lib/stat-macros (S_ISCTG, S_ISOFD, S_ISOFL): New macros,
55821         if not already defined.
55822
55823         * lib/xgetcwd.c (errno): Don't declare; we assume C89 or better now.
55824         * lib/dup-safer.c (errno): Likewise.
55825
55826 2004-08-05  Paul Eggert  <eggert@cs.ucla.edu>
55827
55828         Merge from coreutils.
55829         * modules/c-strtod, modules/c-strtold, modules/canonicalize:
55830         * modules/cycle-check, modules/fcntl-safer, modules/getcwd: New files.
55831         * modules/path-concat: Don't depend on strdup.
55832
55833 2004-08-03  Simon Josefsson  <jas@extundo.com>
55834
55835         * lib/strdup.h: Only use HAVE_DECL_STRDUP if defined.
55836         * lib/progname.h: Don't include stdbool.h.
55837
55838 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
55839
55840         * modules/fatal: Remove, as the "fatal" module wasn't used or working.
55841         * MODULES.html.sh (func_all_modules): Remove fatal.
55842
55843 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
55844
55845         * m4/fatal.m4: Remove, as the "fatal" module wasn't used or working.
55846
55847 2004-08-03  Paul Eggert  <eggert@cs.ucla.edu>
55848
55849         * lib/fatal.c, fatal.h: Remove as the "fatal" module wasn't used or
55850         working.
55851
55852 2004-08-02  Simon Josefsson  <jas@extundo.com>
55853
55854         * lib/getsubopt.h: New file, with comments from Bruno Haible.
55855         * lib/getsubopt.c: New file, from glibc, but slightly modified based on
55856         suggestions from Paul Eggert <eggert@cs.ucla.edu>.
55857
55858 2004-08-01  Simon Josefsson  <jas@extundo.com>
55859
55860         * lib/xgetdomainname.c: Include stdlib.h, for free().
55861
55862 2004-07-19  Bruno Haible  <bruno@clisp.org>
55863
55864         * MODULES.html.sh (func_all_modules): Add dummy.
55865
55866 2004-07-16  Simon Josefsson  <jas@extundo.com>
55867
55868         * modules/dummy: New file.
55869
55870 2004-07-16  Simon Josefsson  <jas@extundo.com>
55871
55872         * lib/dummy.c: New file.
55873
55874 2004-07-16  Bruno Haible  <bruno@clisp.org>
55875
55876         * lib/backupfile.h: Add extern "C" for C++.
55877         * lib/closeout.h: Likewise.
55878         * lib/copy-file.h: Likewise.
55879         * lib/findprog.h: Likewise.
55880         * lib/full-write.h: Likewise.
55881         * lib/pathname.h: Likewise.
55882         * lib/progname.h: Likewise.
55883         * lib/stpcpy.h: Likewise.
55884         * lib/stpncpy.h: Likewise.
55885         * lib/strcase.h: Likewise.
55886         * lib/strstr.h: Likewise.
55887         * lib/xalloc.h: Likewise.
55888
55889         * lib/mbswidth.h: Add extern "C" for C++.
55890         Reported by Albert Chin-A-Young <china@thewrittenword.com>.
55891
55892 2004-07-13  Robert Millan  <robertmh@gnu.org>
55893
55894         * m4/host-os.m4: s/KNetBSD/kNetBSD/g and s/KFreeBSD/kFreeBSD/g.
55895
55896 2004-07-09  Simon Josefsson  <jas@extundo.com>
55897
55898         * lib/getndelim2.c: Include stddef.h, for ptrdiff_t.  (FreeBSD 4.9
55899         failed without this.)
55900
55901 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
55902
55903         * modules/chown (Files): Add lib/fchown-stub.c, since
55904         gl_PREREQ_CHOWN invokes AC_LIBOBJ(fchown-stub).
55905
55906 2004-07-09  Paul Eggert  <eggert@cs.ucla.edu>
55907
55908         * lib/fchown-stub.c: New file.
55909
55910 2004-06-24  Jim Meyering  <jim@meyering.net>
55911
55912         * lib/obstack.h (obstack_base): Cast to (void *), per documentation.
55913
55914 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
55915
55916         * modules/argz: Omit "#include".
55917
55918         * MODULES.html.sh (func_all_modules): Add calloc, to match
55919         2004-06-01 addition of calloc module.
55920
55921 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
55922
55923         * m4/argz.m4: New file, which is autoupdated from libtool.
55924
55925 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
55926
55927         * lib/argz.c, lib/argz_.h: New files, which are autoupdated from
55928         libtool.
55929
55930 2004-06-22  Paul Eggert  <eggert@cs.ucla.edu>
55931
55932         * config/srclist-update: Don't insist on "USA." before the
55933         close-comment, as libtool omits the period and puts the */ on a
55934         separate line.
55935         * config/srclist.txt: Add argz.c, argz_.h, argz.m4.
55936         * config/srclistvars.sh: Add LIBTOOL (for eggert only).
55937
55938 2004-06-22  Gary V. Vaughan  <gary@gnu.org>
55939
55940         * modules/argz: New file.
55941         * MODULES.html.sh (func_all_modules): Add argz.
55942
55943 2004-06-12  Jim Meyering  <jim@meyering.net>
55944         and  Paul Eggert  <eggert@cs.ucla.edu>
55945
55946         * modules/hash (Files): Add lib/xalloc.h.
55947         * modules/pipe (Depends-on): Add wait-process.
55948         * modules/stat (Depends-on): Add xalloc.
55949         * modules/userspec (Files): Add lib/userspec.h.
55950         * modules/xstrto
55951
55952         Upgrade from gettext-0.13.
55953         * modules/gettext (Files): Add m4/intmax.m4, m4/longdouble.m4,
55954         m4/longlong.m4, m4/printf-posix.m4, m4/signed.m4, m4/size_max.m4,
55955         m4/wchar_t.m4, m4/wint_t.m4, m4/xsize.m4.
55956
55957 2004-06-10  Jim Meyering  <jim@meyering.net>
55958
55959         * lib/calloc.c: New file.
55960
55961 2004-06-06  Paul Eggert  <eggert@cs.ucla.edu>
55962
55963         * lib/getdate.y (yylex): Allow space between sign and number.
55964         Problem reported by Dan Jacobson.
55965
55966 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
55967
55968         Merge from coreutils CVS.
55969
55970         * m4/backupfile.m4, dirname.m4, human.m4, inttypes.m4, longlong.m4,
55971         makepath.m4, memchr.m4, memcmp.m4, mountlist.m4, path-concat.m4,
55972         putenv.m4, quotearg.m4, readutmp.m4, strtoimax.m4, strtoll.m4,
55973         strtoull.m4, strtoumax.m4, ulonglong.m4, vasnprintf.m4,
55974         xstrtol.m4: Fix copyright date and/or serial number.
55975
55976         * m4/chown.m4 (gl_PREREQ_CHOWN): Check for fcntl.h.
55977         See if we need an fchown replacement.
55978         (gl_FUNC_CHOWN_FOLLOWS_SYMLINK): New macro.
55979         (gl_FUNC_CHOWN): Require gl_FUNC_CHOWN_FOLLOWS_SYMLINK,
55980         and use the replacement function if we detect either defect.
55981
55982         * m4/prereq.m4 (gl_PREREQ): Add gl_ALLOCSA, gl_CLOEXEC, gl_INTTOSTR,
55983         gl_UTIMECMP.
55984
55985 2004-06-01  Paul Eggert  <eggert@cs.ucla.edu>
55986         and  Jim Meyering  <jim@meyering.net>
55987
55988         Merge from coreutils CVS.
55989
55990         * lib/stat-macros.h: New file, with contents from file-type.h
55991         and coreutils' system.h.
55992         * lib/file-type.c: Include "stat-macros.h".
55993         * lib/file-type.h (file_type): Move all macro definitions to new file,
55994         stat-macros.h.
55995
55996         * lib/chown.c (rpl_chown) [CHOWN_FAILS_TO_HONOR_ID_OF_NEGATIVE_ONE]:
55997         Wrap old code with this conditional.
55998         [CHOWN_MODIFIES_SYMLINK]: Try to work around a chown
55999         function that does not dereference symlinks.
56000         * lib/lchown.c (lchown) [CHOWN_MODIFIES_SYMLINK]: Just call chown.
56001
56002         * lib/xreadlink.c: Include xreadlink.h first, to catch .h file
56003         dependency problems.
56004         (xreadlink): Accept new arg SIZE, for efficiency.
56005         All decls and uses changed.
56006         * lib/xreadlink.h: Include <stddef.h>, for size_t.
56007
56008         * lib/.cppi-disable: Add alloca_.h, allocsa.h, exit.h, getndelim2.h,
56009         gettext.h, localcharset.h, strdup.h, strndup.h, strtoul.c, time_r.h.
56010
56011         * lib/.cvsignore: Add alloca.h, fnmatch.h, poll.h, stdbool.h,
56012         sysexits.h.
56013
56014 2004-06-01  Jim Meyering  <jim@meyering.net>
56015
56016         * m4/calloc.m4: New file.
56017
56018 2004-05-31  Paul Eggert  <eggert@cs.ucla.edu>
56019
56020         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Detect _Bool bug in HP aC++/ANSI
56021         C B3910B A.05.55 [Dec 04 2003].  Problem reported by Jim Meyering.
56022         Also, fix a typo in a diagnostic.
56023
56024 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
56025
56026         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Do not require AC_FUNC_MALLOC
56027         or AC_FUNC_REALLOC.
56028
56029 2004-05-30  Paul Eggert  <eggert@cs.ucla.edu>
56030
56031         * lib/xmalloc.c (HAVE_MALLOC, HAVE_REALLOC): Do not require these
56032         macros to be defined.
56033         (xnmalloc_inline, xnrealloc_inline, xcalloc): Do not die if
56034         the allocator returns NULL because the requested size is zero.
56035
56036 2004-05-20  Paul Eggert  <eggert@cs.ucla.edu>
56037
56038         * lib/malloc/obstack.c (_obstack) [defined _LIBC]: Bring back this
56039         var.  Add comment explaining why libc still defines it.  This
56040         merges the following patch from glibc:
56041         http://sources.redhat.com/ml/libc-alpha/2004-05/msg00157.html
56042
56043 2004-05-20  Andreas Schwab  <schwab@suse.de>
56044
56045         * m4/free.m4: Replace free if it not known to work, not the other
56046         way round.
56047
56048 2004-05-19  Paul Eggert  <eggert@cs.ucla.edu>
56049
56050         * lib/obstack.c (_obstack): Remove unused variable.  It hasn't been
56051         present in glibc since revision 1.1 of this file.
56052         * lib/obstack.h (_obstack_free, obstack_1grow, obstack_1grow_fast,
56053         obstack_alignment_mask, obstack_alloc, obstack_base,
56054         obstack_blank, obstack_blank_fast, obstack_chunk_size,
56055         obstack_copy, obstack_copy0, obstack_finish, obstack_grow,
56056         obstack_grow0, obstack_init, obstack_int_grow,
56057         obstack_int_grow_fast, obstack_make_room, obstack_memory_used,
56058         obstack_next_free, obstack_object_size, obstack_ptr_grow,
56059         obstack_ptr_grow_fast, obstack_room): Remove declarations of
56060         nonexistent functions.
56061
56062 2004-05-18  Karl Berry  <karl@gnu.org>
56063
56064         * config/srclist.txt: break link for vasnprintf.c.
56065
56066 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
56067
56068         Port obstack to the AS/400, where pointers are 16 bytes wide and
56069         you cannot cast an integer to a valid pointer.  This patch is
56070         currently waiting to be integrated into glibc; see
56071         <http://sources.redhat.com/ml/libc-alpha/2004-05/msg00073.html>.
56072
56073         * lib/obstack.h (__PTR_TO_INT, __INT_TO_PTR): Remove.
56074         All uses of __INT_TO_PTR (PTR_TO_INT ...) replaced by __PTR_ALIGN.
56075         (__BPTR_ALIGN, __PTR_ALIGN): New macros.
56076         (struct obstack): temp member is now a union of a pointer and
56077         an integer, instead of an integer.  All integer uses changed.
56078         This does not affect the physical layout of struct obstack,
56079         except on hosts (like the AS/400) where the size or alignment of
56080         void * is greater than that of ptrdiff_t.
56081         (obstack_finish) [! (defined __GNUC__ && defined __STDC__ &&
56082         __STDC__)]: Store temporary in pointer member of union, not
56083         integer member.
56084         * lib/obstack.c: Include <stddef.h>, for offsetof.
56085         (struct fooalign): Remove; it doesn't need a name.
56086         (union fooround): Change double to long double, and add void *.
56087         (DEFAULT_ALIGNMENT): Use offsetof to compute.
56088         (DEFAULT_ALIGNMENT, DEFAULT_ROUNDING): Now an enum constant,
56089         not a macro.  Hence the values are always int; so remove all
56090         casts-to-int in uses.
56091
56092 2004-05-17  Paul Eggert  <eggert@cs.ucla.edu>
56093
56094         * config/srclist.txt: Break link for argp-help.c and argp-parse.c until
56095         we can get this patch merged into glibc.
56096
56097 2004-05-17  Derek R. Price  <derek@ximbiot.com>
56098             Paul Eggert  <eggert@cs.ucla.edu>
56099
56100         * m4/argp: Depend on alloca.
56101
56102 2004-05-17  Derek R. Price  <derek@ximbiot.com>
56103             Paul Eggert  <eggert@cs.ucla.edu>
56104
56105         * lib/argp-help.c, argp-parse.c: Assume <alloca.h> rather than
56106         freecoding.
56107
56108 2004-05-17  Bruno Haible  <bruno@clisp.org>
56109
56110         * lib/vasnprintf.c (VASNPRINTF): Correctly handle the case of a
56111         precision that consists of a '.' followed by an empty digit string.
56112         Patch by Tor Lillqvist <tml@iki.fi>.
56113
56114 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
56115
56116         * m4/alloca.m4 (gl_FUNC_ALLOCA): Define HAVE_ALLOCA_H always,
56117         for backward compatibility with older code.  We need our own
56118         alloca.h if _AIX is defined.  Define HAVE_ALLOCA if we discover
56119         it under some other name, and our alloca.h will define it.
56120
56121 2004-05-16  Paul Eggert  <eggert@cs.ucla.edu>
56122             Derek Price  <derek@ximbiot.com>
56123
56124         * lib/alloca.c: Include <alloca.h>, to get our interface.
56125         * lib/alloca_.h: Use __alloca on AIX, so that we don't have to
56126         include <alloca.h> first.  Use C89 prototype for alloca; this
56127         requires including <stddef.h> for size_t.  Use extern "C" if C++.
56128         Use #elif for simplicity, since we can assume C89 now.
56129         Don't try to source the system alloca.h since it will not be found
56130         and to prevent recursively including its replacement.
56131         * lib/fnmatch.c: Include <alloca.h> instead of opencoding.
56132         * lib/regex.c: Likewise.
56133
56134 2004-05-16  Derek Price  <derek@ximbiot.com>
56135             Paul Eggert  <eggert@cs.ucla.edu>
56136
56137         getline cleanup.  This changes the getndelim2 API: both order of
56138         arguments, and meaning of delim2 (now uses EOF, not 0, to indicate
56139         no delimiter).
56140
56141         * lib/getline.c: Don't include stddef.h or stdio.h, since our
56142         interface does that.
56143         (getline): Always use getdelim, so that we don't have two
56144         copies of this code.
56145         * lib/getndelim2.c: Include <limits.h>, <inttypes.h>, <stdint.h>
56146         if available.
56147         (PTRDIFF_MAX, SIZE_MAX, SSIZE_MAX): Define if not defined.
56148         (GETNDELIM2_MAXIMUM): New macro.
56149         (getndelim2): Reorder arguments.  delim==EOF now means no delimiter,
56150         instead of the old practice of delim2==0.  All callers changed.
56151         Return -1 on overflow, instead of returning junk.
56152         Do not set *linesize unless allocation succeeds.
56153         * lib/getndelim2.h: Do not include stddef.h; no longer needed, now
56154         that we include sys/types.h.
56155         * lib/getnline.h: Likewise.
56156         * lib/getndelim2.h (GETNLINE_NO_LIMIT): New macro.
56157         (getndelim2): Reorder arguments.
56158         * lib/getnline.c (getnline, getndelim):
56159         Don't discard the NMAX argument.
56160         (getnline): Invoke getndelim, to avoid code duplication.
56161         * lib/getnline.h (GETNLINE_NO_LIMIT): New macro, used instead
56162         of (size_t) -1 by callers of the getnline family.
56163
56164 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
56165
56166         * m4/gettime.m4 (gl_GETTIME): Require gl_TIMESPEC.
56167         Check for gettimeofday.
56168         * m4/settime.m4 (gl_SETTIME): Require gl_TIMESPEC.
56169         Check for settimeofday, stime.
56170
56171 2004-05-13  Paul Eggert  <eggert@cs.ucla.edu>
56172
56173         * lib/nanosleep.c (suspended): Change its type from int to
56174         sig_atomic_t volatile.
56175         (first_call): Make it private to rpl_nanosleep, and have it
56176         be zero initially as that's a bit faster.
56177         (my_usleep): Round up fractional times instead of truncating them,
56178         as this is the usual meaning for 'sleep'.
56179
56180         * lib/gettime.c (gettime): Fall back on `time' if `gettimeofday'
56181         doesn't work.
56182         * lib/settime.c: Include <unistd.h>, for stime (on Solaris 8, anyway).
56183         (ENOSYS): Define if not defined.
56184         (settime): Fall back on stime if it exists and settimeofday fails.
56185         But don't bother with fallbacks if a method fails with errno == EPERM.
56186
56187 2004-05-11  Jim Meyering  <jim@meyering.net>
56188
56189         Prior to this change, the save_cwd caller required read access to the
56190         current directory on most systems (ones with the fchdir function).
56191
56192         * lib/save-cwd.c (save_cwd) [HAVE_FCHDIR]: If opening `.' read-only
56193         fails, try write-only, and finally, resort to using xgetcwd.
56194
56195 2004-05-06  Paul Eggert  <eggert@cs.ucla.edu>
56196
56197         * lib/obstack.c, obstack.h: Import changes from libc.
56198
56199 2004-04-28  Bruno Haible  <bruno@clisp.org>
56200
56201         * lib/findprog.c (find_in_path): Treat Cygwin like Windows, since it
56202         also implicitly appends .exe to executables.
56203         * lib/localcharset.c (ISSLASH): Treat Cygwin like Windows, since it now
56204         accepts Windows pathnames.
56205         * lib/pathname.h (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
56206         Treat Cygwin like Windows, since it now accepts Windows pathnames.
56207         * lib/progreloc.c (ISSLASH, IS_PATH_WITH_DIR, FILESYSTEM_PREFIX_LEN):
56208         Treat Cygwin like Windows, since it now accepts Windows pathnames.
56209         Reported by Derek Robert Price <derek@ximbiot.com>.
56210
56211 2004-04-21  Karl Berry  <karl@gnu.org>
56212
56213         * config/srclist.txt (localcharset.c): break sync.
56214
56215 2004-04-20  Paul Eggert  <eggert@twinsun.com>
56216
56217         * m4/host-os.m4: Add a copyright notice.
56218
56219 2004-04-20  Jim Meyering  <jim@meyering.net>
56220
56221         Change UTILS_ to gl_ in AC_DEFINE'd names.
56222         Change utils_- and jm_-prefixed variables, too.
56223         * m4/mkdir-slash.m4 (gl_FUNC_MKDIR_TRAILING_SLASH): Renamed from
56224         UTILS_FUNC_MKDIR_TRAILING_SLASH.
56225         * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Renamed from UTILS_FUNC_MKSTEP.
56226
56227         * m4/dirfd.m4 (gl_FUNC_DIRFD): Rename from UTILS_FUNC_DIRFD.
56228         Don't emit trailing blanks.
56229         Also rename jm_-prefixed variables to have gl_ prefix.
56230
56231         * m4/host-os.m4 (gl_HOST_OS): Rename from UTILS_HOST_OS.
56232         Also rename jm_-prefixed variables to have gl_ prefix.
56233
56234         * m4/jm-macros.m4: Reflect the renamings.
56235         * m4/prereq.m4: Likewise.
56236
56237 2004-04-20  Jim Meyering  <jim@meyering.net>
56238
56239         * lib/getndelim2.c (getndelim2): Upon realloc failure, don't leak
56240         memory.
56241
56242 2004-04-20  Jim Meyering  <jim@meyering.net>
56243             Bruno Haible  <bruno@clisp.org>
56244
56245         * lib/localcharset.c (get_charset_aliases) [!VMS && !WIN32]: Don't leak
56246         memory when realloc fails.
56247
56248 2004-04-19  Jim Meyering  <jim@meyering.net>
56249
56250         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Require gl_FUNC_FREE,
56251         now that readutmp.c may call `free (0)'.
56252
56253 2004-04-19  Bruno Haible  <bruno@clisp.org>
56254
56255         * m4/mbrtowc.m4: Change jm_ to gl_ in cache variables as well.
56256         * m4/inttypes_h.m4: Likewise.
56257         * m4/stdint_h.m4: Likewise.
56258         * m4/intmax_t.m4: Likewise.
56259         * m4/uintmax_t.m4: Likewise.
56260
56261 2004-04-18  Jim Meyering  <jim@meyering.net>
56262
56263         * m4/prereq.m4: Don't forbid jm_ prefix.
56264
56265         * m4/afs.m4, m4/allocsa.m4, m4/assert.m4, m4/backupfile.m4:
56266         * m4/bison.m4, m4/check-decl.m4, m4/chown.m4, m4/d-ino.m4:
56267         * m4/d-type.m4, m4/dirname.m4, m4/dos.m4, m4/error.m4, m4/fpending.m4:
56268         * m4/fstypename.m4, m4/fsusage.m4, m4/ftruncate.m4, m4/getdate.m4:
56269         * m4/getgroups.m4, m4/gettext.m4, m4/glibc21.m4, m4/group-member.m4:
56270         * m4/human.m4, m4/intmax.m4, m4/intmax_t.m4, m4/inttostr.m4:
56271         * m4/inttypes.m4, m4/inttypes_h.m4, m4/jm-macros.m4, m4/jm-winsz1.m4:
56272         * m4/jm-winsz2.m4, m4/lchown.m4, m4/lib-check.m4, m4/link-follow.m4:
56273         * m4/localcharset.m4, m4/longlong.m4, m4/ls-mntd-fs.m4, m4/lstat.m4:
56274         * m4/makepath.m4, m4/mbrtowc.m4, m4/mbswidth.m4, m4/memchr.m4:
56275         * m4/memcmp.m4, m4/mkdtemp.m4, m4/mkstemp.m4, m4/mountlist.m4:
56276         * m4/nanosleep.m4, m4/path-concat.m4, m4/perl.m4, m4/prereq.m4:
56277         * m4/putenv.m4, m4/quotearg.m4, m4/regex.m4, m4/stat.m4:
56278         * m4/stdint_h.m4, m4/strftime.m4, m4/strtoimax.m4, m4/strtoll.m4:
56279         * m4/strtoull.m4, m4/strtoumax.m4, m4/timespec.m4, m4/uintmax_t.m4:
56280         * m4/ulonglong.m4, m4/unlink-busy.m4, m4/unlocked-io.m4, m4/uptime.m4,
56281         * m4/utimbuf.m4, m4/utime.m4, m4/utimes-null.m4, m4/vasnprintf.m4:
56282         * m4/xstrtoimax.m4, m4/xstrtol.m4, m4/xstrtoumax.m4:
56283         Change jm_ to gl_ in AC_DEFINE'd names. Update all uses.
56284
56285 2004-04-18  Jim Meyering  <jim@meyering.net>
56286
56287         * lib/readutmp.c (read_utmp) [UTMP_NAME_FUNCTION]: Upon realloc
56288         failure, don't leak memory and do call END_UTMP_ENT.
56289
56290 2004-04-16  Jim Meyering  <jim@meyering.net>
56291
56292         * m4/prereq.m4 (jm_PREREQ_STAT): Remove macro.  It is specific to
56293         coreutils' stat program.
56294         (gl_PREREQ): Don't require jm_PREREQ_STAT.
56295
56296 2004-04-11  Paul Eggert  <eggert@twinsun.com>
56297
56298         * lib/inttostr.h: Include <limits.h> unconditionally, since we assume
56299         C89.
56300         (CHAR_BIT): Remove, since we assume C89.
56301         Include <stdint.h> if available, as per current Autoconf CVS advice.
56302
56303 2004-03-31  Jim Meyering  <jim@meyering.net>
56304
56305         * m4/prereq.m4: Require AC_FUNC_MALLOC, not jm_FUNC_MALLOC.
56306         Require AC_FUNC_REALLOC, not jm_FUNC_REALLOC.
56307         * m4/xalloc.m4: Likewise.
56308
56309 2004-03-30  Paul Eggert  <eggert@twinsun.com>
56310
56311         Merge from coreutils.
56312
56313         * m4/inttostr.m4: New file.
56314         * m4/getdate.m4 (gl_GETDATE): Remove time-related stuff.
56315         Require AM_STDBOOL_H and gl_TIMESPEC instead.
56316         Require gl_CLOCK_TIME.
56317         * m4/clock_time.m4 (gl_CLOCK_TIME): Require AC_GNU_SOURCE.
56318
56319 2004-03-30  Paul Eggert  <eggert@twinsun.com>
56320
56321         * lib/cloexec.h, cloexec.c (set_cloexec_flag): Return int
56322         not bool, to be more consistent with Unix conventions.
56323         Suggested by Bruno Haible.
56324
56325         Merge from coreutils.
56326
56327         * lib/imaxtostr.c, lib/inttostr.c, lib/inttostr.h, lib/offtostr.c:
56328         * lib/umaxtostr.c: New files.
56329
56330         * lib/getdate.h: Include stdbool.h, and timespec.h instead of
56331         the usual <time.h> dance.
56332         (get_date): Change signature to support fractional time stamps.
56333         All callers changed.
56334         * lib/getdate.y: Include "getdate.h" first, as we can now
56335         assume C89 and don't need to worry about 'const'.
56336         Similarly, include "unlocked-io.h" near start, not in middle.
56337         Include <limits.h>.
56338         (textint.value): Use long int rather than int.
56339         (textint.digits): Use size_t rather than int.
56340         (BILLION, LOG10_BILLION): New constants.
56341         (parser_control): New member rel_ns.  Members day_ordinal,
56342         time_zone, month, day, hour, minutes, rel_year, rel_month,
56343         rel_day, rel_hour, rel_minutes, rel_seconds
56344         are now long int, not int.  Member seconds is now struct timespec,
56345         not int.  New member timespec_seen.  Members dates_seen, days_seen,
56346         local_zones_seen, rels_seen, times_seen, zones_seen are now size_t,
56347         not int.
56348         (%union.intval): Now long int, not int.
56349         New member timespec.
56350         (tSDECIMAL_NUMBER, tUDECIMAL_NUMBER): New tokens.
56351         (seconds, signed_seconds, unsigned_seconds): New nonterminals.
56352         (spec): Now is a timespec or an item list.
56353         (timespec, items): New nonterminals.
56354         (time, rel, relunit, number, get_date):
56355         Add support for fractional seconds.
56356         (time): Fix bug: seconds weren't cleared in "00:00 +0000" syntax.
56357         (gmtime, localtime, mktime): Remove decls; not needed with C89.
56358         (to_hour): First arg is now long int, not int.
56359         (to_year): Returns long int, not int.
56360         Don't treat year -70 like 70.
56361         (tm_diff): Returns long int, not int.
56362         (lookup_word): Use bool instead of int when appropriate.
56363         (yylex): Use size_t for count, not int.
56364         Detect overflow when parsing large integer constants.
56365         Add support for fractions.
56366         (get_date): Make pointers 'const' if possible.
56367         Use more-portable code to detect integer overflow.
56368         (main) [TEST]: Adjust to above changes.  Test for localtime failure.
56369         Don't use ctime; it's not reliable if the year has >4 digits.
56370
56371         * lib/human.c (humblock): Inspect BLOCKSIZE if BLOCK_SIZE isn't set.
56372         This is for compatibility with BSD.
56373
56374         * lib/timespec.h (ST_TIME_CMP_NS, ST_TIME_CMP): Define.
56375         (ATIME_CMP, CTIME_CMP, MTIME_CMP, TIMESPEC_NS): Likewise.
56376         From coreutils' system.h.
56377
56378         * lib/userspec.c: Don't include "posixver.h".
56379         (parse_user_spec): Fall back on USER.GROUP parsing, regardless
56380         of POSIX version, as POSIX 1003.1-2001 allows that behavior as a
56381         compatible extension.  Simplify code by removing a boolean int
56382         that was always nonzero if a string was nonnull.
56383
56384 2004-03-30  Jim Meyering  <jim@meyering.net>
56385
56386         Merge from coreutils.
56387
56388         Avoid a configure-time warning about sys/ucred.h on OSF V4.0.
56389         * m4/ls-mntd-fs.m4: Test for sys/ucred.h separately, since
56390         on some systems one must include <grp.h> before it.
56391         Reported by Christian Krackowizer.
56392
56393 2004-03-30  Jim Meyering  <jim@meyering.net>
56394
56395         Merge from coreutils.
56396
56397         * lib/mountlist.c [HAVE_SYS_UCRED_H]: Include grp.h before sys/ucred.h.
56398
56399         * lib/readtokens.c (readtoken): Don't leak 64 bytes when reading
56400         an empty input stream.
56401
56402         * lib/readtokens.c: Include <stdbool.h>.
56403         (readtoken): Use `size_t' rather than int/long.
56404         All callers adjusted.
56405         Use `bool' rather than `int' where appropriate.
56406         Use memset rather than an explicit loop.
56407         Use x2nrealloc rather than xrealloc.
56408         Allow the use of `\0' as a delimiter.
56409         (readtokens): Likewise.
56410         * lib/readtokens.h (readtoken, readtokens): Update prototypes.
56411
56412 2004-03-30  Jim Meyering  <jim@meyering.net>
56413
56414         * m4/realloc.m4: Remove file, since now it does no more than
56415         AC_REQUIRE([AC_FUNC_REALLOC]), and that can be done via
56416         the `configure.ac' section of module/realloc.
56417         * m4/malloc.m4: Likewise, but for AC_FUNC_MALLOC.
56418
56419 2004-03-30  Bruno Haible  <bruno@clisp.org>
56420
56421         * lib/getloadavg.c (getloadavg): Don't assume setlocale returns
56422         nonnull.
56423
56424 2004-03-29  Paul Eggert  <eggert@twinsun.com>
56425
56426         Merge changes to getloadavg.c from coreutils and Emacs.
56427
56428         * lib/getloadavg.c [!defined HAVE_SETLOCALE] (setlocale):
56429         Define to an expression, not to the empty string.
56430         Include cloexec.h and xalloc.h.
56431         (getloadavg): Restore LC_NUMERIC locale after setting it temporarily.
56432         Use set_cloexec_flag rather than rolling our own.
56433         * lib/cloexec.c, lib/cloexec.h: New files.
56434
56435 2004-03-29  Paul Eggert  <eggert@twinsun.com>
56436
56437         * m4/cloexec.m4: New file.
56438
56439 2004-03-18  Paul Eggert  <eggert@twinsun.com>
56440
56441         * lib/getopt.h: Sync with libc CVS.
56442
56443 2004-03-18  Paul Eggert  <eggert@twinsun.com>
56444             Bruno Haible  <bruno@clisp.org>
56445
56446         * m4/mbswidth.m4 (gl_MBSWIDTH): Also test whether <wchar.h> declares
56447         mbswidth.
56448
56449 2004-03-18  Paul Eggert  <eggert@twinsun.com>
56450             Bruno Haible  <bruno@clisp.org>
56451
56452         * lib/mbswidth.h: Include <wchar.h> only if
56453         HAVE_DECL_MBSWIDTH_IN_WCHAR_H, not on all platforms that have
56454         <wchar.h>.
56455         * lib/mbswidth.c: Include <stdio.h> and <time.h> before <wchar.h>.
56456
56457 2004-03-09  Paul Eggert  <eggert@twinsun.com>
56458
56459         * lib/argp-parse.c, getopt.c, getopt.h, getopt1.c:
56460         Sync with libc CVS.
56461         * lib/getopt_int.h: New file, also synced from libc.
56462
56463 2004-03-09  Paul Eggert  <eggert@twinsun.com>
56464
56465         * config/srclistvars.sh: Add GNUWWWLICENSES for eggert.
56466         * config/srclist.txt: Sync getopt with libc.  Add getopt_int.h.
56467         Bring back getopt.c, getopt.h, getopt1.c.
56468
56469 2004-03-07  Paul Eggert  <eggert@twinsun.com>
56470
56471         * m4/c-stack.m4 (gl_PREREQ_C_STACK): Renamed from jm_PREREQ_C_STACK.
56472         All uses changed.  Check for sa_sigaction member; this fixes
56473         a bug first reported by Jason Andrade in
56474         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
56475
56476 2004-03-07  Paul Eggert  <eggert@twinsun.com>
56477
56478         * lib/c-stack.c (SIGACTION_WORKS): New macro.  Use it instead of long
56479         '#if' expressions.  Unlike the code it replaces, it does not
56480         depend on (defined _SC_PAGESIZE).  However, it does depend on
56481         HAVE_STRUCT_SIGACTION_SA_SIGACTION; this last change fixes a bug
56482         first reported by Jason Andrade in
56483         <http://mail.gnu.org/archive/html/bug-textutils/2003-03/msg00027.html>.
56484
56485 2004-02-25  Simon Josefsson  <jas@extundo.com>
56486
56487         * m4/strdup.m4 (gl_PREREQ_STRDUP): Check whether strdup is declared.
56488
56489 2004-02-25  Simon Josefsson  <jas@extundo.com>
56490
56491         * lib/strdup.h: New file.
56492         * lib/strdup.c: Include it.
56493         * lib/path-concat.c: Include strdup.h. Drop strdup declaration.
56494         * lib/userspec.c: Include strdup.h. Drop strdup declaration.
56495
56496 2004-02-23  Karl Berry  <karl@gnu.org>
56497
56498         * doc/maintain.texi, doc/standards.texi, doc/make-stds.texi: new files
56499         (from fencepost.gnu.org:/gd/gnuorg).
56500
56501 2004-02-23  Karl Berry  <karl@gnu.org>
56502
56503         * config/srclistvars.sh (GNUORG) [karl]: redefine.
56504         * config/srclist.txt: add maintain/standards documents.
56505
56506 2004-02-18  Bruno Haible  <bruno@clisp.org>
56507
56508         * m4/xsize.m4 (gl_XSIZE): Require AC_C_INLINE.
56509         Reported by Derek Robert Price <derek@ximbiot.com>.
56510
56511 2004-02-16  Karl Berry  <karl@gnu.org>
56512
56513         * config/mkinstalldirs, install-sh: update from automake.
56514
56515 2004-02-06  Karl Berry  <karl@gnu.org>
56516
56517         * m4/po.m4: update from gettext 0.14.1.
56518
56519 2004-02-06  Karl Berry  <karl@gnu.org>
56520
56521         * lib/config.charset: update from gettext 0.14.1.
56522
56523 2004-02-05  Paul Eggert  <eggert@twinsun.com>
56524
56525         Add comments and code, prompted by suggestions from Bruno Haible
56526         for sh-quote.
56527         * lib/quotearg.h (quotearg_alloc): New decl.  Improve the comments
56528         describing the enum quoting_style values.
56529         * lib/quotearg.c (quotearg_alloc): New function.
56530         (quotearg_buffer_restyled): Treat lone { and } as special.
56531         Treat = as special.  Work around bug with older shells
56532         that "see" a '\' that is really the 2nd byte of a multibyte char.
56533         Quote empty string with shell_quoting_style.
56534
56535 2004-02-03  Bruno Haible  <bruno@clisp.org>
56536
56537         * m4/pipe.m4: New file, from GNU gettext.
56538
56539 2004-02-03  Bruno Haible  <bruno@clisp.org>
56540
56541         * lib/pipe.h: New file, from GNU gettext.
56542         * lib/pipe.c: New file, from GNU gettext.
56543
56544 2004-01-27  Bruno Haible  <bruno@clisp.org>
56545
56546         * m4/execute.m4: New file, from GNU gettext.
56547
56548 2004-01-27  Bruno Haible  <bruno@clisp.org>
56549
56550         * lib/execute.h: New file, from GNU gettext.
56551         * lib/execute.c: New file, from GNU gettext.
56552         * lib/w32spawn.h: New file, from GNU gettext.
56553
56554 2004-01-24  Paul Eggert  <eggert@twinsun.com>
56555
56556         Merge from diffutils.
56557
56558         * lib/file-type.c (file_type): Add typed memory objects.
56559         * lib/file-type.h (S_TYPEISTMO): New macro.
56560
56561         * lib/c-stack.h (c_stack_action): Remove argv argument.
56562         * lib/c-stack.c (c_stack_action): Likewise.  All uses changed.
56563         (die): Don't calculate message unless segv_action returns.
56564         (get_stack_location, min_address_from_argv, max_address_from_argv,
56565         volatile stack_base, volatile_stack_size): Remove.
56566         (segv_handler): If ! HAVE_XSI_STACK_OVERFLOW_HEURISTIC, assume
56567         that every segmentation violation is a stack overflow.  (Ouch!)
56568         See Debian bug 136249 (still outstanding) for more info about why
56569         HAVE_XSI_STACK_OVERFLOW_HEURISTIC fails on Linux kernels.
56570
56571 2004-01-24  Paul Eggert  <eggert@twinsun.com>
56572
56573         Exit-status fix from coreutils.
56574
56575         Use exit_failure consistently in place of EXIT_FAILURE,
56576         so that program exit statuses are consistent on failure.
56577
56578         * lib/argmatch.c (ARGMATCH_DIE) [! defined ARGMATCH_DIE]:
56579         Include "exitfail.h", and use exit_failure rather than EXIT_FAILURE.
56580         * lib/argmatch.h: Comment fix to match the above.
56581         * lib/obstack.c (obstack_exit_failure) [!defined _LIBC]:
56582         Now a macro referring to exit_failure, instead of a separate
56583         variable.  Include "exitfail.h" to get it.
56584         * lib/xstrtol.h: Include "exitfail.h".
56585         (STRTOL_FATAL_ERROR): Exit with status exit_failure, not 2.
56586
56587         * lib/long-options.c (parse_long_options): Use prototype
56588         for usage function arg.  Pass it EXIT_SUCCESS rather than 0,
56589         for clarity.
56590
56591 2004-01-21  Jim Meyering  <jim@meyering.net>
56592
56593         * lib/mktime.c (__mktime_internal) [!_LIBC]: Define to mktime_internal
56594         so as not to conflict with a different-sized __mktime_internal
56595         function in GNU libc.
56596         * lib/timegm.c (__mktime_internal) [!_LIBC]: Likewise.
56597         Problem building statically-linked `ls' reported by Michael Brunnbauer.
56598
56599 2004-01-20  Karl Berry  <karl@gnu.org>
56600
56601         * config/config.guess: update from config.
56602
56603         * config/srclistvars.sh: GNUWWWLICENSES for karl.
56604
56605 2004-01-20  Bruno Haible  <bruno@clisp.org>
56606
56607         Safer stack allocation.
56608         * lib/setenv.c: Include allocsa.h.
56609         (alloca): Remove fallback definition.
56610         (freea): Remove macro.
56611         (__add_to_environ) [!_LIBC]: Use allocsa instead of alloca. Use freesa
56612         instead of freea.
56613
56614 2004-01-20  Bruno Haible  <bruno@clisp.org>
56615
56616         * m4/eealloc.m4: New file, from GNU gettext.
56617
56618 2004-01-20  Bruno Haible  <bruno@clisp.org>
56619
56620         * m4/allocsa.m4: New file, from GNU gettext.
56621
56622 2004-01-20  Bruno Haible  <bruno@clisp.org>
56623
56624         * lib/xallocsa.h: New file, from GNU gettext.
56625         * lib/xallocsa.c: New file, from GNU gettext.
56626
56627 2004-01-20  Bruno Haible  <bruno@clisp.org>
56628
56629         * lib/wait-process.c: On Windows, include windows.h. Needed on mingw.
56630
56631 2004-01-20  Bruno Haible  <bruno@clisp.org>
56632
56633         * lib/wait-process.c (wait_subprocess): Add ignore_sigpipe argument.
56634         * lib/wait-process.c (wait_subprocess): Likewise. Handle SIGPIPE
56635         specially.
56636
56637 2004-01-20  Bruno Haible  <bruno@clisp.org>
56638
56639         * lib/wait-process.c (wait_process): Disable the 2003-10-31 waitid()
56640         patch.
56641
56642 2004-01-20  Bruno Haible  <bruno@clisp.org>
56643
56644         * lib/wait-process.c (cleanup_slaves): Use ANSI C declaration.
56645
56646 2004-01-20  Bruno Haible  <bruno@clisp.org>
56647
56648         * lib/eealloc.h: New file.
56649
56650 2004-01-20  Bruno Haible  <bruno@clisp.org>
56651
56652         * lib/binary-io.h: Avoid warnings on Cygwin.
56653
56654 2004-01-20  Bruno Haible  <bruno@clisp.org>
56655
56656         * lib/allocsa.h: New file, from GNU gettext.
56657         * lib/allocsa.c: New file, from GNU gettext.
56658
56659 2004-01-18  Karl Berry  <karl@gnu.org>
56660
56661         * doc/gpl.texi, doc/lgpl.texi: new files.
56662
56663 2004-01-18  Karl Berry  <karl@gnu.org>
56664
56665         * config/srclistvars.sh (GNUWWWLICENSES): new variable.
56666         * config/srclist.txt ({fdl,gpl,lgpl}.text): get from there.
56667
56668 2004-01-15  Paul Eggert  <eggert@twinsun.com>
56669
56670         Merge from coreutils.
56671
56672         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for uintptr_t.
56673         * m4/posixver.m4 (gl_POSIXVER): Require gl_DEFAULT_POSIX2_VERSION.
56674         (gl_DEFAULT_POSIX2_VERSION): Move
56675         the documentation from 'configure' into 'config.hin',
56676         so that 'configure --help' isn't burdened by it and
56677         we don't have to worry about its formatting there.
56678         Reword the documentation so that it's more succinct
56679         and can be run together into a single paragraph.
56680         * m4/same.m4 (gl_SAME): Check for pathconf.
56681
56682 2004-01-15  Paul Eggert  <eggert@twinsun.com>
56683
56684         Merge from coreutils.
56685
56686         * lib/posixver.c: Include posixver.h.
56687
56688         * lib/same.c: Include <stdbool.h>, <limits.h>.
56689         (_POSIX_NAME_MAX): Define if not defined.
56690         (MIN): New macro.
56691         (same_name): If file names are silently truncated, report
56692         that the file names are the same if they are the same after
56693         the silent truncation.
56694
56695         * lib/xstrtod.h (xstrtod): Accept an extra arg, specifying the
56696         conversion function.
56697         * lib/xstrtod.c (xstrtod): Likewise.  All callers changed to
56698         include c-strtod.h and use c_strtod.  Don't include stdlib.h; no
56699         longer needed.
56700
56701 2004-01-15  Jim Meyering  <jim@meyering.net>
56702
56703         Merge from coreutils.
56704
56705         * m4/clock_time.m4 (gl_CLOCK_TIME): Don't set LIB_CLOCK_GETTIME
56706         if no library is required.
56707         * m4/jm-macros.m4: Don't require UTILS_SYS_OPEN_MAX.
56708         * m4/jm-macros.m4 (jm_MACROS): Require gl_FUNC_FREE.
56709         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.58.
56710         (AC_LANG_SOURCE): Remove definition, now that we require autoconf-2.58.
56711         * m4/jm-macros.m4 (jm_MACROS): Don't require AC_FUNC_FTW.
56712         * m4/lib-check.m4 (jm_LIB_CHECK): Do not set LIB_CRYPT to the
56713         value, $ac_cv_search_crypt, if it's "none required".
56714         * m4/posixver.m4 (gl_DEFAULT_POSIX2_VERSION): New macro.
56715         * m4/prereq.m4 (jm_PREREQ): Require AC_FUNC_GETLOADAVG,
56716         not gl_FUNC_GETLOADAVG.
56717         * m4/prereq.m4 (jm_PREREQ): Require gl_READTOKENS, gl_MD5, gl_MAKEPATH,
56718         gl_LONG_OPTIONS, and gl_IDCACHE, gl_GETUGROUPS.
56719
56720 2004-01-15  Jim Meyering  <jim@meyering.net>
56721
56722         Merge from coreutils.
56723
56724         * lib/md5.h (rol) [__GNUC__ && __i386__]: Don't use `asm' code.  These
56725         days, gcc-3.x does better all by itself.  Patch from Dean Gaudet:
56726         http://mail.gnu.org/archive/html/bug-coreutils/2003-11/msg00144.html
56727
56728         * lib/posixver.c (DEFAULT_POSIX2_VERSION): Use definition of new,
56729         optional configure-time default.
56730
56731         * lib/version-etc.c (version_etc_copyright): Update copyright date.
56732
56733         * lib/xreadlink.c (xreadlink): Correct outdated comment.
56734
56735 2004-01-15  Alexandre Duret-Lutz  <adl@gnu.org>
56736
56737         Merge from coreutils.
56738
56739         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Do not set LIB_NANOSLEEP to the
56740         value, $ac_cv_search_nanosleep, if it's "none required".
56741
56742 2004-01-14  Paul Eggert  <eggert@twinsun.com>
56743
56744         * lib/fnmatch_loop.c (ALLOCA_LIMIT): Remove macro, which collided
56745         with like-named macro in fnmatch.c.
56746         (EXT): Use an internal constant instead.
56747
56748         Merge fnmatch patches from glibc.
56749         * lib/fnmatch.c (mbsinit): Remove define.
56750         Add libc_hidden_ver (__fnmatch, fnmatch).
56751         * lib/fnmatch_loop.c (FCT): Cast to int32_t and UCHAR when appropriate.
56752         Adjust to renaming of collseq_table_lookup to __collseq_table_lookup.
56753
56754 2004-01-14  Karl Berry  <karl@gnu.org>
56755
56756         * config/install-sh: update from automake.
56757
56758 2004-01-13  Karl Berry  <karl@gnu.org>
56759
56760         * config/install-sh: update from automake.
56761
56762 2004-01-09  Karl Berry  <karl@gnu.org>
56763
56764         * config/install-sh: update from automake.
56765
56766 2004-01-05  Karl Berry  <karl@gnu.org>
56767
56768         * config/config.{sub,guess}: update from config.
56769
56770 2003-12-31  Karl Berry  <karl@gnu.org>
56771
56772         * config/depcomp: update from automake.
56773
56774 2003-12-14  Karl Berry  <karl@gnu.org>
56775
56776         * lib/config.charset: update from gettext-runtime.
56777
56778 2003-12-03  Paul Eggert  <eggert@twinsun.com>
56779
56780         * lib/getgroups.c (getgroups): xmalloc takes one argument, not two.
56781         Bug reported by Alfred M. Szmidt.
56782
56783 2003-12-03  Bruno Haible  <bruno@clisp.org>
56784
56785         * m4/gettext.m4: Upgrade from gettext-0.13.
56786         * m4/po.m4: Upgrade from gettext-0.13.
56787         * m4/size_max.m4 (gl_SIZE_MAX): Don't use the _ONCE macros here.
56788         * m4/intmax.m4: New file, from gettext-0.13.
56789         * m4/printf-posix.m4: New file, from gettext-0.13.
56790
56791 2003-11-29  Karl Berry  <karl@gnu.org>
56792
56793         * lib/argp-{help.c,parse.c,namefrob.h}, argp.h: update from libc.
56794
56795 2003-11-25  Paul Eggert  <eggert@twinsun.com>
56796             Bruno Haible  <bruno@clisp.org>
56797
56798         * lib/printf-parse.h: Don't include sys/types.h.
56799         (ARG_NONE): New macro.
56800         (char_directive): Change type of *arg_index fields to size_t.
56801         * lib/printf-parse.c: Don't include sys/types.h.
56802         (SSIZE_MAX): Remove macro.
56803         (PRINTF_PARSE): Change the type of the arg_index variables to size_t.
56804         Remove unnecessary overflow check.
56805         * lib/vasnprintf.c (VASNPRINTF): Update for type change of *arg_index
56806         fields.
56807
56808 2003-11-25  Bruno Haible  <bruno@clisp.org>
56809
56810         * modules/vasnprintf (Files): Remove m4/ssize_t.m4.
56811
56812 2003-11-25  Bruno Haible  <bruno@clisp.org>
56813
56814         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Don't require
56815         gt_TYPE_SSIZE_T.
56816
56817 2003-11-24  Paul Eggert  <eggert@twinsun.com>
56818
56819         * modules/alloca: Remove dependency on xalloc.
56820
56821 2003-11-24  Paul Eggert  <eggert@twinsun.com>
56822
56823         * lib/alloca.c: Remove dependency on xalloc module.
56824         (xalloc_die): Remove.
56825         (memory_full) [!defined emacs]: New macro.
56826         [!defined emacs]: Don't include xalloc.h.
56827         (alloca): Invoke memory_full, not xalloc_die, if malloc fails or
56828         address arithmetic overflows.  Change datatypes a bit to avoid
56829         unnecessary casts.
56830
56831 2003-11-22  Jim Meyering  <jim@meyering.net>
56832
56833         * lib/xmalloc.c (x2nrealloc_inline): Fix typos in comments:
56834         s/size/size_t/.
56835
56836 2003-11-21  Karl Berry  <karl@gnu.org>
56837
56838         * config/config.{sub,guess}: update from config.
56839
56840 2003-11-18  Karl Berry  <karl@gnu.org>
56841
56842         * config/config.{sub,guess}: update from config.
56843
56844         * config/(printf-{parse,args}.[ch]): sync broken, sigh.
56845
56846 2003-11-17  Paul Eggert  <eggert@twinsun.com>
56847
56848         * README: Mention that S+T cannot overflow if S is the size of
56849         an existing object and T is sufficiently small.
56850
56851 2003-11-17  Jim Meyering  <jim@meyering.net>
56852
56853         On systems without utime and without a utimes function capable of
56854         dealing with a NULL struct utimbuf* argument, this utime replacement
56855         could -- in unusual circumstances -- leak a file descriptor.
56856         * lib/utime.c: Include <unistd.h> and <errno.h>.
56857         (utime_null): Be sure to close `fd' and to preserve errno.
56858         Reported by Geoff Collyer via Arnold Robbins.
56859
56860 2003-11-17  Bruno Haible  <bruno@clisp.org>
56861
56862         * modules/vasnprintf (Files): Add m4/ssize_t.m4.
56863         (Depends-on): Add xsize.
56864
56865 2003-11-17  Bruno Haible  <bruno@clisp.org>
56866
56867         * m4/vasnprintf.m4 (gl_PREREQ_PRINTF_PARSE): Require gt_TYPE_SSIZE_T.
56868
56869 2003-11-17  Bruno Haible  <bruno@clisp.org>
56870
56871         * lib/vasnprintf.c (alloca): Remove fallback definition.
56872         (freea): Remove definition.
56873         (VASNPRINTF): Use alloca only for small sizes, say <= 4000 bytes.
56874         Reported by Paul Eggert.
56875
56876 2003-11-16  Paul Eggert  <eggert@twinsun.com>
56877             Bruno Haible  <bruno@clisp.org>
56878
56879         Protect against address arithmetic overflow.
56880         * lib/printf-args.h: Include stddef.h.
56881         (arguments): Change type of field 'count' to size_t.
56882         * lib/printf-args.c (printf_fetchargs): Use size_t instead of
56883         'unsigned int' where appropriate.
56884         * lib/printf-parse.h: Include sys/types.h.
56885         (char_directive): Change type of *arg_index fields to ssize_t.
56886         (char_directives): Change type of fields 'count', max_*_length to
56887         size_t.
56888         * lib/printf-parse.c: Include sys/types.h and xsize.h.
56889         (SSIZE_MAX): Define fallback value.
56890         (PRINTF_PARSE): Use size_t instead of 'unsigned int' and ssize_t
56891         instead of 'int' where appropriate. Check a_allocated, d_allocated
56892         against overflow. Reject %m$ argument numbers > SSIZE_MAX + 1.
56893         * lib/vasnprintf.c: Include xsize.h.
56894         (VASNPRINTF): Use size_t instead of 'unsigned int' where appropriate.
56895         Check alloca, malloc, realloc, ENSURE_ALLOCATION arguments against
56896         overflow. Avoid wraparound when converting a width or precision from
56897         decimal to binary.
56898
56899 2003-11-16  Bruno Haible  <bruno@clisp.org>
56900
56901         Update from GNU gettext.
56902         * lib/printf-parse.c: Generalize to it can be compiled for wide
56903         strings.
56904         (PRINTF_PARSE, CHAR_T, DIRECTIVE, DIRECTIVES): New macros.
56905         * lib/vasnprintf.c: Generalize to it can be compiled for wide strings.
56906         (VASNPRINTF, CHAR_T, DIRECTIVE, DIRECTIVES, PRINTF_PARSE, USE_SNPRINTF,
56907         SNPRINTF): New macros.
56908         Don't include <alloca.h> if the file is used inside libintl.
56909         (local_wcslen): New function, for Solaris 2.5.1.
56910         (VASNPRINTF): Use it instead of wcslen.
56911
56912 2003-11-16  Bruno Haible  <bruno@clisp.org>
56913
56914         * lib/xsize.h (xmax): New function.
56915         (xsum, xsum3, xsum4): Declare as "pure" functions.
56916
56917 2003-11-12  Paul Eggert  <eggert@twinsun.com>
56918
56919         * modules/xalloc (Files): Undo latest change, since xalloc.h
56920         no longer needs SIZE_MAX or PTRDIFF_MAX.
56921
56922 2003-11-12  Paul Eggert  <eggert@twinsun.com>
56923
56924         * m4/xalloc.m4 (gl_PREREQ_XALLOC): Do not require gl_SIZE_MAX or
56925         gl_PTRDIFF_MAX.
56926
56927 2003-11-12  Paul Eggert  <eggert@twinsun.com>
56928
56929         * lib/xstrtol.c (__xstrtol): Remove "break" immediately after
56930         "return", to pacify some unknown compiler.  Problem reported
56931         by Joerg Schilling.
56932
56933 2003-11-12  Paul Eggert  <eggert@twinsun.com>
56934
56935         * lib/xalloc.h: Do not include <limits.h> or <stdint.h>.
56936         (xalloc_oversized): Use sizeof (ptrdiff_t) and sizeof (size_t) for
56937         the heuristic, rather than PTRDIFF_MAX and SIZE_MAX.  This
56938         heuristic is just as accurate as far as we know, and it removes a
56939         dependency on size_max.m4 and ptrdiff_max.m4.
56940
56941 2003-11-11  Bruno Haible  <bruno@clisp.org>
56942
56943         * modules/xsize (Files): Add m4/size_max.m4.
56944         * modules/xalloc (Files): Add m4/size_max.m4, m4/ptrdiff_max.m4.
56945
56946 2003-11-11  Bruno Haible  <bruno@clisp.org>
56947
56948         * m4/size_max.m4: New file.
56949         * m4/ptrdiff_max.m4: New file.
56950         * m4/xsize,m4 (gl_XSIZE): Require gl_SIZE_MAX.
56951         * m4/xalloc.m4 (gl_PREREQ_XALLOC): New macro.
56952         (gl_XALLOC): Invoke it.
56953
56954 2003-11-11  Bruno Haible  <bruno@clisp.org>
56955
56956         * lib/xsize.h (SIZE_MAX): Remove fallback definition.
56957         * lib/xalloc.h: Include limits.h. Assume SIZE_MAX and PTRDIFF_MAX are
56958         defined.
56959
56960 2003-11-10  Paul Eggert  <eggert@twinsun.com>
56961
56962         * lib/xalloc.h (xalloc_oversized): [! (defined PTRDIFF_MAX &&
56963         PTRDIFF_MAX < SIZE_MAX)]: Fix off-by-one error that would have
56964         rejected some allocations of exactly SIZE_MAX - 2 bytes.
56965         From Bruno Haible.
56966         [defined PTRDIFF_MAX && PTRDIFF_MAX < SIZE_MAX]: Use SIZE_MAX,
56967         not (size_t) -1, since it's defined here.
56968
56969 2003-11-09  Karl Berry  <karl@gnu.org>
56970
56971         * config/mkinstalldirs, depcomp, mdate-sh: update from automake.
56972
56973 2003-11-06  Paul Eggert  <eggert@twinsun.com>
56974
56975         * lib/xalloc.h [HAVE_STDINT_H]: Include <stdint.h>.
56976         (xalloc_oversized) [! (PTRDIFF_MAX < SIZE_MAX)]:
56977         Reject sizes of exactly SIZE_MAX bytes.
56978         * lib/xreadlink.c: Include "xalloc.h" before checking whether SIZE_MAX
56979         is defined, since "xalloc.h" now defines SIZE_MAX on modern hosts.
56980
56981 2003-11-05  Bruno Haible  <bruno@clisp.org>
56982
56983         * lib/xsize.h: Include limits.h, to avoid a possible collision with
56984         SIZE_MAX defined in <limits.h> on Solaris.
56985
56986 2003-11-04  Jim Meyering  <jim@meyering.net>
56987
56988         * modules/sysexits: Use the `$(VAR)' notation for AC_SUBST'd
56989         variable names, rather than @VAR@.
56990         * modules/poll: Likewise.
56991
56992 2003-11-04  Bruno Haible  <bruno@clisp.org>
56993
56994         * modules/xsize: New file.
56995         * modules/linebreak: Depend on xsize.
56996         * MODULES.html.sh (func_all_modules): Add xsize.
56997
56998 2003-11-04  Bruno Haible  <bruno@clisp.org>
56999
57000         * m4/xsize.m4: New file.
57001
57002 2003-11-04  Bruno Haible  <bruno@clisp.org>
57003
57004         * lib/xsize.h: New file.
57005         * lib/linebreak.c: Include xsize.h.
57006         (mbs_possible_linebreaks, mbs_width_linebreaks): Check malloc()
57007         argument for overflow.
57008         Suggested by Paul Eggert.
57009
57010 2003-11-03  Karl Berry  <karl@gnu.org>
57011
57012         * config/config.{guess,sub}: update from config.
57013
57014 2003-11-03  Jim Meyering  <jim@meyering.net>
57015
57016         * modules/userspec (lib_SOURCES): Add userspec.h.
57017         (Include): Add "userspec.h".
57018         Improve description.
57019
57020 2003-11-03  Jim Meyering  <jim@meyering.net>
57021
57022         * lib/userspec.c: Include "userspec.h".
57023         * lib/userspec.h: New file.
57024
57025 2003-11-03  Bruno Haible  <bruno@clisp.org>
57026
57027         * m4/wait-process.m4 (gl_WAIT_PROCESS): Also check for waitid.
57028
57029 2003-11-03  Bruno Haible  <bruno@clisp.org>
57030
57031         * lib/wait-process.c (wait_process): Use waitid with WNOWAIT if
57032         available, to avoid (extremely rare) race condition.
57033         Suggested by Paul Eggert.
57034
57035 2003-11-02  Karl Berry  <karl@gnu.org>
57036
57037         * config/srclist.txt (vasprintf.c): sync broken, sigh.
57038
57039 2003-10-31  Paul Eggert  <eggert@twinsun.com>
57040
57041         * lib/mountlist.h (struct mount_entry.me_type_malloced): New member.
57042         * lib/mountlist.c (SIZE_MAX): Define if not defined already.
57043         (read_filesystem_list): Set and use me_type_malloced.
57044         Use "sizeof *me" rather than "sizeof (struct mount_entry)" (or
57045         whatever the type happens to be), for brevity and consistency.
57046         Check for size calculation overflow on Alphas running OSF/1.
57047
57048 2003-10-31  Jim Meyering  <jim@meyering.net>
57049
57050         * lib/hash.c: Include "xalloc.h" for use of xalloc_oversized.
57051
57052         * lib/linebuffer.c: Include <string.h> for declaration of memset.
57053
57054 2003-10-30  Paul Eggert  <eggert@twinsun.com>
57055             Bruno Haible  <bruno@clisp.org>
57056
57057         * lib/vasprintf.c: Include <limits.h>, <stdlib.h>.
57058         (vasprintf): Fail if the resulting length doesn't fit in an 'int'.
57059
57060 2003-10-30  Paul Eggert  <eggert@cs.ucla.edu>
57061
57062         * m4/host-os.m4 (UTILS_HOST_OS): Change netbsd*-gnu pattern back to
57063         netbsd*-gnu*.  Suggested by Robert Millan.
57064
57065 2003-10-29  Paul Eggert  <eggert@twinsun.com>
57066
57067         * modules/group-member: Depend on stdbool.
57068
57069 2003-10-29  Paul Eggert  <eggert@twinsun.com>
57070
57071         * m4/xalloc.m4 (gl_XALLOC): Undo previous change.
57072
57073 2003-10-29  Paul Eggert  <eggert@twinsun.com>
57074
57075         * m4/host-os.m4 (UTILS_HOST_OS): Resurrect netbsd*-gnu.  Add comments
57076         to it, and to knetbsd*-gnu and kfreebsd*-gnu.  Remove the '*' from
57077         after the 'gnu' in these cases.  This fixes some bugs in the
57078         previous change, and is based on suggestions by Robert Millan.
57079
57080 2003-10-29  Paul Eggert  <eggert@twinsun.com>
57081
57082         * lib/xalloc.h (xalloc_oversized): Now a macro, not a function,
57083         so that it works even if SIZE_MAX < N.  Do not include <stdbool.h>;
57084         no longer needed.
57085         * lib/quotearg.c (quotearg_n_options): Use it.
57086         * lib/group-member.c: Include <stdbool.h>.
57087         (free_group_info): Arg is now const *; don't free arg.
57088         (get_group_info): Now returns bool and accepts struct group_info *,
57089         rather than returning a malloc'ed struct group_info *.
57090         All uses changed.  Check for overflow in internal size calculation.
57091
57092         * lib/getusershell.c (readname): Simplify the code by using x2nrealloc
57093         rather than xmalloc/xrealloc.
57094         * lib/linebuffer.c (initbuffer, readlinebuffer): Simplify the code by
57095         using x2realloc rather than xmalloc/xrealloc.  Also, fix a C
57096         conformance bug: the old code used a pointer after freeing the
57097         storage that it addressed.
57098         * lib/hash.c (hash_initialize): Simplify the code by using
57099         xalloc_oversized rather than doing it by hand.
57100         * lib/getgroups.c (getgroups): Don't use xrealloc, since we don't need
57101         the buffer preserved.  Use free and xmalloc instead.
57102         * lib/quotearg.c (quotearg_n_options): Likewise.
57103         Use a simpler test for size overflow.  Don't use xalloc_oversized
57104         because unsigned int might be wider than size_t (!); this suggests
57105         that we should switch from unsigned int to size_t for slot numbers.
57106
57107 2003-10-28  Paul Eggert  <eggert@twinsun.com>
57108
57109         * m4/host-os.m4 (UTILS_HOST_OS): Identify GNU/KFreeBSD and
57110         GNU/KNetBSD.  These implementations use glibc atop the FreeBSD and
57111         NetBSD kernels.  Requested by Richard Stallman.
57112
57113 2003-10-27  Paul Eggert  <eggert@twinsun.com>
57114
57115         * lib/exclude.c (new_exclude): Use xzalloc rather than xmalloc
57116         to allocate the returned structure.  Do not allocate a subarray,
57117         as x2nrealloc will do that.
57118         (add_exclude): Use x2nrealloc to reallocate ex->exclude,
57119         instead of xnrealloc.
57120         (add_exclude_file): Use x2realloc instead of malloc + xnrealloc.
57121
57122 2003-10-27  Bruno Haible  <bruno@clisp.org>
57123
57124         * lib/stdbool_.h: Better support for BeOS.
57125
57126 2003-10-26  Paul Eggert  <eggert@twinsun.com>
57127
57128         * m4/xalloc.m4 (gl_XALLOC): Requore AC_C_INLINE, since xalloc.h
57129         now uses inline.
57130
57131 2003-10-26  Paul Eggert  <eggert@twinsun.com>
57132
57133         * lib/xalloc.h (xalloc_oversized): New static inline function, for
57134         callers that want to do their own size-overflow checking.  Include
57135         <stdbool.h>, since xalloc_oversized returns bool.
57136         * lib/xalloc.c (array_size_overflow): Remove.  All callers changed
57137         to use xalloc_oversized.
57138
57139         Add two functions x2realloc, x2nrealloc, for programs that grow
57140         arrays dynamically by doubling their sizes.
57141         * lib/xalloc.h (x2realloc, x2nrealloc): New decls.
57142         * lib/xmalloc.c (x2nrealloc_inline, x2nrealloc, x2realloc):
57143         New functions.
57144
57145         Port to C99 semantics for 'inline' of external functions.
57146         Bug reported by Bruno Haible.
57147         * lib/xmalloc.c (xnmalloc_inline): New static inline function,
57148         with the old contents of xnmalloc.
57149         (xnmalloc, xmalloc): Use it.
57150         (xnrealloc_inline): New static inline function,
57151         with the old contents of xnrealloc.
57152         (xnrealloc, xrealloc): Use it.
57153
57154         * lib/alloc.c (alloca): xmalloc cannot return NULL, so don't test for
57155         that.
57156
57157 2003-10-26  Karl Berry  <karl@gnu.org>
57158
57159         * config/srclist.txt (COPYING.DOC): no longer available from
57160         /gd/gnuorg; don't know where the ultimate source is.
57161
57162 2003-10-25  Paul Eggert  <eggert@twinsun.com>
57163
57164         Fix several address-calculation bugs in the hash modules,
57165         plus some minor code cleanup.
57166
57167         * lib/hash.h: Include <stdbool.h>, for bool.
57168         * lib/hash.c: Don't include <stdbool.h>, since hash.h does it now.
57169         * lib/hash.h (Hash_hasher, hash_get_n_buckets, hash_get_n_buckets_used,
57170         hash_get_n_entries, hash_get_max_bucket_length,
57171         hash_get_entries, hash_do_for_each, hash_string, hash_initialize,
57172         hash_rehash): Use size_t rather than unsigned.
57173         * lib/hash.c (struct hash_table, hash_get_n_buckets,
57174         hash_get_n_buckets_used, hash_get_n_entries,
57175         hash_get_max_bucket_length, hash_table_ok, hash_print_statistics,
57176         hash_get_entries, hash_do_for_each, hash_string, is_prime,
57177         next_prime, hash_initialize, hash_rehash, hash_delete, hash_print):
57178         Likewise.
57179         (SIZE_MAX): Define if not defined.
57180         (hash_get_max_bucket_length, hash_table_ok, hash_lookup,
57181         hash_get_first, hash_get_next, hash_get_entries, hash_do_for_each,
57182         hash_print):
57183         Use const * when possible.
57184         (hash_string): Use (unsigned char) *P rather than *(unsigned char *) P.
57185         (check_tuning): Fix bug: if tuning parameters were very close to
57186         0 or 1, rounding errors could have caused subscript violations.
57187         (hash_initialize, allocate_entry, hash_print): Remove unnecessary cast.
57188         (hash_initialize): Add 'fail:' label
57189         to free table and return NULL, and use it to simplify code.
57190         Use calloc rather than clearing the storage ourself.
57191         (hash_initialize, hash_rehash): Check for arithmetic overflow in
57192         buffer size calculations.
57193         * lib/hash-pjw.h (hash_pjw): Use size_t, not unsigned.
57194         Include <stddef.h>, for size_t.
57195         * lib/hash-pjw.c (hash_pjw): Likewise.
57196         Switch to method described by Bruno Haible.
57197         Include <limits.h>, for CHAR_BIT.
57198         (SIZE_BITS): New macro.
57199
57200 2003-10-23  Paul Eggert  <eggert@twinsun.com>
57201
57202         * m4/getline.m4 (AM_FUNC_GETLINE):
57203         Don't include getndelim2.o twice into LIBOBJS; this breaks on some
57204         hosts.  Problem reported by Derek Robert Price in
57205         <http://mail.gnu.org/archive/html/bug-gnulib/2003-10/msg00092.html>.
57206         This patch can be withdrawn after Autoconf 2.58 is required for gnulib.
57207         * m4/getndelim2.m4 (gl_GETNDELIM2): Likewise.
57208
57209 2003-10-21  Paul Eggert  <eggert@twinsun.com>
57210
57211         * lib/getndelim2.c (getndelim2): When size calculation overflows,
57212         ceiling the allocation at NMAX bytes rather than silently
57213         discarding input bytes before NMAX is reached.  This makes
57214         a difference only if NMAX exceeds SIZE_MAX / 2.
57215
57216         * lib/obstack.c: Merge from glibc.
57217         [defined _LIBC]: Include <obstack.h>, not "obstack.h".
57218         Add libc_hidden_def (_obstack_newchunk).
57219         (_obstack_free) [! defined _LIBC]: Remove.
57220         [defined _LIBC]: Make a strong alias from obstack_free, rather than
57221         a clone of the function body.
57222         (fputs) [defined _LIBC && defined USE_IN_LIBIO]: Remove.
57223         [defined _LIBC && !defined USE_IN_LIBIO]: Include <libio/iolibio.h>.
57224
57225         * lib/obstack.h: Indenting cleanup, to make it easier to merge with
57226         glibc.
57227         (obstack_grow, obstack_grow0): Remove unnecessary parentheses around
57228         arg to memcpy.
57229
57230         * lib/obstack.h (obstack_1grow_fast): Properly parenthesize arg.
57231         (obstack_ptr_grow_fast, obstack_int_grow_fast):
57232         Don't use lvalue casts, as GCC plans to remove support for them
57233         in GCC 3.5.  Reported by Joseph S. Myers.  This bug
57234         was also present in the non-GCC version, indicating that this
57235         code had always been buggy and had never been widely used.
57236         (obstack_1grow, obstack_ptr_grow, obstack_int_grow, obstack_blank):
57237         Use the fast variant of each macro, rather than copying the
57238         definiens of the fast variant; that way, we'll be more likely to
57239         catch future bugs in the fast variants.
57240
57241 2003-10-20  Bruno Haible  <bruno@clisp.org>
57242
57243         * modules/wait-process: New file.
57244         * MODULES.html.sh (func_all_modules): Add wait-process.
57245
57246 2003-10-20  Bruno Haible  <bruno@clisp.org>
57247
57248         * m4/wait-process.m4: New file.
57249
57250 2003-10-20  Bruno Haible  <bruno@clisp.org>
57251
57252         * lib/wait-process.h: New file, from GNU gettext.
57253         * lib/wait-process.c: New file, from GNU gettext.
57254
57255 2003-10-19  Jim Meyering  <jim@meyering.net>
57256
57257         * lib/vasnprintf.c (vasnprintf): Work around losing snprintf on
57258         HPUX 10.20.
57259
57260 2003-10-18  Karl Berry  <karl@gnu.org>
57261
57262         * config/config.guess: update from config.
57263
57264 2003-10-16  Paul Eggert  <eggert@twinsun.com>
57265
57266         * lib/getgroups.c: Include <errno.h>, <stdlib.h>.
57267         (getgroups): First arg is int, not size_t.
57268         Don't let 'free' mangle errno.
57269
57270 2003-10-16  Paul Eggert  <eggert@twinsun.com>
57271
57272         * README: Mention that gnulib assumes that (foo *) NULL + 0 == NULL.
57273
57274 2003-10-16  Karl Berry  <karl@gnu.org>
57275
57276         * config/config.{guess,sub}: update from config.
57277
57278 2003-10-16  Jim Meyering  <jim@meyering.net>
57279
57280         * lib/xmalloc.c: Include <string.h>, for declarations of memset and
57281         memcpy.
57282
57283 2003-10-15  Paul Eggert  <eggert@twinsun.com>
57284
57285         * lib/exclude.c: Do not include <inttypes.h> or <stdint.h>.
57286         (SIZE_MAX): Remove.
57287         (new_exclude, add_exclude_file): Initial size no longer needs to
57288         be a power of 2.
57289         (add_exclude, add_exclude_file): Use xnrealloc instead of rolling
57290         our own address arithmetic overflow checking.
57291
57292         * lib/fnmatch.c (SIZE_MAX): Define if standard headers don't.
57293         (fnmatch): Do not alloca more than 2000 wide characters;
57294         instead, use malloc for large buffers.
57295         Check for address arithmetic overflow, and return -1
57296         with errno set to ENOMEM in that case.
57297         * lib/fnmatch_loop.c (ALLOCA_LIMIT): New macro.
57298         (NEW_PATTERN): Do not alloca more than 8000 bytes;
57299         instead, return -1.  Check for address arithmetic overflow.
57300
57301 2003-10-14  Paul Eggert  <eggert@twinsun.com>
57302
57303         Handle invalid suffixes and overflow independently, so that
57304         callers can treat them independently as needed.  Fix some bugs in
57305         suffix handling, e.g., "100k@" was not diagnosed as an invalid
57306         suffix for a human-readable blocksize.  The major caller-visible
57307         change is the addition of a new
57308         LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW enum value, indicating
57309         that both overflow and suffix chars were found.
57310
57311         * lib/human.c (humblock): Don't check separately for invalid suffix
57312         char; that is xstrtoumax's job (now that its bug is fixed).
57313         * lib/xstrtoimax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM) [defined
57314         INTMAX_MAX]: New macros.
57315         * lib/xstrtol.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM, TYPE_MINIMUM,
57316         TYPE_MAXIMUM): New macros.
57317         (bkm_scale, bkm_scale_by_power): Return strtol_error, not int.
57318         (bkm_scale, bkm_scale_by_power, __xstrtol): Return maximal values
57319         if overflow occurs, as it's what __strtol does and it's more useful
57320         in practice.
57321         (__xstrtol): If __strtol reports some error other than ERANGE,
57322         reflect it to the caller as LONGINT_INVALID.  If it reports
57323         ERANGE, continue the rest of parsing, and report LONGINT_OVERFLOW
57324         | LONGINT_INVALID_SUFFIX_CHAR if both errors occur.
57325         * lib/xstrtol.h (LONGINT_INVALID_SUFFIX_CHAR_WITH_OVERFLOW): New enum
57326         value.
57327         (_STRTOL_ERROR): Handle it.  Abort when given unknown error codes.
57328         * lib/xstrtoul.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM): New macros.
57329         * lib/xstrtoumax.c (STRTOL_T_MINIMUM, STRTOL_T_MAXIMUM)
57330         [defined UINTMAX_MAX]: New macros.
57331
57332 2003-10-14  Bruno Haible  <bruno@clisp.org>
57333
57334         * modules/fatal-signal: Add m4/sig_atomic_t.m4 to file list.
57335
57336 2003-10-14  Bruno Haible  <bruno@clisp.org>
57337
57338         * m4/sig_atomic_t: New file, from GNU gettext.
57339         * m4/fatal-signal.m4 (gl_FATAL_SIGNAL): Require gt_TYPE_SIG_ATOMIC_T.
57340
57341 2003-10-14  Bruno Haible  <bruno@clisp.org>
57342
57343         * lib/fatal-signal.h: Improved comments. Suggested by Paul Eggert.
57344         * lib/fatal-signal.c: Use sig_atomic_t. Suggested by Paul Eggert.
57345         Also use volatile where needed.
57346
57347 2003-10-12  Paul Eggert  <eggert@twinsun.com>
57348
57349         * modules/xalloc: Do not depend on 'exit'.  Depend on 'stdbool'.
57350         Change maintainer from Bruno Haible to 'all'.
57351
57352 2003-10-12  Paul Eggert  <eggert@twinsun.com>
57353
57354         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Require AC_C_INLINE.
57355
57356 2003-10-12  Paul Eggert  <eggert@twinsun.com>
57357
57358         * lib/xalloc.h (xnmalloc, xzalloc, xnrealloc, xclone): New decls.
57359         (XMALLOC, XCALLOC, XREALLOC, XFREE, CCLONE, CLONE): Deprecate,
57360         and define in terms of the other primitives.
57361         * lib/xmalloc.c: Include stdbool.h; do not include exit.h.
57362         (SIZE_MAX): Define if not already defined.
57363         (array_size_overflow): New function.
57364         (xalloc_die): Abort instead of exiting if 'error' returns.
57365         (xnmalloc, xnrealloc, xzalloc, xclone): New functions.
57366         (xmalloc, xrealloc): Use them.
57367         (xcalloc): Check for address arithmetic overflow.
57368         * lib/xstrdup.c (xstrdup): Use xclone, since memcpy should be
57369         a bit faster than strcpy.
57370
57371 2003-10-10  Simon Josefsson  <jas@extundo.com>
57372
57373         * modules/argp (Depends-on): Add restrict and strcase.
57374
57375 2003-10-10  Simon Josefsson  <jas@extundo.com>
57376
57377         * m4/argp.m4: Add AC_C_INLINE.
57378
57379 2003-10-08  Paul Eggert  <eggert@twinsun.com>
57380
57381         Merge getpass from libc, plus a few fixes.
57382
57383         * lib/getpass.c (HAVE_STDIO_EXT) [_LIBC]: Define to 1.
57384         Include <stdbool.h>.
57385         Include <stdio_ext.h> if HAVE_STDIO_H, otherwise define
57386         __fsetlocking to empty.
57387         [_LIBC]: Do not include "getline.h" or "unlocked-io.h", but
57388         do include <bits/libc-lock.h>.
57389         Do not include <fcntl.h>; not needed.
57390         [_LIBC]: Include <wchar.h>.
57391         (NOTCANCEL_MODE): New macro.
57392         (flockfile, funlockfile) [_LIBC]: New macros.
57393         (__libc_cleanup_push, __libc_cleanup_pop, __getline, __tcgetattr)
57394         [!_LIBC]: New macros.
57395         (call_fclose): New function.
57396         (getpass): Use it.  Save tty stream separately; this simplifies the
57397         code and makes it more reliable if stdin happens to equal stdout.
57398         Invoke __fsetlocking on tty.
57399         Handle thread cancellation if needed.
57400         Namespace cleanup (use __tcgetattr, __getline).
57401         Use bool for Booleans.
57402         [USE_IN_LIBIO]: Handle wide streams.
57403         [!_LIBC]: Unconditionally do the fseek, since we don't know what
57404         stream might go where.
57405
57406         * lib/unlocked-io.h: Include <stdio.h>, so that the caller
57407         doesn't have to include <stdio.h> before us.
57408         (clearerr_unlocked, feof_unlocked, ferror_unlocked,
57409         fflush_unlocked, fgets_unlocked, fputc_unlocked, fputs_unlocked,
57410         fread_unlocked, fwrite_unlocked, getc_unlocked, getchar_unlocked,
57411         putc_unlocked, putchar_unlocked): Define to the unlocked counterpart
57412         if not declared, so that we can use getpass.c code from libc without
57413         rewriting it.
57414         (flockfile, ftrylockfile, funlockfile): New macros.
57415
57416 2003-10-08  Paul Eggert  <eggert@twinsun.com>
57417
57418         * modules/getpass: Depend on stdbool.
57419
57420 2003-10-08  Paul Eggert  <eggert@twinsun.com>
57421
57422         * m4/getpass.m4 (gl_PREREQ_GETPASS): Check for stdio_ext.h.
57423
57424 2003-10-07  Karl Berry  <karl@gnu.org>
57425
57426         * config/config.{guess,sub}: update from config.
57427
57428 2003-10-06  Jim Meyering  <jim@meyering.net>
57429             Bruno Haible  <bruno@clisp.org>
57430
57431         This lets translators provide better translations for the
57432         "Written by ..." part of --version output.
57433         * lib/version-etc.h: Include stdarg.h.
57434         (version_etc_copyright): Declare as readonly.
57435         (version_etc): Make this function variadic with a NULL-terminated list
57436         of author name strings.
57437         (version_etc_va): New declaration.
57438         * lib/version-etc.c: Include stdarg.h, stdlib.h.
57439         (version_etc_copyright): Declare as readonly.
57440         (version_etc_va): New function. Provide a different translatable string
57441         for each possible number of authors < 10. Abbreviate when there are 10
57442         authors or more.
57443         (version_etc): Make this function variadic. Call version_etc_va.
57444         Suggestion from Gary V. Vaughan.
57445
57446         * lib/long-options.h (parse_long_options): Change prototype: the
57447         authors string is moved to the end and becomes variadic.
57448         * lib/long-options.c: Include stdarg.h.
57449         (parse_long_options): Make this function variadic, too.
57450         Call version_etc_va, not version_etc.
57451
57452 2003-10-06  Bruno Haible  <bruno@clisp.org>
57453
57454         * modules/version-etc-2: Remove file.
57455         * MODULES.html.sh (func_all_modules): Remove version-etc-2.
57456
57457 2003-10-06  Bruno Haible  <bruno@clisp.org>
57458
57459         * modules/fatal-signal: New file.
57460         * MODULES.html.sh (func_all_modules): Add fatal-signal.
57461
57462 2003-10-06  Bruno Haible  <bruno@clisp.org>
57463
57464         * m4/fatal-signal.m4: New file.
57465         * m4/signalblocking.m4: New file, from GNU gettext.
57466
57467 2003-10-06  Bruno Haible  <bruno@clisp.org>
57468
57469         * lib/version-etc-2.h: Remove file.
57470         * lib/version-etc-2.c: Remove file.
57471
57472 2003-10-06  Bruno Haible  <bruno@clisp.org>
57473
57474         * lib/fatal-signal.h: New file, from GNU gettext.
57475         * lib/fatal-signal.c: New file, from GNU gettext.
57476
57477 2003-10-05  Paul Eggert  <eggert@twinsun.com>
57478
57479         * README: Rework advice for preventing empty .o files.
57480         Don't recommend ELIDE constructs.  Recommend <stddef.h>,
57481         not <sys/types.h>.
57482
57483 2003-10-04  Karl Berry  <karl@gnu.org>
57484
57485         * lib/argp*: update from libc.
57486
57487 2003-10-04  Karl Berry  <karl@gnu.org>
57488
57489         * config/config.{guess,sub}: update from config.
57490
57491 2003-10-02  Bruno Haible  <bruno@clisp.org>
57492
57493         * modules/lchown (Include): Add lchown.h.
57494         * modules/time_r (Include): Use "..." syntax.
57495         * modules/xgetdomainname (Include): Add xgetdomainname.h.
57496
57497 2003-10-01  Simon Josefsson  <jas@extundo.com>
57498
57499         * MODULES.html.sh (func_all_modules): Move gethostname from section
57500         'based on' to section 'lacking' POSIX:2001.
57501
57502 2003-10-01  Larry Jones  <lawrence.jones@eds.com>
57503
57504         * lib/getpass.c (getpass): Use a no-op fseek when switching from input
57505         to output mode on the same stream.
57506
57507 2003-09-29  Paul Eggert  <eggert@twinsun.com>
57508
57509         * lib/strftime.c (tm_diff) [! HAVE_TM_GMTOFF]:
57510         Fix arg typo in previous patch.
57511
57512 2003-09-28  Jim Meyering  <jim@meyering.net>
57513
57514         * lib/error.c: Correct cpp indentation.
57515
57516 2003-09-27  Paul Eggert  <eggert@twinsun.com>
57517
57518         * modules/free: New file.
57519
57520 2003-09-27  Paul Eggert  <eggert@twinsun.com>
57521
57522         * m4/free.m4: New file.
57523
57524 2003-09-27  Paul Eggert  <eggert@twinsun.com>
57525
57526         * lib/minmax.h (MIN, MAX)
57527         [__STDC__ && defined __GNUC__ && __GNUC__ >= 2]:
57528         Omit the special code that used __typeof__, since we worry that
57529         it could be more trouble than it's worth.  See:
57530         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00090.html
57531         http://mail.gnu.org/archive/html/bug-gnulib/2003-01/msg00095.html
57532
57533         * lib/free.c: New file.
57534
57535 2003-09-27  Oskar Liljeblad  <oskar@osk.mine.nu>
57536
57537         Trivial fixes to Makefile.am parts of module listings.
57538         * modules/strstr: Append strstr.h to lib_SOURCES.
57539         * modules/strcase: Likewise, for strcase.h.
57540
57541 2003-09-27  Karl Berry  <karl@gnu.org>
57542
57543         * config/mkinstalldirs: update from automake.
57544
57545 2003-09-26  Paul Eggert  <eggert@twinsun.com>
57546
57547         * lib/error.c (SIZE_MAX) [!defined SIZE_MAX]: Define.
57548         (error_tail): Do not loop, reallocating temporary buffer, since
57549         the output cannot contain more wide characters than the input
57550         contains bytes, the size must be big enough already.  This avoids
57551         one potential size overflow calculation.  Check for size overflow
57552         when calculating temporary buffer size.  Free temporary buffer
57553         when done, if it was allocated with malloc; this plugs a memory
57554         leak.  Remove casts from void * to pointers, that are no longer
57555         needed now that we're assuming C89 or better.
57556
57557         Merge error changes from glibc.
57558
57559         * lib/error.c, error.h: Update copyright notice header to match glibc.
57560         * lib/error.c [defined _LIBC]: Include <errno.h>, <bits/libc-lock.h>.
57561         (error, error_at_line) [defined _LIBC && defined __libc_ptf_call]:
57562         Disable cancellation while printing error.
57563         * lib/error.h: Prepend __ to parameter names.
57564
57565 2003-09-26  Jim Meyering  <jim@meyering.net>
57566
57567         * lib/error.c (error_tail): Move some declarations
57568         into inner scope where the local variables are used.
57569
57570 2003-09-26  Bruno Haible  <bruno@clisp.org>
57571
57572         * m4/stpncpy.m4 (gl_FUNC_STPNCPY): Add comments about the AIX
57573         stpncpy().
57574         Don't define stpncpy through config.h; it's now done through stpncpy.h.
57575
57576 2003-09-26  Bruno Haible  <bruno@clisp.org>
57577
57578         * lib/stpncpy.h (gnu_stpncpy): New declaration.
57579         (stpncpy): Define as alias for gnu_stpncpy.
57580         * lib/stpncpy.c [!_LIBC]: Define gnu_stpncpy, not stpncpy.
57581
57582 2003-09-25  Simon Josefsson  <jas@extundo.com>
57583
57584         * lib/xgetdomainname.h: New file.
57585         * lib/xgetdomainname.c: New file.
57586
57587 2003-09-25  Simon Josefsson  <jas@extundo.com>
57588             Bruno Haible  <bruno@clisp.org>
57589
57590         * modules/getdomainname: New file.
57591         * modules/xgetdomainname: New file.
57592         * MODULES.html.sh (func_all_modules): Add getdomainname,
57593         xgetdomainname.
57594
57595 2003-09-25  Simon Josefsson  <jas@extundo.com>
57596             Bruno Haible  <bruno@clisp.org>
57597
57598         * m4/getdomainname.m4: New file.
57599
57600 2003-09-25  Simon Josefsson  <jas@extundo.com>
57601             Bruno Haible  <bruno@clisp.org>
57602
57603         * lib/getdomainname.h: New file.
57604         * lib/getdomainname.c: New file.
57605
57606 2003-09-25  Karl Berry  <karl@gnu.org>
57607
57608         * lib/argp-fmtstream.c, argp-help.c: update from libc.
57609
57610 2003-09-25  Karl Berry  <karl@gnu.org>
57611
57612         * config/install-sh: update from automake.
57613
57614 2003-09-25  Bruno Haible  <bruno@clisp.org>
57615
57616         * modules/version-etc-2: New file, from modules/version-etc with
57617         modifications.
57618         * MODULES.html.sh (func_all_modules): Add version-etc-2.
57619
57620 2003-09-25  Bruno Haible  <bruno@clisp.org>
57621
57622         * lib/version-etc-2.h: New file, from version-etc.h with modifications.
57623         * lib/version-etc-2.c: New file, from version-etc.c with modifications.
57624
57625 2003-09-24  Simon Josefsson  <jas@extundo.com>
57626
57627         * modules/xgethostname: Add xgethostname.h.
57628
57629 2003-09-24  Paul Eggert  <eggert@twinsun.com>
57630
57631         * lib/linebuffer.c (freebuffer): Don't free the argument, just
57632         the buffer associated with the argument.  Bug reported by
57633         Simon Josefsson.
57634
57635 2003-09-24  Paul Eggert  <eggert@twinsun.com>
57636
57637         * README: Document assumptions that 'int' is at least 32 bits
57638         wide, that integer arithmetic is 2's complement without overflow,
57639         that there are no holes in integer values, that adding sizes of
57640         two nonoverlapping objects can't overflow, and that all-bits-zero
57641         yields scalar zero.  Fix spelling and capitalization typos.
57642
57643 2003-09-19  Karl Berry  <karl@gnu.org>
57644
57645         * lib/argp.h: update from libc.
57646
57647 2003-09-17  Paul Eggert  <eggert@twinsun.com>
57648
57649         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Call AC_BEFORE first,
57650         to avoid spurious warnings like "AC_RUN_IFELSE was called before
57651         gl_USE_SYSTEM_EXTENSIONS" from autoreconf.
57652
57653 2003-09-17  Paul Eggert  <eggert@twinsun.com>
57654
57655         * gnulib-tool: Use "test -h", not "test -L", for portability
57656         to Solaris 8 /bin/sh.  (This bug is fixed in Solaris 9.)
57657         (tags_regexp): Remove, since \| doesn't conform to POSIX.
57658         (sed_extract_prog): Issue s commands one-by-one, rather than
57659         using \| in one s command.
57660
57661 2003-09-16  Paul Eggert  <eggert@twinsun.com>
57662
57663         * lib/linebuffer.c (readlinebuffer): Return NULL immediately upon
57664         input error, instead of returning NULL the next time we are called
57665         (and therefore losing track of errno).
57666
57667 2003-09-16  Bruno Haible  <bruno@clisp.org>
57668
57669         * gnulib-tool (func_create_testdir): Warn about duplicated
57670         dependencies.
57671
57672 2003-09-15  Paul Eggert  <eggert@twinsun.com>
57673
57674         * modules/argmatch, modules/fatal, modules/obstack,
57675         modules/xalloc, modules/xgethostname: Sort dependencies by
57676         importance, not alphabetically.
57677
57678 2003-09-15  Paul Eggert  <eggert@twinsun.com>
57679
57680         * lib/getndelim2.c (getndelim2): Don't trash errno when a read
57681         fails, so that the caller gets the proper errno.
57682
57683         * lib/readutmp.c (read_utmp): Likewise.
57684         Check for fstat error.  Close stream and free storage
57685         when failing.
57686
57687 2003-09-14  Karl Berry  <karl@gnu.org>
57688
57689         * config/srclist.txt (strdup.c): disable for c89 changes.
57690
57691 2003-09-14  Jim Meyering  <jim@meyering.net>
57692
57693         * lib/getloadavg.c: Correct cpp indentation.
57694         * lib/strdup.c: Likewise.
57695         * lib/vasnprintf.c: Likewise.
57696
57697 2003-09-14  Bruno Haible  <bruno@clisp.org>
57698
57699         * modules/fwriteerror: New file.
57700         * MODULES.html.sh (func_all_modules): Add fwriteerror.
57701
57702 2003-09-14  Bruno Haible  <bruno@clisp.org>
57703
57704         * lib/fwriteerror.h: New file.
57705         * lib/fwriteerror.c: New file.
57706
57707 2003-09-12  Paul Eggert  <eggert@twinsun.com>
57708
57709         * modules/argmatch, modules/exitfail, modules/fatal, modules/obstack,
57710         modules/xgethostname, modules/xalloc: Depend on exit.
57711
57712 2003-09-12  Paul Eggert  <eggert@twinsun.com>
57713
57714         * m4/error.m4: Require AC_FUNC_STRERROR_R rather than invoking it.
57715
57716         * m4/extensions.m4 (gl_USE_SYSTEM_EXTENSIONS): Require AC_AIX
57717         and AC_MINIX, too, so that their extensions are available.
57718
57719         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Remove.  All uses removed.
57720         This macro has been superseded by gl_BACKUPFILE.
57721
57722         More patches to assume C89 or better.
57723
57724         * m4/error.m4 (gl_ERROR): Don't check for vprintf.
57725
57726         * m4/check-decl.m4 (jm_CHECK_DECLS): Include <string.h>, <stdlib.h>
57727         unconditionally.
57728         * m4/closeout.m4 (gl_CLOSEOUT): Don't check for stdlib.h.
57729         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER):
57730         Include <string.h>, <stdlib.h> unconditionally.
57731         * m4/lstat.m4 (gl_PREREQ_LSTAT): Don't check for stdlib.h, free.
57732         * m4/readdir.m4 (GL_FUNC_READDIR): Don't check for string.h.
57733         * m4/readutmp.m4 (gl_PREREQ_READUTMP): Don't check for standard C
57734         headers or for string.h.
57735         * m4/strtoumax.m4 (gl_PREREQ_STRTOUMAX): Don't check for stdlib.h
57736         or strtoul.
57737
57738         * m4/mkstemp.m4 (jm_PREREQ_TEMPNAME): Do not require standard C
57739         headers.
57740         * m4/strdup.m4 (gl_PREREQ_STRDUP): Likewise.
57741         * m4/userspec.m4 (gl_USERSPEC): Likewise.
57742         * m4/xalloc.m4 (gl_PREREQ_XMALLOC): Likewise.
57743         * m4/xstrtod.m4 (gl_XSTRTOD): Likewise.
57744         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
57745         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't check for limits.h,
57746         memcpy, memset.
57747         (jm_FUNC_GNU_STRFTIME): Don't require standard C headers.
57748         * m4/strtod.m4 (gl_FUNC_STRTOD): Do not check for float.h.
57749         * m4/strtoimax.m4 (gl_PREREQ_STRTOIMAX): Do not check for stdlib.h,
57750         strtol.
57751         * m4/strtol.m4 (gl_FUNC_STRTOL): Do not check for limits.h.
57752         * m4/userspec.m4 (gl_USERSPEC): Do not check for string.h.
57753         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Do not check for string.h, strtol,
57754         strtoul.
57755
57756 2003-09-12  Paul Eggert  <eggert@twinsun.com>
57757
57758         * lib/argmatch.c, fatal.c, xgethostname.c, xmalloc.c: Include exit.h.
57759         * lib/obstack.c [!defined _LIBC]: Likewise.
57760         * lib/argmatch.c (EXIT_FAILURE): Remove; now done by exit.h
57761         * lib/exitfail.c, fatal.c, xgethostname.c, xmalloc.c: Likewise.
57762         * lib/exitfail.c: Don't include stdlib.h; no longer needed.
57763
57764         More changes to assume C89 or better.
57765
57766         * lib/error.c (error_tail): Assume vprintf.
57767
57768         * lib/argmatch.c (getenv): Remove decl.
57769         * lib/progreloc.c (get_full_program_name): Define via prototype.
57770         * lib/setenv.c (clearenv): Likewise.
57771         * lib/stpncpy.c: Do not include <string.h> or <sys/types.h>; not
57772         needed.
57773         * lib/strdup.c: Include <stdlib.h>, <string.h> unconditionally.
57774         (malloc, memcpy): Remove decls.
57775         * lib/strftime.c (HAVE_LIMITS_H, STDC_HEADERS) [defined _LIBC]: Remove.
57776         (HAVE_MEMCPY) [defined emacs && !defined HAVE_BCOPY]: Remove.
57777         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
57778         (memcpy): Remove macro.
57779         (MEMCPY) [!defined COMPILE_WIDE]: Define to memcpy unconditionally.
57780         (__P): Remove.  All uses removed.
57781         (PTR): Remove.  All uses changed to void *.
57782         (CHAR_BIT, NULL): Remove.
57783         (spaces, zeros, memset_space, memset_zero)
57784         [!defined memset && !defined HAVE_MEMSET && !defined _LIBC]:
57785         Remove.
57786         (LOCALE_PARAM, LOCALE_PARAM_DECL): Remove.
57787         (memcpy_lowcase, memcpy_uppcase, tm_diff, iso_week_days):
57788         Define with prototype.
57789         Remove now-unnecessary prototype decl.
57790         (extra_args_spec): Assume ANSI C.  All uses changed.
57791         (extra_args_spec_iso): Remove.
57792         (my_strftime, emacs_strftimeu): Define via prototype.
57793         * lib/strtod.c: Include <float.h>, <stdlib.h>, <string.h>
57794         unconditionally.
57795         (DBL_MAX, DBL_MIN, HUGE_VAL, NULL): Remove decls.
57796         * lib/strtoimax.c: Include <stdlib.h> unconditionally.
57797         (strtoul, strtol): Remove decls.
57798         * lib/strtol.c (STDC_HEADERS, HAVE_LIMITS_H, NULL, ULONG_MAX,
57799         LONG_MAX): Remove.
57800         Include <limits.h>, <stddef.h>, <stdlib.h>, <string.h> unconditionally.
57801         (LOCALE_PARAM_DECL): Remove.  All uses changed to LOCALE_PARAM_PROTO.
57802         (LOCALE_PARAM_PROTO): New macro.
57803         (INTERNAL, INTERNAL1, WEAKNAME): Assume ANSI C, not K&R.
57804         (INTERNAL (strtol), strtol): Define with a prototype.
57805         (PARAMS): Remove.  All uses removed.
57806         * lib/tempname.c: Include <string.h> unconditionally.
57807         * lib/userspec.c: Include <stdlib.h>, <string.h> unconditionally.
57808         * lib/xgethostname.c (main): Define with a prototype.
57809         * lib/xmalloc.c: Include "xalloc.h" first, to check interface.
57810         Include <stdlib.h> unconditionally.
57811         (calloc, malloc, realloc, free): Remove decls.
57812         * lib/xstrtod.c: Include "xstrtod.h" first, to check interface.
57813         Include <stdlib.h> unconditionally.  Sort include file names.
57814         (strtod): Remove.
57815         (xstrtod): Define with a prototype.
57816         * lib/xstrtol.c: Include <stdlib.h>, <string.h> unconditionally.
57817         (strtol, strtoul): Remove decls.
57818
57819 2003-09-11  Paul Eggert  <eggert@twinsun.com>
57820
57821         More patches to assume C89 or better.
57822         * m4/strndup.m4 (gl_PREREQ_STRNDUP): Remove STDC_HEADERS check.
57823         * m4/strnlen.m4 (gl_PREREQ_STRNLEN): Don't check for memory.h,
57824         string.h, memchr, STDC_HEADERS.
57825
57826 2003-09-11  Paul Eggert  <eggert@twinsun.com>
57827
57828         * lib/strndup.c: Don't include <stdio.h>, <sys/types.h>.
57829         Include <stdlib.h>, <string.h> unconditionally.
57830         Remove now-unnecessary cast to char *.
57831         * lib/strnlen.c: Include <string.h> unconditionally.
57832         * lib/yesno.c (yesno): Define with a prototype.
57833
57834 2003-09-11  Bruno Haible  <bruno@clisp.org>
57835
57836         * config/srclist.txt (setenv.c, unsetenv.c): Disable for the moment.
57837
57838 2003-09-10  Jim Meyering  <jim@meyering.net>
57839
57840         * lib/error.c: Correct indentation of cpp directives.
57841
57842 2003-09-10  Bruno Haible  <bruno@clisp.org>
57843
57844         * m4/strcspn.m4 (gl_PREREQ_STRCSPN): Remove <string.h> check.
57845         * m4/strpbrk.m4 (gl_PREREQ_STRPBRK): Remove <string.h> check.
57846         * m4/strstr.m4 (gl_PREREQ_STRSTR): Remove <string.h> check.
57847         * m4/unicodeio.m4 (gl_UNICODEIO): Remove <string.h> check.
57848         * m4/setenv.m4 (gl_PREREQ_SETENV, gl_PREREQ_UNSETENV): Remove
57849         <stdlib.h> and <string.h> checks.
57850         * m4/xreadlink.m4 (gl_XREADLINK): Remove <stdlib.h> check.
57851         * m4/yesno.m4 (gl_YESNO): Remove <stdlib.h> check.
57852
57853 2003-09-10  Bruno Haible  <bruno@clisp.org>
57854
57855         * lib/strcspn.c: Include <string.h> unconditionally.
57856         * lib/strpbrk.c: Include <string.h> unconditionally.
57857         * lib/strstr.c: Include <string.h> unconditionally.
57858         * lib/unicodeio.c: Include <string.h> unconditionally.
57859         * lib/setenv.c: Include <stdlib.h> and <string.h> unconditionally.
57860         * lib/unsetenv.c: Likewise.
57861         * lib/xreadlink.c: Include <stdlib.h> unconditionally.
57862         * lib/yesno.c: Include <stdlib.h> unconditionally.
57863         (rpmatch): Add prototype.
57864
57865 2003-09-09  Paul Eggert  <eggert@twinsun.com>
57866
57867         More patches to assume C89 or better.
57868         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Don't check for stdlib.h.
57869         * m4/getopt.m4 (gl_GETOPT): Don't check for string.h.
57870         * m4/getugroups.m4 (gl_GETUGROUPS): Do not check for standard C headers
57871         or for string.h.
57872         * m4/getusershell.m4 (gl_PREREQ_GETUSERSHELL): Do not check for
57873         stdlib.h.
57874         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): Do not require standard
57875         C headers.
57876         * m4/hard-locale.m4 (gl_HARD_LOCALE): Do not check for stdlib.h,
57877         string.h.
57878         * m4/hash.m4 (gl_HASH): Do not check for stdlib.h, malloc, free.
57879         * m4/human.m4 (gl_HUMAN): Do not check for stdlib.h, string.h, getenv.
57880         * m4/idcache.m4 (gl_IDCACHE): Do not check for standard C headers,
57881         or for string.h.
57882         * m4/long-options.m4 (gl_LONG_OPTIONS): Do not check for stdlib.h.
57883         * m4/makepath.m4 (gl_MAKEPATH): Do not check for string.h or standard
57884         C headers.
57885         * m4/md5.m4 (gl_MD5): Don't check for limits.h, standard C headers,
57886         memcpy.
57887         * m4/sha.m4 (gl_SHA): Don't check for standard Cheaders, memcpy.
57888         * m4/memchr.m4 (jm_PREREQ_MEMCHR): Don't check for limits.h, stdlib.h.
57889         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): Don't check for string.h.
57890         * m4/memcoll.m4 (gl_MEMCOLL): Likewise.
57891         * m4/memrchr.c (gl_PREREQ_MEMRCHR): Don't check for limits.h.
57892         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): Don't check for stdlib.h,
57893         string.h, free.
57894         * m4/mktime.m4 (gl_PREREQ_MKTIME): Don't check for standard C headers.
57895         * m4/modechange.m4 (gl_MODECHANGE): Don't check for standard C headers.
57896         * m4/mountlist.m4 (gl_PREREQ_MOUNTLIST_EXTRA): Don't check for standard
57897         C headers, or for string.h.
57898         * m4/obstack.m4 (gl_OBSTACK): Don't check for stddefe.h, string.h.
57899         (gl_PREREQ_OBSTACK): Don't check for stdlib.h.
57900         * m4/path-concat.m4 (gl_PATH_CONCAT): Don't check for standard C
57901         headers, memory.h, stdlib.h, string.h, strings.h.
57902         * m4/posixtm.m4 (gl_POSIXTM): Don't check for stdlib.h, string.h.
57903         * m4/posixver.m4 (gl_POSIXVER): Don't check for getenv.
57904         * m4/putenv.m4 (gl_PREREQ_PUTENV): Don't check for string.h, memcpy,
57905         strchr.
57906         * m4/readtokens.m4 (gl_READTOKENS): Don't check for standard C
57907         headers, memory.h, string.h.
57908         * m4/regex.m4 (jm_PREREQ_REGEX): Do not check for limits.h, string.h.
57909         * m4/rename.m4 (gl_PREREQ_RENAME): Do not check for stdlib.h, string.h,
57910         free.
57911         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Don't check for standard C
57912         headers.
57913         * m4/same.m4 (gl_SAME): Don't check for stdlib.h, string.h, free.
57914         * m4/save-cwd.m4 (gl_SAVE_CWD): Don't check for standard C headers.
57915         * m4/savedir.m4 (gl_SAVEDIR): Don't check for standard C headers.
57916         * m4/strchrnul.m4 (gl_PREREQ_STRCHRNUL): Don't check for string.h.
57917         * m4/xgetcwd.m4 (gl_XGETCWD): Don't check for stdlib.h.
57918
57919 2003-09-09  Paul Eggert  <eggert@twinsun.com>
57920
57921         More K&R removal.
57922
57923         * lib/acosl.c (main): Use a prototype.
57924         * lib/asinl.c, cosl.c, expl.c, frexpl.c, ldexpl.c, sinl.c,
57925         tanl.c: Likewise.
57926
57927         * lib/getloadavg.c (getloadavg, main): Define via prototypes.
57928
57929         * lib/getopt.h (struct option.name): Assume C89, and use 'const'.
57930         (getopt, etopt_long, getopt_long_only, _getopt_internal)
57931         [defined __GNU_LIBRARY__]: Assume C89, so we can always declare
57932         with a prototype.
57933         * lib/getopt.c (const): Remove macro.
57934         Include <string.h> unconditionally.
57935         (my_index): Remove; all uses changed to strchr.
57936         (strlen): Remove decl.
57937         (exchange): Remove forward decl; no longer needed.
57938         (exchange, _getopt_initialize, _getopt_internal, getopt, main):
57939         Define with prototype.
57940         * lib/getopt1.c (const): Remove macro.
57941         (getopt_long, getopt_long_only, main): Define with prototype.
57942
57943         * lib/getugroups.c: Include <string.h> unconditionally.
57944
57945         * lib/getusershell.c: Include <stdlib.h> unconditionally.
57946         (getusershell, setusershell, endusershell, readname, main):
57947         Define with prototypes.
57948
57949         * lib/group-member.c: Include group-member.h first.
57950         Include <stdlib.h> unconditionally.
57951
57952         * lib/hard-locale.c: Include hard-locale.h first.
57953         Include <stdlib.h>, <string.h> unconditionally.
57954
57955         * lib/hash.c (free, malloc): Remove decls.
57956         Include <stdlib.h> unconditionally.
57957
57958         * lib/human.c: Include <stdlib.h>, <string.h> unconditionally.
57959         (getenv): Do not declare.
57960
57961         * lib/idcache.c: Include <string.h> unconditionally.
57962
57963         * lib/long-options.c: Include long-options.h first, to test interface.
57964         Include <stdlib.h> unconditionally.
57965
57966         * lib/makepath.c: Include makepath.h first, to test interface.
57967         Include <stdlib.h> and <string.h> unconditionally.
57968
57969         * lib/linebuffer.c: Include <stdlib.h>.
57970         (free): Remove decl.
57971
57972         * lib/malloc.c: Include <stdlib.h>, for malloc; don't bother with
57973         stddef.h. rpl_malloc returns void *, not char *.
57974         * lib/realloc.c (rpl_realloc): Likewise.  Also, define with a
57975         prototype.
57976
57977         * lib/md5.h: Include <limits.h> unconditionally.
57978         (UINT_MAX_32_BITS): Don't worry about non-__STDC__ case.
57979         (__P): Remove; all uses removed.
57980         * lib/md5.c: Include "md5.h" first.
57981         (md5_init_ctx, md5_read_ctx, md5_finish_ctx, md5_stream,
57982         md5_buffer, md5_process_bytes, md5_process_block):
57983         Define with prototypes.
57984         * lib/sha.h (__P): Remove all uses.  (It wasn't defined??)
57985         * lib/sha.c: Include "sha.h" first.
57986         Include <stdlib.h>, <string.h> unconditionally.
57987
57988         * lib/memchr.c (__ptr_t): Remove; all uses changed to void *.
57989         * lib/memcmp.c (__ptr_t): Likewise.
57990         * lib/memrchr.c (__ptr_t): Likewise.
57991         * lib/memchr.c, memcmp.c, memcoll.c, memrchr.c:
57992         Include <string.h> unconditionally.
57993         * lib/memchr.c, memrchr.c: Include <limits.h> unconditionally.
57994         * lib/memchr.c: Include <stdlib.h> unconditionally.
57995         * lib/memchr.c (LONG_MAX): Remove.
57996         * lib/memrchr.c (LONG_MAX): Likewise.
57997         * lib/memchr.c (__memchr): Define via a prototype.
57998         * lib/memrchr.c (__memrchr): Likewise.
57999         * lib/memcmp.c (__P): Remove, and remove all uses.
58000         (memcmp_bytes, memcmp_common_alignment, memcmp_not_common_alignment):
58001         Remove forward decls; no longer needed.
58002         * lib/memcpy.c, memmove.c, memset.c: Include <stddef.h>.
58003         Use types required by C89 in prototype.
58004
58005         * lib/mkdir.c: Include <stdlib.h>, <string.h> unconditionally.
58006         * lib/savedir.c: Likewise.
58007         * lib/mkdir.c (free): Remove decl.
58008         * lib/rmdir.c (rmdir): Define with a prototype.
58009         * lib/savedir.c: Include savedir.h first, to test interface.
58010
58011         * lib/mktime.c (STDC_HEADERS): Remove.
58012         Include <stdlib.h>, <string.h> unconditionally.
58013
58014         * lib/modechange.c: Include <stdlib.h> unconditionally.
58015         (malloc): Remove decl.
58016
58017         * lib/mountlist.c: Include <stdlib.h>, <string.h> unconditionally.
58018         (free): Remove decl.
58019
58020         * lib/obstack.h (PTR_INT_TYPE) [!defined __PTRDIFF_TYPE__]:
58021         Define to ptrdiff_t, without bothering to check HAVE_STDDEF_H.
58022         (This type really should be intptr_t, but that's a C99ism.)
58023         (_obstack_memcpy): Remove: all uses changed to memcpy.
58024         Include <string.h> unconditionally.
58025         (struct obstack): Assume __STDC__ for types of members
58026         chunkfun, freefun, extra_arg.
58027         (_obstack_newchunk, _obstack_free, _obstack_begin, _obstack_begin_1,
58028         _obstack_memory_used, obstack_alloc_failed_handler, obstack_init,
58029         obstack_begin, obstack_specify_allocation,
58030         obstack_specify_allocation_with_arg, obstack_chunkfun,
58031         obstack_freefun, obstack_free) [! (defined __STDC__ && __STDC__)]:
58032         Remove unprototyped decls and the macros that use them.
58033         * lib/obstack.c (POINTER): Remove.  All uses changed to void *.
58034         (obstack_alloc_failed_handler, CALL_CHUNKFUN, CALL_FREEFUN,
58035         _obstack_begin, _obstack_begin_1, _obstack_allocated_p)
58036         (defined __STDC__ && __STDC__)]:
58037         Remove nonprototyped code.
58038         Include <stdlib.h> unconditionally.
58039         (_obstack_begin, _obstack_begin_1, _obstack_newchunk,
58040         _obstack_allocated_p, _obstack_free, obstack_free,
58041         _obstack_memory_used, print_and_abort):
58042         Define using prototypes.
58043         (obstack_1grow, obstack_1grow_fast, obstack_alloc, obstack_base,
58044         obstack_blank, obstack_blank_fast, obstack_copy, obstack_copy0,
58045         obstack_finish, obstack_grow, obstack_grow0, obstack_make_room,
58046         obstack_next_free, obstack_object_size, obstack_room) [0]:
58047         Remove unused, unprototyped code.
58048
58049         * lib/path-concat.c: Include <stdlib.h>, <string.h> unconditionally.
58050
58051         * lib/physmem.c (physmem_total, physmem_available, main): Define
58052         with prototypes.
58053
58054         * lib/posixtm.c: Include <stdlib.h>, <string.h> unconditionally.
58055         (main): Define with a prototype.
58056
58057         * lib/posixver.c (getenv): Remove decl.
58058
58059         * lib/putenv.c (malloc): Returns void *, not char *.
58060         Include <string.h> unconditionally.
58061         (strchr, memcpy, NULL): Do not define.
58062
58063         * lib/readtokens.c: Include readtokens.h first, to test interface.
58064         Include <stdlib.h>, <string.h> unconditionally.
58065         (init_tokenbuffer): Define with a prototype.
58066
58067         * lib/regex.c (PARAMS): Remove.  All uses removed.
58068         All uses of _RE_ARGS removed, too.
58069         Include <stddef.h>, <stdlib.h>, <string.h>, <limits.h>
58070         unconditionally.
58071         (bzero): Assume memset exists.
58072         (memcmp, memcpy, NULL): Remove.
58073         (SIGN_EXTEND_CHAR): Remove; all uses replaced by casts to signed
58074         char, or assignments to local vars of type signed char.
58075         (init_syntax_once, PREFIX(extract_number_and_incr),
58076         PREFIX(print_partial_compiled_pattern),
58077         PREFIX(print_compiled_pattern), PREFIX(print_double_string),
58078         convert_mbs_to_wcs, print_fastmap, re_set_syntax,
58079         PREFIX(regex_grow_registers), PREFIX(regex_compile),
58080         PREFIX(store_op1), PREFIX(store_op2), PREFIX(insert_op1),
58081         PREFIX(insert_op2), PREFIX(at_begline_loc_p),
58082         PREFIX(at_endline_loc_p), group_in_compile_stack, insert_space,
58083         wcs_compile_range, byte_compile_range, truncate_wchar,
58084         PREFIX(re_compile_fastmap), re_compile_fastmap, re_set_registers,
58085         re_search, re_search_2, PREFIX(re_search_2), re_match, re_match_2,
58086         count_mbs_length, wcs_re_match_2_internal,
58087         byte_re_match_2_internal, PREFIX(group_match_null_string_p),
58088         PREFIX(alt_match_null_string_p),
58089         PREFIX(common_op_match_null_string_p), PREFIX(bcmp_translate),
58090         re_compile_pattern, re_comp, re_exec, regcomp, regexec, regerror,
58091         regfree, PREFIX(extract_number)): Define with prototype.  Remove
58092         now-unnecessary declaration, if any.
58093         (byte_compile_range, PREFIX(regex_compile), re_comp, re_exec,
58094         regcomp, regexec):
58095         Remove now-unnecessary casts among pointer types.
58096         * lib/regex.h (_RE_ARGS): Remove.  All uses removed.
58097
58098         * lib/rename.c: Include <stdlib.h>, <string.h> unconditionally.
58099         (free): Remove decl.
58100
58101         * lib/rpmatch.c: Include <stdlib.h> unconditionally.
58102
58103         * lib/same.c: Include <stdlib.h>, <string.h> unconditionally.
58104         (free): Remove decl.
58105
58106         * lib/save-cwd.c: Include <stdlib.h> unconditionally.
58107         * lib/xgetcwd.c: Likewise.
58108
58109         * lib/stat.c: Include <stdlib.h>, <string.h> unconditionally.
58110         (free): Remove decl.
58111
58112         * lib/strchrnul.c (strchrnul): Define with a prototype.
58113         Fix bug: c_in was not converted to char before searching.
58114
58115         The following changes are not K&R related:
58116
58117         * lib/group-member.h: Include <sys/types.h>, so that this file is
58118         self-contained.
58119         * lib/makepath.h: Likewise.
58120
58121         * lib/getusershell.c (readname, default_index, line_size, readname):
58122         Use size_t, not int, for sizes.
58123         (readname): If the size overflows, report an error instead of
58124         looping forever.
58125
58126 2003-09-09  Paul Eggert  <eggert@twinsun.com>
58127
58128         * config/srclist.txt: Do not get getopt.h, getopt1.c, or regex.h from
58129         libc.
58130
58131 2003-09-09  Paul Eggert  <eggert@twinsun.com>
58132
58133         * README: New section: portability guidelines.
58134
58135 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
58136
58137         * m4/getndelim2.m4 (gl_PREREQ_GETNDELIM2): Assume stdlib.h per the
58138         C89 spec.
58139
58140 2003-09-09  Derek Robert Price  <derek@ximbiot.com>
58141
58142         * lib/getndelim2.c: Assume stdlib.h per the C89 spec.
58143
58144 2003-09-08  Paul Eggert  <eggert@twinsun.com>
58145
58146         Assume C89 or better; remove K&R cruft.
58147         A few of these changes were first proposed by Derek Robert Price
58148         in <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00105.html>.
58149
58150         * lib/addext.c: Include <string.h> unconditionally.
58151         * lib/backupfile.c: Include <string.h>, <stdlib.h> unconditionally.
58152         Don't declare getenv or malloc.
58153
58154         * lib/alloca.c: Include <string.h>, <stdlib.h> unconditionally.
58155         (POINTER_TYPE, pointer): Remove; all uses changed to void *.
58156         (NULL): Remove.
58157         (find_stack_direction, alloca): Use prototypes.
58158
58159         * lib/atexit.c (atexit): Define using a prototype.
58160
58161         * lib/basename.c, dirname.c, stripslash.c:
58162         Include <string.h> unconditionally.
58163
58164         * lib/bcopy.c: Include <stddef.h>.
58165         (bcopy): Define with prototype, using 'const' and 'void' and 'size_t'.
58166
58167         * lib/canon-host.c: Include <stdlib.h>, <string.h> unconditionally.
58168
58169         * lib/error.h (error, error_at_line, error_print_progname)
58170         [! (defined (__STDC__) && __STDC__)]: Remove decls.
58171         * lib/error.c: Include error.h first, to check interface.
58172         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
58173         (VA_START): Remove; all uses changeed to va_start.
58174         (exit, strerror): Remove decls.
58175         (error_print_progname): Prototype uncondionally.
58176         Don't include <errno.h>; no longer needed.
58177         (private_strerror): Remove.
58178         (error_tail): Always define.
58179         (error, error_at_line): Assume C89 or better; always use prototypes.
58180         * lib/fatal.c: Include "fatal.h" first, to test interface.
58181         Include <stdarg.h>, <stdlib.h>, <string.h> unconditionally.
58182         (VA_START): Remove; all uses changed to va_start.
58183         [! (HAVE_VPRINTF || HAVE_DOPRNT || _LIBC)]: Remove support for
58184         this case.
58185         (exit): Remove decl.
58186         (fatal): Prototype unconditionally.  Assume va_start works.
58187         Abort at end, to pacify gcc.
58188
58189         * lib/euidaccess.c (main): Define with a prototype.
58190
58191         * lib/exclude.c: Include <stdlib.h>, <string.h> unconditionally.
58192
58193         * lib/exitfail.c: Include <stdlib.h> unconditionally.
58194
58195         * lib/fnmatch_.h (__P): Remove.  All uses changed to assume
58196         prototypes.
58197         * lib/fnmatch.c: Include fnmatch.h first, to test interface.
58198         Include <string.h>, <stddef.h>, <stdlib.h> unconditionally.
58199         (getenv): Remove decl.
58200         (fnmatch): Define using a prototype.
58201         * lib/fnmatch_loop.c (FCT): Remove forward decl; no longer needed.
58202         (FCT): Define using a prototype.
58203
58204         * lib/getdate.y: Include <stdlib.h>, <string.h> unconditionally.
58205
58206         * lib/gethostname.c: Include <stddef.h>.
58207         (gethostname): Define with prototype.  Length is size_t, not int.
58208
58209 2003-09-08  Paul Eggert  <eggert@twinsun.com>
58210
58211         Assume C89 or better; remove K&R cruft.
58212         * m4/alloca.m4 (gl_PREREQ_ALLOCA): Don't check for stdlib.h, string.h.
58213         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for stdlib.h,
58214         string.h, getenv, malloc.
58215         * m4/dirname.m4 (gl_DIRNAME): Don't check for string.h or C standard
58216         headers.
58217         * m4/canon-host.m4 (gl_CANON_HOST): Don't check for string.h, stdlib.h.
58218         * m4/error.m4 (jm_PREREQ_ERROR): Do not require STDC headers, and
58219         do not check for strerror.
58220         * m4/exclude.m4: Do not check for stdlib.h, string.h, strings.h.
58221         * m4/exitfail.m4 (gl_EXITFAIL): Do not check for stdlib.h.
58222         * m4/fatal.m4 (gl_FATAL): Do not require STDC headers, and
58223         do not check for doprnt or vprintf.
58224         * m4/fnmatch.m4 (gl_PREREQ_FNMATCH_EXTRA): Remove.  All uses removed.
58225         * m4/getdate.m4 (gl_GETDATE): Don't check for stdlib.h or string.h.
58226
58227 2003-09-08  Paul Eggert  <eggert@twinsun.com>
58228
58229         * lib/getversion.c: Remove; was migrated to backupfile.c in 1997.
58230         getversion.c should have been removed then, but was accidentally
58231         preserved.
58232
58233         * lib/utime.c [!HAVE_UTIMES_NULL]: Include <sys/stat.h>, <fcntl.h>.
58234         (utime_null): Fix typo: 'st' was sometimes called 'sb'.
58235
58236 2003-09-08  Karl Berry  <karl@gnu.org>
58237
58238         * config/config.sub, config.guess, srclistvars.sh: update from savannah
58239                 config, forget about prep.
58240
58241         * config/depcomp, missing: update from automake.
58242
58243 2003-09-07  Paul Eggert  <eggert@twinsun.com>
58244
58245         * modules/time_r: Depend on 'restrict'.  Fix from Simon Josefsson in
58246         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
58247
58248 2003-09-07  Paul Eggert  <eggert@twinsun.com>
58249
58250         * lib/time_r.c (gmtime_r, localtime_r): Fix silly typo: missing arg to
58251         copy_tm_result.  Bug reported by Simon Josefsson in
58252         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00028.html>.
58253
58254 2003-09-06  Paul Eggert  <eggert@twinsun.com>
58255
58256         * m4/time_r.m4: New file.
58257         * m4/mktime.m4 (gl_PREREQ_MKTIME): Remove check for limits.h.
58258         * m4/timegm.m4 (gl_FUNC_TIMEGM): Assume that timegm is buggy if mktime
58259         is. Check for timegm declaration.
58260         (gl_PREREQ_TIMEGM): Require gl_FUNC_MKTIME.
58261         Do not check for gmtime_r.
58262         Replace mktime if __mktime_internal does not exist and if mktime
58263         hasn't been replaced already.
58264
58265 2003-09-06  Paul Eggert  <eggert@twinsun.com>
58266
58267         * lib/time_r.c, lib/time_r.h: New files.
58268
58269         * lib/mktime.c (my_mktime_localtime_r): Remove; all uses changed to
58270         __localtime_r.
58271         (__localtime_r) [!defined _LIBC]: New macro.  Include <time_r.h>.
58272         (__mktime_internal) [!defined _LIBC]: Now extern, not static.
58273
58274         * lib/strftime.c (my_strftime_gmtime_r): Remove; all uses changed to
58275         __gmtime_r.
58276         (my_strftime_localtime_r): Remove; all uses changed to __localtime_r.
58277         (__gtime_r, __localtime_r) [!HAVE_TM_GMTOFF]: New macros.
58278         Include <time_r.h>.
58279
58280         * lib/timegm.c: Switch to glibc implementation, with the following
58281         changes:
58282         [defined HAVE_CONFIG_H]: Include <config.h>.
58283         [!defined _LIBC]: Include "timegm.h" rather than <time.h>.
58284         (__mktime_internal) [!defined _LIBC]: New decl.
58285         (__gmtime_r) [!defined _LIBC]: New macro and function.
58286         (timegm): Use a prototype, since gnulib assumes C89.
58287         Do not bother declaring tmp to be const, as it's not really usefu.
58288         * lib/timegm.h: Hoist "#include <time.h>" out of #ifdef.
58289         (timegm): Declare only if HAVE_DECL_TIMEGM.
58290
58291 2003-09-06  Paul Eggert  <eggert@twinsun.com>
58292
58293         * MODULES.html.sh (func_all_modules): Add time_r.
58294         * modules/time_r: New file.
58295         * modules/mktime, modules/strftime, modules/timegm: Depend on time_r.
58296         * modules/timegm: Depend on mktime.  Change maintainer to "all, glibc".
58297
58298 2003-09-03  Paul Eggert  <eggert@twinsun.com>
58299
58300         * lib/human.c (human_readable): Fix bug that rounded 10501 to 10k.
58301         Bug reported by Lute Kamstra in
58302         <http://mail.gnu.org/archive/html/bug-gnulib/2003-09/msg00003.html>.
58303
58304         * lib/getdate.y (relative_time_table): Use tDAY_UNIT for "tomorrow",
58305         "yesterday", "today", and "now" rather than tMINUTE_UNIT.  Of
58306         course with correspondingly smaller numbers for tomorrow and
58307         yesterday.  From Tadayoshi Funaba.  Originally installed into
58308         sh-utils on 1999-08-07, but the patch got lost (I guess during the
58309         coreutils merge?).
58310
58311 2003-08-31  Simon Josefsson  <jas@extundo.com>
58312
58313         * modules/timegm: New file.
58314         * MODULES.html.sh (func_all_modules): Add timegm.
58315
58316 2003-08-31  Simon Josefsson  <jas@extundo.com>
58317
58318         * m4/timegm.m4: New file.
58319
58320 2003-08-31  Simon Josefsson  <jas@extundo.com>
58321
58322         * lib/timegm.h: New file.
58323         * lib/timegm.c: New file.  Based on
58324         wget-1.8.2/src/http.c:mktime_from_utc.
58325
58326 2003-08-31  Karl Berry  <karl@gnu.org>
58327
58328         * lib/argp.h: update from libc.
58329
58330 2003-08-28  Bruno Haible  <bruno@clisp.org>
58331
58332         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Remove AC_DEFINE of fnmatch here.
58333         This avoids havoc on compilers for which '#define fnmatch rpl_fnmatch'
58334         followed by '#define fnmatch fnmatch_posix' gives an error.
58335
58336 2003-08-28  Bruno Haible  <bruno@clisp.org>
58337
58338         * lib/binary-io.h: Undefine O_BINARY before defining it. This avoids a
58339         warning on QNX, which defines O_BINARY to 000000.
58340
58341 2003-08-27  Jim Meyering  <jim@meyering.net>
58342
58343         * m4/mkstemp.m4: Require that the system mkstemp be able to create
58344         70 temporary files, not just 30.  Tru64 V4.0F's mkstemp function
58345         would fail after 32.  Reported by Danny Levinson.  Details here:
58346         http://mail.gnu.org/archive/html/bug-coreutils/2003-08/msg00124.html
58347
58348 2003-08-24  Bruno Haible  <bruno@clisp.org>
58349
58350         * lib/binary-io.h: Include <stdio.h>, to avoid a compilation error when
58351         MSVC7 <stdio.h> is included later.
58352
58353 2003-08-22  Simon Josefsson  <jas@extundo.com>
58354
58355         * modules/strndup (Makefile.am): Add strndup.h to lib_SOURCES.
58356
58357 2003-08-20  Karl Berry  <karl@gnu.org>
58358
58359         * m4/lib-ld.m4: serial 1003 from gettext, no changes besides serial.
58360
58361 2003-08-20  Bruno Haible  <bruno@clisp.org>
58362
58363         * modules/progname: New file.
58364         * MODULES.html.sh (func_all_modules): Add progname.
58365
58366 2003-08-20  Bruno Haible  <bruno@clisp.org>
58367
58368         * lib/progname.h: New file, from GNU gettext.
58369         * lib/progname.c: New file, from GNU gettext.
58370         * lib/progreloc.c: New file, from GNU gettext.
58371
58372 2003-08-19  Jim Meyering  <jim@meyering.net>
58373
58374         * m4/lib-ld.m4: Revert yesterday's change, per Bruno's request here:
58375         http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00155.html
58376
58377 2003-08-19  Bruno Haible  <bruno@clisp.org>
58378
58379         * m4/xalloc.m4 (gl_PREREQ_XSTRDUP): Don't check for <string.h> any
58380         more.
58381
58382 2003-08-19  Bruno Haible  <bruno@clisp.org>
58383
58384         * lib/xstrdup.c: Assume <string.h> exists.
58385
58386 2003-08-18  Paul Eggert  <eggert@twinsun.com>
58387
58388         * modules/stdbool: Add BUILT_SOURCES.  Prefer $@ to target name
58389         in makefile rules.
58390
58391 2003-08-18  Jim Meyering  <jim@meyering.net>
58392
58393         * m4/getloadavg.m4: Use [\t ], not [ \t] (where \t is a literal TAB).
58394         * m4/lib-ld.m4: Likewise.
58395
58396 2003-08-18  Jim Meyering  <jim@meyering.net>
58397
58398         * lib/setenv.h: Indent nested cpp directive.
58399         * lib/vasnprintf.c: Remove trailing blanks.
58400
58401 2003-08-17  Simon Josefsson  <jas@extundo.com>
58402
58403         * modules/xstrndup: New file.
58404         * MODULES.html.sh (func_all_modules): Add xstrndup.
58405
58406 2003-08-17  Simon Josefsson  <jas@extundo.com>
58407
58408         * modules/argp: Fix autoconf macro name. Add more dependencies.
58409
58410 2003-08-17  Simon Josefsson  <jas@extundo.com>
58411
58412         * m4/xstrndup.m4: New file.
58413
58414 2003-08-17  Simon Josefsson  <jas@extundo.com>
58415
58416         * m4/argp.m4: New file.
58417
58418 2003-08-17  Simon Josefsson  <jas@extundo.com>
58419             Bruno Haible  <bruno@clisp.org>
58420
58421         * lib/xstrndup.h: New file.
58422         * lib/xstrndup.c: New file.
58423
58424 2003-08-17  Bruno Haible  <bruno@clisp.org>
58425
58426         * modules/strndup (Files, Include): Add lib/strndup.h.
58427
58428 2003-08-17  Bruno Haible  <bruno@clisp.org>
58429
58430         * modules/euidaccess (Files): Add lib/euidaccess.h.
58431
58432 2003-08-17  Bruno Haible  <bruno@clisp.org>
58433
58434         * lib/strndup.h: New file.
58435
58436 2003-08-17  Bruno Haible  <bruno@clisp.org>
58437
58438         * gnulib-tool (func_create_testdir): Handle gl_USE_SYSTEM_EXTENSIONS
58439         like AC_GNU_SOURCE.
58440         * modules/extensions (configure.ac): Comment out the invocation of
58441         gl_USE_SYSTEM_EXTENSIONS.
58442
58443 2003-08-16  Paul Eggert  <eggert@twinsun.com>
58444
58445         Merges from coreutils, etc.
58446         * m4/rpmatch.m4 (gl_PREREQ_RPMATCH): Insert ':' to prevent a syntax
58447         error in gl_FUNC_MATCH.  This fixes a bug I introduced on 2003-05-28.
58448         * m4/readlink.m4 (gl_PREREQ_READLINK): Renamed from gl_PREREQ_READLINE,
58449         fixing a typo.
58450         * m4/host-os.m4 (UTILS_HOST_OS): Add GNU/NetBSD, GNU/FreeBSD.
58451         * m4/hash.m4 (gl_HASH): Use AM_STDBOOL_H, not AC_HEADER_STDBOOL.
58452
58453 2003-08-16  Paul Eggert  <eggert@twinsun.com>
58454
58455         Document merge from coreutils.
58456         * modules/alloca: Append $(ALLOCA_H) to BUILT_SOURCES.
58457         * modules/fnmatch: Append $(FNMATCH_H) to BUILT_SOURCES.
58458         * modules/utime: Add m4/utimes-null.m4.
58459
58460 2003-08-16  Paul Eggert  <eggert@twinsun.com>
58461
58462         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Do not normalize white
58463         space, undoing this 2003-08-12 change:
58464         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
58465
58466 2003-08-16  Paul Eggert  <eggert@twinsun.com>
58467
58468         * config/srclist.txt: Get regex.h, strdup.c, strtoll.c,
58469         strtoul.c from libc, undoing this 2003-08-12 change:
58470         <http://mail.gnu.org/archive/html/bug-gnulib/2003-08/msg00080.html>
58471
58472 2003-08-16  Jim Meyering  <jim@meyering.net>
58473
58474         Merges from coreutils.
58475         * m4/readdir.m4 (GL_FUNC_READDIR): Change name to have GL_ (not jm_)
58476         prefix.  Adjust cache variables similarly.  Create 500 rather than
58477         just 300 files, to exercise bug on Darwin6.5, too.
58478         * m4/perl.m4 (jm_PERL): Use $am_missing_run, not undefined
58479         $missing_dir.
58480         * m4/jm-winsz1.m4: Require AC_SYS_POSIX_TERMIOS, not
58481         AM_SYS_POSIX_TERMIOS.
58482         Reported by mkc@mathdogs.com.
58483         Also change use of $am_cv_sys_posix_termios
58484         to $ac_cv_sys_posix_termios.  Reported by Andreas Schwab.
58485         * m4/getgroups.m4 (jm_FUNC_GETGROUPS): Rewrite to use AC_FUNC_GETGROUPS
58486         and (if needed) to call AC_LIBOBJ and to set GETGROUPS_LIB.
58487         * m4/fsusage.m4 [__GLIBC__]: GNU libc's statvfs stats each mount point
58488         in /proc/mounts until it finds one with matching device number.  This
58489         is unnecessary when the FILE argument *is* a mount point.  No stat call
58490         is necessary in that case.  So, disable the statvfs-testing code on
58491         systems with GNU libc.  Reported by Andrei Gaponenko via Tim Waugh
58492         as RedHat bug# 84846.
58493         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
58494         to 1MB, so as not to render systems with no stack size limit (e.g.,
58495         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
58496         Include <unistd.h>.  On some systems,
58497         it is required for the definition of _SC_PAGESIZE.
58498
58499 2003-08-16  Jim Meyering  <jim@meyering.net>
58500
58501         Merge from coreutils.
58502         * lib/xstrtoimax.c: #else #if -> #elif.
58503         * lib/xstrtoumax.c: Likewise.
58504
58505 2003-08-16  Jim Meyering  <jim@meyering.net>
58506
58507         * m4/utimes.m4 (gl_FUNC_UTIMES): New file.
58508         * m4/utimes.m4: Removed.
58509         * m4/utimes-null.m4: Renamed from utimes.m4.
58510
58511         * m4/c-stack.m4 (AC_SYS_XSI_STACK_OVERFLOW_HEURISTIC): Limit stack size
58512         to 1MB, so as not to render systems with no stack size limit (e.g.,
58513         linux-2.2.x) unusable.  Suggestion and code from Bruno Haible.
58514         Include <unistd.h>.  On some systems,
58515         it is required for the definition of _SC_PAGESIZE.
58516
58517 2003-08-16  Jim Meyering  <jim@meyering.net>
58518         and Paul Eggert  <eggert@cs.ucla.edu>
58519
58520         Merges from coreutils, etc.
58521
58522         * m4/jm-macros.m4 (AC_LANG_SOURCE(C)): New macro, undefine, then define
58523         using the latest version from cvs.  This avoids problems with #line
58524         directives using a vendor (Sun) compiler.
58525         (jm_MACROS): Bump prerequisite from 2.52g to 2.57.
58526         Don't set GETGROUPS_LIB here; now it's
58527         done via getgroups.m4's wrapper function.
58528         AC_SUBST OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, and MAN here,
58529         rather than just in sh-util/configure.in, so that the
58530         now-shared-by-fileutils-and-textutils lib/Makefile.am are all the
58531         same.
58532         Use AC_CONFIG_LIBOBJ_DIR(lib) to tell the new
58533         AC_FUNC_GETLOADAVG where to find getloadavg.c.
58534         Require AC_FUNC_FTW, gt_INTTYPES_PRI, gl_CLOCK_TIME,
58535         UTILS_SYS_OPEN_MAX, GL_FUNC_GETCWD_PATH_MAX, GL_FUNC_READDIR,
58536         gl_FSUSAGE, gl_MOUNTLIST, AC_FUNC_CANONICALIZE_FILE_NAME.
58537         Remove code that is now done by the newly-required macros.
58538         Append $(EXEEXT) to DF_PROG.
58539         AC_LIBOBJ fchdir-stub if fchdir doesn't exist; similarly for fchown.
58540         Do not invoke or require the following here,
58541         since prereq.m4 or some gnulib .m4 now does this for us:
58542         gl_REGEX, UTILS_FUNC_MKDIR_TRAILING_SLASH, jm_BISON, gl_FUNC_MKTIME,
58543         jm_FUNC_LSTAT, jm_FUNC_STAT, jm_FUNC_REALLOC, jm_FUNC_MALLOC,
58544         jm_FUNC_NANOSLEEP, jm_FUNC_READDIR, jm_FUNC_MEMCMP,
58545         jm_FUNC_GLIBC_UNLOCKED_IO, AC_FUNC_FNMATCH_GNU, jm_FUNC_PUTENV,
58546         jm_AC_PREREQ_XSTRTOUMAX, jm_AC_PREREQ_XSTRTOIMAX,
58547         AC_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, AC_FUNC_VPRINTF,
58548         vb_FUNC_RENAME, UTILS_FUNC_MKSTEP, jm_FUNC_UTIME, AM_FUNC_GETLINE,
58549         AC_FUNC_OBSTACK.
58550         Do not replace the following functions, as this is now the job
58551         of some gnulib .m4: strcasecmp, strncasecmp, dup2, gethostname,
58552         getusershell, sig2str, strcspn, stpcpy, strstr, strtol, strtoul
58553         strpbrk, euidaccess, memcmp, rmdir, rpmatch, strndup, strverscmp,
58554         atexit getpass, strdup, getpagesize.
58555         Replace 'raise'.
58556         Do not check for the following functions, as this is now the job
58557         of some gnulib .m4: bcopy, canonicalize_file_name, fchdir, ftime,
58558         getcwd, getmntinfo, resolvepath.  But check for sysctl, setreuid,
58559         setregid.
58560         (jm_CHECK_ALL_HEADERS): Do not check for fenv.h.
58561         Check for sys/sysctl.h.
58562         (jm_CHECK_ALL_TYPES): Do not require AC_STRUCT_TM, AC_STRUCT_TIMEZONE,
58563         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Invoke gt_TYPE_SSIZE_T instead
58564         of checking for ssize_t ourselves.
58565
58566         * m4/prereq.m4 (jm_PREREQ): Don't invoke macros; AC_REQUIRE them.
58567         Require every macro that gnulib/modules/* suggests for us.
58568         (jm_PREREQ_ADDEXT): New macro.
58569         (jm_PREREQ_STAT): Check for 'struct statfs' on Ultrix 4.4.
58570         Require jm_AC_TYPE_LONG_LONG instead of invoking it.
58571
58572         * m4/physmem.m4 (gl_SYS__SYSTEM_CONFIGURATION): New macro.
58573         (gl_PHYSMEM): Use it.
58574         Also check for `table' function.
58575         Check for new headers and functions.
58576         Add check for sys/sysmp.h.
58577         With suggestions from Kaveh Ghazi.
58578         Ignore headers that are present but cannot be compiled.  This
58579         avoids spurious warnings on Solaris 9 sparc with Forte Developer 7
58580         C 5.4.
58581
58582 2003-08-15  Paul Eggert  <eggert@twinsun.com>
58583
58584         Document merge from coreutils.
58585         * modules/userspec: Depend on posixver.
58586         * modules/strftime: Depend on tzset.
58587
58588 2003-08-15  Paul Eggert  <eggert@twinsun.com>
58589
58590         * lib/config.charset, ref-add.sin, ref-del.sin: Use three spaces,
58591         rather than tab, after '#' in shell-script copyright notices.
58592         Suggested by Bruno Haible.
58593
58594 2003-08-15  Paul Eggert  <eggert@twinsun.com>
58595
58596         * config/srclist-update: Use three spaces, rather than tab, after '#'
58597         in shell-script copyright notices.  Suggested by Bruno Haible.
58598         Remove unnecessary parenthesization in regular expression.
58599
58600 2003-08-15  Jim Meyering  <jim@meyering.net>
58601
58602         Merge from coreutils.
58603         * lib/xgethostname.c: Include <stdlib.h>.
58604         (xghostname): Don't exit for anything other than memory-related
58605         failure; just return NULL.
58606         * lib/userspec.c: Include "posixver.h".
58607         (parse_user_spec): Accept `.' as a separator only
58608         in pre-POSIX-200112 mode.
58609         * lib/strtoimax.c: Use #elif rather than #else #if.
58610         * lib/strftime.c (my_strftime) [!_LIBC && HAVE_TZNAME && HAVE_TZSET]:
58611         Remove function, now that we can rely on a working tzset function.
58612         [!_LIBC]: Ensure that the required autoconf test has been run.
58613         [!defined _NL_CURRENT && HAVE_STRFTIME]:
58614         Use underlying_strftime for %r.
58615         * lib/sha.c: Merge in some clean-up and optimization changes from
58616         glibc.
58617         * lib/sha.c (sha_stream) [BLOCKSIZE]: Move definition to top of file.
58618         Ensure that it is a multiple of 64.
58619         Rearrange loop exit tests so as to avoid performing an
58620         additional fread after encountering an error or EOF.
58621         * lib/realloc.c: Update copyright date.
58622
58623 2003-08-15  Jim Meyering  <jim@meyering.net>
58624         and Paul Eggert  <eggert@twinsun.com>
58625
58626         Merge from coreutils.
58627         * lib/readutmp.h (HAVE_UTMPX_H): Undef if struct utmp has the ut_exit
58628         member but strut utmpx does not.  Needed for AIX 4.3.3.
58629         (UT_EXIT_E_TERMINATION, UT_EXIT_E_EXIT): Define.
58630
58631 2003-08-15  Jim Meyering  <jim@meyering.net>
58632         and Paul Eggert  <eggert@cs.ucla.edu>
58633
58634         Merges from coreutils, etc.
58635         * m4/strftime.m4 (_jm_STRFTIME_PREREQS):
58636         Require gl_FUNC_TZSET_CLOBBER.
58637         * m4/readutmp.m4 (gl_READUTMP): Check for ut_exit.ut_exit,
58638         ut_exit.e_exit, ut_exit.ut_termination, and ut_exit.e_termination
58639         members.
58640
58641 2003-08-14  Paul Eggert  <eggert@twinsun.com>
58642
58643         Help the merge from coreutils.
58644         * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): New macro.
58645         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use it.
58646         * m4/tzset.m4: Use it too.
58647
58648 2003-08-14  Paul Eggert  <eggert@twinsun.com>
58649
58650         * modules/tzset: New file.
58651
58652 2003-08-14  Jim Meyering  <jim@meyering.net>
58653
58654         Merges from coreutils.
58655         * modules/fnmatch: Use the `$(FNMATCH_H)' notation for AC_REPLACED
58656         variable names, rather than @FNMATCH_H@.
58657         * modules/alloca: Likewise for $(ALLOCA_H).
58658
58659         * modules/fnmatch (fnmatch.h): Use `$@' in the commands, in place of
58660         the three copies of the literal target, `fnmatch.h'.
58661         * modules/alloca (alloca.h): Likewise.
58662
58663 2003-08-14  Jim Meyering  <jim@meyering.net>
58664
58665         Merge from coreutils.
58666         * m4/tzset.m4: New file.
58667         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Move the
58668         MOUNTED_VMOUNT test to precede the MOUNTED_GETMNTENT1 tests, since
58669         otherwise, AIX 5.1 systems would end up using the latter.
58670         MOUNTED_GETMNTENT1 support is inadequate on such systems: 1) detecting
58671         whether a file system is remote doesn't work  2) the MOUNTED_VMOUNT
58672         code reports the HOSTNAME:/MOUNT_POINT, while the MOUNTED_GETMNTENT1
58673         code reports merely /MOUNT_POINT.  Reported by Mike Jetzer.
58674
58675 2003-08-14  Jim Meyering  <jim@meyering.net>
58676
58677         Merge from coreutils.
58678         * lib/obstack.h: Whitespace changes.
58679         * lib/mountlist.c: Remove anachronistic casts of xmalloc, xrealloc,
58680         and xcalloc return values.
58681         (read_filesystem_list) [MOUNTED_GETFSSTAT]:
58682         Use MNT_NOWAIT, rather than MNT_WAIT.  Otherwise, `df DIR' could
58683         hang on OSF/1 5.1 for DIR on both local and remote file systems.
58684         Reported by (and fix confirmed by) Nelson H. F. Beebe.
58685         (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
58686         error from mntctl.
58687         Use mntctl's return value to drive the entry-processing loop, since
58688         we can't rely on the value of the vmt_length member in the last
58689         entry.  On some systems doing so could result in exhausting
58690         virtual memory.  Based in part on a patch from Mike Jetzer.
58691
58692 2003-08-14  Jim Meyering  <jim@meyering.net>
58693         and Paul Eggert  <eggert@twinsun.com>
58694
58695         Merges from coreutils, plus other fixes.
58696         * lib/physmem.c: Merge in portability changes from gcc/libiberty
58697         to support AIX, IRIX, Tru64, and Windows.  See the ChangeLog there
58698         for credits and details.  Thanks to Kaveh Ghazi for helping
58699         to keep these files in sync.
58700         (ARRAY_SIZE): Define it.
58701         (physmem_total, physmem_available): Add comments. From Kaveh Ghazi.
58702         * lib/memcasecmp.c: Remove unnecessary parentheses after 'defined'.
58703         (memcasecmp): Don't assume size_t fits in unsigned int.
58704         Remove casts and duplicate code.
58705         * lib/md5.c: Include <string.h> and <stdlib.h> unconditionally.
58706         (memcpy): Remove definition.
58707         Merge in some clean-up and optimization changes from glibc.
58708         [BLOCKSIZE]: Move definition to top of file.
58709         Ensure that it is a multiple of 64.
58710         Rearrange loop exit tests so as to avoid performing an
58711         additional fread after encountering an error or EOF.
58712         * lib/md5.h (md5_uintptr): Define.
58713         * lib/makepath.c (CLEANUP_CWD): Report an error if we failed to
58714         return to the initial working directory.  Preserve errno
58715         for caller.
58716         * lib/idcache.c: Include "xalloc.h".
58717         (xmalloc, xrealloc): Remove decls.
58718         (getuser): Remove casts no longer required in C89.
58719         * lib/human.c: Include stdio.h, for sprintf.
58720         * lib/group-member.c: Include "xalloc.h".
58721         (xmalloc, xrealloc): Remove decls.
58722         (get_group_info): Remove casts no longer required in C89.
58723         * lib/getusershell.c (readname): Remove casts no longer required in
58724         C89.
58725         * lib/gettimeofday.c (rpl_gmtime, rpl_tzset): New functions.
58726         * lib/getline.c: Whitespace fix, from coreutils.
58727
58728 2003-08-13  Paul Eggert  <eggert@twinsun.com>
58729
58730         * m4/exclude.m4 (gl_EXCLUDE): Require AC_C_INLINE, AC_HEADER_STDC.
58731         Check for isascii.
58732
58733         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
58734         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
58735         Undo previous (whitespace-only) change.
58736
58737 2003-08-13  Paul Eggert  <eggert@twinsun.com>
58738
58739         * lib/exclude.c: Include <ctype.h>
58740         (IN_CTYPE_DOMAIN): New macro.
58741         (is_space): New fn.
58742         (add_exclude_file): If LINE_END is a space, ignore trailing spaces
58743         and empty lines.
58744
58745         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
58746         Undo previous (whitespace-only) change.
58747
58748 2003-08-13  Paul Eggert  <eggert@twinsun.com>
58749
58750         * config/srclist-update: Change update back to the old behavior,
58751         leaving whitespace alone.  Use one 'sed' command rather than a
58752         pipeline.
58753         (fixlicense): Now a variable, not a function.
58754         (remove_trailing_blanks): Remove.
58755         (fixfile): Don't invoke unexpand or cat, or remove trailing blanks.
58756         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
58757         Undo previous (whitespace-only) change.
58758
58759 2003-08-12  Paul Eggert  <eggert@twinsun.com>
58760
58761         Merge from coreutils.
58762         * modules/euidaccess: Add lib_SOURCES, include for new
58763         file euidaccess.h
58764
58765 2003-08-12  Paul Eggert  <eggert@twinsun.com>
58766
58767         * m4/gettext.m4, iconv.m4, intdiv0.m4, inttypes-pri.m4, lib-link.m4,
58768         lib-prefix.m4, longdouble.m4, po.m4, progtest.m4, signed.m4:
58769         Normalize leading white space and remove trailing white space.
58770
58771         Merge from coreutils
58772         * m4/euidaccess.m4 (gl_FUNC_EUIDACCESS): Check for euidaccess decl.
58773
58774         * m4/lib-ld.m4, lib-link.m4, lib-prefix.m4: Regenerate from gettext
58775         0.12.1.  These files are now being upgraded automatically by
58776         ../config/srclist-update.
58777
58778 2003-08-12  Paul Eggert  <eggert@twinsun.com>
58779
58780         * lib/argp-help.c, argp-parse.c, config.charset, getopt.h:
58781         Normalize leading white space and remove trailing white space.
58782         * lib/ref-add.sin, ref-del.sin: Use '#' before empty line in copyright
58783         notice, as per ../config/srclist-update.
58784
58785         Merge from coreutils.
58786         * lib/euidaccess.h: New file.
58787         * lib/euidaccess.c: Include it.
58788         * lib/.cppi-disable: Add printf-args.h, printf-parse.h, stdbool_.h,
58789         vasnprintf.h, vasprintf.h.  Remove strdup.c, gettext.h.
58790         * lib/regex.h, strdup.c, strtoll.c, strtoul.c: Normalize white space.
58791
58792 2003-08-12  Paul Eggert  <eggert@twinsun.com>
58793
58794         * config/srclist-update: Add copyright notice.
58795         (remove_id_lines, remove_trailing_blanks): New constants.
58796         (fixfile): Use them to normalize spacing a bit in copied files.
58797         * config/config.guess, config.sub, install-sh, missing, texinfo.tex:
58798         Normalize leading white space and remove trailing white space.
58799
58800         * config/texinfo.tex: Sync with texinfo.
58801
58802         * config/srclist.txt: Don't get regex.h, strdup.c, strtoll.c,
58803         strtoul.c from libc, to merge coreutils whitespace changes.
58804
58805         * config/srclist.txt: Get the following m4 files from gettext:
58806         codeset.m4, gettext.m4, glibc21.m4, iconv.m4, intdiv0.m4,
58807         inttypes-pri.m4, lcmessage.m4, lib-ld.m4, lib-link.m4, lib-prefix.m4,
58808         longdouble.m4, nls.m4, po.m4, progtest.m4, signed.m4, wchar_t.m4,
58809         wint_t.m4.
58810
58811 2003-08-12  Karl Berry  <karl@gnu.org>
58812
58813         * config/srclist.txt: can't sync vasnprintf.c any more, changes have
58814         been made.
58815
58816 2003-08-11  Paul Eggert  <eggert@twinsun.com>
58817
58818         * modules/gnu-source, m4/gnu-source.m4:
58819         Remove; we're assuming Autoconf 2.54 or later now.
58820         Suggested by Bruno Haible.
58821         * MODULES.html.sh (func_all_modules): Remove gnu-source.
58822
58823 2003-08-11  Bruno Haible  <bruno@clisp.org>
58824
58825         * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF): Also check for wcslen.
58826
58827 2003-08-11  Bruno Haible  <bruno@clisp.org>
58828
58829         * lib/vasnprintf.c (local_wcslen): New function, for Solaris 2.5.1.
58830         (vasnprintf): Use it instead of wcslen.
58831
58832 2003-08-11  Bruno Haible  <bruno@clisp.org>
58833
58834         * lib/stdbool_.h (_Bool): Undo last change; instead use a negative enum
58835         value to ensure that _Bool promotes to int. Use #define for _Bool when
58836         using the Solaris C compiler. Adds comments suggested by Paul Eggert.
58837
58838 2003-08-10  Karl Berry  <karl@gnu.org>
58839
58840         * lib/regex.h: update from libc (whitespace fix).
58841
58842 2003-08-09  Paul Eggert  <eggert@twinsun.com>
58843
58844         Merge some files from coreutils.  These changes were
58845         originally made by Jim Meyering.
58846         * lib/acl.c: Include <sys/types.h> before <sys/stat.h>;
58847         many older Unixes require this.
58848         * lib/alloca.c (alloca): Remove cast to argument of free;
58849         no longer needed in C89.
58850         * lib/alloca_.h, regex.h: Fix white space to match
58851         what GNU indent does.
58852
58853 2003-08-09  Paul Eggert  <eggert@twinsun.com>
58854
58855         * m4/regex.m4 (jm_INCLUDED_REGEX): Change "\201" to "\371";
58856         apparently Emacs's Unicode mode got confused before my 2003-08-05
58857         checkin.
58858
58859 2003-08-08  Paul Eggert  <eggert@twinsun.com>
58860
58861         * m4/extensions.m4: New file.
58862         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC):
58863         Require gl_USE_SYSTEM_EXTENSIONS.
58864         * m4/unlocked-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO):
58865         Require gl_USE_SYSTEM_EXTENSIONS rather than AC_GNU_SOURCE.
58866
58867 2003-08-08  Paul Eggert  <eggert@twinsun.com>
58868
58869         * MODULES.html.sh (func_all_modules): Add extensions, gnu-source.
58870         * modules/extensions, modules/gnu-source: New files.
58871         * modules/timespec, modules/unlocked-io: Depend on extensions.
58872
58873 2003-08-07  Paul Eggert  <eggert@twinsun.com>
58874
58875         * modules/restrict: New file.
58876         * MODULES.html.sh (func_all_modules): Add restrict.
58877         * modules/regex: Depend on restrict.
58878
58879 2003-08-07  Paul Eggert  <eggert@twinsun.com>
58880
58881         * m4/restrict.m4: New file.
58882         * m4/regex.m4 (jm_PREREQ_REGEX): Add gl_C_RESTRICT.
58883
58884 2003-08-07  Bruno Haible  <bruno@clisp.org>
58885
58886         * modules/getndelim2 (Makefile.am): Add the files to EXTRA_DIST, not
58887         lib_SOURCES, because getndelim2.m4 now uses AC_LIBOBJ(getndelim2).
58888
58889 2003-08-07  Bruno Haible  <bruno@clisp.org>
58890
58891         * m4/getndelim2.m4 (gl_GETNDELIM2): Use AC_LIBOBJ(getndelim2). This
58892         makes the module 'getndelim2' compatible with the module 'getline'.
58893
58894 2003-08-05  Paul Eggert  <eggert@twinsun.com>
58895
58896         * m4/regex.m4 (jm_INCLUDED_REGEX): Replace a single non-ASCII
58897         byte with "\201" to avoid glitches when editing that source file
58898         with multi-gnome-terminal.
58899
58900 2003-08-05  Paul Eggert  <eggert@twinsun.com>
58901
58902         * lib/bumpalloc.h: Remove.
58903
58904 2003-08-05  Paul Eggert  <eggert@twinsun.com>
58905
58906         * MODULES.html.sh (func_all_modules): Remove bumpalloc.
58907         * modules/bumpalloc: Remove.
58908
58909 2003-08-04  Paul Eggert  <eggert@twinsun.com>
58910
58911         * lib/getloadavg.c: Change copyright notice and spacing to conform to
58912         GNU coding style.
58913
58914         Merge from coreutils.
58915         * lib/error.c [!USE_IN_LIBIO]: Omit this case; assume USE_IN_LIBIO is
58916         1. From glibc.
58917         * lib/getdate.y (date): Also accept dates like May-23-2003; suggestion
58918         from Karl Berry, implemented by Jim Meyering.
58919         * lib/getgroups.c: Include "xalloc.h" instead of declaring xalloc fns;
58920         from Dmitry V. Levin.
58921         Remove anachronistic cast of xrealloc.
58922         * lib/fnmatch_.h (__const): Remove.  Use 'const'.
58923         * lib/fnmatch_loop.c (NEW_PATTERN): Cast alloca return value to proper
58924         type. Otherwise, it wouldn't compile with at least /bin/cc on
58925         ymp-cray-unicos9.0.2.X.
58926         Combine two mostly-identical uses of alloca into one.
58927         Thanks to the Cray-Cyber project for access to a Cray Y-MP.
58928
58929 2003-08-04  Dave Love  <d.love@dl.ac.uk>
58930
58931         [From Emacs.]
58932
58933         * lib/getloadavg.c: Check `__unix' as well as `unix'.  Use #ifdef, not
58934         #if.  Check HAVE_LIBKSTAT as well as LOAD_AVE_TYPE.  Check
58935         F_SETFD, not FD_SETFD.  Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not
58936         obsolete NLIST_NAME_UNION.
58937         [__GNU__]: Undef BSD and FSCALE.
58938         [!NLIST_STRUCT]: Remove conditional definition of NLIST_STRUCT.
58939
58940 2003-08-03  Paul Eggert  <eggert@twinsun.com>
58941
58942         * lib/stdbool_.h (_Bool): Make it signed char, instead of
58943         an enum type, so that it's guaranteed to promote to int.  See:
58944         <http://mail.gnu.org/archive/html/bug-gnulib/2003-07/msg00124.html>
58945
58946 2003-08-03  Karl Berry  <karl@gnu.org>
58947
58948         * config/depcomp: update from automake.
58949
58950 2003-07-31  Paul Eggert  <eggert@twinsun.com>
58951
58952         * lib/strerror.c: Include config.h, limits.h.  Declare sprintf.
58953         (strerror): Don't assume that a printable int fits in 14 bytes.
58954
58955 2003-07-31  Bruno Haible  <bruno@clisp.org>
58956
58957         * modules/getpass-gnu: New file.
58958         * MODULES.html.sh (func_all_modules): Add getpass-gnu.
58959
58960 2003-07-31  Bruno Haible  <bruno@clisp.org>
58961
58962         * m4/getpass.m4 (gl_FUNC_GETPASS_GNU): New macro.
58963
58964 2003-07-24  Karl Berry  <karl@gnu.org>
58965
58966         * config/missing: update from automake.
58967
58968 2003-07-24  Derek Robert Price  <derek@ximbiot.com>
58969             Bruno Haible  <bruno@clisp.org>
58970
58971         * lib/getline.h (getline, getdelim): Change return type to ssize_t.
58972         * lib/getline.c (getline, getdelim): Likewise.
58973         Remove _GNU_SOURCE define; now it's defined in config.h through
58974         m4/getline.m4.
58975
58976 2003-07-23  Karl Berry  <karl@gnu.org>
58977
58978         * config/config.sub: update from prep.
58979
58980 2003-07-22  Paul Eggert  <eggert@twinsun.com>
58981
58982         * modules/xalloc (Depends-on): Add exitfail.
58983         * modules/xmemcoll: Likewise.
58984
58985 2003-07-22  Paul Eggert  <eggert@twinsun.com>
58986
58987         * lib/xalloc.h (XCALLOC, XREALLOC, CCLONE): Fix under- and
58988         over-parenthesization in macros.
58989
58990         Sync with coreutils.
58991
58992         * lib/xalloc.h (XMALLOC, XCALLOC, XREALLOC): Remove casts not
58993         required by C99.
58994
58995         Use `exit_failure' for xalloc and xmemcoll instead of their own
58996         private exit-failure variables.
58997         * lib/xalloc.h (xalloc_exit_failure): Remove.
58998         * lib/xmalloc.c: Likewise.  Include exitfail.h.
58999         (xalloc_die): Use exit_failure instead of xalloc_exit_failure.
59000         * lib/xmemcoll.h (xmemcoll_exit_failure): Remove.
59001         * lib/xmemcoll.c: Likewise.  Include exitfail.h.
59002         (xmemcoll): Use exit_failure instead of xalloc_exit_failure.
59003
59004 2003-07-20  Jim Meyering  <jim@meyering.net>
59005
59006         * modules/closeout (Depends-on): Add exitfail.
59007         Suggestion from Bruno Haible.
59008
59009 2003-07-19  Karl Berry  <karl@gnu.org>
59010
59011         * config/config.sub: update from prep.
59012
59013 2003-07-18  Paul Eggert  <eggert@twinsun.com>
59014
59015         * lib/closeout.h (close_stdout_set_status, close_stdout_status):
59016         Remove.
59017         * lib/closeout.c: Likewise.  Include "closeout.h" right after config.h,
59018         to test that it can stand by itself.  Include "exitfail.h".
59019         Clients should set exit_failure instead.
59020         (EXIT_FAILURE): Remove; no longer needed.  Do not include <stdlib.h>.
59021
59022 2003-07-18  Bruno Haible  <bruno@clisp.org>
59023
59024         * modules/getndelim2: New file.
59025         * modules/getline: Share files with module getndelim2.
59026         * modules/getnline: Depend on getndelim2 instead of sharing files with
59027         it. Add getnline.c to lib_SOURCES.
59028         * MODULES.html.sh (func_all_modules): Add getndelim2.
59029
59030 2003-07-18  Bruno Haible  <bruno@clisp.org>
59031
59032         * m4/getndelim2.m4: New file.
59033         * m4/getline.m4 (AM_FUNC_GETLINE): Add AC_LIBOBJ of getndelim2.c and
59034         invoke gl_PREREQ_GETNDELIM2.
59035         (gl_PREREQ_GETLINE): Drop AC_HEADER_STDC, now done by
59036         gl_PREREQ_GETNDELIM2.
59037         * m4/getnline.m4 (gl_GETNLINE): Drop AC_HEADER_STDC, now done by
59038         gl_GETNDELIM2.
59039
59040 2003-07-18  Bruno Haible  <bruno@clisp.org>
59041
59042         * lib/getndelim2.h: New file.
59043         * lib/getndelim2.c: Make into a module of its own. Include config.h,
59044         getndelim2.h.
59045         (getndelim2): Make non-static. Change return type to ssize_t.
59046         * lib/getline.h: Change argument names.
59047         * lib/getline.c: Include getndelim2.h instead of getndelim2.c.
59048         * lib/getnline.c: Include getndelim2.h.
59049
59050 2003-07-18  Andreas Schwab  <schwab@suse.de>
59051
59052         * lib/memcoll.c (memcoll) [!HAVE_STRCOLL]: Clear errno.
59053
59054 2003-07-17  Karl Berry  <karl@gnu.org>
59055
59056         * config/config.sub: update from prep.
59057
59058 2003-07-17  Bruno Haible  <bruno@clisp.org>
59059
59060         * modules/getnline: New file.
59061         * modules/getline: Add lib/getndelim2.c to source file list.
59062         * MODULES.html.sh (func_all_modules): Add getnline.
59063
59064 2003-07-17  Bruno Haible  <bruno@clisp.org>
59065
59066         * m4/getnline.m4: New file.
59067
59068 2003-07-17  Bruno Haible  <bruno@clisp.org>
59069
59070         * m4/Makefile.am.in: Remove file.
59071         * m4/Makefile.am: Remove file.
59072         * m4/Makefile.in: Remove file.
59073
59074 2003-07-17  Bruno Haible  <bruno@clisp.org>
59075
59076         * lib/getnline.h: New file.
59077         * lib/getnline.c: New file.
59078         * lib/getndelim2.c: New file, extracted from getline.c.
59079         (getndelim2): Renamed from getdelim2, with added nmax argument.
59080         * lib/getline.c: Include getndelim2.c.
59081         (getdelim2): Moved out to getndelim2.c.
59082         (getline, getdelim): Update.
59083
59084 2003-07-17  Bruno Haible  <bruno@clisp.org>
59085
59086         * lib/Makefile.am: Remove file.
59087         * lib/Makefile.in: Remove file.
59088
59089 2003-07-17  Bruno Haible  <bruno@clisp.org>
59090
59091         * configure.in: Remove file.
59092         * Makefile.in: Remove file.
59093
59094 2003-07-17  Bruno Haible  <bruno@clisp.org>
59095
59096         * MODULES.html.sh: Put the </BODY> right before </HTML>.
59097
59098 2003-07-16  Karl Berry  <karl@gnu.org>
59099
59100         * config/srclist-update: was running fixlicense twice, which caused
59101                 texinfo.tex to be nullified for some reason.  Simplify,
59102                 $gplsrc is no longer needed as far as I can see?
59103
59104 2003-07-16  Jim Meyering  <jim@meyering.net>
59105
59106         * modules/save-cwd: Depend on xgetcwd.  From Derek Price.
59107
59108 2003-07-15  Paul Eggert  <eggert@twinsun.com>
59109
59110         * config/srclist.txt: Get the following files from gettext-runtime/intl
59111         instead: config.charset, localcharset.c, localcharset.h, ref-add.sin,
59112         ref-del.sin.  From Bruno Haible.
59113         * config/srclist-update (fixfile): Change grep pattern again, since the
59114         previous fix didn't work (there was another trailing $).  Use
59115         '[$]' to escape the $s.
59116
59117 2003-07-15  Karl Berry  <karl@gnu.org>
59118
59119         * lib/vasnprintf.c: update from gettext.
59120
59121 2003-07-15  Karl Berry  <karl@gnu.org>
59122
59123         * config/srclist-update (fixfile): Change grep pattern, since 'Id'
59124         gets expanded when surrounded by '$'.
59125
59126 2003-07-15  Jim Meyering  <jim@meyering.net>
59127
59128         * modules/save-cwd: Don't depend on error.  From Derek Price.
59129
59130 2003-07-15  Jim Meyering  <jim@meyering.net>
59131
59132         * lib/makepath.c (make_path): Enclose diagnostic in _(...).
59133
59134 2003-07-14  Simon Josefsson  <jas@extundo.com>
59135
59136         * modules/mempcpy: New file.
59137         * MODULES.html.sh (func_all_modules): Add mempcpy.
59138
59139 2003-07-14  Simon Josefsson  <jas@extundo.com>
59140
59141         * m4/mempcpy.m4: New file.
59142
59143 2003-07-14  Simon Josefsson  <jas@extundo.com>
59144
59145         * lib/mempcpy.h: New file.
59146         * lib/mempcpy.c: New file.
59147
59148 2003-07-14  Paul Eggert  <eggert@twinsun.com>
59149
59150         * modules/getdate, modules/posixtm: Depend on mktime.
59151
59152 2003-07-14  Paul Eggert  <eggert@twinsun.com>
59153
59154         * lib/ceill.c, expl.c, floorl.c, frexpl.c, ldexpl.c, mathl.h,
59155         sincosl.c, sqrtl.c, trigl.c, trigl.h, poll.c, poll_.h, mkstemp.c,
59156         unicodeio.c, unicodeio.h, unlocked-io.h:
59157         Switch from LGPL to GPL.
59158
59159 2003-07-14  Paul Eggert  <eggert@twinsun.com>
59160
59161         * lib/asnprintf.c, asprintf.c, config.charset, gettext.h,
59162         localcharset.c, localcharset.h, mkdtemp.c, printf-args.c,
59163         printf-args.h, printf-parse.c, printf-parse.h, ref-add.sin,
59164         ref-del.sin, setenv.c, unsetenv.c, vasnprintf.c, vasnprintf.h,
59165         vasprintf.c, vasprintf.h: Regenerate.  These files are now being
59166         updated automatically by ../config/srclist-update.  This changes
59167         their license from LPGL to GPL.
59168
59169 2003-07-14  Paul Eggert  <eggert@twinsun.com>
59170
59171         * config/srclist.txt: Add tons more gettext files.  $GETTEXT is now
59172         assumed to refer to the root of the most recent stable gettext version.
59173         * config/srclistvars.sh: Add defaults for eggert.
59174         * config/srclist-update: Convert LGPL to GPL in shell scripts, too.
59175         Match "This program" as well as "The program".  This is needed
59176         for gettext.
59177
59178 2003-07-14  Jim Meyering  <jim@meyering.net>
59179
59180         Don't emit diagnostics.  Let callers do that.
59181         * lib/save-cwd.c: Don't include "error.h".
59182         (save_cwd): Don't call error.  Ensure that errno is valid
59183         when returning nonzero.
59184
59185         * lib/save-cwd.h (restore_cwd): Update prototype.
59186         * lib/save-cwd.c (restore_cwd): Remove two parameters.
59187         Simplify.  Don't call error upon failure.  Let callers do that.
59188         (save_cwd): Mention that Irix 5.3 has the same problem as SunOS 4
59189         when auditing is enabled.  But don't bother updating the #if.
59190
59191 2003-07-11  Alexandre Duret-Lutz  <adl@gnu.org>
59192
59193         * lib/obstack.h (__INT_TO_PTR): Revert change of 2003-03-13;
59194         it breaks C++ compilation.
59195         [!__GNUC__ || !__STDC__] (obstack_finish): Cast result to void*.
59196
59197 2003-07-10  Simon Josefsson  <jas@extundo.com>
59198
59199         * modules/strchrnul (Makefile.am): Add strchrnul.h.
59200
59201 2003-07-10  Jim Meyering  <jim@meyering.net>
59202
59203         * m4/clock_time.m4: Remove trailing blank.
59204         * m4/intmax_t.m4: Likewise.
59205
59206 2003-07-10  Jim Meyering  <jim@meyering.net>
59207
59208         * lib/vasnprintf.c: Remove trailing blanks.
59209         Make cpp indentation consistent.
59210
59211 2003-07-09  Paul Eggert  <eggert@twinsun.com>
59212
59213         * lib/alloca_.h, euidaccess.c, getpass.c, memrchr.c, obstack.h,
59214         posixver.c, strftime.c, strnlen.c, strverscmp.c:
59215         Switch from LGPL to GPL.
59216
59217 2003-07-09  Paul Eggert  <eggert@twinsun.com>
59218
59219         * config/srclist.txt: Sort sublists.  Add
59220         $LIBCSRC/sysdeps/generic/strtoul.c. In comments, add more libc files
59221         that differ from gnulib for one reason or another; we'd like this list
59222         to be smaller but for now let's document what we have.
59223
59224 2003-07-08  Paul Eggert  <eggert@twinsun.com>
59225
59226         * config/srclist-update: Port to POSIX 1003.1-2001 hosts by avoiding
59227         the use of GNU extensions.  Change "x=`eval echo $x`" to the shorter
59228         and sweeter "eval x=$x".
59229         * config/srclist.txt: Get lib/argp* from glibc.
59230
59231 2003-07-07  Paul Eggert  <eggert@twinsun.com>
59232
59233         * lib/mktime.c: Fix some boundary cases and remove need for floating
59234         point.
59235
59236         Issue a compile-time diagnostic if time_t is floating point, or if
59237         two's complement arithmetic is not in effect, or if arithmetic
59238         right shift does not propagate the sign.  These assumptions were
59239         all in the original code but they weren't checked.
59240
59241         (TIME_T_MIDPOINT, verify): New macros.
59242         (__isleap): Remove; it has integer overflow problems.
59243         (leapyear): New function, without those problems.
59244         (ydhms_tm_diff): Remove; splitting into two parts.
59245         (ydhms_diff): New function, containing the arithmetic part of
59246         the old ydhms_tm_diff function.  Issue a compile-time
59247         diagnostic if we are not using C99 integer division.
59248         Avoid casts when possible.
59249         (guess_time_tm): New function, containing the checking part of
59250         the old ydhms_tm_diff function.  Return the new value, rather than
59251         the difference between it and the old.  Accept a new argument T
59252         so that *T specifies the old value.  Check for overflow in the result.
59253
59254         (__mktime_internal): Use a time_t offset, not a long int offset.
59255         This undoes the 2003-06-04 change, which is no longer needed now
59256         that we have better overflow checking.
59257         (localtime_offset): Likewise.
59258
59259         (__mktime_internal): Avoid harmful overflow on hosts where time_t
59260         and long are 64-bit but int is only 32-bit.
59261         (ydhms_diff): Use long int to store year1 and yday1.
59262         Issue a compile-time diagnostic if long int is not wide enough.
59263
59264         (__mktime_internal): Use long int to store adjusted year and yday.
59265         Use plain C rather than preprocessor commands, if that doesn't
59266         affect efficiency.
59267         Check for overflow (and try to repair) after each probe
59268         rather than checking only at the very end.  This avoids some bugs
59269         (e.g., southern hemisphere, behind GMT, and GMT offset at minimum time
59270         does not equal GMT offset at maximum time).
59271         Use integer to check for overflow rather than floating point; this
59272         is more portable to non-IEEE hosts, and is a tad faster.
59273         When we detect that we are oscillating between two values,
59274         don't check whether tm_isdst has the requested value, since
59275         we already know the answer.  When tm_isdst has the wrong value,
59276         use a different heuristic to find the right one, based on the
59277         extreme values actually observed in practice in tz2003a,
59278         rather than the (overly optimistic) "previous 3 calendar quarters".
59279
59280         (not_equal_tm, print_tm, check_result): Use "const T" rather than
59281         "T const" to accommodate glibc style.
59282         (check_result): Use less-confusing report format.  "long" -> "long int.
59283         (main): Likewise.
59284         Don't loop if the iteration overflows time_t.
59285         Allow a negative step in the iteration.
59286
59287 2003-07-06  Karl Berry  <karl@gnu.org>
59288
59289         * config/depcomp: update from automake.
59290         * config/config.sub: update from prep.
59291
59292 2003-07-03  Karl Berry  <karl@gnu.org>
59293
59294         * config/config.guess: update from prep.
59295
59296 2003-07-01  Paul Eggert  <eggert@twinsun.com>
59297
59298         * m4/xreadlink.m4 (gl_XREADLINK): Don't check for sys/types.h, since
59299         xreadlink.c now includes it unconditionally.
59300
59301 2003-07-01  Paul Eggert  <eggert@twinsun.com>
59302
59303         * lib/xreadlink.c: Include <sys/types.h> unconditionally, instead of
59304         having it depend on HAVE_SYS_TYPES_H.
59305
59306 2003-07-01  Bruno Haible  <bruno@clisp.org>
59307
59308         * m4/ssize_t.m4 (gt_TYPE_SSIZE_T): Don't include <unistd.h>.
59309         <sys/types.h> should be sufficient.
59310         Reported by Paul Eggert.
59311
59312 2003-06-26  Karl Berry  <karl@gnu.org>
59313
59314         * config/depcomp: update from automake.
59315
59316 2003-06-26  Bruno Haible  <bruno@clisp.org>
59317
59318         * modules/human: Depend on module stdbool.
59319
59320 2003-06-25  Bruno Haible  <bruno@clisp.org>
59321
59322         * modules/readlink: New file.
59323         * modules/xreadlink: Depend on it.
59324         * MODULES.html.sh (func_all_modules): Add readlink.
59325
59326 2003-06-25  Bruno Haible  <bruno@clisp.org>
59327
59328         * m4/readlink.m4: New file.
59329
59330 2003-06-25  Bruno Haible  <bruno@clisp.org>
59331
59332         * lib/readlink.c: New file.
59333
59334 2003-06-22  Karl Berry  <karl@gnu.org>
59335
59336         * config/srclist.txt: update mkinstalldirs from automake.
59337         * config/mkinstalldirs: update.
59338
59339 2003-06-22  Bruno Haible  <bruno@clisp.org>
59340
59341         Portability to mingw32.
59342         * m4/ssize_t.m4: New file, from GNU gettext.
59343         * m4/safe-read.m4 (gl_PREREQ_SAFE_READ): Require gt_TYPE_SSIZE_T.
59344         * m4/xreadlink.m4 (gl_XREADLINK): Require gt_TYPE_SSIZE_T.
59345
59346 2003-06-22  Bruno Haible  <bruno@clisp.org>
59347
59348         * modules/safe-read: Add m4/ssize_t.m4.
59349         * modules/xreadlink: Add m4/ssize_t.m4.
59350
59351 2003-06-20  Bruno Haible  <bruno@clisp.org>
59352
59353         Assume C89, so PARAMS isn't needed.
59354         * lib/unicodeio.h (PARAMS): Remove.
59355         * lib/unicodeio.c: Don't use PARAMS.
59356
59357 2003-06-18  Karl Berry  <karl@gnu.org>
59358
59359         * config/config.{guess,sub}: update from prep.
59360
59361 2003-06-18  Jim Meyering  <jim@meyering.net>
59362
59363         Merge changes from coreutils.
59364         * lib/readutmp.c: Include <string.h> and <stdlib.h> unconditionally.
59365         Remove explicit declarations of xmalloc and realloc.
59366         Include xalloc.h.
59367         (read_utmp): Remove anachronistic cast of xmalloc.
59368
59369 2003-06-17  Paul Eggert  <eggert@twinsun.com>
59370
59371         Assume C89, so PARAMS isn't needed.
59372         * lib/backupfile.h (PARAMS): Remove.  All uses removed.
59373         * lib/closeout.h, lib/dirname.h, lib/filemode.h, lib/fsusage.h,
59374         lib/getdate.h, lib/getline.h, lib/group-member.h, lib/hard-locale.h,
59375         lib/hash.h, lib/linebuffer.h, lib/long-options.h, lib/makepath.h,
59376         lib/memcasecmp.h, lib/memcoll.h, lib/modechange.h, lib/mountlist.h,
59377         lib/path-concat.h, lib/physmem.h, lib/posixtm.h, lib/quote.h,
59378         lib/readutmp.h, lib/same.h, lib/save-cwd.h, lib/savedir.h,
59379         lib/stdio-safer.h, lib/strtoimax.c, lib/strverscmp.h,
59380         lib/unistd-safer.h, lib/version-etc.h, lib/xalloc.h, lib/xreadlink.h,
59381         lib/xstrtod.h, lib/xstrtol.h: Likewise.
59382         * lib/filemode.h, lib/hard-locale.h, lib/memcoll.h, lib/modechange.h,
59383         lib/physmem.h, lib/same.h, lib/strverscmp.h: Do not include config.h;
59384         no longer needed. Anyway, config.h should always be included before any
59385         other file.
59386
59387 2003-06-11  Simon Josefsson  <jas@extundo.com>
59388
59389         * modules/sysexits: New file.
59390         * MODULES.html.sh (func_all_modules): Add sysexits.
59391
59392 2003-06-11  Simon Josefsson  <jas@extundo.com>
59393
59394         * lib/sysexit_.h: New file.
59395
59396 2003-06-11  Derek Price  <derek@ximbiot.com>
59397
59398         * lib/stat.c [LSTAT]: Compile/use slash_aware_lstat only if it is
59399         necessary.
59400
59401 2003-06-11  Bruno Haible  <bruno@clisp.org>
59402
59403         * m4/sysexits.m4: New file.
59404
59405 2003-06-10  Simon Josefsson  <jas@extundo.com>
59406
59407         * lib/argp.h: New file, from glibc.
59408         * lib/argp-ba.c: New file, from glibc.
59409         * lib/argp-eexst.c: New file, from glibc.
59410         * lib/argp-fmtstream.c: New file, from glibc.
59411         * lib/argp-fmtstream.h: New file, from glibc.
59412         * lib/argp-fs-xinl.c: New file, from glibc.
59413         * lib/argp-help.c: New file, from glibc.
59414         * lib/argp-namefrob.h: New file, from glibc.
59415         * lib/argp-parse.c: New file, from glibc.
59416         * lib/argp-pv.c: New file, from glibc.
59417         * lib/argp-pvh.c: New file, from glibc.
59418         * lib/argp-xinl.c: New file, from glibc.
59419
59420 2003-06-10  Simon Josefsson  <jas@extundo.com>
59421
59422         * modules/strchrnul: New file.
59423
59424 2003-06-10  Simon Josefsson  <jas@extundo.com>
59425
59426         * modules/argp: New file.
59427
59428 2003-06-10  Simon Josefsson  <jas@extundo.com>
59429
59430         * m4/strchrnul.m4: New file.
59431
59432 2003-06-10  Simon Josefsson  <jas@extundo.com>
59433
59434         * lib/strchrnul.h: New file.
59435         * lib/strchrnul.c: New file.
59436
59437 2003-06-10  Bruno Haible  <bruno@clisp.org>
59438
59439         * MODULES.html.sh (func_all_modules): Add strchrnul and argp.
59440
59441 2003-06-07  Karl Berry  <karl@gnu.org>
59442
59443         * config/config.{guess,sub}: update from prep.
59444
59445 2003-06-07  Jim Meyering  <jim@meyering.net>
59446
59447         * modules/strtod: Use $(...) notation, not @...@ for
59448         AC_REPLACE'd variables.
59449         * modules/localcharset: Likewise.
59450
59451 2003-06-07  Jim Meyering  <jim@meyering.net>
59452
59453         * lib/readtokens.h: Put `Free Software Foundation, Inc.'
59454         in place of my name in the copyright comment.
59455         Remove definition and uses of __P.
59456
59457         From coreutils.
59458         * lib/stat.c: Don't declare xmalloc explicitly.
59459         Instead, include "xalloc.h".
59460         * lib/readtokens.c (readtokens): Remove anachronistic casts of xmalloc,
59461         xrealloc, and xcalloc return values.
59462         * lib/xgetcwd.c (xgetcwd): Include "xgetcwd.h".
59463         Improve comment.
59464         * lib/xgetcwd.h: Remove definition/uses of PARAMS.
59465
59466 2003-06-07  Bruno Haible  <bruno@clisp.org>
59467
59468         * modules/poll (Makefile.am): Use explicit creation rule for poll.h, to
59469         avoid AC_CONFIG_LINKS.
59470         * modules/fnmatch (Makefile.am): Use explicit creation rule for
59471         fnmatch.h, to avoid AC_CONFIG_LINKS.
59472         * modules/alloca (Makefile.am): Make creation of alloca.h Ctrl-C safe.
59473
59474 2003-06-07  Bruno Haible  <bruno@clisp.org>
59475
59476         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH, gl_FUNC_FNMATCH_POSIX,
59477         gl_FUNC_FNMATCH_GNU): Set FNMATCH_H instead of invoking
59478         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
59479         directory.
59480         * m4/poll.m4 (gl_FUNC_POLL): Set POLL_H instead of invoking
59481         AC_CONFIG_LINKS. Needed to allow for a different name of the lib
59482         directory.
59483
59484 2003-06-06  Jim Meyering  <jim@meyering.net>
59485
59486         Merge from coreutils.
59487         * lib/same.c: (same_name): Declare *_basename locals to be `const'.
59488         Consolidate declarations and initializations of *_base* locals.
59489
59490         Merge from coreutils.
59491         This avoids a core dump on systems without GNU putenv,
59492         when running `env -u SOME_ALREADY_UNSET_VARIABLE'.
59493         * lib/putenv.c (__set_errno, LOCK, UNLOCK): Define.
59494         (unsetenv): New static function, from GNU libc.
59495         (rpl_putenv): Use it.
59496
59497         * lib/modechange.c: Remove trailing blanks.
59498
59499         Merge from coreutils.
59500         * lib/fsusage.c: Remove declaration of statfs.
59501         It conflicted with one from OSF/1 5.1 in <sys/mount.h>.
59502
59503         * lib/posixtm.c: Include <stdbool.h> unconditionally.
59504
59505 2003-06-06  Jim Meyering  <jim@meyering.net>
59506
59507         * lib/stdbool_.h: Renamed from stdbool.h.in.
59508
59509 2003-06-06  Jim Meyering  <jim@meyering.net>
59510             Bruno Haible  <bruno@clisp.org>
59511
59512         * modules/stdbool: Reflect renaming: stdbool.h.in -> stdbool_.h.
59513         Adjust Makefile.am snippet not to redirect directly to target.
59514         Use $(STDBOOL_H) notation, not @STDBOOL_H@ for AC_REPLACE'd variables.
59515
59516 2003-06-05  Paul Eggert  <eggert@twinsun.com>
59517
59518         * lib/mktime.c (__mktime_internal): When resolving a tm_isdst
59519         mismatch, look in future quarters as well as past.  This fixes a
59520         bug when processing fall-backwards gaps immediately after a long
59521         period of daylight-saving time.
59522
59523         * lib/mktime.c: Assume freestanding C89 or better.
59524         (HAVE_LIMITS_H): Remove.  Assume it's 1.
59525         (__P): Remove; not used.
59526         (CHAR_BIT, INT_MIN, INT_MAX): Remove; <limits.h> defines them.
59527         (mktime, not_equal_tm, print_tm, check_result,
59528         main): Use prototypes.  Use const * where appropriate.
59529         (main): Fix typo in testing code that uncovered by above changes.
59530         (Local Variables): Remove -DHAVE_LIMITS_H from compile-command.
59531
59532 2003-06-04  Paul Eggert  <eggert@twinsun.com>
59533
59534         * m4/human.m4 (gl_HUMAN): Require AM_STDBOOL_H.  Check for
59535         locale.h, localeconv.  This merges changes from coreutils.
59536
59537         * m4/mktime.m4 (AC_FUNC_MKTIME): New macro, taken from Autoconf CVS.
59538         It can be removed after the next Autoconf is released.
59539         * m4/exclude.m4 (gl_EXCLUDE): Don't check for sys/types.h; no loner
59540         needed.
59541
59542 2003-06-04  Paul Eggert  <eggert@twinsun.com>
59543
59544         * lib/mktime.c: Fix Debian bug 177940
59545         <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=177940>.
59546         (localtime_offset): Now long int, not time_t, because we want it
59547         to be guaranteed to be signed.  All uses changed.
59548         (__mktime_internal): If overflow would occur when adding offset,
59549         don't add it.
59550
59551         Merge 'human' changes from coreutils.  Rewrite to support
59552         locale-specific notations like thousands separators.
59553         * lib/human.c: Simplify authorship notice.
59554         Include human.h immediately after config.h.
59555         <sys/types.h>, <stdio.h>: Do not include; no longer needed.
59556         <limits.h>: Do not include, since human.h does.
59557         (SIZE_MAX, UINTMAX_MAX): New macros.
59558         <strings.h>: Include if HAVE_STRINGS_H, not if !HAVE_STRING_H.
59559         <locale.h>: Include if HAVE_LOCALE_H and HAVE_LOCALECONV.
59560         (HUMAN_READABLE_SUFFIX_LENGTH_MAX): New macro.
59561         (power_letter): Renamed from suffixes.
59562         (generate_suffix_backwards): Remove.
59563         (adjust_value): Now takes int style (because of human.h changes)
59564         and long double value (for greater precision on some platforms).
59565         (group_number): New function.
59566         (human_readable): Use it.  Use integer options, not enum.
59567         Put the options before the sizes in the arg list.
59568         Support all the new options.
59569         The old human_readable function has been removed;
59570         use inttostr.h instead.
59571         (human_readable, default_block_size, humblock):
59572         Use uintmax_t, not int, for block sizes.
59573         (human_readable_inexact, block_size_types): Remove.
59574         (block_size_opts): New constant.
59575         (human_options): Renamed from human_block_size, with new signature
59576         that allows block sizes up to UINTMAX_MAX.  All callers changed.
59577         * lib/human.h: Add copyright and authorship notice.
59578         Include <limits.h> and <stdbool.h> unconditionally.
59579         (PARAMS): Remove.  All uses removed.
59580         (LONGEST_HUMAN_READABLE): Add support for thousands separator.
59581         (enum human_inexact_style): Remove tag; now a nameless enum.
59582         (human_floor, human_ceiling, human_round_to_even): Now have
59583         values 2, 0, 1 rather than -1, 1, 0.
59584         (human_group_digits, human_suppress_point_zero, human_autoscale,
59585         human_base_1024, human_SI, human_B): New constants.
59586         (human_readable_inexact, human_block_size): Remove.
59587         (human_readable): Size args are now uintmax_t, not int.
59588         (human_options): New decl.
59589
59590         * lib/exclude.c: (new_exclude, add_exclude): Remove casts that are
59591         unnecessary now that we assume C89 or better.  This change
59592         imported from coreutils.
59593
59594         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
59595         arbitrarily.  This is the same patch as 2003-05-28, but it got lost
59596         in the 2003-05-30 sync from glibc.
59597
59598         .h files should stand alone, but we shouldn't include <sys/types.h>
59599         if we can get away with just <stddef.h>.
59600
59601         * lib/__fpending.h, addext.c, backupfile.c, exclude.c, getline.c,
59602         malloc.c, putenv.c, realloc.c, strcasecmp.c: Include <stddef.h>
59603         rather than <sys/types.h>, as we merely need size_t.
59604         * lib/dirname.h, memcoll.h, xalloc.h, xmemcoll.h: Include <stddef.h>,
59605         to get size_t.
59606         * lib/hash.h, linebuffer.h, readtokens.h, stdio-safer.h, version-etc.h:
59607         Include <stdio.h>, to get FILE.
59608         * lib/memcasecmp.c: Don't include <sys/types.h>, as we can assume
59609         memcasecmp.h has included <stddef.h> and all we need is size_t.
59610         * lib/memcoll.c: Include "memcoll.h", which gets us size_t and checks
59611         our interface, instead of including <sys/types.h>
59612
59613 2003-06-04  Paul Eggert  <eggert@twinsun.com>
59614
59615         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): Comment out for
59616         now, as glibc mktime is buggy on non-glibc systems.
59617
59618 2003-06-03  Karl Berry  <karl@gnu.org>
59619
59620         * config/config.sub: update from prep.
59621
59622 2003-06-02  Paul Eggert  <eggert@twinsun.com>
59623
59624         [from coreutils]
59625         Fix some minor time-related bugs with POSIX time arguments.
59626         Some valid time stamps were being rejected (notably -1, and
59627         time stamps before 1900 on 64-bit hosts).  And some invalid
59628         time stamps were being accepted, e.g. September 31.
59629
59630         * lib/posixtm.h (posixtime): Return bool instead of time_t, so
59631         that we can return (time_t) -1 successfully.
59632         * lib/posixtm.c: Likewise.
59633         [HAVE_STDBOOL_H]: Include <stdbool.h>.
59634         (bool, false, true) [!HAVE_STDBOOL_H]: New type.
59635         (t): Remove static var.
59636         (year, posix_time_parse): Now takes struct tm * arg to modify, instead
59637         of static var.  All uses changed.
59638         (year): Do not reject years before 1900; they can occur with
59639         64-bit time_t.
59640         (posix_time_parse): Do not check for out-of-range components;
59641         that is now the caller's responsibility, since our checks were
59642         only approximations.
59643         (posixtime): Use mktime to check for out-of-range components,
59644         since it knows them exactly.
59645         If mktime returns (time_t) -1, check whether an error actually occurred
59646         by invoking localtime on -1.
59647         (main) [TEST_POSIXTIME]: Check for input data errors, and report
59648         posixtime failures better.
59649         Improve the test data (in comments only).
59650
59651 2003-06-02  Karl Berry  <karl@gnu.org>
59652
59653         * config/mkinstalldirs (version): new variable.
59654         (--version): new option.
59655         (usage): improve message.
59656
59657 2003-05-30  Karl Berry  <karl@gnu.org>
59658
59659         * lib/mktime.c: update from libc.
59660
59661 2003-05-30  Bruno Haible  <bruno@clisp.org>
59662
59663         * modules/gettext: Add files m4/nls.m4 and m4/po.m4.
59664         * config/config.rpath: Upgrade to gettext-0.12.1.
59665
59666 2003-05-30  Bruno Haible  <bruno@clisp.org>
59667
59668         * m4/gettext.m4: Upgrade to gettext-0.12.1.
59669         * m4/nls.m4: New file, from gettext-0.12.1.
59670         * m4/po.m4: New file, from gettext-0.12.1.
59671         * m4/progtest.m4: Upgrade to gettext-0.12.1.
59672
59673 2003-05-30  Bruno Haible  <bruno@clisp.org>
59674
59675         * lib/config.charset: Upgrade to gettext-0.12.1 and libiconv-1.9.1.
59676         * lib/localcharset.h: Likewise.
59677         * lib/localcharset.c: Likewise.
59678
59679 2003-05-29  Karl Berry  <karl@gnu.org>
59680
59681         * config/config.rpath: update from gettext.
59682
59683 2003-05-28  Paul Eggert  <eggert@twinsun.com>
59684
59685         Assume the headers required for C89 freestanding compilers.
59686         * m4/backupfile.m4 (gl_BACKUPFILE): Don't check for limits.h.
59687         * m4/fsusage.m4 (gl_PREREQ_FSUSAGE_EXTRA): Likewise.
59688         * m4/human.m4 (gl_HUMAN): Likewise.
59689         * m4/pathmax.m4 (gl_PATHMAX): Likewise.
59690         * m4/rpmatch.m4 (gl_FUNC_RPMATCH): Likewise.
59691         * m4/userspec.m4 (gl_USERSPEC): Likewise.
59692         * m4/xreadlink.m4 (gl_XREADLINK): Likewise.
59693         * m4/xstrtol.m4 (gl_PREREQ_XSTRTOL): Likewise.
59694         * m4/quote.m4 (gl_QUOTE): Don't check for stddef.h.
59695
59696 2003-05-28  Paul Eggert  <eggert@twinsun.com>
59697
59698         Assume the headers required for C89 freestanding compilers.
59699         * lib/addext.c, lib/backupfile.c, lib/fsusage.c, lib/human.c,
59700         lib/pathmax.h, lib/rpmatch.c, lib/userspec.c, lib/xreadlink.c,
59701         lib/xstrtol.c: Include <limits.h> without checking for HAVE_LIMITS_H.
59702         * lib/backupfile.c, lib/fsusage.c, lib/hash.c, lib/human.c,
59703         lib/safe-read.c, lib/userspec.c, lib/xstrtol.c (CHAR_BIT): Don't
59704         define, since <limits.h> is guaranteed to do that.
59705         * lib/fatal.c: Include <stdarg.h> without checking for __STDC__.
59706         * lib/exclude.c: Include <stdbool.h> unconditionally.
59707         * lib/tempname.c: Include <stddef.h> unconditionally.
59708         * lib/hash.c: Include <limits.h>, since we no longer define CHAR_BIT.
59709         * lib/modechange.c, rpmatch.c (NULL): Don't define, since
59710         <stddef.h> does that.
59711         * lib/quote.c: Dont include <stddef.h> or <sys/types.h>; not needed.
59712         * lib/safe-read.c (INT_MAX): Don't define, since <limits.h> does that.
59713         * lib/safe-read.c (TYPE_MINIMUM, TYPE_MAXIMUM): Remove; no longer
59714         needed.
59715         * lib/xstrtol.c: Likewise.
59716         * lib/safe-read.c: Remove TYPE_SIGNED; no longer needed.
59717         * lib/savedir.c: Include <stddef.h> instead of defining NULL.
59718
59719         * lib/addext.c (addext): Use assignment rather than cast, to avoid
59720         warnings on some platforms.
59721
59722         * lib/mktime.c (__mktime_internal): Do not reject negative timestamps
59723         arbitrarily.
59724
59725 2003-05-26  Jim Meyering  <jim@meyering.net>
59726
59727         Merge in a change from coreutils:
59728         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Test the cache variable, not one
59729         that is guaranteed to be `no'.  Use `no_such_member' to indicate
59730         that condition, rather than `-1' which is slightly misleading.
59731         Change the name of the cache variable to have the gl_ prefix.
59732         Prompted by a patch from Richard Dawe for DJGPP.
59733
59734 2003-05-24  Karl Berry  <karl@gnu.org>
59735
59736         * config/config.guess: update from prep.
59737
59738 2003-05-22  Karl Berry  <karl@gnu.org>
59739
59740         * gnulib-tool (func_usage): =LIBRARY not =libRARY in help msg.
59741
59742 2003-05-20  Karl Berry  <karl@gnu.org>
59743
59744         * config/config.guess: update from prep.
59745
59746 2003-05-18  Karl Berry  <karl@gnu.org>
59747
59748         * config/srclistvars.sh (TEXMF): use TEXMFROOT instead, since TEXMF
59749         might actually be set by the user.
59750
59751         * config/depcomp, install-sh, mdate-sh: update from automake.
59752
59753 2003-05-17  Bruno Haible  <bruno@clisp.org>
59754
59755         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Fix a quoting bug leading to an
59756         invalid expansion for AC_EGREP_CPP.
59757         * m4/strtoimax.m4 (gl_FUNC_STRTOIMAX): Likewise.
59758         * m4/strtoumax.m4 (gl_FUNC_STRTOUMAX): Likewise.
59759         Suggested by Akim Demaille <akim@epita.fr> in
59760         http://mail.gnu.org/archive/html/bug-autoconf/2003-05/threads.html
59761
59762 2003-05-12  Jim Meyering  <jim@meyering.net>
59763
59764         * lib/strftime.c (my_strftime): Let the `-' (no-pad) flag affect
59765         the space-padded-by-default conversion specifiers, %e, %k, %l.
59766
59767 2003-05-12  Bruno Haible  <bruno@clisp.org>
59768
59769         * lib/linebreak.c (iconv_string_length): Don't return -1 just because
59770         the string is longer than 4 KB.
59771
59772 2003-05-11  Karl Berry  <karl@gnu.org>
59773
59774         * config/config.{guess,sub}: update from prep.
59775
59776 2003-05-09  Bruno Haible  <bruno@clisp.org>
59777
59778         * modules/error: Add m4/strerror_r.m4 to file list.
59779
59780 2003-05-03  Bruno Haible  <bruno@clisp.org>
59781
59782         Upgrade to Unicode-4.0.
59783         * lib/linebreak.c (nonspacing_table_data): Change width of U+00AD,
59784         U+0350..U+0357, U+035D..U+035F, U+0600..U+0603, U+0610..U+0615,
59785         U+0656..U+0658, U+0A01, U+0AE2..U+0AE3, U+0CBC, U+17B4..U+17B5,
59786         U+17DD, U+1920..U+1922, U+1927..U+192B, U+1932, U+1939..U+193B
59787         from 1 to 0. Change width of U+0CBF, U+0CC6, U+180E from 0 to 1.
59788         (uc_width): Change width of U+4DC0..U+4DFF from 2 to 1. Change width
59789         of U+2A6D7..U+2F7FF, U+2FA1E..U+2FFFD, U+30000..U+3FFFD from 1 to 2.
59790         Change width of U+E0100..U+E01EF from 1 to 0.
59791
59792 2003-04-25  Jim Meyering  <jim@meyering.net>
59793
59794         * lib/copy-file.c (copy_file_preserving): Declare buf_size to be
59795         of type size_t, not int.
59796
59797 2003-04-25  Bruno Haible  <bruno@clisp.org>
59798
59799         * lib/copy-file.c: Include <stddef.h>, for size_t.
59800
59801 2003-04-21  Paul Eggert  <eggert@twinsun.com>
59802
59803         * m4/error.m4 (gl_ERROR): Do not put under dynamic conditions some
59804         code which expansion is under static control.  Patch imported from
59805         Akim Demaille's patch to Bison; see
59806         <http://mail.gnu.org/archive/html/bison-patches/2003-03/msg00057.html>.
59807
59808 2003-04-14  Bruno Haible  <bruno@clisp.org>
59809
59810         * m4/error.m4 (jm_PREREQ_ERROR): Use AC_FUNC_VPRINTF.
59811
59812 2003-04-11  Jim Meyering  <jim@meyering.net>
59813
59814         Merge changes from Coreutils.
59815
59816         2003-03-22  Jim Meyering  <jim@meyering.net>
59817
59818         * lib/strftime.c (widen): Cast alloca return value to proper type.
59819
59820         2003-01-19  Ulrich Drepper  <drepper@redhat.com>
59821
59822         From GNU libc.
59823         * lib/strftime.c (my_strftime): Handle very large width
59824         specifications for numeric values correctly.  Improve checks for
59825         overflow.
59826
59827         2003-01-19  Jim Meyering  <jim@meyering.net>
59828
59829         * lib/strftime.c (widen) [COMPILE_WIDE]: Merge nearly-identical
59830         definitions.
59831         (nl_get_alt_digit) [! defined my_strftime]: Define.
59832         (my_strftime) [_NL_CURRENT]: Merge nearly-identical uses of
59833         _nl_get_alt_digit and _nl_get_walt_digit.
59834
59835         * lib/strftime.c (my_strftime): Merge in locale-related changes from
59836         libc. These changes have no effect outside of _LIBC.
59837
59838 2003-04-10  Bruno Haible  <bruno@clisp.org>
59839
59840         * modules/findprog: New file.
59841         * MODULES.html.sh (func_all_modules): Add it.
59842
59843 2003-04-10  Bruno Haible  <bruno@clisp.org>
59844
59845         * m4/findprog.m4: New file.
59846         * m4/eaccess.m4: New file.
59847
59848 2003-04-10  Bruno Haible  <bruno@clisp.org>
59849
59850         * lib/findprog.h: New file, from GNU gettext.
59851         * lib/findprog.c: New file, from GNU gettext.
59852
59853 2003-04-05  Jim Meyering  <jim@meyering.net>
59854
59855         Merge changes from Coreutils.
59856
59857         * lib/exclude.h (PARAMS): Remove definition and uses.
59858         * lib/exclude.c: Remove uses of `PARAMS'.
59859
59860         * lib/dirname.c [TEST_DIRNAME]: Update build instructions for test.
59861         Add test-cases for DOS filenames. Declare program_name.
59862         (main): Set up program_name.  Patch by Rich Dawe.
59863
59864         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Detect any
59865         error from mntctl.
59866         Use mntctl's return value to drive the entry-processing loop, since
59867         we can't rely on the value of the vmt_length member in the last
59868         entry.  On some systems doing so could result in exhausting
59869         virtual memory.  Based in part on a patch from Mike Jetzer.
59870
59871 2003-04-04  Bruno Haible  <bruno@clisp.org>
59872
59873         * modules/linebreak: New file.
59874         * MODULES.html.sh (func_all_modules): Add it.
59875
59876 2003-04-04  Bruno Haible  <bruno@clisp.org>
59877
59878         * m4/linebreak.m4: New file.
59879
59880 2003-04-04  Bruno Haible  <bruno@clisp.org>
59881
59882         * lib/linebreak.h: New file, from GNU gettext.
59883         * lib/linebreak.c: New file, from GNU gettext with slight
59884         modifications.
59885         * lib/lbrkprop.h: New file, from GNU gettext.
59886
59887 2003-04-03  Bruno Haible  <bruno@clisp.org>
59888
59889         * modules/utf8-ucs4: New file.
59890         * modules/utf16-ucs4: New file.
59891         * modules/ucs4-utf8: New file.
59892         * modules/ucs4-utf16: New file.
59893         * MODULES.html.sh (func_all_modules): Add them.
59894
59895 2003-04-03  Bruno Haible  <bruno@clisp.org>
59896
59897         * m4/utf-ucs4.m4: New file.
59898         * m4/ucs4-utf.m4: New file.
59899
59900 2003-04-03  Bruno Haible  <bruno@clisp.org>
59901
59902         * lib/utf8-ucs4.h: New file, from GNU gettext.
59903         * lib/utf16-ucs4.h: New file, from GNU gettext.
59904         * lib/ucs4-utf8.h: New file, from GNU gettext.
59905         * lib/ucs4-utf16.h: New file, from GNU gettext.
59906
59907 2003-04-02  Bruno Haible  <bruno@clisp.org>
59908
59909         * modules/binary-io: New file.
59910         * MODULES.html.sh (func_all_modules): Add it.
59911
59912 2003-04-02  Bruno Haible  <bruno@clisp.org>
59913
59914         * lib/binary-io.h: New file, from GNU gettext.
59915
59916 2003-04-01  Bruno Haible  <bruno@clisp.org>
59917
59918         * modules/pathname: New file.
59919         * MODULES.html.sh (func_all_modules): Add it.
59920
59921 2003-04-01  Bruno Haible  <bruno@clisp.org>
59922
59923         * lib/pathname.h: New file, from GNU gettext.
59924         * lib/concatpath.c: New file, from GNU gettext.
59925
59926 2003-03-30  Bruno Haible  <bruno@clisp.org>
59927
59928         * m4/copy-file.m4 (gl_COPY_FILE): Add check for chown().
59929
59930 2003-03-30  Bruno Haible  <bruno@clisp.org>
59931
59932         * lib/copy-file.c (copy_file_preserving): Don't set owner if the
59933         function chown() doesn't exist.
59934
59935 2003-03-28  Bruno Haible  <bruno@clisp.org>
59936
59937         * modules/copy-file: New file.
59938         * MODULES.html.sh (func_all_modules): Add it.
59939
59940 2003-03-28  Bruno Haible  <bruno@clisp.org>
59941
59942         * m4/copy-file.m4: New file.
59943
59944 2003-03-28  Bruno Haible  <bruno@clisp.org>
59945
59946         * lib/copy-file.h: New file, from GNU gettext.
59947         * lib/copy-file.c: New file, from GNU gettext.
59948
59949 2003-03-18  Jim Meyering  <jim@meyering.net>
59950
59951         * lib/quote.c (quote_n): Fix typo in comment.
59952
59953 2003-03-18  Bruno Haible  <bruno@clisp.org>
59954
59955         * m4/onceonly.m4: Use m4_defn instead of defn, for better error
59956         checking.
59957         * m4/onceonly_2_57.m4: Likewise.
59958
59959 2003-03-17  Bruno Haible  <bruno@clisp.org>
59960
59961         * m4/onceonly.m4: Require autoconf 2.54 or newer.
59962         (m4_quote): Remove macro.
59963         * m4/onceonly_2_57.m4: Require autoconf 2.54 or newer.
59964
59965 2003-03-14  Jim Meyering  <jim@meyering.net>
59966
59967         Merge changes from Coreutils.
59968         * lib/obstack.h (obstack_object_size): Declare temporary, __o,
59969         to be const, in order to avoid warnings.
59970         (obstack_room): Likewise.
59971         (obstack_empty_p): Likewise.
59972
59973 2003-03-14  Bruno Haible  <bruno@clisp.org>
59974
59975         * m4/onceonly_2_57.m4 (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE,
59976         AC_CHECK_DECLS_ONCE): Quote AC_FOREACH variable-expansions properly.
59977
59978 2003-03-13  Paul Eggert  <eggert@twinsun.com>
59979
59980         Merge changes from Bison.
59981         * lib/obstack.h: (__INT_TO_PTR) [__STDC__]: Cast result to
59982         (void *) to avoid diagnostic with native c89 on SGI IRIX 6.5
59983         when compiling Bison 1.875's `bitset bset = obstack_alloc
59984         (bobstack, bytes);'.  Problem reported by Nelson H. F. Beebe.
59985         * lib/hash.c: Include <stdbool.h> unconditionally.
59986
59987 2003-03-13  Paul Eggert  <eggert@twinsun.com>
59988
59989         * m4/onceonly.m4 (m4_quote): New macro.
59990         (AC_CHECK_HEADERS_ONCE, AC_CHECK_FUNCS_ONCE, AC_CHECK_DECLS_ONCE):
59991         Quote AC_FOREACH variable-expansions properly.
59992
59993 2003-03-13  Paul Eggert  <eggert@twinsun.com>
59994
59995         * doc/COPYING.DOC, fdl.texi: Sync with latest FSF version.
59996
59997 2003-03-09  Paul Eggert  <eggert@twinsun.com>
59998
59999         * lib/argmatch.c (EXIT_FAILURE): Define if the system doesn't.
60000         Reported by Bruce Becker; see:
60001         http://mail.gnu.org/archive/html/bug-bison/2003-03/msg00017.html
60002
60003 2003-03-03  Paul Eggert  <eggert@twinsun.com>
60004             Bruno Haible  <bruno@clisp.org>
60005
60006         * lib/mbswidth.h: Include <wchar.h>. Needed for UnixWare 7.1.1.
60007         Reported by John Hughes, see
60008         http://mail.gnu.org/archive/html/bug-bison/2003-02/msg00030.html
60009
60010 2003-02-20  Bruno Haible  <bruno@clisp.org>
60011
60012         * MODULES.html.sh (func_all_modules): Add poll.
60013
60014 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
60015
60016         * modules/poll: New file.
60017
60018 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
60019
60020         * lib/poll_.h: New file.
60021         * lib/poll.c: New file.
60022
60023 2003-02-19  Paolo Bonzini  <bonzini@gnu.org>
60024
60025         * m4/poll.m4: New file.
60026
60027 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
60028
60029         * modules/mathl: New file.
60030
60031 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
60032
60033         * lib/mathl.h: New file.
60034         * lib/acosl.c: New file.
60035         * lib/asinl.c: New file.
60036         * lib/atanl.c: New file.
60037         * lib/ceill.c: New file.
60038         * lib/cosl.c: New file.
60039         * lib/expl.c: New file.
60040         * lib/floorl.c: New file.
60041         * lib/frexpl.c: New file.
60042         * lib/ldexpl.c: New file.
60043         * lib/logl.c: New file.
60044         * lib/sincosl.c: New file.
60045         * lib/sinl.c: New file.
60046         * lib/sqrtl.c: New file.
60047         * lib/tanl.c: New file.
60048         * lib/trigl.c: New file.
60049         * lib/trigl.h: New file.
60050
60051 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
60052
60053         * m4/mathl.m4: New file.
60054
60055 2003-02-18  Bruno Haible  <bruno@clisp.org>
60056
60057         * MODULES.html.sh (func_all_modules): Add mathl.
60058
60059 2003-02-17  Bruno Haible  <bruno@clisp.org>
60060
60061         * modules/mkdtemp: New module.
60062         * MODULES.html.sh (func_all_modules): Add it.
60063
60064 2003-02-17  Bruno Haible  <bruno@clisp.org>
60065
60066         * m4/mkdtemp.m4: New file, from GNU gettext with modifications.
60067
60068 2003-02-17  Bruno Haible  <bruno@clisp.org>
60069
60070         * lib/mkdtemp.h: New file, from GNU gettext.
60071         * lib/mkdtemp.c: New file, from GNU gettext.
60072
60073 2003-02-02  Jim Meyering  <jim@meyering.net>
60074
60075         * m4/regex.m4 (jm_INCLUDED_REGEX): Detect broken re_search in
60076         e.g. glibc-2.2.93.
60077
60078 2003-01-31  Bruno Haible  <bruno@clisp.org>
60079
60080         * m4/rename.m4 (vb_FUNC_RENAME): Add a redirection from 'rename' to
60081         'rpl_rename'.
60082         * m4/strnlen.m4 (gl_FUNC_STRNLEN): Add a redirection from 'strnlen' to
60083         'rpl_strnlen'.
60084         * m4/strtod.m4 (gl_FUNC_STRTOD): Add a redirection from 'strtod' to
60085         'rpl_strtod'.
60086         * m4/utime.m4 (jm_FUNC_UTIME): Add a redirection from 'utime' to
60087         'rpl_utime'.
60088
60089 2003-01-31  Bruno Haible  <bruno@clisp.org>
60090
60091         * lib/rename.c: #undef rename before defining rpl_rename.
60092         * lib/strnlen.c: #undef strnlen, define rpl_strnlen instead of strnlen.
60093
60094 2003-01-30  Bruno Haible  <bruno@clisp.org>
60095
60096         * modules/vasnprintf, modules/vasprintf: New modules.
60097         * MODULES.html.sh (func_all_modules): Add them.
60098
60099 2003-01-30  Bruno Haible  <bruno@clisp.org>
60100
60101         * m4/signed.m4: New file, from GNU gettext.
60102         * m4/longdouble.m4: New file, from GNU gettext.
60103         * m4/wchar_t.m4: New file, from GNU gettext.
60104         * m4/wint_t.m4: New file, from GNU gettext.
60105         * m4/vasnprintf.m4: New file.
60106         * m4/vasprintf.m4: New file.
60107
60108 2003-01-30  Bruno Haible  <bruno@clisp.org>
60109
60110         * lib/printf-args.h: New file, from GNU gettext.
60111         * lib/printf-args.c: New file, from GNU gettext.
60112         * lib/printf-parse.h: New file, from GNU gettext.
60113         * lib/printf-parse.c: New file, from GNU gettext.
60114         * lib/vasnprintf.h: New file, from GNU gettext.
60115         * lib/vasnprintf.c: New file, from GNU gettext.
60116         * lib/asnprintf.c: New file, from GNU gettext.
60117         * lib/vasprintf.h: New file, from GNU gettext with modifications.
60118         * lib/vasprintf.c: New file, from GNU gettext.
60119         * lib/asprintf.c: New file, from GNU gettext.
60120
60121 2003-01-29  Bruno Haible  <bruno@clisp.org>
60122
60123         * modules/stpncpy: New module.
60124         * MODULES.html.sh (func_all_modules): Add it.
60125
60126 2003-01-29  Bruno Haible  <bruno@clisp.org>
60127
60128         * m4/stpncpy.m4: New file.
60129
60130 2003-01-29  Bruno Haible  <bruno@clisp.org>
60131
60132         * lib/stpncpy.h: New file, from GNU gettext with modifications.
60133         * lib/stpncpy.c: New file, from GNU gettext with modifications.
60134
60135 2003-01-28  Bruno Haible  <bruno@clisp.org>
60136
60137         * modules/c-ctype: New module.
60138         * MODULES.html.sh (func_all_modules): Add it.
60139
60140 2003-01-28  Bruno Haible  <bruno@clisp.org>
60141
60142         * lib/c-ctype.h: New file, from GNU gettext, with changes suggested by
60143         Paul Eggert.
60144         * lib/c-ctype.c: New file, from GNU gettext, with changes suggested by
60145         Paul Eggert.
60146
60147 2003-01-27  Bruno Haible  <bruno@clisp.org>
60148
60149         * modules/xsetenv: New module.
60150         * MODULES.html.sh (func_all_modules): Add it.
60151
60152 2003-01-27  Bruno Haible  <bruno@clisp.org>
60153
60154         * lib/xsetenv.h: New file, from GNU gettext.
60155         * lib/xsetenv.c: New file, from GNU gettext.
60156
60157 2003-01-23  Jim Meyering  <jim@meyering.net>
60158
60159         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Correct typo: s/-1/no/ that kept this
60160         from working on systems without dirfd (at least Irix and OSF1/Tru64).
60161
60162 2003-01-23  Bruno Haible  <bruno@clisp.org>
60163
60164         * modules/minmax: New module.
60165         * MODULES.html.sh (func_all_modules): Add it.
60166
60167 2003-01-23  Bruno Haible  <bruno@clisp.org>
60168
60169         * lib/minmax.h: New file, from GNU gettext, with comments from Paul
60170         Eggert.
60171
60172 2003-01-22  Bruno Haible  <bruno@clisp.org>
60173
60174         * modules/exit: New module.
60175         * MODULES.html.sh (func_all_modules): Add it.
60176
60177 2003-01-22  Bruno Haible  <bruno@clisp.org>
60178
60179         * lib/exit.h: New file, from GNU gettext.
60180
60181 2003-01-19  Bruno Haible  <bruno@clisp.org>
60182
60183         * gnulib-tool: Recognize option --extract-maintainer.
60184         (func_get_maintainer): New function.
60185         * modules/*: Add Maintainer entry.
60186
60187 2003-01-16  Jim Meyering  <jim@meyering.net>
60188
60189         * m4/regex.m4: The `regex' struct is both input and output.
60190         Initialize it before each use.  Patch by Tim Waugh.
60191
60192 2003-01-16  Bruno Haible  <bruno@clisp.org>
60193
60194         * MODULES.html.sh: Add a table of contents. Add the module name as
60195         leftmost column. Add hyperlinks.
60196
60197 2003-01-15  Bruno Haible  <bruno@clisp.org>
60198
60199         * m4/md5.m4 (gl_MD5): Require AC_C_INLINE.
60200
60201 2003-01-15  Bruno Haible  <bruno@clisp.org>
60202
60203         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): Also test the LL suffix.
60204         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Also test the ULL
60205         suffix.
60206
60207 2003-01-15  Bruno Haible  <bruno@clisp.org>
60208
60209         * m4/alloca.m4 (gl_FUNC_ALLOCA): Invoke AC_EGREP_CPP prerequisites.
60210
60211 2003-01-15  Bruno Haible  <bruno@clisp.org>
60212
60213         * lib/stpcpy.h (stpcpy): Use ANSI C function declarations.
60214         * lib/strcase.h (strcasecmp, strncasecmp): Likewise.
60215
60216 2003-01-14  Jim Meyering  <jim@meyering.net>
60217
60218         * lib/same.c (same_name): Tweak a comment.
60219
60220 2003-01-14  Bruno Haible  <bruno@clisp.org>
60221
60222         * lib/same.c (same_name): Reorder tests so as to avoid calling stat()
60223         when a string comparison is sufficient.
60224
60225 2003-01-14  Bruno Haible  <bruno@clisp.org>
60226
60227         * lib/readtokens.c (readtoken): Cast character to 'unsigned char', not
60228         'unsigned int'.
60229
60230 2003-01-14  Bruno Haible  <bruno@clisp.org>
60231
60232         * lib/hash-pjw.c: Add comment about low quality of this function.
60233
60234 2003-01-13  Bruno Haible  <bruno@clisp.org>
60235
60236         * modules/stpcpy: Distribute lib/stpcpy.h.
60237         * modules/setenv: Depend on alloca. Distribute lib/setenv.h.
60238
60239 2003-01-13  Bruno Haible  <bruno@clisp.org>
60240
60241         * modules/*: Add a description.
60242         * modules/strpbrk: Fix Makefile.am snippet.
60243         * modules/strtoimax: Fix dependencies.
60244         * modules/strtoumax: Likewise.
60245
60246 2003-01-13  Bruno Haible  <bruno@clisp.org>
60247
60248         * gnulib-tool (func_create_testdir): Substitute lib_OBJECTS.
60249         * modules/alloca (Makefile.am): All object files depend on alloca.h.
60250         * modules/stdbool (Makefile.am): All object files depend on stdbool.h.
60251
60252 2003-01-13  Bruno Haible  <bruno@clisp.org>
60253
60254         * gnulib-tool (func_create_testdir): Store config/* files in the main
60255         directory.
60256         * config.rpath: Move to ...
60257         * config/config.rpath: ... here.
60258         * modules/gettext: Contains config/config.rpath, not config.rpath.
60259         * modules/iconv: Likewise.
60260
60261 2003-01-12  Paul Eggert  <eggert@twinsun.com>
60262
60263         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
60264         to avoid collisions with libcurses and libreadline.
60265
60266         * m4/getstr.m4: Remove.
60267         * m4/getline.m4 (gl_PREREQ_GETLINE): Require AC_HEADER_STDC.
60268
60269 2003-01-12  Paul Eggert  <eggert@twinsun.com>
60270
60271         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
60272         to avoid collisions with libcurses and libreadline.
60273
60274         * lib/Makefile.am (libfetish_a_SOURCES): Remove getstr.c, getstr.h.
60275         * lib/getstr.h, getstr.c: Remove.
60276         * lib/getline.c: Include "getline.h", to check interface.
60277         Move body of old getstr.c here: this defines MIN_CHUNK and
60278         declares getdelim2, which is renamed from getstr.
60279         (getline, getdelim): Adjust to renaming of getstr -> getdelim2.
60280
60281         * lib/linebuffer.c (readlinebuffer): Renamed from readline.
60282         All uses changed.
60283         * lib/linebuffer.h: Likewise.
60284         (readline): Remove backward-compatibility macro.
60285
60286 2003-01-12  Paul Eggert  <eggert@twinsun.com>
60287
60288         Finish renaming getstr -> getdelim2 and readline -> readlinebuffer,
60289         to avoid collisions with libcurses and libreadline.
60290         * getstr: Remove.
60291         * MODULES.html.sh: Remove getstr.
60292         * modules/getline: Depend on unlocked-io, not getstr.
60293
60294 2003-01-12  Jim Meyering  <jim@meyering.net>
60295
60296         * lib/makepath.c: Don't test HAVE_ERRNO_H.  It's not necessary.
60297
60298 2003-01-10  Bruno Haible  <bruno@clisp.org>
60299
60300         * modules/alloca: Change Makefile.am requirements. Simplify Include
60301         requirements. Add lib/alloca_.h to file list.
60302
60303 2003-01-10  Bruno Haible  <bruno@clisp.org>
60304
60305         * m4/alloca.m4 (gl_FUNC_ALLOCA): Also define ALLOCA_H.
60306
60307 2003-01-10  Bruno Haible  <bruno@clisp.org>
60308
60309         * lib/alloca_.h: New file.
60310         * lib/getdate.y: Unconditionally include alloca.h.
60311         * lib/makepath.c: Likewise.
60312         * lib/setenv.c: Likewise.
60313         * lib/userspec.c: Likewise.
60314
60315 2003-01-09  Karl Berry  <karl@gnu.org>
60316
60317         * MODULES.html.sh: include `dirname $0` in PATH, to find
60318         gnulib-tool.
60319
60320 2003-01-09  Bruno Haible  <bruno@clisp.org>
60321
60322         * modules/stdbool: Change configure.ac, Makefile.am requirements.
60323         Simplify Include requirements. Add lib/stdbool.h.in to file list.
60324
60325 2003-01-09  Bruno Haible  <bruno@clisp.org>
60326
60327         * m4/stdbool.m4 (AM_STDBOOL_H): New macro.
60328
60329 2003-01-09  Bruno Haible  <bruno@clisp.org>
60330
60331         * lib/stdbool.h.in: New file.
60332
60333 2003-01-09  Bruno Haible  <bruno@clisp.org>
60334
60335         * gnulib-tool (func_all_modules): Ignore files ending in ~.
60336         * MODULES.html.sh: Likewise.
60337
60338 2003-01-08  Jim Meyering  <jim@meyering.net>
60339
60340         * lib/full-write.c: Undefine and define-away `const' after inclusion
60341         of errno.h, not before.  Suggestion from Bruno Haible.
60342
60343 2003-01-08  Bruno Haible  <bruno@clisp.org>
60344
60345         * modules/full-read: Depend on full-write.
60346
60347 2003-01-08  Bruno Haible  <bruno@clisp.org>
60348
60349         * lib/safe-read.c: Include specification header first, to ensure its
60350         selfcontainedness.
60351         * lib/full-write.c: Likewise.
60352
60353 2003-01-07  Jim Meyering  <jim@meyering.net>
60354
60355         * lib/full-write.c: Rework so that it may serve to define full_read,
60356         too.
60357         * lib/full-read.c: Simply #define FULL_READ and include full-write.c.
60358
60359 2003-01-07  Bruno Haible  <bruno@clisp.org>
60360
60361         * lib/strtoimax.c: Include <stdint.h> as an alternative to
60362         <inttypes.h>.
60363         * lib/xstrtol.h: Likewise.
60364         * lib/xstrtoimax.c: Likewise.
60365         * lib/xstrtoumax.c: Likewise.
60366         * lib/human.h: Likewise.
60367
60368         * lib/tempname.c: Include <inttypes.h> too. Avoids a compilation error
60369         on systems that have <inttypes.h> but not <stdint.h>.
60370
60371 2003-01-07  Bruno Haible  <bruno@clisp.org>
60372
60373         * MODULES.html.sh: Add copyright notice.
60374         (missed_files): Omit CVS directory entries.
60375         (func_module): Make it work with sed-3.02.
60376         * MODULES.txt: Remove file.
60377
60378 2003-01-06  Jim Meyering  <jim@meyering.net>
60379
60380         * lib/version-etc.c: Update year in translatable copyright string.
60381
60382 2003-01-03  Karl Berry  <karl@gnu.org>
60383
60384         * config/config.{guess,sub}: update from prep.
60385
60386 2003-01-02  Karl Berry  <karl@gnu.org>
60387
60388         * doc/COPYING.DOC: belatedly updated to 1.2.
60389
60390 2003-01-01  Karl Berry  <karl@gnu.org>
60391
60392         * gnulib-tool (func_verify_module): report module name $module in
60393         error message, not $1.
60394         * gnulib-tool (create-testdir): don't complain if destdir couldn't
60395         be created, only if it doesn't exist.
60396         * gnulib-tool (last_checkin_date): don't expand the $Date here.
60397
60398 2002-12-31  Paul Eggert  <eggert@twinsun.com>
60399
60400         * m4/memcoll.m4 (gl_MEMCOLL): Require AC_FUNC_MEMCMP.
60401
60402 2002-12-31  Paul Eggert  <eggert@twinsun.com>
60403
60404         * lib/memcoll.c (memcoll): Fall back on a simple algorithm using
60405         memcmp if strcoll doesn't work.
60406
60407 2002-12-31  Bruno Haible  <bruno@clisp.org>
60408
60409         * lib/utime.c (utime_null): No need to call ftruncate if the file was
60410         nonempty.
60411
60412 2002-12-31  Bruno Haible  <bruno@clisp.org>
60413
60414         * lib/memcoll.c (STRCOLL): New macro.
60415         (memcoll): Use it.
60416
60417 2002-12-31  Bruno Haible  <bruno@clisp.org>
60418
60419         * lib/localcharset.h: New file.
60420         * lib/localcharset.c: Include it.
60421         * lib/unicodeio.c: Likewise.
60422
60423 2002-12-31  Bruno Haible  <bruno@clisp.org>
60424
60425         * lib/getstr.h (getstr): Define, to avoid clash with libcurses.
60426         * lib/linebuffer.h (readline): Define, to avoid clash with libreadline.
60427
60428 2002-12-31  Bruno Haible  <bruno@clisp.org>
60429
60430         * lib/getline.h: Include <stddef.h>, for size_t.
60431
60432         * lib/unicodeio.h: Include <stddef.h>, for size_t.
60433         * lib/unicodeio.c: Don't include <stddef.h>.
60434
60435 2002-12-31  Bruno Haible  <bruno@clisp.org>
60436
60437         * lib/getdate.y (get_date): Test HAVE_STRUCT_TM_TM_ZONE, not
60438         HAVE_TM_ZONE.
60439
60440 2002-12-24  Karl Berry  <karl@gnu.org>
60441
60442         * config/config.guess: update from prep.
60443
60444 2002-12-24  Bruno Haible  <bruno@clisp.org>
60445
60446         General infrasructure.
60447         * m4/README: Rewritten.
60448         * m4/onceonly.m4: New file.
60449         * m4/onceonly_2_57.m4: New file.
60450
60451         Module atexit.
60452         * m4/atexit.m4: New file.
60453
60454         Module strtod.
60455         * m4/strtod.m4: New file.
60456
60457         Module strtol.
60458         * m4/strtol.m4: New file.
60459
60460         Module strtoul.
60461         * m4/strtoul.m4: New file.
60462
60463         Module memchr.
60464         * m4/memchr.m4: New file.
60465
60466         Module memcmp.
60467         * m4/memcmp.m4 (gl_PREREQ_MEMCMP): New macro.
60468         (jm_FUNC_MEMCMP): Invoke it.
60469
60470         Module memcpy.
60471         * m4/memcpy.m4: New file.
60472
60473         Module memmove.
60474         * m4/memmove.m4: New file.
60475
60476         Module memset.
60477         * m4/memset.m4: New file.
60478
60479         Module strcspn.
60480         * m4/strcspn.m4: New file.
60481
60482         Module strpbrk.
60483         * m4/strpbrk.m4: New file.
60484
60485         Module strstr.
60486         * m4/strstr.m4: New file.
60487
60488         Module strerror.
60489         * m4/strerror.m4: New file.
60490
60491         Module mktime.
60492         * m4/mktime.m4: Renamed from jm-mktime.m4.
60493         (gl_PREREQ_MKTIME): New macro.
60494         (gl_FUNC_MKTIME): Renamed from jm_FUNC_MKTIME. Invoke gl_PREREQ_MKTIME.
60495
60496         Module malloc.
60497         * m4/malloc.m4 (gl_PREREQ_MALLOC): New macro.
60498         (jm_FUNC_MALLOC): Use AC_FUNC_MALLOC. Invoke gl_PREREQ_MALLOC.
60499         Don't define HAVE_DONE_WORKING_MALLOC_CHECK, since nothing uses it.
60500
60501         Module realloc.
60502         * m4/realloc.m4 (gl_PREREQ_REALLOC): New macro.
60503         (jm_FUNC_REALLOC): Use AC_FUNC_REALLOC. Invoke gl_PREREQ_REALLOC.
60504         Don't define HAVE_DONE_WORKING_REALLOC_CHECK, since nothing uses it.
60505
60506         Module strftime.
60507         * m4/tm_gmtoff.m4: New file, extracted from strftime.m4.
60508         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Use AC_FUNC_STRFTIME.
60509         Don't test for bcopy (we are not emacs). Invoke AC_TYPE_MBSTATE_T and
60510         gl_TM_GMTOFF.
60511         (_jm_STRFTIME_PREREQS, jm_FUNC_GNU_STRFTIME): Use onceonly macros.
60512
60513         Module xalloc.
60514         * m4/xalloc.m4: New file.
60515
60516         Module alloca.
60517         * m4/alloca.m4: New file.
60518
60519         Module putenv.
60520         * m4/putenv.m4 (gl_PREREQ_PUTENV): New macro.
60521         (jm_FUNC_PUTENV): Invoke it.
60522
60523         Module setenv.
60524         * m4/setenv.m4 (gt_FUNC_SETENV): New macro.
60525         (gt_CHECK_VAR_DECL): Fix quoting error that led to infinite loop in m4
60526         when invoked twice.
60527         (gt_PREREQ_SETENV, gt_PREREQ_UNSETENV): New macros, replacing old
60528         gt_FUNC_SETENV.
60529
60530         Module memrchr.
60531         * m4/memrchr.m4: New file.
60532
60533         Module stpcpy.
60534         * m4/stpcpy.m4: New file.
60535
60536         Module strcase.
60537         * m4/strcase.m4: New file.
60538
60539         Module strdup.
60540         * m4/strdup.m4: New file.
60541
60542         Module strnlen.
60543         * m4/strnlen.m4: New file.
60544
60545         Module strndup.
60546         * m4/strndup.m4: New file.
60547
60548         Module xstrtod.
60549         * m4/xstrtod.m4: New file.
60550
60551         Module xstrtol.
60552         * m4/xstrtol.m4: New file.
60553
60554         Module getdate.
60555         * m4/getdate.m4: New file.
60556
60557         Module unlocked-io.
60558         * m4/unlocked-io.m4: Renamed from jm-glibc-io.m4.
60559         (jm_FUNC_GLIBC_UNLOCKED_IO): Invoke AC_GNU_SOURCE. Use onceonly macros.
60560         * m4/jm-glibc-io.m4n: Remove file.
60561
60562         Module long-options.
60563         * m4/long-options.m4: New file.
60564
60565         Module md5.
60566         * m4/md5.m4: New file.
60567
60568         Module sha.
60569         * m4/sha.m4: New file.
60570
60571         Module getstr.
60572         * m4/getstr.m4: New file.
60573
60574         Module getline.
60575         * m4/getline.m4 (gl_PREREQ_GETLINE): New macro.
60576         (AM_FUNC_GETLINE): Invoke AC_GNU_SOURCE. Use <stdlib.h>, not
60577         <sys/types.h>, for size_t. Use the function name gnu_getline, not
60578         simply getline. Infoke gl_PREREQ_GETLINE.
60579
60580         Module obstack.
60581         * m4/obstack.m4: New file.
60582
60583         Module hash.
60584         * m4/hash.m4: New file.
60585
60586         Module readtokens.
60587         * m4/readtokens.m4: New file.
60588
60589         Module strverscmp.
60590         * m4/strverscmp.m4: New file.
60591
60592         Module stdbool.
60593         * m4/stdbool.m4 (AC_HEADER_STDBOOL): Add test for _Bool. Needed for
60594         OSF/1.
60595
60596         Module strtoll.
60597         * m4/strtoll.m4: New file.
60598
60599         Module strtoull.
60600         * m4/strtoull.m4: New file.
60601
60602         Module strtoimax.
60603         * m4/strtoimax.m4: New file.
60604
60605         Module strtoumax.
60606         * m4/strtoumax.m4: New file.
60607
60608         Module xstrtoimax.
60609         * m4/xstrtoimax.m4 (jm_XSTRTOIMAX): Renamed from
60610         jm_AC_PREREQ_XSTRTOIMAX.
60611         Moved the strtol prerequisites to strtol.m4.
60612         Moved the strtoll prerequisites to strtoll.m4.
60613         Moved the strtoimax prerequisites to strtoimax.m4.
60614
60615         Module xstrtoumax.
60616         * m4/xstrtoumax.m4 (jm_XSTRTOUMAX): Renamed from
60617         jm_AC_PREREQ_XSTRTOUMAX.
60618         Moved the strtoul prerequisites to strtoul.m4.
60619         Moved the strtoull prerequisites to strtoull.m4.
60620         Moved the strtoumax prerequisites to strtoumax.m4.
60621
60622         Module chown.
60623         * m4/chown.m4 (gl_PREREQ_CHOWN): New macro.
60624         (jm_FUNC_CHOWN): Use AC_FUNC_CHOWN. Invoke gl_PREREQ_CHOWN.
60625
60626         Module dup2.
60627         * m4/dup2.m4: New file.
60628
60629         Module ftruncate.
60630         * m4/ftruncate.m4 (gl_PREREQ_FTRUNCATE): New macro.
60631         (jm_FUNC_FTRUNCATE): Use AC_REPLACE_FUNCS. Invoke gl_PREREQ_FTRUNCATE.
60632
60633         Module getgroups.
60634         * m4/getgroups.m4 (gl_PREREQ_GETGROUPS): New macro.
60635         (jm_FUNC_GETGROUPS): Use AC_FUNC_GETGROUPS. Invoke gl_PREREQ_GETGROUPS.
60636
60637         Module gettimeofday.
60638         * m4/gettimeofday.m4 (gl_PREREQ_GETTIMEOFDAY): New macro.
60639         (AC_FUNC_GETTIMEOFDAY_CLOBBER): Use onceonly macros. Invoke
60640         gl_PREREQ_GETTIMEOFDAY.
60641
60642         Module mkdir.
60643         * m4/mkdir-slash.m4 (gl_PREREQ_MKDIR): New macro.
60644         (UTILS_FUNC_MKDIR_TRAILING_SLASH): Invoke gl_PREREQ_MKDIR.
60645
60646         Module mkstemp.
60647         * m4/mkstemp.m4 (gl_PREREQ_MKSTEMP): New macro.
60648         (jm_PREREQ_TEMPNAME): New macro, from prereq.m4. Also invoke
60649         jm_AC_TYPE_UINTMAX_T.
60650         (UTILS_FUNC_MKSTEMP): Invoke gl_PREREQ_MKSTEMP and jm_PREREQ_TEMPNAME.
60651
60652         Module stat.
60653         * m4/stat.m4 (gl_PREREQ_STAT): New macro.
60654         (jm_FUNC_STAT): Use AC_FUNC_STAT. Invoke gl_PREREQ_STAT.
60655
60656         Module lstat.
60657         * m4/lstat.m4 (gl_PREREQ_LSTAT): New macro.
60658         (jm_FUNC_LSTAT): Use AC_FUNC_LSTAT. Invoke gl_PREREQ_LSTAT.
60659
60660         Module timespec.
60661         * m4/timespec.m4 (gl_TIMESPEC): New macro.
60662         (jm_CHECK_TYPE_STRUCT_TIMESPEC): Add check for <sys/time.h>.
60663         * m4/st_mtim.m4: Indentation.
60664
60665         Module nanosleep.
60666         * m4/nanosleep.m4 (gl_PREREQ_NANOSLEEP): New macro.
60667         (jm_FUNC_NANOSLEEP): Add check for <sys/time.h>. Invoke
60668         gl_PREREQ_NANOSLEEP.
60669
60670         Module regex.
60671         * m4/regex.m4 (jm_PREREQ_REGEX): New macro.
60672         (jm_INCLUDED_REGEX): Invoke jm_PREREQ_REGEX.
60673         (gl_REGEX): New macro.
60674
60675         Module rename.
60676         * m4/rename.m4 (gl_PREREQ_RENAME): New macro.
60677         (vb_FUNC_RENAME): Invoke gl_PREREQ_RENAME.
60678
60679         Module rmdir.
60680         * m4/rmdir.m4: New file.
60681
60682         Module utime.
60683         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Use onceonly macros.
60684         * m4/utime.m4 (gl_PREREQ_UTIME): New macro.
60685         (jm_FUNC_UTIME): Invoke gl_PREREQ_UTIME.
60686
60687         Module dirname.
60688         * m4/dirname.m4: New file.
60689
60690         Module getopt.
60691         * m4/getopt.m4: New file.
60692
60693         Module unistd-safer.
60694         * m4/unistd-safer.m4: New file.
60695
60696         Module fnmatch.
60697         * m4/fnmatch.m4 (_AC_FUNC_FNMATCH_IF): Include <stdlib.h>, for exit()
60698         declaration.
60699         (gl_PREREQ_FNMATCH_EXTRA): New macro.
60700         (gl_FUNC_FNMATCH_POSIX): New macro.
60701         (gl_FUNC_FNMATCH_GNU): Renamed from AC_FUNC_FNMATCH_GNU. Invoke
60702         gl_PREREQ_FNMATCH_EXTRA. Use the function name gnu_fnmatch, not
60703         simply fnmatch.
60704
60705         Module exclude.
60706         * m4/exclude.m4: New file.
60707
60708         Module human.
60709         * m4/human.m4: New file.
60710
60711         Module acl.
60712         * m4/acl.m4: Nop.
60713
60714         Module backupfile.
60715         * m4/backupfile.m4: New file.
60716         * m4/d-ino.m4: Indentation.
60717
60718         Module fsusage.
60719         * m4/fsusage.m4 (gl_FSUSAGE): New macro.
60720         (jm_STATFS_TRUNCATES): New macro, from coreutils-4.5.4/configure.ac.
60721         (gl_PREREQ_FSUSAGE_EXTRA): New macro.
60722
60723         Module dirfd.
60724         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Invoke some AC_EGREP_CPP
60725         requirements.
60726
60727         Module euidaccess.
60728         * m4/euidaccess.m4: New file.
60729
60730         Module file-type.
60731         * m4/file-type.m4: New file.
60732
60733         Module fileblocks.
60734         * m4/fileblocks.m4: New file.
60735
60736         Module filemode.
60737         * m4/filemode.m4: New file.
60738
60739         Module isdir.
60740         * m4/isdir.m4: New file.
60741
60742         Module lchown.
60743         * m4/lchown.m4 (gl_PREREQ_LCHOWN): New macro.
60744         (jm_FUNC_LCHOWN): Invoke gl_PREREQ_LCHOWN.
60745
60746         Module makepath.
60747         * m4/makepath.m4: New file.
60748
60749         Module modechange.
60750         * m4/modechange.m4: New file.
60751
60752         Module mountlist.
60753         * m4/mountlist.m4: New file.
60754         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Use onceonly macros.
60755         Indentation.
60756
60757         Module path-concat.
60758         * m4/path-concat.m4: New file.
60759
60760         Module pathmax.
60761         * m4/pathmax.m4: New file.
60762
60763         Module same.
60764         * m4/same.m4: New file.
60765
60766         Module save-cwd.
60767         * m4/save-cwd.m4: New file.
60768
60769         Module savedir.
60770         * m4/savedir.m4: New file.
60771
60772         Module xgetcwd.
60773         * m4/xgetcwd.m4: New file.
60774         * m4/getcwd.m4 (AC_FUNC_GETCWD_NULL): Use onceonly macros.
60775
60776         Module xreadlink.
60777         * m4/xreadlink.m4: New file.
60778
60779         Module safe-read.
60780         * m4/safe-read.m4: New file.
60781
60782         Module safe-write.
60783         * m4/safe-write.m4: New file.
60784
60785         Module closeout.
60786         * m4/closeout.m4: New file.
60787
60788         Module stdio-safer.
60789         * m4/stdio-safer.m4: New file.
60790
60791         Module getpass.
60792         * m4/getpass.m4: New file.
60793
60794         Module getugroups.
60795         * m4/getugroups.m4: New file.
60796
60797         Module group-member.
60798         * m4/group-member.m4 (gl_PREREQ_GROUP_MEMBER): New macro.
60799         (jm_FUNC_GROUP_MEMBER): Invoke AC_GNU_SOURCE, gl_PREREQ_GROUP_MEMBER.
60800
60801         Module idcache.
60802         * m4/idcache.m4: New file.
60803
60804         Module userspec.
60805         * m4/userspec.m4: New file.
60806
60807         Module gettime.
60808         * m4/clock_time.m4: New file.
60809         * m4/gettime.m4: New file.
60810
60811         Module settime.
60812         * m4/settime.m4: New file.
60813
60814         Module posixtm.
60815         * m4/posixtm.m4: New file.
60816
60817         Module gethostname.
60818         * m4/gethostname.m4: New file.
60819
60820         Module canon-host.
60821         * m4/canon-host.m4: New file.
60822
60823         Module gettext.
60824         * m4/codeset.m4: New file, from gettext-0.11.5.
60825         * m4/gettext.m4: New file, from gettext-0.11.5.
60826         * m4/glibc21.m4: New file, from gettext-0.11.5.
60827         * m4/iconv.m4: New file, from gettext-0.11.5.
60828         * m4/intdiv0.m4: New file, from gettext-0.11.5.
60829         * m4/inttypes-pri.m4: New file, from gettext-0.11.5.
60830         * m4/inttypes.m4: New file, from gettext-0.11.5.
60831         * m4/inttypes_h.m4: New file, from gettext-0.11.5 with modifications.
60832         * m4/isc-posix.m4: New file, from gettext-0.11.5.
60833         * m4/lcmessage.m4: New file, from gettext-0.11.5.
60834         * m4/lib-ld.m4: New file, from gettext-0.11.5.
60835         * m4/lib-link.m4: New file, from gettext-0.11.5.
60836         * m4/lib-prefix.m4: New file, from gettext-0.11.5.
60837         * m4/progtest.m4: New file, from gettext-0.11.5.
60838         * m4/stdint_h.m4: New file, from gettext-0.11.5 with modifications.
60839         * m4/uintmax_t.m4: New file, from gettext-0.11.5 with modifications.
60840         * m4/ulonglong.m4: New file, from gettext-0.11.5 with modifications.
60841
60842         Module localcharset.
60843         * m4/localcharset.m4: New file.
60844
60845         Module hard-locale.
60846         * m4/hard-locale.m4: New file.
60847
60848         Module mbswidth.
60849         * m4/mbswidth.m4 (gl_MBSWIDTH): Renamed from jm_PREREQ_MBSWIDTH. Use
60850         onceonly macros.
60851         * m4/mbrtowc.m4: Add comment.
60852
60853         Module memcasecmp.
60854         * m4/memcasecmp.m4: New file.
60855
60856         Module memcoll.
60857         * m4/memcoll.m4: New file.
60858
60859         Module unicodeio.
60860         * m4/unicodeio.m4: New file.
60861
60862         Module rpmatch.
60863         * m4/rpmatch.m4: New file.
60864
60865         Module yesno.
60866         * m4/yesno.m4: New file.
60867
60868         Module exitfail.
60869         * m4/exitfail.m4: New file.
60870
60871         Module c-stack.
60872         * m4/c-stack.m4 (gl_C_STACK): New macro.
60873         (jm_PREREQ_C_STACK): Check for <sys/time.h>. Use onceonly macros.
60874
60875         Module error.
60876         * m4/error.m4 (gl_ERROR): New macro.
60877         (jm_PREREQ_ERROR): Use onceonly macros.
60878
60879         Module fatal.
60880         * m4/fatal.m4: New file.
60881
60882         Module getloadavg.
60883         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Use onceonly macros.
60884         (gl_FUNC_GETLOADAVG, gl_PREREQ_GETLOADAVG): New macros.
60885
60886         Module getpagesize.
60887         * m4/getpagesize.m4: New file.
60888
60889         Module getusershell.
60890         * m4/getusershell.m4: New file.
60891
60892         Module physmem.
60893         * m4/physmem.m4: New file.
60894
60895         Module posixver.
60896         * m4/posixver.m4: New file.
60897
60898         Module quotearg.
60899         * m4/quotearg.m4: New file.
60900
60901         Module quote.
60902         * m4/quote.m4: New file.
60903
60904         Module readutmp.
60905         * m4/readutmp.m4: New file, based on jm_PREREQ_READUTMP from prereq.m4.
60906
60907         Module sig2str.
60908         * m4/sig2str.m4: New file.
60909
60910         Other.
60911         * m4/longlong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Remove, moved to
60912         ulonglong.m4.
60913         * m4/intmax_t.m4: New file.
60914         * m4/d-type.m4: Indentation.
60915         * m4/jm-macros.m4: Update.
60916         * m4/prereq.m4 (jm_PREREQ): Update.
60917         (jm_PREREQ_ADDEXT): Remove, obsoleted by backupfile.m4.
60918         (jm_PREREQ_CANON_HOST): Remove, obsoleted by canon-host.m4.
60919         (jm_PREREQ_DIRNAME): Remove, obsoleted by dirname.m4.
60920         (jm_PREREQ_EXCLUDE): Remove, obsoleted by exclude.m4.
60921         (jm_PREREQ_GETPAGESIZE): Remove, obsoleted by getpagesize.m4.
60922         (jm_PREREQ_HARD_LOCALE): Remove, obsoleted by hard-locale.m4.
60923         (jm_PREREQ_HASH): Remove, obsoleted by hash.m4.
60924         (jm_PREREQ_HUMAN): Remove, obsoleted by human.m4.
60925         (jm_PREREQ_MEMCHR): Remove, obsoleted by memchr.m4.
60926         (jm_PREREQ_PHYSMEM): Remove, obsoleted by physmem.m4.
60927         (jm_PREREQ_POSIXVER): Remove, obsoleted by posixver.m4.
60928         (jm_PREREQ_QUOTEARG): Remove, obsoleted by quotearg.m4.
60929         (jm_PREREQ_READUTMP): Remove, obsoleted by readutmp.m4.
60930         (jm_PREREQ_REGEX): Remove, obsoleted by regex.m4.
60931         (jm_PREREQ_STRNLEN): Remove, obsoleted by strnlen.m4.
60932         (jm_PREREQ_TEMPNAME): Remove, obsoleted by mkstemp.m4.
60933         (jm_PREREQ_XGETCWD): Remove, obsoleted by xgetcwd.m4.
60934         (jm_PREREQ_XREADLINK): Remove, obsoleted by xreadlink.m4.
60935         * m4/readdir.m4 (jm_FUNC_READDIR): Use onceonly macros.
60936
60937 2002-12-24  Bruno Haible  <bruno@clisp.org>
60938
60939         * MODULES.txt: Update according to m4/ changes.
60940
60941         Module gettext.
60942         * config.rpath: New file, from gettext-0.11.5.
60943
60944         * modules/*: New module descriptions.
60945         * gnulib-tool: New file.
60946         * MODULES.html.sh: New file.
60947
60948 2002-12-21  Karl Berry  <karl@gnu.org>
60949
60950         * doc/fdl.texi: update to version 1.2.
60951
60952 2002-12-19  Karl Berry  <karl@gnu.org>
60953
60954         * config/config.guess: update from prep.
60955
60956 2002-12-18  Bruno Haible  <bruno@clisp.org>
60957
60958         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't test for localtime_r.
60959         * m4/jm-mktime.m4 (jm_FUNC_MKTIME): Likewise.
60960
60961 2002-12-17  Bruno Haible  <bruno@clisp.org>
60962
60963         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Remove checks for limits.h,
60964         stdlib.h, string.h.
60965
60966 2002-12-17  Bruno Haible  <bruno@clisp.org>
60967
60968         * lib/canon-host.c (strdup): Remove unused declaration.
60969
60970         * lib/fsusage.c: Include full_read.h.
60971         (get_fs_usage): Use full_read instead of safe_read.
60972
60973         * lib/utime.c (utime_null): Use SAFE_READ_ERROR.
60974
60975 2002-12-12  Karl Berry  <karl@gnu.org>
60976
60977         * config/config.guess: update from prep.
60978
60979 2002-12-11  Bruno Haible  <bruno@clisp.org>
60980
60981         * m4/setenv.m4: New file, from gettext-0.11.5.
60982
60983 2002-12-11  Bruno Haible  <bruno@clisp.org>
60984
60985         * lib/setenv.h: Rewritten to cope with systems that have setenv() but
60986         not unsetenv().
60987         * lib/setenv.c, unsetenv.c: Taken from glibc-2.2.4 with the following
60988         modifications:
60989
60990         2002-12-11  Bruno Haible  <bruno@clisp.org>
60991
60992                 * setenv.c (alloca): Fall back to malloc.
60993                 (freea): New macro.
60994                 (setenv): Use freea() to free memory allocated with alloca().
60995
60996         2002-11-13  Bruno Haible  <bruno@clisp.org>
60997
60998                 * setenv.c (compar_fn_t, __add_to_environ, setenv): Use ANSI C
60999                 function declarations.
61000                 * unsetenv.c (unsetenv): Likewise.
61001
61002         2002-03-04  Bruno Haible  <bruno@clisp.org>
61003
61004                 Portability to AIX 4.3.3.
61005                 * unsetenv.c: New file, extracted from setenv.c.
61006                 * setenv.c: Move the unsetenv() function to unsetenv.c.
61007
61008         2001-12-20  Bruno Haible  <bruno@clisp.org>
61009
61010                 * setenv.c (__add_to_environ): Don't call realloc(NULL,...),
61011                 use malloc instead. For SunOS 4.
61012
61013         2001-12-11  Bruno Haible  <bruno@clisp.org>
61014
61015                 * setenv.c: Declare alloca.
61016                 (compar_fn_t): New typedef.
61017                 (KNOWN_VALUE, STORE_VALUE): Use it.
61018
61019         * lib/Makefile.am (libfetish_a_SOURCES): Add setenv.c, unsetenv.c,
61020         setenv.h.
61021
61022 2002-12-10  Paul Eggert  <eggert@twinsun.com>
61023
61024         Port exclude.c and exclude.h to more non-GNU systems, e.g. Solaris 7.
61025         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE, EXCLUDE_WILDCARDS):
61026         Choose values that are less likely to collide with system fnmatch
61027         options.
61028         * lib/exclude.c (FNM_CASEFOLD, FNM_LEADING_DIR): Define to 0 if not
61029         defined (e.g., a pure POSIX system).
61030         (EXCLUDE_macros_do_not_collide_with_FNM_macros): Use FNM_PATHNAME
61031         instead of FNM_FILE_NAME, for compatibility with pure POSIX sytems.
61032
61033 2002-12-06  Paul Eggert  <eggert@twinsun.com>
61034
61035         Undo the 2001-07-02 change for jm-glibc-io, as it was too much of
61036         a pain in practice to deal with generated m4 files.  This change
61037         goes together with the 2002-12-04 unlocked-io.h change in ../lib.
61038
61039         * m4/Makefile.am.in (Makefile.am): Don't mention jm-glibc-io.m4n
61040         and jm-glibc-io.m4, as they are no longer a special case.
61041         * m4/jm-glibc-io.m4: Rename from jm-glibc-io.m4n, and remove the
61042         kludge and the auto-generation stuff.  Check only whether the
61043         functions are declared, not whether they exist, since older hosts
61044         that don't declare the functions can't use the optimization anyway.
61045
61046 2002-12-06  Jim Meyering  <jim@meyering.net>
61047
61048         * lib/error.c: Be consistent: change `#ifndef _LIBC' to `#if !_LIBC'.
61049
61050         Merge in changes from libc's misc/error.c, in preparation
61051         for the merge of gnulib's changes back into libc.
61052
61053         * lib/error.c (_): Define only if not already defined.
61054         Move definition to follow all #include directives.
61055         Include unlocked-io.h only if !_LIBC.
61056         [_LIBC]: Include <libio/libioP.h>.
61057         [USE_IN_LIBIO]: Include <libio/iolibio.h>
61058         (fflush): Tweak definition to use INTUSE.
61059         (putc): Define.
61060
61061 2002-12-05  Paul Eggert  <eggert@twinsun.com>
61062
61063         * lib/alloca.c [defined emacs]: Include "lisp.h".
61064         (xalloc_die) [defined emacs]: New macro.
61065         (free) [defined emacs && defined EMACS_FREE]: Define to EMACS_FREE.
61066         [! defined emacs]: Include <xalloc.h>.
61067         (POINTER_TYPE) [!defined POINTER_TYPE]: New macro.
61068         (pointer): Typedef to POINTER_TYPE *.
61069         (malloc): Remove decl; we now always use xmalloc.
61070         (alloca): Use old-style definition, since Emacs needs this.
61071         Check for arithmetic overflow when computing combined size.
61072
61073 2002-12-04  Paul Eggert  <eggert@twinsun.com>
61074
61075         Do not generate unlocked-io.h automatically, since it's easier to
61076         maintain it by hand.
61077
61078         * lib/unlocked-io.h: New file, from GNU diffutils,
61079         but with proper copyright notice and attribution.
61080         * lib/gen-uio: Remove.
61081         * lib/Makefile.am: Add copyright notice.
61082         (libfetish_a_SOURCES): Add unlocked-io.h.
61083         (BUILT_SOURCES, all-local): Remove unlocked-io.h.
61084         (DISTCLEANFILES, io_functions): Remove macros.
61085         (EXTRA_DIST): Remove gen_uio.
61086         (unlocked-io.h): Remove rule.
61087
61088 2002-12-04  Jim Meyering  <jim@meyering.net>
61089
61090         Reflect the fact that stat.c and lstat.c are no longer generated.
61091         * lib/Makefile.am (BUILT_SOURCES): Remove stat.c and lstat.c.
61092         (DISTCLEANFILES): Likewise.
61093         (EXTRA_DIST): Likewise.
61094         (all_local): Don't depend on stat.c or lstat.c.
61095         (stat.c, lstat.c): Remove rules.
61096         (EXTRA_DIST): Remove xstat.in.
61097
61098         * lib/xstat.in: Remove file.  Contents moved into stat.c.
61099         * lib/stat.c: New file.  Contents mostly from xstat.in.
61100         * lib/stat.c: Rework so that it may serve to define rpl_lstat, too.
61101         * lib/lstat.c: New file. Simply #define LSTAT and include stat.c.
61102
61103         * lib/safe-read.c: Rework so that it may serve to define safe_write,
61104         too.
61105         * lib/safe-write.c: Simply #define SAFE_WRITE and include safe-read.c.
61106
61107 2002-12-03  Jim Meyering  <jim@meyering.net>
61108
61109         * lib/safe-read.c, safe-write.c: Change variable names and comments,
61110         but not semantics, to minimize the differences between these two files.
61111         (safe_read): Change comment to mention SAFE_READ_ERROR.
61112
61113         * lib/safe-read.c (IS_EINTR): Define.
61114         (safe_read): Use IS_EINTR in place of in-function cpp directives.
61115
61116 2002-12-02  Jim Meyering  <jim@meyering.net>
61117
61118         * lib/safe-read.c (EINTR): Define.
61119         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
61120         (INT_MAX): Provide fallback.
61121         (safe_read): Rewrite to iterate IFF the read fails with EINTR.
61122
61123         * lib/safe-read.h (SAFE_READ_ERROR): Define.
61124
61125 2002-12-02  Bruno Haible  <bruno@clisp.org>
61126
61127         * lib/safe-write.c (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM):
61128         Define, taken from safe-read.c.
61129         (INT_MAX): Provide fallback.
61130         (safe_write): Rewrite to iterate IFF the write fails with EINTR.
61131         * lib/safe-write.h (SAFE_WRITE_ERROR): Define.
61132
61133         * lib/safe-read.c (EINTR): Remove definition.
61134         (safe_read): Don't use EINTR if it is absent.
61135
61136 2002-12-01  Jim Meyering  <jim@meyering.net>
61137
61138         * lib/safe-read.c: (safe_read): Also exit the loop when read returns
61139         zero.
61140         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM, INT_MAX): Define.
61141
61142 2002-11-27  Paul Eggert  <eggert@twinsun.com>
61143
61144         * lib/hash.c (hash_lookup, hash_get_first, hash_get_next,
61145         hash_find_entry, hash_rehash): Replace `if (limit <= value) abort ();'
61146         with `if (! (value < limit)) abort ();', for readability.
61147
61148 2002-11-26  Karl Berry  <karl@gnu.org>
61149
61150         * lib/strdup.c: copy from libc again, with jim's ok.
61151         * lib/.cppi-disable: re-add strdup.c
61152
61153 2002-11-25  Karl Berry  <karl@gnu.org>
61154
61155         * lib/strtoll.c: copy from libc, meaning we now #include <strtol.c>
61156         instead of "strtol.c".
61157
61158 2002-11-25  Karl Berry  <karl@gnu.org>
61159
61160         * config/install-sh: update from automake for variable quoting, $0 in
61161         error msgs, etc.
61162
61163         * config/srclist.txt ($LIBCSRC/time/mktime.c lib gpl): new entry.
61164         * config/srclist.txt ($LIBCSRC/sysdeps/generic/strtoll.c lib gpl): new
61165         entry.
61166
61167 2002-11-25  Jim Meyering  <jim@meyering.net>
61168
61169         * lib/mktime.c: Sync from libc, now that it has the latest fix.
61170
61171 2002-11-24  Karl Berry  <karl@gnu.org>
61172
61173         * lib/error.c, getopt.c, getopt.h, getopt1.c, obstack.c, regex.c,
61174         regex.h, strdup.c, strtoll.c, tempname.c: change license to gpl.
61175
61176 2002-11-24  Jim Meyering  <jim@meyering.net>
61177
61178         Update from coreutils:
61179
61180         * lib/mktime.c: Merge in changes from libc.
61181
61182         Avoid a link-time failure on some Linux systems.
61183         * lib/mktime.c (STATIC): Define to be empty (_LIBC) or `static'
61184         (otherwise).
61185         (__mon_yday): Declare with the STATIC attribute.
61186         (__mktime_internal): Likewise.
61187         Based on a report from Greg Schafer.
61188
61189 2002-11-23  Jim Meyering  <jim@meyering.net>
61190
61191         * lib/sig2str.c (str2signum, sig2str): Avoid a warning from gcc:
61192         Use `unsigned', not `int', as type of index.
61193
61194         * lib/xstat.in [@BEGIN_LSTAT_ONLY@]: Include <string.h>.
61195
61196         * lib/fsusage.c: Remove unneeded parentheses around operands of
61197         `defined'.
61198
61199 2002-11-22  Paul Eggert  <eggert@twinsun.com>
61200
61201         * lib/quotearg.h: Allow multiple inclusion by surrounding with
61202         "#ifndef QUOTEARG_H_".  Include <stddef.h>, for size_t,
61203         so that we can be included first.
61204         (PARAMS): Remove; we now assume C89 or later.  All uses removed.
61205         * lib/quotearg.c: Include quotearg.h immediately after config.h.
61206         No need to include stddef.h or sys/types.h any more.
61207         Surround local include files with "", not "<>".
61208         Assume HAVE_LIMITS_H unconditionally, as we assume C89.
61209         Similarly, assume HAVE_C_BACKSLASH_A, CHAR_BIT, UCHAR_MAX, UINT_MAX,
61210         HAVE_STDLIB_H, HAVE_STRING_H, STDC_HEADERS.
61211         (HAVE_MBSINIT): Undef if !HAVE_MBRTOWC.
61212         (mbsinit): Define to 1 if !defined mbsinit && !HAVE_MBSINIT.
61213         (ISPRINT): Remove; no longer needed now that we assume C89.
61214
61215         (clone_quoting_options, quotearg_buffer, quotearg_n_options):
61216         Preserve errno.
61217
61218         (quotearg_buffer_restyled, quotearg_n, quotearg_n_style,
61219         quotearg_char): Use SIZE_MAX rather than
61220         (size_t) -1 when we are talking about "infinity".
61221
61222         (quotearg_buffer_restyled): Fix bug when quoting trigraphs.
61223
61224 2002-11-22  Paul Eggert  <eggert@twinsun.com>
61225
61226         * lib/hash.c: Avoid use of <assert.h>, as the GNU Coding Standards
61227         hint that one should use `if (! x) abort ();' rather than `assert
61228         (x);', and anyway it's one less thing to worry about configuring.
61229         (hash_lookup, hash_get_first, hash_get_next, hash_find_entry,
61230         hash_rehash, hash_insert): Use abort rather than assert.
61231
61232 2002-11-22  Bruno Haible  <bruno@clisp.org>
61233
61234         * lib/safe-read.h: Assume C89. Add comments.
61235         (safe_read): Change return type to size_t.
61236         * lib/safe-read.c (safe_read): Change return type to size_t. Handle
61237         byte counts > SSIZE_MAX correctly.
61238         * lib/safe-write.h: New file.
61239         * lib/safe-write.c: New file.
61240         * lib/full-read.h: New file.
61241         * lib/full-read.c: New file.
61242         * lib/full-write.h: Assume C89. Add comments.
61243         * lib/full-write.c: Include safe-write.h.
61244         (full_write): Rewritten to use safe_write.
61245         Suggested by Jim Meyering and Paul Eggert.
61246
61247 2002-11-21  Jim Meyering  <jim@meyering.net>
61248
61249         * lib/strdup.c (strdup): Tweak comment and initial #if/#include.
61250
61251         Merge in changes from the coreutils.
61252
61253         2002-09-25  Paul Eggert  <eggert@twinsun.com>
61254         * lib/fsusage.c [! HAVE_INTTYPES_H && HAVE_STDINT_H] Include
61255         <stdint.h>.
61256         (UINTMAX_MAX) [!defined UINTMAX_MAX]: New macro.
61257         (PROPAGATE_ALL_ONES): Work even if X is unsigned and narrower than
61258         int.  Work more efficiently if X is the same width as uintmax_t.
61259         Do not compare X to -1, to avoid bogus compiler warning.
61260         (get_fs_usage): (uintmax_t) -1 -> UINTMAX_MAX to avoid a cast.
61261         Don't assume that f_frsize and f_bsize are the same type.
61262
61263         * lib/mountlist.c: #undef MNT_IGNORE before defining it, to avoid
61264         warning on FreeBSD.
61265
61266         * lib/makepath.c (make_path): Restore umask *before* creating the final
61267         component.
61268         (make_path): Minor reformatting.
61269
61270         * lib/xmalloc.c: Adjust to work with new autoconf macros,
61271         AC_FUNC_MALLOC and AC_FUNC_REALLOC: test #ifndef
61272         HAVE_MALLOC/HAVE_REALLOC.
61273
61274         * lib/mountlist.h (ME_DUMMY): Don't count entries of type `auto' as
61275         dummy ones.  At least on GNU/Linux systems, `auto' means something
61276         else.
61277         From Michael Stone.
61278
61279 2002-11-21  Bruno Haible  <bruno@clisp.org>
61280
61281         Remove case insensitive option matching.
61282         * lib/argmatch.h (argcasematch): Remove declaration.
61283         (ARGCASEMATCH): Remove macro.
61284         (__xargmatch_internal): Remove case_sensitive argument.
61285         (XARGMATCH): Update.
61286         (XARGCASEMATCH): Remove macro.
61287         * lib/argmatch.c (argmatch): Renamed from __argmatch_internal. Remove
61288         case_sensitive argument.
61289         (argcasematch): Remove function.
61290         (__xargmatch_internal): Remove case_sensitive argument.
61291         (main): Use XARGMATCH instead of XARGCASEMATCH.
61292
61293         * lib/xmalloc.c: Change compile-time error message. Add comment about
61294         required autoconf version.
61295
61296 2002-11-20  Paul Eggert  <eggert@twinsun.com>
61297
61298         Merge argmatch cleanups from Bison.  Assume C89.
61299
61300         * lib/argmatch.c: Include config.h here, not in argmatch.h.
61301         Include stdlib.h, for EXIT_FAILURE.
61302         Always include <string.h>, since we assume C89.
61303         (EXIT_FAILURE): Remove pre-C89 bug workaround.
61304         * lib/argmatch.h: Do not include <config.h> or <sys/types.h>.
61305         Include <stddef.h> instead, since it's all we need for size_t.
61306         (PARAMS): Remove.  All uses removed.
61307         (ARRAY_CARDINALITY): Do not bother to #undef.
61308         (ARRAY_CARDINALITY, ARGMATCH, ARGCASEMATCH, invalid_arg,
61309         ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
61310         Remove unnecessary parentheses.
61311         (ARGMATCH_VALID, XARGMATCH, XARGCASEMATCH):
61312         Insert necessary parentheses.
61313         (ARGMATCH_CONSTRAINT, ARGMATCH_VERIFY): New macros.
61314         (ARGMATCH_ASSERT): Use ARGMATCH_CONSTRAINT.
61315
61316 2002-11-19  Bruno Haible  <bruno@clisp.org>
61317
61318         * lib/mbswidth.c: Include mbswidth.h right at the beginning.
61319         * lib/mbswidth.h: Include <stddef.h>, for size_t.
61320
61321         * lib/mbswidth.h (PARAMS): Remove macro.
61322         (mbswidth, mbsnwidth): Use ANSI C function declarations.
61323         * lib/mbswidth.c (mbswidth, mbsnwidth): Likewise.
61324
61325         * lib/gcd.h (PARAMS): Remove macro.
61326         (gcd): Use ANSI C function declarations.
61327         * lib/gcd.c (gcd): Likewise.
61328
61329 2002-11-15  Bruno Haible  <bruno@clisp.org>
61330
61331         * lib/strcspn.c: Include <stddef.h>.
61332         (strcspn): Use ANSI C function declaration. Change return type to
61333         size_t. Use NULL.
61334         * lib/strpbrk.c: Minimize diffs to glibc. Include <stddef.h>.
61335         (strpbrk): Use NULL.
61336         * lib/strpbrk.h (PARAMS): Remove macro.
61337         (strpbrk): Use ANSI C function declaration.
61338         * lib/strstr.c: Don't include <sys/types.h>.
61339         * lib/strstr.h (PARAMS): Remove macro.
61340         (strstr): Use ANSI C function declarations.
61341
61342 2002-11-14  Karl Berry  <karl@gnu.org>
61343
61344         * config/mkinstalldirs: `do' on separate line, instead of
61345         `for var; do'.
61346
61347 2002-11-06  Bruno Haible  <bruno@clisp.org>
61348
61349         * lib/gcd.h (gcd): Change argument type to 'unsigned long'.
61350         * lib/gcd.c (gcd): Likewise.
61351
61352 2002-11-05  Bruno Haible  <bruno@clisp.org>
61353
61354         * lib/gcd.h: New file, from gettext-0.11.5.
61355         * lib/gcd.c: New file, from gettext-0.11.5.
61356
61357 2002-11-05  Bruno Haible  <bruno@clisp.org>
61358
61359         * lib/error.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
61360         * lib/getopt.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
61361         * lib/obstack.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
61362         * lib/regex.c [!_LIBC]: Include gettext.h instead of <libintl.h>.
61363
61364         * lib/argmatch.c: Include gettext.h instead of <locale.h> and
61365         <libintl.h>.
61366         * lib/makepath.c: Include gettext.h instead of <locale.h> and
61367         <libintl.h>.
61368
61369         * lib/closeout.c: Include gettext.h instead of <libintl.h>.
61370         * lib/human.c: Include gettext.h instead of <libintl.h>.
61371         * lib/quotearg.c: Include gettext.h instead of <libintl.h>.
61372         * lib/rpmatch.c: Include gettext.h instead of <libintl.h>.
61373         * lib/unicodeio.c: Include gettext.h instead of <libintl.h>.
61374         * lib/userspec.c: Include gettext.h instead of <libintl.h>.
61375         * lib/version-etc.c: Include gettext.h instead of <libintl.h>.
61376         * lib/xmalloc.c: Include gettext.h instead of <libintl.h>.
61377         (textdomain): Remove definition.
61378         * lib/xmemcoll.c: Include gettext.h instead of <libintl.h>.
61379
61380         * lib/long-options.c: Remove include of <libintl.h> and definition of
61381         _.
61382         * lib/same.c: Remove include of <libintl.h> and definition of _.
61383
61384 2002-11-04  Owen Taylor  <otaylor@redhat.com>
61385
61386         * lib/config.charset: A few additions for Solaris.
61387
61388 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
61389
61390         Make it possible to build libcharset with CC=gcc CFLAGS="-x c++".
61391         * lib/localcharset.c (locale_charset): Declare as extern "C".
61392
61393 2002-11-04  Bruno Haible  <haible@clisp.cons.org>
61394
61395         * lib/config.charset: msdos in uk_UA uses CP1125.
61396
61397 2002-11-04  Bruno Haible  <bruno@clisp.org>
61398
61399         * lib/stpcpy.h: New file, from GNU gettext-0.11.5.
61400         * lib/strcase.h: New file, from GNU gettext-0.11.5.
61401         * lib/strpbrk.h: New file, from GNU gettext-0.11.5.
61402         * lib/strstr.h: New file, from GNU gettext-0.11.5.
61403         * lib/xgetcwd.h: New file, from GNU gettext-0.11.5.
61404
61405 2002-11-04  Bruno Haible  <bruno@clisp.org>
61406
61407         * lib/localcharset.c (locale_charset): Don't return an empty string.
61408
61409 2002-11-04  Bruno Haible  <bruno@clisp.org>
61410
61411         * lib/localcharset.c (get_charset_aliases): Add more Windows specific
61412         aliases.
61413
61414 2002-11-04  Bruno Haible  <bruno@clisp.org>
61415
61416         * lib/config.charset: Update for newest glibc. Add canonical names
61417         ISO-8859-14, KOI8-T, TCVN5712-1, GEORGIAN-PS.
61418
61419 2002-11-04  Bruno Haible  <bruno@clisp.org>
61420
61421         * lib/config.charset: Add support for NetBSD.
61422
61423 2002-11-04  Bruno Haible  <bruno@clisp.org>
61424
61425         * lib/config.charset [msdosdjgpp]: For Russian, use CP866.
61426
61427 2002-11-01  Bruno Haible  <bruno@clisp.org>
61428
61429         * configure.in: Add AC_CONFIG_AUX_DIR call.
61430         (AC_OUTPUT): Add m4/Makefile, lib/Makefile. Remove doc/Makefile,
61431         test/Makefile.
61432         * Makefile.in (subdirs): Add m4, lib. Remove doc, test.
61433
61434 2002-09-28  Karl Berry  <karl@gnu.org>
61435
61436         * config/srclist.txt: can't copy install-sh/mkinstalldirs from
61437         installed automake until the next release, since changes have been
61438         made.
61439
61440 2002-09-25  Karl Berry  <karl@gnu.org>
61441
61442         * lib/strdup.c: copy from libc/string (via ../config/srclist*).
61443         * lib/getopt*: copy from libc/posix.
61444         * lib/gettext.h: copy from gettext.
61445         * lib/.cppi-disable: add strdup.c, gettext.h.
61446
61447 2002-09-25  Karl Berry  <karl@gnu.org>
61448
61449         * config/srclist.txt: enable gettext.h check.
61450         * config/config.{guess,sub}: update from prep.
61451         * config/depcomp, install-sh, mdate-sh, missing, mkinstalldirs: update
61452                 from automake 1.6.3.
61453         See srclist*.
61454
61455 2002-08-23  Stefan Monnier  <monnier@cs.yale.edu>
61456
61457         * regex.c (PATFETCH): Remove the translating fetch.
61458         (PATFETCH_RAW): Rename to PATFETCH.
61459         (set_image_of_range): New fun.
61460         (SET_RANGE_TABLE_WORK_AREA): Use it.
61461         (regex_compile): Don't translate the pattern chars so eagerly.
61462         Only do it when inserting an `exactn' bytecode or when handling
61463         a char-range.
61464         (mutually_exclusive_p): Avoid empty statement.
61465
61466 2002-07-06  Jim Meyering  <meyering@lucent.com>
61467
61468         * m4/README: Don't mention Makefile.am.in.
61469         Outline how I've tested changes to .m4 files.  Yep, it's a pain.
61470
61471 2002-07-01  Jim Meyering  <meyering@lucent.com>
61472
61473         * lib/c-stack.c: Include sys/time.h.
61474         From Volker Borchert.
61475
61476 2002-06-26  Paul Eggert  <eggert@twinsun.com>
61477
61478         * m4/fnmatch.m4 (_AC_LIBOBJ_FNMATCH): Check for btowc.
61479
61480 2002-06-26  Paul Eggert  <eggert@twinsun.com>
61481
61482         * lib/fnmatch.c, fnmatch_loop.c (WIDE_CHAR_SUPPORT):
61483         New macro.  Use it uniformly instead of
61484         (defined HAVE_WCTYPE_H && defined HAVE_WCHAR_H).
61485         It also uses HAVE_BTOWC, to fix a porting bug on Solaris 2.5.1
61486         reported by Vin Shelton.
61487
61488 2002-06-22  Paul Eggert  <eggert@twinsun.com>
61489
61490         * lib/c-stack.h (segv_handler, c_stack_action) [! defined SA_SIGINFO]:
61491         Do not assume SA_SIGINFO behavior.
61492         Bug reported by Jim Meyering on NetBSD 1.5.2.
61493
61494 2002-06-22  Jim Meyering  <meyering@lucent.com>
61495
61496         * m4/c-stack.m4: New file, from diffutils-2.8.2.
61497         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_C_STACK.
61498
61499         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Don't require AC__GNU_SOURCE,
61500         now that configure.ac uses AC_GNU_SOURCE.
61501         (jm_MACROS): Rename: jm_FUNC_FNMATCH to AC_FUNC_FNMATCH_GNU.
61502         * m4/prereq.m4 (jm_PREREQ_EXCLUDE): Likewise, wrt jm_FUNC_FNMATCH.
61503
61504         Update to latest tools.  Suggestions from Paul Eggert.
61505         * m4/stdbool.m4: New file, from diffutils-2.8.2.
61506         * m4/gnu-source.m4: Update from diffutils-2.8.2.
61507         * m4/fnmatch.m4: Likewise.
61508         * m4/prereq.m4: Change each use of AC_CHECK_HEADERS(stdbool.h)
61509         to AC_HEADER_STDBOOL
61510
61511 2002-06-22  Jim Meyering  <meyering@lucent.com>
61512
61513         * lib/fnmatch.c (ISASCII, ISPRINT): Undefine, to avoid warning about
61514         redefinition due to Solaris 2.6's definition in /usr/include/sys/euc.h.
61515
61516 2002-06-22  Jim Meyering  <meyering@lucent.com>
61517
61518         * lib/c-stack.c, lib/c-stack.h: New files, from diffutils-2.8.2.
61519
61520         * lib/exitfail.c, exitfail.h: Likewise.
61521         * lib/Makefile.am (libfetish_a_SOURCES): Add exitfail.c and exitfail.h.
61522
61523         * lib/Makefile.am (libfetish_a_SOURCES): Add fnmatch_.h in place
61524         of fnmatch.h.
61525         (EXTRA_DIST): Add fnmatch_loop.c.
61526         (libfetish_a_SOURCES): Add c-stack.c and c-stack.h.
61527
61528         * lib/fnmatch_loop.c: New file, from diffutils-2.8.2.
61529         * lib/fnmatch.c: Update from diffutils-2.8.2.
61530         * lib/fnmatch_.h: New file.  From diffutils-2.8.2.
61531         * lib/fnmatch.h: Remove file.
61532
61533 2002-06-21  Jim Meyering  <meyering@lucent.com>
61534
61535         * m4/c-bs-a.m4: Add comment, from diffutils-2.8.2.
61536         * m4/mbrtowc.m4: Likewise.
61537
61538         * m4/mbstate_t.m4: Update from diffutils-2.8.2.
61539         * m4/mbswidth.m4: Reflect name change:
61540         s/AC_MBSTATE_T/AC_TYPE_MBSTATE_T.
61541         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
61542
61543         * m4/lib-link.m4: Update from gettext-0.11.2.
61544         * m4/gettext.m4: Likewise.
61545
61546         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for hurd.h.
61547         From Alfred M. Szmidt.
61548
61549 2002-06-18  Paul Eggert  <eggert@twinsun.com>
61550
61551         * lib/file-type.h: Report an error if neither S_ISREG nor
61552         S_IFREG is defined, instead of using a test specific to glibc
61553         2.2.  This should be safe, since POSIX requires S_ISREG and
61554         Unix Version 7 had S_IFREG.  We don't need to check for
61555         <sys/types.h> since we don't use any symbols that it defines.
61556
61557 2002-06-15  Richard Dawe  <richdawe@bigfoot.com>
61558
61559         * lib/Makefile.am (lstat.c, stat.c, .sin.sed): Use t-$@, rather than
61560         $@-t, so that each temporary file name is unique and valid in the first
61561         8 characters, for operation under DOS.
61562
61563 2002-06-15  Paul Eggert  <eggert@twinsun.com>
61564
61565         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Check for st_author.
61566
61567 2002-06-15  Jim Meyering  <meyering@lucent.com>
61568
61569         Work even with DJGPP 2.03, which lacks support for symlinks.
61570         From Richard Dawe.
61571         * lib/xstat.in (S_ISLNK): Define to 0 if neither S_ISLNK nor S_IFLNK
61572         is defined.
61573         * lib/lchown.c (S_ISLNK): Likewise.
61574
61575 2002-06-15  Jim Meyering  <meyering@lucent.com>
61576
61577         * lib/file-type.h (FILE_TYPE_H): Guard entire contents with #ifndef.
61578         For GNU libc 2.2 and newer, ensure that <sys/types.h> and <sys/stat.h>
61579         have been included before this file.
61580
61581 2002-06-14  Jim Meyering  <meyering@lucent.com>
61582
61583         * lib/file-type.h: Use the version from diffutils-2.8.2.
61584         * lib/file-type.c: Likewise.
61585
61586 2002-06-07  Jim Meyering  <meyering@lucent.com>
61587
61588         * m4/prereq.m4 (jm_PREREQ_STAT): Check for sys/param.h and sys/mount.h.
61589         They're needed at least for NetBSD 1.5.2.
61590         ($statxfs_includes): Include those same headers.
61591         ($statxfs_includes): Include sys/vfs.h if available.
61592         ($statxfs_includes): Likewise for sys/statvfs.h.
61593         Check for the following members in both structs statfs and statvfs:
61594         f_basetype, f_type, f_fsid.__val, f_namemax, f_namelen.
61595
61596 2002-06-01  Jim Meyering  <meyering@lucent.com>
61597
61598         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename macro:
61599         s/D_TYPE_IN_DIRENT/HAVE_STRUCT_DIRENT_D_TYPE/.
61600
61601 2002-05-28  Jim Meyering  <meyering@lucent.com>
61602
61603         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `mkdir', not `rmdir'.
61604         Reported by Volker Borchert.
61605
61606 2002-05-27  Jim Meyering  <meyering@lucent.com>
61607
61608         Fix a problem seen only on nonconforming systems whereby ls.c's
61609         use of localtime, and then of gettimeofday would cause trouble:
61610         the localtime call used to initialize rpl_gettimeofday's save
61611         mechanism would clobber ls's current local time information so
61612         that in any long listing the first file would always be listed
61613         with date 1970-01-01.  Analysis by Volker Borchert.
61614
61615         * lib/gettimeofday.c (localtime): Undefine.
61616         (rpl_localtime): New function.
61617
61618 2002-05-27  Jim Meyering  <meyering@lucent.com>
61619
61620         * m4/gettimeofday.m4 (AC_FUNC_GETTIMEOFDAY_CLOBBER): Also replace
61621         localtime.
61622
61623         * m4/readdir.m4 (jm_FUNC_READDIR): Undefine `rmdir' so we don't try to
61624         use the replacement function; it wouldn't resolve at link time.
61625         Reported by Volker Borchert.
61626
61627 2002-05-22  Jim Meyering  <meyering@lucent.com>
61628
61629         * lib/Makefile.am (libfetish_a_SOURCES): Add file-type.c and
61630         file-type.h.
61631         * lib/file-type.h: New file.
61632         * lib/file-type.c (file_type): New file/function.  Extracted from
61633         diffutils.
61634
61635 2002-04-30  Jim Meyering  <meyering@lucent.com>
61636
61637         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_STAT.
61638
61639 2002-04-29  Paul Eggert  <eggert@twinsun.com>
61640
61641         * m4/prereq.m4 (jm_PREREQ_SIG2STR): Remove; all callers changed.
61642
61643 2002-04-29  Paul Eggert  <eggert@twinsun.com>
61644
61645         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): Check for stdlib.h.
61646         Do not check for alloca.h (no longer used) or stdbool.h (was never
61647         used?).  Add AM_C_PROTOTYPES since hard-locale.h uses it.
61648
61649 2002-04-29  Paul Eggert  <eggert@twinsun.com>
61650
61651         * lib/hard-locale.c: Upgrade to version used in GNU Diffutils 2.8.1.
61652
61653 2002-04-29  Jim Meyering  <meyering@lucent.com>
61654
61655         * m4/jm-macros.m4 (jm_MACROS): Remove use of AC_FUNC_STRNLEN.
61656         * m4/prereq.m4: Add jm_PREREQ_STRNLEN.
61657         Use AC_FUNC_STRNLEN here instead.
61658
61659         * m4/jm-macros.m4: Don't AC_REQUIRE([AC_PROG_CC_STDC]).
61660         With autoconf-2.53a, it's part of AC_PROG_CC.
61661
61662 2002-04-28  Paul Eggert  <eggert@twinsun.com>
61663
61664         * m4/jm-macros.m4 (jm_MACROS): Add AC_REPLACE_FUNCS(sig2str).
61665         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_SIG2STR.
61666
61667 2002-04-28  Paul Eggert  <eggert@twinsun.com>
61668
61669         * lib/sig2str.h, lib/sig2str.c: New files.
61670         * lib/Makefile.am (libfetish_a_SOURCES): Add sig2str.h.
61671
61672 2002-04-28  Paul Eggert  <eggert@twinsun.com>
61673
61674         * lib/sig2str.h (SIGNUM_BOUND): Do not use WTERMSIG, to avoid
61675         depending on <sys/wait.h> and WTERMSIG.  Default to 64 instead
61676         of 127, since 64 is the largest conceivable number for ancient
61677         nonstandard hosts.
61678         * lib/sig2str.c: Do not include <sys/wait.h>; no longer needed.
61679
61680 2002-04-28  Jim Meyering  <meyering@lucent.com>
61681
61682         * lib/sig2str.c (WTERMSIG): Remove definition (unused).
61683
61684 2002-04-24  Jim Meyering  <meyering@lucent.com>
61685
61686         * m4/prereq.m4 (jm_PREREQ_HARD_LOCALE): New macro.
61687         (jm_PREREQ): Use it.
61688
61689         * m4/getloadavg.m4: Check for these headers: locale.h unistd.h
61690         mach/mach.h fcntl.h.
61691         Check for this function: setlocale.
61692
61693 2002-04-24  Jim Meyering  <meyering@lucent.com>
61694
61695         * lib/gettext.h: New file, from Gettext.
61696         * lib/Makefile.am (INCLUDES): Remove -I../intl.
61697         (libfetish_a_SOURCES): Add gettext.h.
61698
61699 2002-04-16  Jim Meyering  <meyering@lucent.com>
61700
61701         * m4/prereq.m4 (jm_PREREQ_READUTMP): Also check for these members:
61702         ut_pid, ut_id, ut_exit.
61703
61704 2002-04-16  Jim Meyering  <meyering@lucent.com>
61705
61706         * lib/readutmp.h (UT_TYPE): Remove definition (now in who.c).
61707         (HAVE_STRUCT_XTMP_UT_EXIT, HAVE_STRUCT_XTMP_UT_ID): Define.
61708         (HAVE_STRUCT_XTMP_UT_PID, HAVE_STRUCT_XTMP_UT_TYPE): Define.
61709
61710 2002-04-12  Jim Meyering  <meyering@lucent.com>
61711
61712         * m4/ls-mntd-fs.m4 (checking for getmntinfo function...): Remove
61713         now-bogus check for f_type in sys/mount.h.  Instead, just test for the
61714         existence of the getmntinfo function.  Needed for Darwin 5.3.
61715
61716         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Also detect when dirfd is a macro.
61717         This is necessary at least on Darwin 5.3.
61718
61719         * m4/jm-macros.m4: Don't AC_REPLACE(strnlen), now that we use
61720         AC_FUNC_STRNLEN.  Otherwise, we'd end up putting two copies of
61721         strnlen.o in the library, and that makes some versions of ranlib
61722         object.
61723
61724 2002-04-12  Jim Meyering  <meyering@lucent.com>
61725
61726         * lib/dirfd.h (dirfd): Elide prototype if dirfd is a macro.
61727
61728 2002-04-09  Jim Meyering  <meyering@lucent.com>
61729
61730         * m4/malloc.m4: (jm_FUNC_MALLOC): Change the `checking ...' message
61731         to be more precise.  Rather than saying we're checking whether the
61732         function `works', say what we're testing.
61733         * m4/realloc.m4 (jm_FUNC_REALLOC): Likewise.
61734         Reported by Bruno Haible.
61735
61736 2002-03-10  Jim Meyering  <meyering@lucent.com>
61737
61738         * lib/makepath.c (make_path): Remove a comma from a diagnostic.
61739         Suggestion from Santiago Vila.
61740
61741 2002-03-08  Jim Meyering  <meyering@lucent.com>
61742
61743         * lib/rename.c: Mention that this wrapper is needed also on
61744         mips-dec-ultrix4.4 systems.
61745
61746 2002-03-02  Jim Meyering  <meyering@lucent.com>
61747
61748         * lib/gettime.c (gettime): Test HAVE_CLOCK_GETTIME,
61749         not HAVE_CLOCK_SETTIME.
61750
61751 2002-02-27  Paul Eggert  <eggert@twinsun.com>
61752
61753         * m4/jm-macros.m4 (jm_MACROS): Do not replace stime; no longer used.
61754         Check for clock_settime.
61755
61756 2002-02-27  Paul Eggert  <eggert@twinsun.com>
61757
61758         * lib/nanosleep.h: Rename to....
61759         * lib/timespec.h: New name for nanosleep.h.  All uses changed.
61760
61761         * lib/gettime.c: New file.
61762         * lib/settime.c: New file.
61763         * lib/stime.c: Remove.
61764
61765         * lib/Makefile.am (libfetish_a_SOURCES): Add gettime.c, settime.c,
61766         timespec.h.  Remove nanosleep.h.
61767
61768 2002-02-25  Paul Eggert  <eggert@twinsun.com>
61769
61770         * m4/acl.m4: New file.
61771         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_ACL.
61772         Do not check for acl or sys/acl.h, as AC_FUNC_ACL does that now.
61773
61774 2002-02-25  Paul Eggert  <eggert@twinsun.com>
61775
61776         * lib/acl.c, lib/acl.h: New files.
61777         * lib/Makefile.am (libfetish_a_SOURCES): Add acl.h, acl.c.
61778
61779 2002-02-24  Jim Meyering  <meyering@lucent.com>
61780
61781         * lib/strnlen.c (strnlen): Define-away/undef so that an inconsistent
61782         prototype in string.h (on at least AIX4.3.2.0 w/gcc-2.95.3) doesn't
61783         cause trouble.  Reported by Nelson Beebe.
61784
61785 2002-02-23  Paul Eggert  <eggert@twinsun.com>
61786
61787         * lib/path-concat.c (xpath_concat): Reorder code to pacify
61788         compilers that don't know that xalloc_die never returns.
61789
61790 2002-02-20  Jim Meyering  <meyering@lucent.com>
61791
61792         * lib/getdate.c: Regenerate using bison-1.33.
61793
61794 2002-02-17  Jim Meyering  <meyering@lucent.com>
61795
61796         * config/config.guess (main): Don't use `head -1'; it's no longer
61797         portable. Use `sed 1q' instead.
61798
61799 2002-02-16  gettextize  <bug-gnu-gettext@gnu.org>
61800
61801         * m4/codeset.m4: Upgrade to gettext-0.11.
61802         * m4/gettext.m4: Upgrade to gettext-0.11.
61803         * m4/glibc21.m4: Upgrade to gettext-0.11.
61804         * m4/iconv.m4: Upgrade to gettext-0.11.
61805         * m4/isc-posix.m4: Upgrade to gettext-0.11.
61806         * m4/lcmessage.m4: Upgrade to gettext-0.11.
61807         * m4/lib-ld.m4: New file, from gettext-0.11.
61808         * m4/lib-link.m4: New file, from gettext-0.11.
61809         * m4/lib-prefix.m4: New file, from gettext-0.11.
61810         * m4/progtest.m4: Upgrade to gettext-0.11.
61811
61812 2002-02-15  Paul Eggert  <eggert@twinsun.com>
61813
61814         * m4/prereq.m4 (jm_PREREQ_POSIXVER): New macro.
61815         (jm_PREREQ): Use it.
61816
61817 2002-02-15  Paul Eggert  <eggert@twinsun.com>
61818
61819         * lib/posixver.c, lib/posixver.h: New files.
61820         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
61821
61822 2002-02-02  Paul Eggert  <eggert@twinsun.com>
61823             Bruno Haible  <bruno@clisp.org>
61824
61825         * lib/unicodeio.h (print_unicode_char): Add exit_on_error argument.
61826         (fwrite_success_callback): New declaration.
61827         * lib/unicodeio.c (unicode_to_mb): New function, extracted from
61828         print_unicode_char. Call failure callback instead of error.
61829         (fwrite_success_callback): New function.
61830         (exit_failure_callback): New function.
61831         (fallback_failure_callback): New function.
61832         (print_unicode_char): Call unicode_to_mb.
61833
61834 2002-01-26  Jim Meyering  <meyering@lucent.com>
61835
61836         * m4/jm-macros.m4 (jm_MACROS): Require autoconf-2.52g.
61837         * m4/strnlen.m4: Remove file, now that it's part of autoconf.
61838
61839 2002-01-26  Jim Meyering  <meyering@lucent.com>
61840
61841         * lib/Makefile.am (getdate$U.o): Depend on unlocked-io.h.
61842
61843 2002-01-22  Paul Eggert  <eggert@twinsun.com>
61844
61845         * m4/jm-macros.m4 (jm_MACROS): Require AC_FUNC_FSEEKO.
61846
61847 2002-01-22  Jim Meyering  <meyering@lucent.com>
61848
61849         * lib/Makefile.am (Makefile): Don't depend on $(BUILT_SOURCES).
61850         Otherwise, some versions of automake would omit the rule that makes
61851         Makefile from Makefile.in.
61852
61853 2002-01-21  Paul Eggert  <eggert@twinsun.com>
61854
61855         * lib/xmemcoll.h, lib/xmemcoll.c: New files.
61856         * lib/Makefile.am (libfetish_a_SOURCES): Add them.
61857         * lib/memcoll.c: Include errno.h, and declare errno if not defined.
61858         (memcoll): Set errno to zero if there is no error.
61859
61860         * lib/quotearg.c (quotearg_buffer_restyled):
61861         Fix bug with quoting buffers containing NUL when backslashing escapes.
61862         This bug was exposed by the other changes in this patch.
61863         (quotearg_n_options): New arg ARGSIZE.
61864         All callers changed.
61865         (quoting_options_from_style): New function.
61866         (quotearg_n_style): Use it.
61867         (quotearg_n_style_mem): New function.
61868
61869         * lib/quotearg.h (quotearg_n_style_mem): New function.
61870
61871 2002-01-19  Jim Meyering  <meyering@lucent.com>
61872
61873         * m4/jm-macros.m4 (jm_MACROS): Use AC_FUNC_STRNLEN.
61874         Remove useless quotes: DF_PROG="df".
61875         * m4/strnlen.m4: New file.
61876
61877 2002-01-16  Paul Eggert  <eggert@twinsun.com>
61878
61879         * lib/backupfile.c (ISDIGIT): Comment fix.
61880         * lib/getdate.y (ISDIGIT): Likewise.
61881         * lib/posixtm.c (ISDIGIT, year): Likewise.
61882         * lib/strverscmp.c (ISDIGIT): Likewise.
61883         * lib/userspec.c (ISDIGIT): Likewise.
61884
61885 2002-01-16  Jim Meyering  <meyering@lucent.com>
61886
61887         * lib/getdate.y: Add three semicolons, each just before a closing
61888         brace. Bison (as of version 1.31) no longer papers over that mistake.
61889
61890 2002-01-05  Jim Meyering  <meyering@lucent.com>
61891
61892         * lib/version-etc.c (version_etc_copyright): Update copyright year.
61893
61894 2001-12-19  Paul Eggert  <eggert@twinsun.com>
61895
61896         * lib/closeout.c (close_stdout_status): If ferror (stdout), do
61897         not silently exit merely because the output buffer happens to
61898         have nothing pending.
61899
61900 2001-12-18  Paul Eggert  <eggert@twinsun.com>
61901
61902         See the big note in ../ChangeLog.
61903         * lib/human.c (suffixes): Prefer K to k for 1024.
61904         (generate_suffix_backwards): New function.
61905         (human_readable_inexact): Use it.
61906         * lib/xstrtol.c (__xstrtol): If there is no number but there
61907         is a valid suffix, assume 1.  "MB" now means decimal, "MiB" binary.
61908         Accept 'K' as well as 'k'.
61909
61910 2001-12-15  Jim Meyering  <meyering@lucent.com>
61911
61912         * lib/regex.h (__restrict_arr): Update from libc.
61913
61914         * lib/mountlist.h (ME_REMOTE): Recognize file systems of type smbfs
61915         as `remote' if the name starts with `//'.  Suggested by Michael Stone.
61916         (STREQ): Define.
61917
61918 2001-12-14  Jim Meyering  <meyering@lucent.com>
61919
61920         * m4/jm-macros.m4 (jm_MACROS): Check for iswspace.
61921         Suggestion from Bruno Haible.
61922
61923 2001-12-10  Jim Meyering  <meyering@lucent.com>
61924
61925         * lib/linebuffer.c: Remove explicit declarations of xmalloc and
61926         xrealloc, Instead, include "xalloc.h".
61927         (initbuffer): Don't cast xmalloc return value to char*.
61928         (readline): Reword comment.
61929         Don't cast xrealloc return value to char*
61930         Return NULL, not 0.
61931
61932 2001-12-09  Jim Meyering  <meyering@lucent.com>
61933
61934         * lib/modechange.c (mode_compile): Add cast to avoid pedantic warning
61935         about `signed and unsigned type in conditional expression'.
61936         * lib/posixtm.c (posix_time_parse): Likewise.
61937
61938         * lib/xreadlink.c (xreadlink): Add cast to avoid a pedantic warning.
61939
61940         * lib/readtokens.c (readtoken): Declare an index to be of type unsigned
61941         to avoid a pedantic warning.
61942
61943         * lib/getstr.c: Don't include assert.h.
61944         (getstr): Remove warning-evoking assertions.
61945         Return -1 if offset parameter is out of bounds.
61946         Change the type of a local from int to size_t.
61947
61948         * lib/strftime.c (my_strftime_localtime_r): Include this function
61949         definition in the `#if ! HAVE_TM_GMTOFF' block.
61950
61951         * lib/xgethostname.c: Remove declarations of xmalloc and xrealloc.
61952         Include xalloc.h instead.
61953
61954 2001-12-02  Jim Meyering  <meyering@lucent.com>
61955
61956         * lib/tempname.c: Don't declare getenv, thus reverting the change of
61957         2001-11-18.  It's no longer necessary, now that stdlib.h is always
61958         included.
61959
61960         * lib/regex.c [!__BOUNDED_POINTERS__]: Define away __bounded,
61961         __unbounded, and __ptrvalue.  Reported by Uwe H. Steinfeld.
61962
61963 2001-11-30  Akim Demaille  <akim@epita.fr>
61964
61965         * lib/xstrdup.c: Include xalloc.h, so that xstrdup is declared
61966         before being defined.
61967
61968 2001-11-27  Paul Eggert  <eggert@twinsun.com>
61969
61970         * lib/quotearg.h (quotearg_n, quotearg_n_style):
61971         First arg is int, not unsigned.
61972         * lib/quotearg.c (quotearg_n, quotearg_n_style): Likewise.
61973         (SIZE_MAX, UINT_MAX): New macros.
61974         (quotearg_n_options): Abort if N is negative.
61975         Avoid overflow check on hosts where size_t is 64 bits and int
61976         is 32 bits, as overflow is impossible there.
61977         Fix off-by-one typo that caused unnecessary reallocation.
61978
61979 2001-11-27  Jim Meyering  <meyering@lucent.com>
61980
61981         * lib/tempname.c: Merge with version from libc.
61982         * lib/regex.c: Likewise.
61983
61984         * lib/tempname.c: Include stdlib.h unconditionally.  On some old
61985         systems for which STDC_HEADERS is 0, it was not included, resulting in
61986         a warning about an integer-to-pointer conversion problem with getenv.
61987         Reported by Volker Borchert.
61988
61989 2001-11-26  Jim Meyering  <meyering@lucent.com>
61990
61991         * lib/gtod.h: Remove file.
61992         * lib/Makefile.am (libfetish_a_SOURCES): Remove gtod.h.
61993         * lib/gettimeofday.c: Don't include gtod.h.
61994         (GTOD_init): Remove function.
61995         (rpl_gettimeofday): Do its job here instead, rather than aborting.
61996         Suggestion from Volker Borchert.
61997
61998 2001-11-23  Jim Meyering  <meyering@lucent.com>
61999
62000         * lib/hash.h (struct hash_table): Don't define here.  Merely declare
62001         it.
62002         * lib/hash.c (struct hash_table): Define it here instead.
62003
62004 2001-11-22  Jim Meyering  <meyering@lucent.com>
62005
62006         * lib/hash.h: Bracket contents of file with #ifndef HASH_H_ ... #endif.
62007
62008 2001-11-20  Jim Meyering  <meyering@lucent.com>
62009
62010         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Update comment to reflect that
62011         SunOS 4.1.4 and Solaris 2.5.1 lose, too.
62012
62013 2001-11-19  Jim Meyering  <meyering@lucent.com>
62014
62015         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Don't bother with a temporary
62016         directory.  Use "conftestXXXXXX" as the template.
62017         Suggestion from Paul Eggert.
62018
62019         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): Close each descriptor
62020         immediately, so the test doesn't mistakenly hit the max-open-files
62021         limit.
62022
62023 2001-11-18  Paul Eggert  <eggert@twinsun.com>
62024
62025         * lib/tempname.c (TMP_MAX): Remove; no longer needed.
62026         (TEMPORARIES): New macro.
62027         (__gen_tempname): Use TEMPORARIES rather than TMP_MAX.  This
62028         removes an artificial limitation (e.g. HP-UX 10.20, where
62029         TMP_MAX is 17576).
62030
62031 2001-11-18  Jim Meyering  <meyering@lucent.com>
62032
62033         * m4/prereq.m4 (jm_PREREQ_TEMPNAME): Check for declaration of getenv.
62034
62035 2001-11-18  Jim Meyering  <meyering@lucent.com>
62036
62037         * lib/tempname.c [!HAVE_DECL_GETENV]: Declare getenv to avoid warning
62038         on SunOS 4.
62039
62040         * lib/Makefile.am (Makefile): Depend on $(BUILT_SOURCES), so those
62041         files will be created before anything else.
62042
62043 2001-11-17  Paul Eggert  <eggert@twinsun.com>
62044
62045         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): Do not define
62046         WINSIZE_IN_PTEM if <termios.h> defines struct winsize.
62047
62048 2001-11-17  Jim Meyering  <meyering@lucent.com>
62049
62050         * m4/mkstemp.m4 (UTILS_FUNC_MKSTEMP): New file and macro.
62051         Prompted by a report from Bob Proulx.
62052
62053         * m4/jm-macros.m4 (jm_MACROS): Don't test for mkstemp here.
62054         Instead, require UTILS_FUNC_MKSTEMP.
62055
62056 2001-11-17  Jim Meyering  <meyering@lucent.com>
62057
62058         * m4/jm-macros.m4 (jm_MACROS): Remove code to set POW_LIBM.
62059         Now, that's done as part of AC_FUNC_STRTOD.
62060
62061 2001-11-17  Jim Meyering  <meyering@lucent.com>
62062
62063         * lib/modechange.c (mode_adjust): Fix error introduced on 1999-04-26
62064         that made e.g., `chmod a=,o=w,g=o F' cause F to be group readable
62065         rather than group writable.  Patch by Juan F. Codagnone.
62066
62067         * lib/readtokens.c: Remove explicit declarations of xmalloc and
62068         xrealloc, Instead, include "xalloc.h".
62069
62070         * lib/mountlist.c: Include unlocked-io.h after all system headers.
62071         Remove explicit declarations of xmalloc, xrealloc,
62072         and xstrdup.  Instead, include "xalloc.h".
62073
62074         * lib/argmatch.c, closeout.c, error.c, exclude.c: Include
62075         unlocked-io.h.
62076         * lib/fatal.c, getdate.y, getpass.c, getstr.c, getusershell.c:
62077         Likewise.
62078         * lib/mountlist.c, posixtm.c, readtokens.c, readutmp.c: Likewise.
62079
62080         * lib/regex.c, sha.c, version-etc.c, yesno.c: Likewise.
62081         Reported by Padraig Brady.
62082
62083         * lib/mkstemp.c: #undef mkstemp.
62084         Include config.h.
62085         (rpl_mkstemp): Rename from mkstemp.
62086         Protoize.
62087
62088 2001-11-16  Jim Meyering  <meyering@lucent.com>
62089
62090         * lib/physmem.c [HAVE_SYS_PSTAT_H]: Include <sys/pstat.h>.
62091         (physmem_total) [HAVE_PSTAT_GETSTATIC]: If sysconf couldn't be used to
62092         determine the amount of total physical memory, use pstat_getstatic.
62093         HPUX-11 doesn't define _SC_PHYS_PAGES.
62094         (physmem_available) [HAVE_PSTAT_GETSTATIC && HAVE_PSTAT_GETDYNAMIC]:
62095         If sysconf couldn't be used to determine the amount of available
62096         physical memory, use both pstat_getstatic and pstat_getdynamic.
62097         Based on a patch from Bob Proulx.
62098
62099 2001-11-10  Jim Meyering  <meyering@lucent.com>
62100
62101         * m4/prereq.m4 (jm_PREREQ_PHYSMEM): New function.
62102         (jm_PREREQ): Use it.
62103
62104 2001-11-09  Jim Meyering  <meyering@lucent.com>
62105
62106         * m4/jm-macros.m4: Require autoconf-2.52f.
62107         (AC_FUNC_ERROR_AT_LINE, AC_FUNC_OBSTACK, AC_FUNC_STRTOD):
62108         Use these AC_-prefixed names, not the AM_-prefixed ones.
62109
62110         * m4/afs.m4 (jm_AFS): Quote the body.  Patch by Akim Demaille.
62111
62112 2001-11-05  Jim Meyering  <meyering@lucent.com>
62113
62114         * lib/xstat.in (slash_aware_lstat): Correct a misleading comment.
62115
62116 2001-11-04  Jim Meyering  <meyering@lucent.com>
62117
62118         * m4/fpending.m4: Remove unused cruft that saved, set, and restored
62119         $DEFS.
62120
62121 2001-11-03  Jim Meyering  <meyering@lucent.com>
62122
62123         * m4/jm-glibc-io.m4n (jm_FUNC_GLIBC_UNLOCKED_IO): Quote first arg
62124         of AC_DEFUN.
62125
62126         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): Rework so dirfd.c doesn't have to
62127         know the name of the variable in the macro definition.
62128
62129 2001-11-03  Jim Meyering  <meyering@lucent.com>
62130
62131         * lib/argmatch.h (ARGMATCH_TO_ARGUMENT): Remove casts of first two args
62132         in argmatch_to_argument call.
62133
62134         * lib/dirfd.c (dirfd): Reflect the fact that DIR_TO_FD now takes an
62135         argument.
62136
62137         * lib/hash.c (hash_clear): Fix a bug that could lead to an infloop or
62138         e.g., a fault due to an attempt to free a NULL pointer.
62139
62140 2001-11-01  Jim Meyering  <meyering@lucent.com>
62141
62142         * m4/dirfd.m4 (UTILS_FUNC_DIRFD): New macro.
62143         * m4/jm-macros.m4 (jm_MACROS): Require UTILS_FUNC_DIRFD.
62144
62145 2001-11-01  Jim Meyering  <meyering@lucent.com>
62146
62147         * lib/dirfd.c, lib/dirfd.h: New files.
62148         * lib/Makefile.am (libfetish_a_SOURCES): Add dirfd.h.
62149
62150         * lib/hash.c (hash_print) [TESTING]: Clean up.
62151
62152 2001-10-22  Paul Eggert  <eggert@twinsun.com>
62153
62154         * lib/hard-locale.c (alloca): Define to __builtin_alloca if __GNUC__,
62155         to avoid a warning if -Wall.
62156
62157 2001-10-22  Jeff Bailey  <jbailey@outpost.dnsalias.org>
62158
62159         * README: New file
62160         * doc/*: Add COPYING, COPYING.LIB, COPYING.DOC, fdl.texi
62161         (per RMS's instructions, this is now the canonical source)
62162         * lgpl/, gpl/: New directories.
62163
62164 2001-10-21  Paul Eggert  <eggert@twinsun.com>
62165
62166         * lib/regex.c (uintptr_t): Remove macro and decl; it's config.h's job.
62167
62168 2001-10-21  Jim Meyering  <meyering@lucent.com>
62169
62170         * lib/obstack.c (_): Honor the setting of ENABLE_NLS.  Otherwise,
62171         this code would end up calling gettext even in packages built
62172         with --disable-nls.
62173         * lib/getopt.c (_): Likewise.
62174         * lib/regex.c (_): Likewise.
62175
62176 2001-10-20  Paul Eggert  <eggert@twinsun.com>
62177
62178         * m4/error.m4 (jm_PREREQ_ERROR):
62179         Do not invoke AC_CHECK_FUNCS with strerror_r, as
62180         AC_FUNC_STRERROR_R does that.
62181         Check for strerror declaration.
62182
62183         * m4/strerror_r.m4: Add copyright notice, as nontrivial m4 files
62184         are supposed to have them these days.
62185         (AC_FUNC_STRERROR_R): Always do char* test, so that it gets cached.
62186         Merge changes from latest Autoconf CVS.
62187         Rename ac_cv_func_strerror_r_works to ac_cv_func_strerror_r_char_p,
62188         and rename HAVE_WORKING_STRERROR_R to STRERROR_R_CHAR_P, since
62189         POSIX decided to standardize on the int flavor of strerror_r.
62190
62191 2001-10-20  Paul Eggert  <eggert@twinsun.com>
62192
62193         * lib/error.c (strerror_r): Do not declare unless !_LIBC.
62194         Do not check for HAVE_DECL_STRERROR_R missing unless STRERROR_R_CHAR_P.
62195         Use strerror_r that is only a macro, even if it is not a function.
62196         (strerror): Check for HAVE_DECL_STRERROR before declaring.
62197         (private_strerror): Use prototypes, not old-style function definition.
62198         (print_errno_message): New function.
62199         Support the POSIX 'int'-flavored strerror_r, as well as the traditional
62200         char*-flavored one.
62201         (error_tail, error, error_at_line): Use it.
62202
62203 2001-10-11  Jim Meyering  <meyering@lucent.com>
62204
62205         * lib/argmatch.c (argmatch_invalid): Use quotearg_n_style (0, ...
62206         and quote_n (1, ... to avoid clobbering a buffer.
62207
62208 2001-10-05  Jim Meyering  <meyering@lucent.com>
62209
62210         * lib/Makefile.am: (libfetish_a_SOURCES): Add hash-pjw.c and
62211         hash-pjw.h.
62212         * lib/hash-pjw.c: New file (factored out of fileutils' remove.c).
62213         * lib/hash-pjw.h: New file.
62214
62215 2001-09-30  Jim Meyering  <meyering@lucent.com>
62216
62217         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): See if
62218         `struct fsstat' has the `f_fstypename' member.
62219         Use that to define FS_TYPE, which is now used to make
62220         the getfsstat link test tighter.
62221
62222 2001-09-30  Jim Meyering  <meyering@lucent.com>
62223
62224         * lib/mountlist.c [MOUNTED_GETFSSTAT]:
62225         Include <sys/ucred.h>, for Apple Darwin.
62226         Include sys/mount.h and sys/fs_types.h only if available.
62227         (FS_TYPE): Define.
62228         (read_filesystem_list): Use FS_TYPE.
62229
62230 2001-09-29  Paul Eggert  <eggert@twinsun.com>
62231
62232         * lib/exclude.c (excluded_filename): 0 -> false, since it's
62233         a boolean context.
62234
62235 2001-09-29  Jim Meyering  <meyering@lucent.com>
62236
62237         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
62238         [one-argument getmntent function]): Include stdio.h before mntent.h.
62239         SunOS 4.1.x needs it for the declaration of `FILE'.
62240         Patch by Volker Borchert.
62241
62242         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS)
62243         Check for these headers: sys/param.h sys/ucred.h sys/mount.h
62244         sys/fs_types.h, and make the link-test for getfsstat guard #include
62245         directives with appropriate #if HAVE_*_H tests so that we can
62246         detect getfsstat on Apple Darwin1.3.7 systems.
62247         Reported by Nelson Beebe.
62248         Fix harmless typo in cache variable name: s/getsstat/getfsstat/.
62249
62250 2001-09-28  Paul Eggert  <eggert@twinsun.com>
62251
62252         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
62253         #defines strtoimax.  Also treat the other strto* functions
62254         like strtoimax.
62255
62256         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
62257         Check for strtoul and strtoumax,
62258         as those declarations are made even in the signed case.
62259         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX):
62260         Likewise, for strtol and strtoimax.
62261
62262 2001-09-28  Paul Eggert  <eggert@twinsun.com>
62263
62264         Fix bug reported by Petter Reinholdtsen for HP-UX 10.20, which
62265         #defines strtoimax.  Also treat the other strto* functions
62266         like strtoimax.
62267
62268         * lib/xstrtol.c (strtol): Do not declare if HAVE_DECL_STRTOL.
62269         (strtoul): Do not declare if HAVE_DECL_STRTOUL.
62270         (strtoimax, strtoumax): Do not declare if already defined as a macro.
62271
62272 2001-09-26  Jim Meyering  <meyering@lucent.com>
62273
62274         Most macros in unlocked-io.h had the wrong number of arguments.
62275         * lib/gen-uio: New script.
62276         (USE_UNLOCKED_IO): Define to 1 if not already defined.
62277         * lib/unlocked-io.hin: Remove file.
62278         * lib/Makefile.am (unlocked-io.h): Rewrite to use a separate script,
62279         rather than trying to embed it here.
62280         (EXTRA_DIST): Add gen-uio.  Remove unlocked-io.hin
62281         Reported by Padraig Brady.
62282
62283 2001-09-25  Volker Borchert  <bt@teknon.de>
62284
62285         * lib/gettimeofday.c (rpl_gettimeofday): Declare local variable
62286         `result'.
62287
62288 2001-09-24  Jim Meyering  <meyering@lucent.com>
62289
62290         * m4/gettext.m4: Use the version from gettext-0.10.40, not CVS.
62291
62292 2001-09-23  Jim Meyering  <meyering@lucent.com>
62293
62294         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add a compile-test
62295         instead of the mere test for existence of mntent.h.  The latter
62296         would get a false-positive on AIX 3.4 systems.
62297         In the outer getmntent if-block, don't die if neither of the getmntent
62298         tests succeeds.  Instead, just fall through and continue with the
62299         remaining tests.
62300
62301 2001-09-23  Jim Meyering  <meyering@lucent.com>
62302
62303         * lib/mountlist.c: Remove useless parentheses in #if directives.
62304         (MOUNTED) [!defined MOUNTED]: Define to _PATH_MOUNTED, for when
62305         the deprecated MOUNTED symbol is no longer defined in mntent.h.
62306
62307 2001-09-22  Jim Meyering  <meyering@lucent.com>
62308
62309         * m4/gettext.m4: New file.  From gettext.
62310         * m4/lcmessage.m4: Sync with gettext -- this changes only comments.
62311         * m4/progtest.m4: Likewise
62312         * m4/isc-posix.m4: Decrement serial number to sync with gettext.
62313         * m4/glibc21.m4: Likewise.
62314
62315         * m4/libintl.m4: Remove.  No longer used.
62316
62317 2001-09-22  Jim Meyering  <meyering@lucent.com>
62318
62319         * lib/localcharset.c: Update from latest gettext.
62320         * lib/config.charset: Likewise.
62321
62322 2001-09-20  Jim Meyering  <meyering@lucent.com>
62323
62324         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX): Check for declaration of
62325         strtoimax.
62326         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check for declaration of
62327         strtoumax.
62328
62329 2001-09-20  Jim Meyering  <meyering@lucent.com>
62330
62331         * lib/xstrtol.c (strtoimax): Guard declaration with
62332         `#if !HAVE_DECL_STRTOIMAX', rather than just `#ifndef strtoimax'.
62333         The latter fails because some systems (at least rs6000-ibm-aix4.3.3.0)
62334         have their own, conflicting declaration of strtoimax in sys/inttypes.h.
62335         (strtoumax): Likewise, for completeness (it wasn't necessary).
62336
62337 2001-09-17  Paul Eggert  <eggert@twinsun.com>
62338
62339         * lib/strtoimax.c (HAVE_LONG_LONG):
62340         Redefine to HAVE_UNSIGNED_LONG_LONG if unsigned.
62341         (strtoimax): Use sizeof (long), not sizeof strtol (ptr, endptr, base),
62342         to work around bug in IBM C compiler.
62343
62344 2001-09-17  Jim Meyering  <meyering@lucent.com>
62345
62346         * m4/chown.m4, fstypename.m4, getgroups.m4, gettimeofday.m4,
62347         * m4/jm-mktime.m4, lstat.m4, malloc.m4, memcmp.m4, mkdir-slash.m4,
62348         * m4/nanosleep.m4, putenv.m4, readdir.m4, realloc.m4, rename.m4,
62349         * m4/st_dm_mode.m4, stat.m4, strerror_r.m4, timespec.m4, utimbuf.m4,
62350         * m4/utimes.m4: Use AC_DEFINE rather than AC_DEFINE_UNQUOTED,
62351         whenever the right hand side need not be expanded by the shell.
62352
62353 2001-09-16  Paul Eggert  <eggert@twinsun.com>
62354
62355         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): Remove test for GNU C
62356         library.  It's not correct, as some older glibcs are buggy.
62357         fnmatch wasn't fixed until glibc 2.2.
62358
62359         Use AC_DEFINE, not AC_DEFINE_UNQUOTED, as there's no
62360         special shell magic here.
62361
62362 2001-09-16  Jim Meyering  <meyering@lucent.com>
62363
62364         * m4/mkdir-slash.m4 (UTILS_FUNC_MKDIR_TRAILING_SLASH): New file/macro.
62365         * m4/jm-macros.m4: Require it.
62366
62367 2001-09-16  Jim Meyering  <meyering@lucent.com>
62368
62369         * lib/mkdir.c: New file.
62370
62371 2001-09-15  Jim Meyering  <meyering@lucent.com>
62372
62373         * m4/jm-macros.m4: Check for help2man.
62374
62375 2001-09-11  Jim Meyering  <meyering@lucent.com>
62376
62377         * m4/host-os.m4 (UTILS_HOST_OS): New file/macro.
62378         The body, by Paul Eggert, was moved here from configure.in.
62379         * m4/jm-macros.m4: Require UTILS_HOST_OS.
62380
62381 2001-09-04  Paul Eggert  <eggert@twinsun.com>
62382
62383         * m4/prereq.m4 (jm_PREREQ_XREADLINK): New macro.
62384         (jm_PREREQ): Use it.
62385
62386 2001-09-04  Paul Eggert  <eggert@twinsun.com>
62387
62388         * lib/xreadlink.c (xreadlink): Omit size_t* arg.  All uses changed.
62389         Use ssize_t, not int, to store result of readlink.
62390         Check for ssize_t overflow as well as size_t overflow,
62391         as POSIX says the result of readlink is implementation-defined
62392         when ssize_t overflows.
62393         Remove unnecessary cast to char*.
62394         Use free+malloc instead of realloc, as the storage doesn't need
62395         to be preserved and it's clearer and can be more efficient that way.
62396         (SIZE_MAX, SSIZE_MAX): New macros, if <limits.h> doesn't declare.
62397         * lib/xreadlink.h (xreadlink): Update prototype.
62398
62399 2001-09-04  Paul Eggert  <eggert@twinsun.com>
62400
62401         * lib/xgetcwd.c: Revert some of the previous change; intead,
62402         fix the HAVE_GETCWD_NULL code to behave more like the
62403         !HAVE_GETCWD_NULL code used to.
62404
62405         Include "xalloc.h".
62406         (xgetcwd): Do not return NULL when memory is exhausted; instead,
62407         invoke xalloc_die.
62408
62409 2001-09-03  Paul Eggert  <eggert@twinsun.com>
62410
62411         * m4/prereq.m4 (jm_PREREQ_XGETCWD): Check for limits.h and
62412         sys/param.h, as pathmax.h includes them.
62413
62414 2001-09-03  Paul Eggert  <eggert@twinsun.com>
62415
62416         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_XGETCWD.
62417         (jm_PREREQ_XGETCWD): New macro.
62418
62419         * m4/getcwd.m4: New file.
62420
62421 2001-09-03  Paul Eggert  <eggert@twinsun.com>
62422
62423         * lib/xgetcwd.c: Fix the !HAVE_GETCWD_NULL code to behave more
62424         like the HAVE_GETCWD_NULL code.
62425         Include pathmax.h if not HAVE_GETCWD.
62426         Do not include xalloc.h.
62427         (INITIAL_BUFFER_SIZE): New symbol.
62428         Do not use xmalloc / xrealloc, since the caller is responsible for
62429         handling errors.  Preserve errno around `free' during failure.
62430         Do not overrun buffer when using getwd.
62431
62432 2001-09-03  Paul Eggert  <eggert@twinsun.com>
62433
62434         * lib/xgetcwd.c (xgetcwd): Use HAVE_GETCWD_NULL, not (defined
62435         __GLIBC__ && __GLIBC__ >= 2), to decide whether to use
62436         getcwd (NULL, 0).
62437
62438 2001-09-03  Paul Eggert  <eggert@twinsun.com>
62439
62440         * lib/exclude.c (fnmatch_no_wildcards): Fix confusion between
62441         usage of FNM_CASEFOLD and FNM_LEADING_DIR.  The bug was
62442         spotted by Jim Meyering.
62443
62444 2001-09-03  Jim Meyering  <meyering@lucent.com>
62445
62446         * lib/xreadlink.c (xreadlink): Preserve errno around `free' during
62447         failure.
62448
62449 2001-09-02  Jim Meyering  <meyering@lucent.com>
62450
62451         * lib/error.c: Update from GNU libc.
62452
62453 2001-09-01  Jim Meyering  <meyering@lucent.com>
62454
62455         * m4/jm-macros.m4 (jm_MACROS): Check for canonicalize_file_name.
62456         Used by df.
62457
62458 2001-09-01  Jim Meyering  <meyering@lucent.com>
62459
62460         * lib/xreadlink.c: New file.
62461         * lib/xreadlink.h: New file.
62462         * lib/Makefile.am (libfetish_a_SOURCES): Add xreadlink.c and
62463         xreadlink.h.
62464
62465         * lib/regex.c (uintptr_t) [!_LIBC]: Define to private_uintptr_t, so it
62466         doesn't conflict with sparc Solaris 7's definition in
62467         /usr/include/sys/int_types.h.
62468
62469         * lib/exclude.c: Use `""', not `<>' to #include non-system header
62470         files.
62471         (fnmatch_no_wildcards): Rewrite not to use function names, strcasecmp
62472         and strncasecmp as r-values.  Unixware didn't have declarations.
62473
62474 2001-08-31  Paul Eggert  <eggert@twinsun.com>
62475
62476         * lib/xstrtol.h: Add copyright notice.
62477         (_DECLARE_XSTRTOL): Improve quality of diagnostic for
62478         LONGINT_INVALID_SUFFIX_CHAR.
62479
62480 2001-08-31  Paul Eggert  <eggert@twinsun.com>
62481
62482         * lib/xstrtol.c (strtoimax): New decl.
62483
62484 2001-08-31  Paul Eggert  <eggert@twinsun.com>
62485
62486         * lib/xgetcwd.c: Don't include pathmax.h.
62487         Include stdlib.h and unistd.h if available.
62488         Include xalloc.h.
62489         (xmalloc, xstrdup, free): Remove decls.
62490         (xgetcwd): Don't assume sizes fit in unsigned.
62491         Check for overflow when computing sizes.
62492         Simplify reallocation code.
62493
62494 2001-08-31  Paul Eggert  <eggert@twinsun.com>
62495
62496         * lib/savedir.c (savedir): Remove size parameter, as POSIX says that
62497         a directory's st_size can have an arbitrary value, so the old
62498         usage could waste an arbitrary amount of memory.  All uses
62499         changed.
62500         * lib/savedir.h: Update prototype.
62501
62502 2001-08-31  Paul Eggert  <eggert@twinsun.com>
62503
62504         * lib/Makefile.am (libfetish_a_SOURCES): Remove strtoxmax.c.
62505
62506         * lib/strtoimax.c: Renamed from strtoxmax.c, removing the
62507         old strtoimax.c.
62508
62509         Also, make the following further changes to make this file's
62510         configuration more similar to that of strtol.c:
62511         (UNSIGNED): Renamed from STRTOUXMAX_UNSIGNED.  All uses changed.
62512         (strtoumax, uintmax_t, strtoull, strtol): Remove.
62513         (intmax_t, strtoimax, strtol, strtoll): New macros, if UNSIGNED.
62514         (strtoimax): Renamed from strtoumax.  All uses of unsigned values
62515         changed to signed values.
62516
62517         And make the following changes as well:
62518         Fix copyright notice, as 1999 was missing.
62519         (verify): New macro.
62520         (strtoimax): Check sizes at compile-time, not run-time.
62521         Prefer strtol to strtoll if both work.
62522         (main): Remove; it was not that useful and was a pain to maintain.
62523
62524         * lib/strtoumax.c: Include strtoimax.c, not strtouxmax.c.
62525
62526 2001-08-31  Jim Meyering  <meyering@lucent.com>
62527
62528         * lib/xgetcwd.c (xgetcwd): Reorganize to avoid some duplication.
62529         Use an initial, malloc'd, buffer of length 128 rather than
62530         a statically allocated one of length 1024.
62531
62532 2001-08-30  Paul Eggert  <eggert@twinsun.com>
62533
62534         Simplify code, partly by assuming autoconf 2.52 semantics.
62535
62536         * m4/Makefile.am (EXTRA_DIST): Remove uintmax_t.m4.
62537
62538         * m4/inttypes.m4 (AC_PREREQ): Bump to 2.52.
62539         (jm_AC_HEADER_INTTYPES_H): Remove; now done by autoconf in 2.52.
62540         All uses removed.
62541         (jm_AC_TYPE_INTMAX_T, jm_AC_TYPE_UINTMAX_T):
62542         Move AC_REQUIRE to next-to-top level, to avoid confusion.
62543         Use 2.52's AC_CHECK_TYPE instead of merely looking for the header.
62544         * m4/prereq.m4 (jm_PREREQ_HUMAN): Don't require
62545         jm_AC_HEADER_INTTYPES_H.
62546         * m4/jm-macros.m4 (jm_MACROS): Likewise.
62547
62548         * m4/uintmax_t.m4: Remove, as it duplicates inttypes.m4.
62549
62550         * m4/xstrtoimax.m4 (jm_AC_PREREQ_XSTRTOIMAX):
62551         Quote first arg of AC_DEFUN.
62552         Require jm_AC_TYPE_UINTMAX_T and jm_AC_TYPE_UNSIGNED_LONG_LONG
62553         since they are needed to parse the include file even if we need
62554         only xstrtoimax.  Simplify logic behind the args to AC_REPLACE.
62555         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Likewise,
62556         but with opposite signedness.
62557
62558 2001-08-30  Paul Eggert  <eggert@twinsun.com>
62559
62560         Merge 'exclude' changes from tar 1.13.22.
62561         This fixes one or two unlikely storage allocation overflow bugs,
62562         but doesn't change user-visible behavior otherwise.
62563
62564 2001-08-30  Paul Eggert  <eggert@twinsun.com>
62565
62566         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_EXCLUDE.
62567         (jm_PREREQ_EXCLUDE): New macro.
62568
62569 2001-08-30  Paul Eggert  <eggert@twinsun.com>
62570
62571         * lib/quotearg.c: BSD/OS 4.1 wchar.h requires FILE and struct
62572         tm to be declared.
62573
62574 2001-08-30  Paul Eggert  <eggert@twinsun.com>
62575
62576         * lib/hash.c: Remove '2001' from copyright notice.
62577
62578 2001-08-30  Paul Eggert  <eggert@twinsun.com>
62579
62580         * lib/full-write.h: New file.
62581         * lib/Makefile.am (libfetish_a_SOURCES): Add full-write.h.
62582         * lib/full-write.c: Correct credits, as cccp.c no longer
62583         exists and anyway it was so heavily changed from the old cccp
62584         code as to be unrecognizable.  Include full-write.h.
62585         (full_write) Return size_t, with short writes meaning failure.
62586         All callers changed.  This fixes a bug with large buffers
62587         on 64-bit hosts.
62588         * lib/utime.c: Include full-write.h.
62589
62590 2001-08-30  Paul Eggert  <eggert@twinsun.com>
62591
62592         * lib/exclude.c (bool): Declare, perhaps by including stdbool.h.
62593         (<sys/types.h>): Include only if HAVE_SYS_TYPES_H.
62594         (<stdlib.h>, <string.h>, <strings.h>, <inttypes.h>, <stdint.h>):
62595         Include if available.
62596         (<xalloc.h>): Include
62597         (SIZE_MAX): Define if <stdint.h> or <inttypes.h> doesn't.
62598         (verify): New macro.  Use it to verify that EXCLUDE macros do not
62599         collide with FNM macros.
62600         (struct patopts): New struct.
62601         (struct exclude): Use it, as exclude patterns now come with options.
62602         (new_exclude): Support above changes.
62603         (new_exclude, add_exclude_file):
62604         Initial size must now be a power of two to simplify overflow checking.
62605         (free_exclude, fnmatch_no_wildcards): New function.
62606         (excluded_filename): No longer requires options arg, as the options
62607         are determined by add_exclude.  Now returns bool, not int.
62608         (excluded_filename, add_exclude):
62609         Add support for the fancy new exclusion options.
62610         (add_exclude, add_exclude_file): Now takes int options arg.
62611         Check for arithmetic overflow when computing sizes.
62612         (add_exclude_file): xrealloc might modify errno, so don't
62613         realloc until after errno might be used.
62614
62615         * lib/exclude.h (EXCLUDE_ANCHORED, EXCLUDE_INCLUDE,EXCLUDE_WILDCARDS):
62616         New macros.
62617         (free_exclude): New decl.
62618         (add_exclude, add_exclude_file): Now takes int options arg.
62619         (excluded_filename): No longer requires options arg, as the options
62620         are determined by add_exclude.  Now returns bool, not int.
62621
62622 2001-08-30  Paul Eggert  <eggert@twinsun.com>
62623
62624         * lib/alloca.c (alloca): Arg is of type size_t, not unsigned.
62625
62626 2001-08-27  Jim Meyering  <meyering@lucent.com>
62627
62628         * lib/Makefile.am (libfetish_a_SOURCES): Add strtoxmax.c
62629
62630         * lib/version-etc.c (N_): Remove definition.
62631         Revert most of last change.
62632         Instead, simply don't mark the `Copyright...' string for translation.
62633         Based on advice from Paul Eggert.
62634
62635         * lib/strtoxmax.c: Tweak comment.
62636
62637 2001-08-26  Jim Meyering  <meyering@lucent.com>
62638
62639         * m4/jm-macros.m4: Require jm_AC_PREREQ_XSTRTOIMAX.
62640
62641         * m4/xstrtoimax.m4: New file.
62642         * m4/xstrtoumax.m4: Add comments explaining why we
62643         AC_REPLACE_FUNCS(strtol).
62644
62645 2001-08-26  Jim Meyering  <meyering@lucent.com>
62646
62647         * lib/version-etc.c (version_etc_copyright_fmt): Replace literal year
62648         of copyright with `%s' so translators don't get an untranslated
62649         message in 2002.
62650         (COPYRIGHT_YEAR): Define.
62651         (version_etc): Use fprintf rather than fputs.
62652         Suggestion from Ulrich Drepper.
62653
62654         * lib/Makefile.am (libfetish_a_SOURCES): Add xstrtoimax.c.
62655
62656         * lib/strtoll.c: New file, from GNU libc.
62657         * lib/xstrtoimax.c: New file.
62658
62659         * lib/xstrtol.h: Add xstrtoimax.
62660         * lib/strtoumax.c: New file.  Simply include "strtoumax.c".
62661         * lib/strtoimax.c: New file.  Likewise, but first define
62662         STRTOUXMAX_SIGNED.
62663
62664         * lib/strtoumax.c: Factor to work both for unsigned and signed types,
62665         ...
62666         * lib/strtoxmax.c: ... then renamed to this.
62667
62668 2001-08-18  Paul Eggert  <eggert@twinsun.com>
62669
62670         * m4/inttypes.m4: Add AC_PREREQ(2.13).
62671         (jm_AC_HEADER_INTTYPES_H): Test for intmax_t, too.
62672         (jm_AC_TYPE_INTMAX_T): New macro.
62673         (jm_AC_TYPE_UINTMAX_T): Moved here from uintmax_t.m4.
62674
62675         * m4/longlong.m4 (jm_AC_TYPE_LONG_LONG): New macro.
62676
62677         * m4/longlong.m4: Renamed from ulonglong.m4.
62678         * m4/inttypes.m4: Renamed from inttypes_h.m4.
62679         * m4/uintmax_t.m4: Removed.
62680
62681 2001-08-13  Paul Eggert  <eggert@twinsun.com>
62682
62683         * lib/Makefile.am (unlocked-io.h): Do not append "_unlocked" twice.
62684         Port to Solaris 8, where 'sed' requires a space after the 'r'
62685         command, and where sh dislikes "$/".  Clean up the spacing a bit.
62686         Redirect output to $tmp just once.
62687
62688 2001-08-12  Paul Eggert  <eggert@sic.twinsun.com>
62689
62690         * lib/addext.c (<errno.h>): Include.
62691         (errno): Declare if not defined.
62692         (addext): Work correctly when pathconf returns -1 and leaves
62693         errno alone because there is no limit.  Also, work even if
62694         pathconf returns a value greater than SIZE_MAX.
62695
62696 2001-08-12  Jim Meyering  <meyering@lucent.com>
62697
62698         * m4/afs.m4, assert.m4, bison.m4, check-decl.m4, chown.m4, d-ino.m4,
62699         d-type.m4, dos.m4, error.m4, fnmatch.m4, fpending.m4, fstypename.m4,
62700         fsusage.m4, ftruncate.m4, getgroups.m4, glibc.m4, gnu-source.m4,
62701         group-member.m4, jm-glibc-io.m4, jm-macros.m4, jm-mktime.m4,
62702         jm-winsz1.m4, jm-winsz2.m4, lchown.m4, lib-check.m4, libintl.m4,
62703         link-follow.m4, ls-mntd-fs.m4, lstat.m4, malloc.m4, mbrtowc.m4,
62704         mbstate_t.m4, mbswidth.m4, memcmp.m4, nanosleep.m4, perl.m4,
62705         prereq.m4, putenv.m4, readdir.m4, realloc.m4, regex.m4, rename.m4,
62706         rmdir-errno.m4, search-libs.m4, st_dm_mode.m4, st_mtim.m4, stat.m4,
62707         strftime.m4, timespec.m4, unlink-busy.m4, uptime.m4, utimbuf.m4,
62708         utime.m4, utimes.m4, xstrtoumax.m4:
62709         Quote the first argument in each use of AC_DEFUN.
62710
62711 2001-08-12  Jim Meyering  <meyering@lucent.com>
62712
62713         * lib/xgetcwd.c (xgetcwd) [defined __GLIBC__ && __GLIBC__ >= 2]:
62714         Simply `return getcwd (NULL, 0);'.
62715         [! (defined __GLIBC__ && __GLIBC__ >= 2)]:
62716         Use 1300 as initial value for length, not PATH_MAX.
62717
62718         * lib/pathmax.h: Clean up cpp syntax.
62719
62720 2001-08-12  Jim Meyering  <meyering@lucent.com>
62721
62722         * lib/gettimeofday.c: New file.
62723         * lib/gtod.h: New file.
62724         * lib/Makefile.am (libfetish_a_SOURCES): Add gtod.h.
62725
62726 2001-08-05  Jim Meyering  <meyering@lucent.com>
62727
62728         * m4/jm-macros.m4: Require autoconf-2.52.
62729
62730 2001-08-04  Jim Meyering  <meyering@lucent.com>
62731
62732         * lib/error.h (__attribute__): Remove `|| __STRICT_ANSI__' from #if
62733         stmt, to get in sync with glibc.
62734
62735 2001-08-03  Paul Eggert  <eggert@twinsun.com>
62736
62737         The following changes are from gettext 0.10.39 as maintained by
62738         Bruno Haible.
62739
62740         * lib/mbswidth.h (MBSW_REJECT_UNPRINTABLE, MBSW_REJECT_INVALID):
62741         Renamed from MBSW_ACCEPT_UNPRINTABLE and MBSW_ACCEPT_INVALID
62742         with inverted sense.  All uses changed.
62743
62744         * lib/mbswidth.c: Don't include <limits.h>.
62745         Include <stdlib.h> and <string.h> unconditionally.
62746         (iswcntrl, mbsinit, ISCNTRL): New macros.
62747         (mbsnwidth): Use K&R style function declarations.
62748         Don't bother checking for MB_LEN_MAX == 1, since the compiler
62749         can optimize it when MB_CUR_MAX == 1.
62750         The width of control characters is zero, not 1.
62751
62752 2001-08-03  Paul Eggert  <eggert@twinsun.com>
62753
62754         The following changes are from gettext 0.10.39 as maintained by
62755         Bruno Haible, except that getline.m4 continues to use AC_LIBOBJ.
62756
62757         * m4/codeset.m4: Upgrade to serial AM1.
62758         (AM_LANGINFO_CODESET): Renamed from jm_LANGINFO_CODESET;
62759         all uses changed.  Quote first arg of AC_DEFUN.
62760         (am_cv_langinfo_codeset): Renamed from jm_cv_langinfo_codeset.
62761
62762         * m4/iconv.m4: Upgrade to serial AM2.
62763         (AM_ICONV): Renamed from jm_ICONV; all uses changed.
62764         Add --with-libconv-prefix.
62765         Quote first arg of AC_DEFUN.  Add description for ICONV_CONST.
62766         (am_cv_func_iconv): Renamed from jm_cv_func_iconv.
62767         (am_cv_lib_iconv): Renamed from jm_cv_lib_iconv.
62768         (am_cv_proto_iconv): Renamed from jm_cv_proto_iconv.
62769         * m4/jm-macros.m4 (jm_MACROS): Reflect s/jm_/AM_/ renamings.
62770
62771         * m4/c-bs-a.m4 (AC_C_BACKSLASH_A): Quote first arg of AC_DEFUN.
62772         * m4/getline.m4 (AM_FUNC_GETLINE): Likewise.
62773         * m4/glibc21.m4 (jm_GLIBC21): Likewise.
62774         * m4/inttypes_h.m4 (jm_AC_HEADER_INTTYPES_H): Likewise.
62775         * m4/isc-posix.m4 (AC_ISC_POSIX): Likewise.
62776         * m4/lcmessage.m4 (AM_LC_MESSAGES): Likewise.
62777         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): Likewise.
62778         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Likewise.
62779         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Likewise.
62780
62781         * m4/getline.m4 (AM_FUNC_GETLINE): Don't bother checking for
62782         string.h any more.
62783
62784         * m4/progtest.m4 (AM_PATH_PROG_WITH_TEST): If not found, print "no",
62785         not the default value.
62786
62787         2001-06-25  Bruno Haible  <haible@clisp.cons.org>
62788         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Don't require AM_C_PROTOTYPES.
62789         Also check for mbsinit.  Needed for SCO 3.2v5.0.2.
62790         Also include <string.h>; this is where AIX 3.2.5 declares wcwidth.
62791         Also check for iswcntrl, used for wcwidth fallback.
62792         Use AC_TRY_COMPILE to emulate AC_CHECK_DECLS, for portability
62793         to Autoconf 2.13.
62794
62795 2001-08-03  Jim Meyering  <meyering@lucent.com>
62796
62797         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Use `#include', not `@%:@include',
62798         as it was in the original.  Reported by Paul Eggert.
62799
62800 2001-07-16  Jim Meyering  <meyering@lucent.com>
62801
62802         * m4/gettimeofday.m4: New file.
62803         Prompted by a report from Bernhard Baehr.
62804
62805 2001-07-15  Jim Meyering  <meyering@lucent.com>
62806
62807         * m4/Makefile.am.in (Makefile.am): Remove most of the unlocked-io.h
62808         stuff. Now it's in ../Makefile.cfg.
62809
62810 2001-07-15  Jim Meyering  <meyering@lucent.com>
62811
62812         * lib/Makefile.am (EXTRA_DIST): Add unlocked-io.hin.
62813         (BUILT_SOURCES): Add unlocked-io.h.
62814         (io_functions): Define.
62815         (unlocked-io.h): New rule.
62816         (DISTCLEANFILES): Add unlocked-io.h.
62817         (all-local): Depend on unlocked-io.h, to ensure it is created.
62818
62819         * lib/unlocked-io.hin: New file
62820
62821         * lib/regex.c: Update from glibc.
62822
62823 2001-07-05  Jim Meyering  <meyering@lucent.com>
62824
62825         * lib/Makefile.am (noinst_HEADERS): Remove definition, per new automake
62826         recommendation.
62827         (libfetish_a_SOURCES): Put all .h files here instead.
62828         Remove a thus-exposed (better checks in automake) duplicate and
62829         two unnecessary .h files.
62830
62831 2001-07-04  Jim Meyering  <meyering@lucent.com>
62832
62833         * m4/Makefile.am.in (glibc-io.struct): New target.  Rework the code
62834         that generates jm-glibc-io.m4 so that it doesn't trigger any make
62835         distcheck failure.
62836
62837 2001-07-02  Jim Meyering  <meyering@lucent.com>
62838
62839         The following changes were prompted by suggestions from Bruno Haible.
62840
62841         * m4/jm-glibc-io.m4n: New file, the template from which jm-glibc-io.m4
62842         is now generated.
62843         * m4/Makefile.am.in (Makefile.am): Include jm-glibc-io.m4n in emitted
62844         definition of EXTRA_DIST.
62845         (Makefile.am): Emit the dependency, `all-local: jm-glibc-io.m4' to
62846         ensure that the generated file is created/updated whenever the list
62847         of $(unlocked_functions) is changed.
62848         (jm-glibc-io.m4): New rule.
62849         (unlocked-io.h): New rule -- currently unused.
62850
62851 2001-06-24  Jim Meyering  <meyering@lucent.com>
62852
62853         * m4/regex.m4 (jm_INCLUDED_REGEX): Use a quadrigraph to represent an
62854         unmatched right bracket, rather than kludging it with an extra,
62855         falsely-matching quote in a comment.  Patch by Akim Demaille.
62856
62857 2001-06-11  Jim Meyering  <meyering@lucent.com>
62858
62859         * lib/regex.c: Update from GNU libc.
62860
62861 2001-05-27  Jim Meyering  <meyering@lucent.com>
62862
62863         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for ut_type in struct utmpx.
62864         Check for ut_type in struct utmp.
62865
62866 2001-05-27  Jim Meyering  <meyering@lucent.com>
62867
62868         * lib/readutmp.h (UT_TYPE): Define.
62869
62870 2001-05-24  Jim Meyering  <meyering@lucent.com>
62871
62872         * lib/argmatch.c: Include "quote.h".
62873         (argmatch_invalid): Remove explicit `' quotes.  Instead, use the
62874         quote function.  Reported by Göran Uddeborg.
62875
62876 2001-05-22  Jim Meyering  <meyering@lucent.com>
62877
62878         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Don't use AC_LIBOBJ(strftime),
62879         now that we use the package-supplied version unconditionally.
62880         (jm_FUNC_STRFTIME): Don't replace strftime, for the same reason.
62881
62882 2001-05-21  Jim Meyering  <meyering@lucent.com>
62883
62884         * m4/regex.m4: Change a couple backticks to single quotes to avoid
62885         shell syntax errors.
62886
62887 2001-05-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
62888
62889         * m4/dos.m4 (jm_AC_DOS): Check for _WIN32, __WIN32__, and __MSDOS__.
62890
62891 2001-05-20  Paul Eggert  <eggert@twinsun.com>
62892
62893         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME):
62894         Don't bother to check library strftime, since
62895         we'll be using our own my_strftime function anyway.
62896         Define my_strftime instead of strftime.
62897
62898 2001-05-20  Alexandre Duret-Lutz  <duret_g@epita.fr>
62899
62900         * lib/dirname.c (dir_name): Compute append_dot using path, not newpath
62901         which is not yet declared.
62902
62903 2001-05-15  Jim Meyering  <meyering@lucent.com>
62904
62905         * m4/regex.m4: Use proper quoting so brackets appear in the test
62906         program.
62907         Reported by, and with help from, Bruno Haible.
62908
62909 2001-05-13  Jim Meyering  <meyering@lucent.com>
62910
62911         * m4/jm-macros.m4 (major_t, minor_t): Define to unsigned int if
62912         undefined.
62913
62914 2001-05-11  Paul Eggert  <eggert@twinsun.com>
62915
62916         dirname code cleanup.  base_name now behaves more compatibly
62917         with POSIX basename when given file names that have trailing
62918         slashes, and similarly for dir_name.  Add new primitives
62919         base_len and dir_len.  Put the directory-name-related decls
62920         into dirname.h.
62921
62922         * lib/addext.c (ISSLASH, base_name): Remove; now in dirname.h.
62923         * lib/backupfile.c (base_name): Likewise.
62924         * lib/basename.c (FILESYSTEM_PREFIX_LEN, PARAMS, ISSLASH): Likewise.
62925         * lib/dirname.c (FILESYSTEM_PREFIX_LEN, ISSLASH): Likewise.
62926         * lib/makepath.c (strip_trailing_slashes): Likewise.
62927         * lib/path-concat.c (DIRECTORY_SEPARATOR, FILESYSTEM_PREFIX_LEN,
62928         ISSLASH): Likewise.
62929         * lib/rename.c (strip_trailing_slashes): Likewise.
62930         * lib/same.c (base_name): Likewise.
62931         * lib/stripslash.c (ISSLASH): Likewise.
62932
62933         * lib/addext.c: Include <dirname.h> after size_t is defined.
62934         * lib/backupfile.c: Likewise.
62935
62936         * lib/addext.c (addext): Use base_len to trim redundant
62937         trailing slashes instead of doing it ourselves.
62938         But do not trim the last slash if it is not redundant.
62939
62940         * lib/backupfile.c (find_backup_file_name,
62941         max_backup_version): Use base_len instead of rolling it ourselves.
62942         Handle the case of "" and (on DOS) "C:" correctly.
62943
62944         * lib/basename.c: Do not include <stdio.h>, <assert.h>; no longer
62945         needed. Include <string.h>, <dirname.h>.
62946         (base_name): Allow file names ending in slashes, other than names
62947         that are all slashes.  In this case, return the basename followed
62948         by the slashes.  This is more general, and can be used in places
62949         where the original base_name purposely had an assertion failure.
62950         (base_len): New function.
62951
62952         * lib/dirname.c: Include <string.h> instead of <stdlib.h>.
62953         Do not include <assert.h>; no longer needed.
62954         Include xalloc.h.
62955         (memrchr): Remove decl.
62956         (dir_name_r): Remove.
62957         (dir_len): Renamed from dirlen.  All callers changed.
62958         Rewrite in terms of base_name, for simplicity and consistency.
62959         (dir_name): Never return NULL.  All callers changed.
62960         Do not include <stdlib.h> in test program; no longer needed.
62961         return 0; is fine for test program.
62962
62963         * lib/dirname.h (DIRECTORY_SEPARATOR, ISSLASH, FILESYSTEM_PREFIX_LEN):
62964         New macros.
62965         (base_name, base_len, dir_len, strip_trailing_slashes): New decls.
62966
62967         * lib/path-concat.c (path_concat): Use base_len to compute
62968         base length, not strlen; this means we cannot rely on memcpy
62969         to null-terminate.
62970
62971         * lib/same.c (STREQ): Remove.
62972         (same_name): Handle the case where the basename ends in trailing '/'.
62973
62974         * lib/stripslash.c (strip_trailing_slashes): Return nonzero if
62975         a slash was stripped.  Do not strip the last slash after a
62976         file system prefix.
62977
62978 2001-05-11  Paul Eggert  <eggert@twinsun.com>
62979
62980         * lib/Makefile.am (libfetish_a_SOURCES):
62981         Add strftime.c, since we now compile it on all hosts.
62982
62983         * lib/strftime.c (my_strftime):
62984         Define to nstrftime if emacs, but only if my_strftime is not defined.
62985         (extra_args, extra_args_spec, extra_args_spec_iso): Rename from
62986         ut_argument, ut_argument_spec, ut_argument_spec_iso, respectively.
62987         Add one more extra argument: a nanoseconds value.
62988         All uses changed.
62989         (ns): New macro.
62990         (my_strftime function): Add %N format.
62991         (emacs_strftimeu): Renamed from emacs_strftime,
62992         with extra ut argument.
62993
62994 2001-05-09  Paul Eggert  <eggert@twinsun.com>
62995
62996         * m4/jm-macros.m4 (jm_MACROS): Do not check for fseeko; no longer used.
62997
62998 2001-04-21  Jim Meyering  <meyering@lucent.com>
62999
63000         * m4/rmdir-errno.m4: Write to a new file, so that a restrictive umask
63001         doesn't interfere.
63002
63003 2001-04-21  Alexandre Duret-Lutz  <duret_g@epita.fr>
63004
63005         * m4/ftruncate.m4: Check for chsize.
63006         Link with ftruncate.o unconditionally if ftruncate is missing.
63007         This was required when cross-compiling to i586-mingw32msvc.
63008
63009 2001-04-08  Jim Meyering  <meyering@lucent.com>
63010
63011         * lib/getdate.y (get_date): Set tm_isdst to -1 to ensure that it is
63012         recomputed; that's necessary when the offset spans a DST transition.
63013         Patch by David J. MacKenzie.  Reported by Hon-Yin Kok.
63014
63015 2001-04-02  Jim Meyering  <meyering@lucent.com>
63016
63017         * lib/regex.h, regex.c: Update from GNU libc.
63018
63019 2001-03-24  Jim Meyering  <meyering@lucent.com>
63020
63021         * m4/jm-macros.m4: Require autoconf-2.49d.
63022
63023 2001-03-20  Bruno Haible  <haible@clisp.cons.org>
63024
63025         * m4/iconv.m4 (jm_ICONV): Recommend GNU libiconv.
63026
63027 2001-03-19  Paul Eggert  <eggert@twinsun.com>
63028
63029         * lib/version-etc.c (version_etc_copyright): Update to 2001.
63030
63031 2001-03-17  Jim Meyering  <meyering@lucent.com>
63032
63033         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Remove my copy of AC_FUNC_MEMCMP,
63034         now that the version in autoconf is equivalent.
63035         (jm_FUNC_MEMCMP): Adjust to use AC_FUNC_MEMCMP.
63036
63037         * m4/error.m4 (jm_PREREQ_ERROR): Invoke AC_FUNC_STRERROR_R.
63038         Suggestion from Akim Demaille.
63039
63040         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_TEMPNAME.
63041         (jm_PREREQ_TEMPNAME): New function.
63042
63043 2001-03-16  Paul Eggert  <eggert@twinsun.com>
63044
63045         * lib/tempname.c (uint64_t): Define to uintmax_t if
63046         not defined, and if UINT64_MAX is not defined.
63047         Required at least for Vax Ultrix4.3, which doesn't define uint64_t.
63048         Reported by John David Anglin.
63049
63050 2001-03-15  Bruno Haible  <haible@clisp.cons.org>
63051
63052         * lib/localcharset.c (locale_charset): Allow wildcard syntax. Also
63053         resolve alias if codeset is empty.
63054         * lib/config.charset (BeOS): Use wildcard syntax.
63055
63056 2001-03-13  Jim Meyering  <meyering@lucent.com>
63057
63058         * lib/path-concat.c (path_concat)
63059         [FILESYSTEM_ACCEPTS_DRIVE_LETTER_PREFIX]: Don't insert a backslash when
63060         concatenating e.g., `C:' and `foo'.
63061         From Bruno Haible.
63062
63063 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
63064
63065         * lib/localcharset.c (locale_charset): Don't use
63066         setlocale(LC_CTYPE,NULL). Don't return NULL.
63067         * lib/unicodeio.c (print_unicode_char): Simplify accordingly.
63068
63069 2001-03-06  Bruno Haible  <haible@clisp.cons.org>
63070
63071         * lib/config.charset: Update for FreeBSD 4.2 and OSF/1 5.1. Add
63072         support for DOS/DJGPP.
63073
63074 2001-03-01  Paul Eggert  <eggert@twinsun.com>
63075
63076         * m4/jm-macros.m4 (jm_MACROS): Use mkstemp replacement if the system
63077         lacks mkstemp.  Compile our own tempname.c if we compile our own
63078         mkstemp.c, as mkstemp relies on tempname.
63079
63080 2001-03-01  Jim Meyering  <meyering@lucent.com>
63081
63082         * m4/dos.m4 (jm_AC_DOS): Remove extra backslashes, now that
63083         AH_VERBATIM really does output its argument verbatim.
63084
63085 2001-02-28  Paul Eggert  <eggert@twinsun.com>
63086
63087         * lib/Makefile.am (libfetish_a_SOURCES):
63088         Add dup-safer.c, fopen-safer.c.
63089         (noinst_HEADERS): Add stdio-safer.h, unistd-safer.h.
63090
63091         * lib/dup-safer.c, lib/fopen-safer.c, lib/stdio-safer.h:
63092         * lib/unistd-safer.h: New files.
63093
63094 2001-02-25  Paul Eggert  <eggert@twinsun.com>
63095
63096         The mkstemp replacement is taken from glibc 2.2.2, with some
63097         portability fixes for use outside glibc, as follows:
63098
63099         * lib/tempname.c (struct_stat64): New macro.
63100         (direxists, __gen_tempname): Use it.
63101         This avoids a portability problem with Solaris 8.
63102
63103         * lib/tempname.c (<config.h>): Include if HAVE_CONFIG_H.
63104         (<stddef.h>, <stdint.h>, <string.h>):
63105         Include only if STDC_HEADERS || _LIBC.
63106         (<fcntl.h>): Include only if HAVE_FCNTL_H || _LIBC.
63107         (<unistd.h>): Include only if HAVE_UNISTD_H || _LIBC.
63108         (<sys/time.h>): Include only if HAVE_SYS_TIME_H || _LIBC.
63109         (__set_errno): Define this macro if <errno.h> doesn't.
63110         (P_tmpdir, TMP_MAX, __GT_FILE, __GT_BIGFILE, __GT_DIR, __GT_NOCREATE):
63111         Define these macros if <stdio.h> doesn't.
63112         (S_ISDIR, S_IRUSR, S_IWUSR, S_IXUSR):
63113         Define these macros if <sys/stat.h>
63114         doesn't.  Ignore <sys/stat.h> S_ISDIR if STAT_MACROS_BROKEN.
63115         (stat64, __getpid, __gettimeofday, __mkdir, __open, __open64, lxstat64,
63116         __xstat64): Define if not _LIBC.
63117         (__secure_getenv): Define if ! (HAVE___SECURE_GETENV || _LIBC).
63118         (__gen_tempname): Invoke gettimeofday only if
63119         HAVE_GETTIMEOFDAY || _LIBC;
63120         otherwise, fall back on plain "time".
63121         Use macros like S_IRUSR | S_IWUSR rather than octal values like 0600.
63122
63123         * lib/mkstemp.c (__GT_FILE): Define to zero if not defined.
63124
63125         * lib/mkstemp.c, lib/tempname.c: New files, taken from glibc 2.2.2.
63126
63127 2001-02-18  Paul Eggert  <eggert@twinsun.com>
63128
63129         * m4/jm-macros.m4 (jm_CHECK_ALL_HEADERS): Check for sys/resource.h.
63130
63131 2001-02-17  Paul Eggert  <eggert@twinsun.com>
63132
63133         * m4/mbrtowc.m4: New file, defining jm_FUNC_MBRTOWC.
63134         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH):
63135         Use jm_FUNC_MBRTOWC, not AC_CHECK_FUNCS(mbrtowc).
63136         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Likewise.
63137
63138 2001-02-17  Paul Eggert  <eggert@twinsun.com>
63139
63140         * lib/mbswidth.c, quotearg.c (mbrtowc, mbsinit):
63141         Remove workaround macros for hosts that have mbrtowc but not
63142         mbstate_t, as we now insist on proper declarations for both
63143         before using mbrtowc.
63144
63145 2001-02-17  Jim Meyering  <meyering@lucent.com>
63146
63147         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Don't check for
63148         getmntent via AC_CHECK_FUNCS, since that would get a `no' and disrupt
63149         further attempts by AC_FUNC_GETMNTENT to check with e.g., -lgen on
63150         UnixWare 7.1.1.
63151
63152         * m4/mbrtowc.m4 (jm_FUNC_MBRTOWC): Adapt to use AC_CACHE_CHECK etc.,
63153         rather than AC_CACHE_VAL.
63154
63155 2001-02-17  Jim Meyering  <meyering@lucent.com>
63156
63157         * lib/strtoul.c: Sync from GNU libc.  Use double quotes, not <...>
63158         around included file name.
63159
63160         * lib/strnlen.c (__strnlen): Merge in a change from GNU libc.
63161
63162         * lib/strftime.c: Update from GNU libc (the only changes were to
63163         comments).
63164
63165 2001-02-17  Jim Meyering  <meyering@lucent.com>
63166
63167         * lib/regex.c: Update from libc.
63168
63169 2001-02-17  Bruno Haible  <haible@clisp.cons.org>
63170
63171         * lib/mbswidth.h (mbswidth): Also define as macro, to avoid prototype
63172         clash.
63173
63174 2001-02-16  Paul Eggert  <eggert@twinsun.com>
63175
63176         * lib/alloca.c (malloc): Undef before defining, since stdlib.h
63177         may have defined it.  Needed for Encore Umax-3.0.9.16b systems.
63178         Reported by Mark Hounschell via Paul Eggert.
63179
63180 2001-02-07  Jim Meyering  <meyering@lucent.com>
63181
63182         * m4/regex.m4 (jm_INCLUDED_REGEX): Add a test for the latest bug.
63183
63184 2001-02-05  Jim Meyering  <meyering@lucent.com>
63185
63186         * m4/jm-macros.m4: Require autoconf-2.14d (not yet released), because
63187         it includes the patch required for `large file' support with at least
63188         HP-UX's 10.20 /bin/cc.
63189
63190 2001-02-03  Jim Meyering  <meyering@lucent.com>
63191
63192         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Restore prior use of
63193         AS_IF, now that it works once again (mysteriously).
63194         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
63195
63196 2001-01-30  Jim Meyering  <meyering@lucent.com>
63197
63198         Don't use filenames that are 8.3-equivalent to "conftest" on DOS.
63199         * m4/chown.m4: Rename conftestchown to conftest.chown.
63200         * m4/rename.m4: s/conftestdir/conftest.d1/ and
63201         s/conftestdir2/conftest.d2/.
63202         * m4/utimes.m4: s/conftestdata/conftest.data/
63203         Inspired by Pavel Roskin's change in autoconf.
63204
63205 2001-01-30  Bruno Haible  <haible@clisp.cons.org>
63206
63207         * lib/config.charset: Update for FreeBSD 4.2.
63208
63209 2001-01-27  Jim Meyering  <meyering@lucent.com>
63210
63211         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Open-code what was
63212         a use of AS_IF.
63213         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Likewise.
63214
63215 2001-01-26  Jim Meyering  <meyering@lucent.com>
63216
63217         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Check for stddef.h, now that
63218         quotearg.c includes it.
63219
63220 2001-01-26  Jim Meyering  <meyering@lucent.com>
63221
63222         * lib/quotearg.c: Include stddef.h.
63223         * lib/quote.c: Include stddef.h.
63224         Reported by Axel Kittenberger.
63225
63226         * lib/xmalloc.c [HAVE_DONE_WORKING_MALLOC_CHECK]: Enclose error-evoking
63227         line in double quotes so that it evokes a better diagnostic.
63228         [HAVE_DONE_WORKING_REALLOC_CHECK]: Likewise.
63229         Reported by Axel Kittenberger.
63230
63231 2001-01-24  Stefan Monnier  <monnier@cs.yale.edu>
63232
63233         * regex.c (mutually_exclusive_p): Don't blindly handle `charset_not'
63234         as if it was a `charset'.
63235
63236 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
63237
63238         * m4/iconv.m4 (jm_ICONV): Also check whether the iconv declaration
63239         has const.
63240
63241 2001-01-21  Bruno Haible  <haible@clisp.cons.org>
63242
63243         * lib/unicodeio.c (print_unicode_char): Cast the second iconv() arg,
63244         to avoid a warning.  Add back 'const' to inptr.
63245
63246 2001-01-20  Jim Meyering  <meyering@lucent.com>
63247
63248         Be sure that headers are checked before used in code compiled
63249         for the type checks.
63250         * m4/jm-macros.m4 (jm_MACROS): Remove all header checks.
63251         In place of that, invoke jm_CHECK_ALL_TYPES.
63252         (jm_CHECK_ALL_HEADERS): New functions with the above checks.
63253         (jm_CHECK_ALL_TYPES): Require jm_CHECK_ALL_HEADERS.
63254         Alan Iwi reported a build failure on an f300-fujitsu-uxpv4.1_ES;
63255         The check for ssize_t was mistakenly run before the test for unistd.h.
63256
63257         The configure-time check for stdbool.h was missing.
63258         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_HASH.
63259         (jm_PREREQ_HASH): New function.
63260
63261 2001-01-17  Jim Meyering  <meyering@lucent.com>
63262
63263         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use AS_IF, not AS_IFELSE,
63264         for autoconf-2.49c.
63265         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Likewise.
63266
63267 2001-01-16  Jim Meyering  <meyering@lucent.com>
63268
63269         * lib/basename.c: Include <stdio.h>, needed by assert on SunOS 4.
63270         From Bruno Haible.
63271
63272 2001-01-14  Jim Meyering  <meyering@lucent.com>
63273
63274         * m4/rename.m4: Use temporary directories named conftestdir{,2}, not
63275         foo and bar.  Create conftestdir/ in the script, not in the C code.
63276         Remove directories in the script, not in the C code.
63277         Remove conftestdir{,2} before trying to create the directory.
63278         Make the entire configure script fail if the mkdir fails.
63279
63280 2001-01-14  Jim Meyering  <meyering@lucent.com>
63281
63282         * lib/rename.c: New file.  From Volker Borchert.
63283         Include stdlib.h, string.h or strings.h, and xalloc.h.
63284         Use strip_trailing_slashes rather than open-coding it.
63285
63286 2001-01-03  Paul Eggert  <eggert@twinsun.com>
63287
63288         * lib/strftime.c: Sync with glibc time/strftime.c 1.81.
63289
63290 2001-01-03  Jim Meyering  <meyering@lucent.com>
63291
63292         * lib/unicodeio.c (print_unicode_char): Remove `const' from declaration
63293         of local `inptr' to avoid warning with some system declarations of
63294         iconv.
63295
63296 2001-01-02  Volker Borchert  <bt@teknon.de>
63297
63298         * m4/rename.m4: New file.
63299         * m4/jm-macros.m4 (jm_MACROS): Require vb_FUNC_RENAME.
63300
63301 2001-01-01  Jim Meyering  <meyering@lucent.com>
63302
63303         * m4/prereq.m4 (jm_PREREQ_READUTMP): Include utmp.h (if available),
63304         even on systems with utmpx.h.  It's necessary for the declaration of
63305         utmp's ut_user member.  Reported by Andreas Jaeger.
63306
63307         * m4/check-decl.m4 (jm_CHECK_DECLS): Include grp.h and pwd.h if
63308         available. They are required for the declarations of getgrgid and
63309         getpwuid resp.
63310         (_jm_DECL_HEADERS): Check for grp.h and pwd.h.
63311         Reported by Andreas Jaeger.
63312
63313 2001-01-01  Alexandre Duret-Lutz  <duret_g@epita.fr>
63314
63315         * m4/libintl.m4 (AM_GNU_GETTEXT): Define MKINSTALLDIRS by
63316         expanding the value of $ac_aux_dir, as in AM_MISSING_HAS_RUN,
63317         so `make install' also works in VPATH builds.
63318
63319 2000-12-31  Alexandre Duret-Lutz  <duret_g@epita.fr>
63320
63321         * m4/libintl.m4 (AM_WITH_NLS): When using AC_CONFIG_AUX_DIR,
63322         prepend $(top_srcdir) to the value of MKINSTALLDIRS so that it
63323         can be used in subdirectories.
63324
63325 2000-12-29  Paul Eggert  <eggert@twinsun.com>
63326
63327         * lib/modechange.c: Do not assume that mode_t uses the
63328         traditional octal encoding.  E.g. "chmod 1 FOO" should set
63329         the other-execute bit of FOO even if S_IXOTH != 1.
63330
63331         (SUID, SGID, SVTX, RUSR, WUSR, XUSR, RGRP, WGRP, XGRP, ROTH,
63332         WOTH, XOTH, ALLM): New macros.
63333         (S_ISUID, S_ISGID, S_ISVTX, S_IRUSR, S_IWUSR, S_IXUSR,
63334          S_IRGRP, S_IWGRP, S_IXGRP, S_IROTH, S_IWOTH, S_IXOTH):
63335         Use them.
63336         (S_ISGID): Fix typo; it was defaulting to the same value as S_ISUID.
63337         (S_IRWXU, S_IRWXG, S_IRWXO): Specify defaults in terms of the above.
63338         (mode_compile):
63339         No need to use uintmax_t; unsigned long is long enough.
63340         Don't bother to get suffix since we don't use it.
63341
63342 2000-12-26  Jim Meyering  <meyering@lucent.com>
63343
63344         * m4/dos.m4 (jm_AC_DOS): Rewrite (though it's still a stub) to work
63345         better with autoheader.
63346
63347 2000-12-24  Jim Meyering  <meyering@lucent.com>
63348
63349         * lib/hash.c (is_prime): Return explicit boolean values.
63350         (hash_get_first): Return NULL to appease Irix5.6's 89.
63351         Reported by Nelson Beebe.
63352
63353 2000-12-19  Bruno Haible  <haible@clisp.cons.org>
63354
63355         * lib/localcharset.c (locale_charset): Add support for Win32.
63356
63357 2000-12-18  Paul Eggert  <eggert@twinsun.com>
63358
63359         * lib/physmem.h, lib/physmem.c: New files.
63360
63361         * lib/Makefile.am (libfetish_a_SOURCES): Add physmem.c.
63362         (noinst_HEADERS): Add physmem.h.
63363
63364         * lib/xstrtol.c (__xstrtol): Add undocumented suffixes 'g' and
63365         't' for compatibility with Solaris 8 sort.
63366
63367 2000-12-18  Bruno Haible  <haible@clisp.cons.org>
63368
63369         * lib/config.charset: Add support for BeOS.
63370
63371 2000-12-17  Jim Meyering  <meyering@lucent.com>
63372
63373         * m4/dos.m4 (jm_AC_DOS): New file and macro.
63374         * m4/jm-macros.m4 (jm_MACROS): Require jm_AC_DOS.
63375
63376 2000-12-16  Jim Meyering  <meyering@lucent.com>
63377
63378         This bug had a serious impact on chown: `chown N:M FILE' (for integer
63379         N and M) would have treated it like `chown N:N FILE'.
63380
63381         * lib/userspec.c (parse_user_spec): Fix typo: s/u/g/.
63382
63383 2000-12-16  Jim Meyering  <meyering@lucent.com>
63384
63385         * lib/getusershell.c [!SHELLS_FILE && __DJGPP__]: Define
63386         SHELLS_FILE to a file name that's useful on djgpp systems.
63387         Include stdlib.h.
63388         (ADDITIONAL_DEFAULT_SHELLS): Define.
63389         (default_shells): Prepend ADDITIONAL_DEFAULT_SHELLS.
63390         Based mostly on a patch from Prashant TR.
63391
63392 2000-12-16  Bruno Haible  <haible@clisp.cons.org>
63393
63394         * lib/config.charset: Add ISO-8859-3, BIG5HKSCS, GB18030, JOHAB,
63395         VISCII, CP874, CP949, CP950, CP1250, CP1253, CP1254, CP1255, CP1256,
63396         CP1257 to the list of canonical encodings. Rename EUC-CN to GB2312.
63397
63398 2000-12-08  Andreas Schwab  <schwab@suse.de>
63399
63400         * lib/mbswidth.c (mbsnwidth): Don't loop endlessly when called with an
63401         invalid mulitbyte sequence and with the MBSW_ACCEPT_INVALID flag set.
63402
63403 2000-12-07  Jim Meyering  <meyering@lucent.com>
63404
63405         * lib/stripslash.c (ISSLASH): Define.
63406         (strip_trailing_slashes): Use ISSLASH rather than comparing against
63407         `/'.
63408         From Prashant TR.
63409
63410         * lib/dirname.c (FILESYSTEM_PREFIX_LEN): Define.
63411         (dir_name_r): Declare this function as static.
63412         [BACKSLASH_IS_PATH_SEPARATOR]: Fix a bug that'd
63413         manifest itself on a name containing a mix of slashes and
63414         backslashes.
63415         Make this function work with names starting with a DOS-style
63416         drive letter and colon prefix.
63417         (dir_name): Append `.' if necessary.
63418         Based mostly on patches from Prashant TR and Eli Zaretskii.
63419
63420         * lib/dirname.h (dir_name_r): Remove prototype.
63421
63422 2000-12-06  Paul Eggert  <eggert@twinsun.com>
63423
63424         * m4/off_t-format.m4: Remove this file.
63425         * m4/jm-macros.m4 (jm_MACROS): Remove jm_SYS_OFF_T_PRINTF_FORMAT.
63426
63427 2000-12-06  Jim Meyering  <meyering@lucent.com>
63428
63429         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): If we need the
63430         replacement strtoull, we may well need the replacement strtoul, too.
63431         Check for declarations of strtoul and strtoull.
63432         Check for strtol.  Mainly as a cue to cause automake to include
63433         strtol.c -- that file is included by each of strtoul.c and strtoull.c.
63434         Check for limits.h -- strtol.c needs it.
63435
63436 2000-12-05  Jim Meyering  <meyering@lucent.com>
63437
63438         * lib/dirname.c (dir_name_r): Add `const' in a few local declarations.
63439
63440 2000-12-04  Jim Meyering  <meyering@lucent.com>
63441
63442         * lib/path-concat.c: [!HAVE_DECL_MALLOC]: Declare malloc.
63443         Also include memory.h, stdlib.h, unistd.h if appropriate.
63444         Reported by Andreas Jaeger (conflicting declaration of malloc).
63445
63446 2000-12-02  Jim Meyering  <meyering@lucent.com>
63447
63448         * m4/off_t-format.m4 (OFF_T_PRINTF_FORMAT_STRING): New file/macro.
63449         * m4/jm-macros.m4 (jm_MACROS): require it.
63450
63451 2000-12-02  Jim Meyering  <meyering@lucent.com>
63452
63453         * lib/closeout.h: Make idempotent, to avoid some obscure warnings.
63454
63455 2000-12-01  Paul Eggert  <eggert@twinsun.com>
63456
63457         * lib/memrchr.c: Include <config.h> before any system include file.
63458
63459 2000-11-30  Jim Meyering  <meyering@lucent.com>
63460
63461         * m4/jm-macros.m4 (jm_MACROS): Check for stdint.h.
63462
63463 2000-11-30  Jim Meyering  <meyering@lucent.com>
63464
63465         * m4/getloadavg.m4: s/ifval/m4_ifval/ to accommodate new autoconf.
63466
63467 2000-11-29  Paul Eggert  <eggert@twinsun.com>
63468
63469         * lib/dirname.c (dir_name_r): Fix typo: int -> size_t.
63470
63471 2000-11-26  Jim Meyering  <meyering@lucent.com>
63472
63473         * lib/memcoll.c: Include sys/types.h.  From Werner Almesberger.
63474
63475 2000-11-22  Paul Eggert  <eggert@twinsun.com>
63476
63477         * lib/strftime.c (my_strftime): Do not invoke mbrlen with a
63478         size of (size_t) -1; it's not portable.
63479
63480 2000-11-17  Jim Meyering  <meyering@lucent.com>
63481
63482         * lib/strstr.c: Update from GNU libc.
63483
63484 2000-11-17  Akim Demaille  <akim@epita.fr>
63485
63486         * lib/obstack.h: Formatting changes.
63487         (obstack_grow, obstack_grow0): Don't cast WHERE at all: that would
63488         prevent type checking.
63489         (obstack_ptr_grow, obstack_ptr_grow_fast): When assigning, don't
63490         cast the value to (void *): assigning a `foo *' to a `void *'
63491         variable is valid.
63492         (obstack_int_grow, obstack_int_grow_fast): Don't cast AINT to int.
63493
63494 2000-11-16  Jim Meyering  <meyering@lucent.com>
63495
63496         * lib/strverscmp.c: Incorporate weak-alias-related changes from glibc.
63497
63498 2000-11-11  Jim Meyering  <meyering@lucent.com>
63499
63500         * lib/error.c: Add a couple #includes, merging from GNU libc version.
63501
63502 2000-11-10  Jim Meyering  <meyering@lucent.com>
63503
63504         * lib/obstack.h: Update from GNU libc.
63505         * lib/obstack.c: Likewise.
63506
63507 2000-11-08  Bruno Haible  <haible@clisp.cons.org>
63508
63509         * m4/jm-macros.m4 (jm_MACROS): Add test for wcrtomb.
63510
63511 2000-11-06  Paul Eggert  <eggert@twinsun.com>
63512
63513         * lib/getusershell.c (setusershell): Use rewind rather than
63514         fseek/fseeko, to avoid configuration hassles with fseeko.
63515         Don't bother opening SHELLS_FILE if shellstream is NULL;
63516         it's not necessary.
63517
63518 2000-11-05  Jim Meyering  <meyering@lucent.com>
63519
63520         * lib/makepath.h (make_dir): Declare.
63521         * lib/makepath.c (make_dir): Remove `static' attribute.
63522         Tweak a comment.
63523
63524 2000-11-04  Jim Meyering  <meyering@lucent.com>
63525
63526         * m4/regex.m4: Use the `m4_' prefix on `syscmd' and `m4_sysval'.
63527
63528 2000-11-04  Alexandre Duret-Lutz  <duret_g@epita.fr>
63529
63530         * lib/hash.c (hash_get_next): Fix a thinko:  when ENTRY is the
63531         last one in a bucket, advance to the next bucket.
63532
63533 2000-11-02  Vesselin Atanasov  <vesselin@bgnet.bg>
63534
63535         * lib/fnmatch.c: Do not comment out all the code if we are using
63536         the GNU C library, because in some cases we are replacing buggy
63537         code in the GNU C library itself.
63538
63539 2000-10-30  Stefan Monnier  <monnier@cs.yale.edu>
63540
63541         * regex.c (re_iswctype, re_wctype_to_bit): Fix braino.
63542         (regex_compile): Catch bogus \(\1\).
63543
63544 2000-10-30  Paul Eggert  <eggert@twinsun.com>
63545
63546         * lib/fnmatch.c (FOLD): Do not assume that characters are unsigned.
63547         (fnmatch): Fix some FNM_FILE_NAME and FNM_LEADING_DIR bugs,
63548         e.g. fnmatch("d*/*1", "d/s/1", FNM_FILE_NAME) incorrectly yielded zero.
63549
63550 2000-10-30  Paul Eggert  <eggert@twinsun.com>
63551
63552         * lib/error.h, getline.h, modechange.h:
63553         Remove "2000" from Copyright line, as the file hasn't been
63554         changed this year other than in the copyright notice.
63555
63556         * lib/xalloc.h: Add "2000" to Copyright line, as this file
63557         was changed this year.
63558
63559 2000-10-29  Jim Meyering  <meyering@lucent.com>
63560
63561         * m4/fsusage.m4: s/AC_SHELL_IFELSE/AS_IFELSE/ to match autoconf
63562         renaming.
63563         * m4/ls-mntd-fs.m4: Likewise
63564
63565 2000-10-29  Jim Meyering  <meyering@lucent.com>
63566
63567         * lib/xstat.in: Fix grammar in comment.
63568
63569 2000-10-29  Greg Louis  <glouis@dynamicro.on.ca>
63570
63571         * lib/regex.h (__restrict_arr): Move definition out of #ifndef block.
63572         Required because egcs-2.91.66 (aka 1.1.2) defines __restrict, but
63573         doesn't define __restrict_arr.
63574
63575 2000-10-28  Jim Meyering  <meyering@lucent.com>
63576
63577         * m4/prereq.m4 (jm_PREREQ): Add jm_PREREQ_MEMCHR.
63578         (jm_PREREQ_MEMCHR): New function.
63579
63580 2000-10-28  Jim Meyering  <meyering@lucent.com>
63581
63582         * lib/memchr.c: Update from libc.
63583         Adjust for portability:
63584         [HAVE_STDLIB_H]: Include stdlib.h.
63585         [HAVE_BP_SYM_H || _LIBC]: Guard inclusion of bp-sym.h.
63586         Undef __memchr, too.
63587         [!weak_alias]: Define __memchr to memchr.
63588
63589         * lib/regex.c: Update from libc.
63590         * lib/regex.h: Likewise.
63591         * lib/getopt1.c: Likewise.
63592         * lib/memcmp.c: Likewise.
63593
63594         * lib/getusershell.c (setusershell) [HAVE_FSEEKO]: Use fseeko.
63595         Avoid using fseek, when possible -- it's broken by design.
63596         Patch by Ulrich Drepper.
63597
63598 2000-10-27  Stefan Monnier  <monnier@cs.yale.edu>
63599
63600         * regex.c (POP_FAILURE_REG_OR_COUNT, re_match_2_internal)
63601         (re_match_2_internal, re_match_2_internal, re_match_2_internal):
63602         Giving in to popular pressure to shut up the compiler with casts.
63603
63604 2000-10-26  Jim Meyering  <meyering@lucent.com>
63605
63606         * lib/strftime.c: Update from libc.
63607
63608 2000-10-25  Stefan Monnier  <monnier@cs.yale.edu>
63609
63610         * regex.c: More `unsigned char' -> `re_char' changes.
63611         Also change several `int' into `re_wchar_t'.
63612         (PATTERN_STACK_EMPTY, PUSH_PATTERN_OP, POP_PATTERN_OP): Remove.
63613         (PUSH_FAILURE_POINTER): Don't cast any more.
63614         (POP_FAILURE_REG_OR_COUNT): Remove the cast that strips `const'.
63615         We want GCC to complain, since this piece of code makes
63616         re_match non-reentrant, which *should* be fixed.
63617         (GET_BUFFER_SPACE): Use size_t rather than unsigned long.
63618         (EXTEND_BUFFER): Use RETALLOC.
63619         (SET_LIST_BIT): Don't cast.
63620         (re_wchar_t): New type.
63621         (re_iswctype, re_wctype_to_bit): Make it crystal clear to GCC
63622         that those two functions will always properly return.
63623         (IMMEDIATE_QUIT_CHECK): Cast to void.
63624         (analyse_first): Use recursion rather than an explicit stack.
63625         (re_compile_fastmap): Can't fail anymore.
63626         (re_search_2): Don't check re_compile_fastmap for failure.
63627         (PUSH_NUMBER): Renamed from PUSH_FAILURE_COUNT.
63628         Now also sets the new value (passed in a new argument).
63629         (re_match_2_internal): Use it.
63630         Also, use a new var `reg' of type size_t when looping through regs
63631         rather than reuse the inappropriate `mcnt'.
63632
63633 2000-10-25  Jim Meyering  <meyering@lucent.com>
63634
63635         * lib/obstack.c: Update from libc.
63636
63637 2000-10-24  Kenichi Handa  <handa@etl.go.jp>
63638
63639         * regex.c (regex_compile): Change the way of handling a range from
63640         a char less than 256 to a char not less than 256.
63641
63642 2000-10-24  Andrew Innes  <andrewi@gnu.org>
63643
63644         * regex.c (IMMEDIATE_QUIT_CHECK): New macro, which does QUIT on
63645         NT-Emacs only.
63646         (re_match_2_internal): Use IMMEDIATE_QUIT_CHECK instead of QUIT,
63647         so that re_search functions only quit when callers expect them to.
63648
63649 2000-10-23  Jim Meyering  <meyering@lucent.com>
63650
63651         * lib/hard-locale.c (hard_locale): Revert last change -- it was simply
63652         wrong.  That set_locale call must not have any side effects.
63653         From Paul Eggert.
63654
63655 2000-10-22  Jim Meyering  <meyering@lucent.com>
63656
63657         * lib/md5.c (md5_process_block) [OP]: Use `rol', not CYCLIC.
63658         [CYCLIC]: Remove now-unused definition.
63659
63660         * lib/save-cwd.c (O_DIRECTORY): Define, if needed.
63661         (save_cwd) [HAVE_FCHDIR]: Use O_DIRECTORY when opening ".".
63662         Suggestion from Ulrich Drepper.
63663
63664 2000-10-21  Jim Meyering  <meyering@lucent.com>
63665
63666         * m4/check-decl.m4 (jm_CHECK_DECLS): Also check for memrchr.
63667         * m4/prereq.m4 (jm_PREREQ_DIRNAME): New macro.
63668         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memrchr.
63669
63670 2000-10-21  Jim Meyering  <meyering@lucent.com>
63671
63672         * lib/dirname.c (memrchr): Declare if necessary.
63673         (dir_name): Remove the restriction that there be no
63674         trailing slashes.  Now, this code skips past them, effectively
63675         ignoring them.
63676         [TEST_DIRNAME] (main): New unit tests.
63677
63678         * lib/memrchr.c: New file from GNU libc.
63679         Undef __memrchr, too.
63680         [!weak_alias]: Define __memrchr to memrchr.
63681         Guard weak_alias use with `#ifdef weak_alias'.
63682
63683 2000-10-21  Jim Meyering  <meyering@lucent.com>
63684
63685         * lib/dirname.c (dir_name_r): New function, factored out of dir_name.
63686         (dir_name): Use dir_name_r.
63687         * lib/dirname.h (dir_name_r): Declare it.
63688
63689 2000-10-17  Jim Meyering  <meyering@lucent.com>
63690
63691         * lib/quote.h (PARAMS): Define and use.
63692         Reported by Akim Demaille.
63693
63694         * lib/getopt.c: Update from libc.
63695
63696 2000-10-16  Jim Meyering  <meyering@lucent.com>
63697
63698         * lib/hard-locale.c (hard_locale): Use "", not 0 as 2nd arg to
63699         setlocale.
63700         From Jan Fedak.
63701
63702 2000-10-15  Stefan Monnier  <monnier@cs.yale.edu>
63703
63704         * regex.c (WIDE_CHAR_SUPPORT): Define if _LIBC as well.
63705
63706 2000-09-25  Jim Meyering  <meyering@lucent.com>
63707
63708         * lib/md5.h (rol): Define (from GnuPG).
63709
63710         * lib/sha.c: Give credit (GnuPG) where due.
63711         (M): Use rol rather than open-coding it.
63712         Add a FIXME comment.
63713
63714 2000-09-21  Jim Meyering  <meyering@lucent.com>
63715
63716         * lib/userspec.c (parse_user_spec): Remove debugging printf I'd added.
63717         Reported by Michael Stone.
63718
63719 2000-09-20  Jim Meyering  <meyering@lucent.com>
63720
63721         * lib/Makefile.am (libfetish_a_SOURCES): Add sha.c.
63722         (noinst_HEADERS): Add sha.h.
63723         Based on code from Scott G. Miller and from GnuPG.
63724
63725 2000-09-18  Jim Meyering  <meyering@lucent.com>
63726
63727         * m4/getloadavg.m4 (AC_FUNC_GETLOADAVG): Restore the initial value of
63728         LIBS. Otherwise, everyone ends up linking with -lelf for some
63729         configurations.
63730         Reported by Mike Stone.
63731
63732 2000-09-15  Jim Meyering  <meyering@lucent.com>
63733
63734         * lib/regex.c: Update from libc.
63735
63736 2000-09-10  Jim Meyering  <meyering@lucent.com>
63737
63738         * lib/getopt.c (_getopt_internal): Update from glibc.
63739
63740 2000-09-09  Jim Meyering  <meyering@lucent.com>
63741
63742         * lib/quotearg.c: Rename ISASCII to IN_CTYPE_DOMAIN, so people don't
63743         think it should be used as a general replacement for isascii.
63744         * lib/fnmatch.c: Likewise.
63745         * lib/mbswidth.c: Likewise
63746         * lib/regex.c: Likewise.
63747
63748         Don't use atoi.
63749         * lib/userspec.c: Include sys/param.h and limits.h.
63750         Include xstrtol.h.
63751         (CHAR_BIT, TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Define.
63752         (UID_T_MAX, GID_T_MAX, MAXUID, MAXGID): Define.
63753         (parse_user_spec): Use xstrtoul, not atoi when converting numeric
63754         UID, GID.  Check range.
63755
63756 2000-09-06  Jim Meyering  <meyering@lucent.com>
63757
63758         * lib/getopt.c (_getopt_internal): Update from glibc.
63759
63760 2000-08-30  Jim Meyering  <meyering@lucent.com>
63761
63762         * lib/strftime.c: Merge in changes from GNU libc.
63763
63764 2000-08-26  Jim Meyering  <meyering@lucent.com>
63765
63766         * m4/jm-macros.m4: Use jm_FUNC_FPENDING.
63767         * m4/fpending.m4: New file.
63768
63769 2000-08-26  Jim Meyering  <meyering@lucent.com>
63770
63771         * lib/closeout.c: Include "__fpending.h".
63772         (close_stdout_status): Return right away if there's nothing to flush.
63773
63774         * lib/Makefile.am (noinst_HEADERS): Add __fpending.h.
63775         * lib/__fpending.c: New file.
63776         * lib/__fpending.h: New file.
63777
63778 2000-08-20  Jim Meyering  <meyering@lucent.com>
63779
63780         * m4/check-decl.m4: Include utmp.h `#if HAVE_UTMP_H', rather than
63781         `#if !HAVE_UTMPX_H'.  The latter would lose on systems with neither
63782         utmp.h nor utmpx.h.  Reported by Eli Zaretskii.
63783
63784 2000-08-11  J. David Anglin  <dave@hiauly1.hia.nrc.ca>
63785
63786         Improve fileutils installation on systems where running
63787         programs (like install) can't be unlinked.
63788         * m4/unlink-busy.m4 (jm_FUNC_UNLINK_BUSY_TEXT): New file/macro.
63789         * m4/jm-macros.m4: Use jm_FUNC_UNLINK_BUSY_TEXT.
63790
63791 2000-08-07  Paul Eggert  <eggert@twinsun.com>
63792
63793         Standardize on "memory exhausted" instead of "Memory exhausted"
63794         or "virtual memory exhausted".
63795         * lib/obstack.c (print_and_abort): Use "memory exhausted", not
63796         "virtual memory exhausted".
63797         * lib/same.c (same_name): Invoke xalloc_die instead of printing
63798         our own message.
63799         * lib/userspec.c (parse_user_spec): Likewise.
63800         * lib/bumpalloc.h: comment fix
63801         * lib/same.c, userspec.c: Include xalloc.h.
63802
63803         * lib/xalloc.h (xalloc_msg_memory_exhausted): Now char const[],
63804         not char *const and pointing to a constant array.
63805         * lib/xmalloc.c (xalloc_msg_memory_exhausted): Likewise.
63806         (xrealloc): Comment fix.
63807
63808         * lib/userspec.c (parse_user_spec):
63809         Don't translate a message until just before returning,
63810         to avoid unnecessary translation.
63811
63812 2000-08-07  Jim Meyering  <meyering@lucent.com>
63813
63814         * lib/addext.c, argmatch.c, argmatch.h, backupfile.h, bumpalloc.h,
63815         chown.c, diacrit.h, dirname.h, dup2.c, exclude.h, fileblocks.c,
63816         fnmatch.c, fnmatch.h, fsusage.c, fsusage.h, getdate.h,
63817         getgroups.c, gethostname.c, getopt.h, group-member.c,
63818         hard-locale.c, hash.h, isdir.c, lchown.c, linebuffer.c,
63819         linebuffer.h, long-options.h, malloc.c, md5.c, md5.h, memchr.c,
63820         memcmp.c, memcoll.c, memset.c, mktime.c, modechange.h, obstack.h,
63821         pathmax.h, realloc.c, rmdir.c, safe-read.c, save-cwd.c, stime.c,
63822         stpcpy.c, strcasecmp.c, strcspn.c, strdup.c, stripslash.c,
63823         strstr.c, strtod.c, strtol.c, strtoul.c, strtoull.c, strtoumax.c,
63824         utime.c, version-etc.h, xalloc.h, xstrdup.c, xstrtoumax.c,
63825         yesno.c: Back out Copyright date changes for each file with no change
63826         this year.  This eases coordination with other programs using the same
63827         source code modules.  From Paul Eggert.
63828
63829 2000-08-06  Paul Eggert  <eggert@twinsun.com>
63830
63831         * m4/mbstate_t.m4 (AC_MBSTATE_T): Define mbstate_t to be int,
63832         not char, for compatibility with glibc 2.1.3 strftime.c.
63833
63834 2000-08-03  Greg McGary  <greg@mcgary.org>
63835
63836         * lib/regex.c (SET_HIGH_BOUND, MOVE_BUFFER_POINTER,
63837         ELSE_EXTEND_BUFFER_HIGH_BOUND): New macros.
63838         (EXTEND_BUFFER): Use them.
63839
63840 2000-08-01  Jim Meyering  <meyering@lucent.com>
63841
63842         * lib/dirname.c (ISSLASH): Define.
63843         (BACKSLASH_IS_PATH_SEPARATOR): Define.
63844         (dir_name) [BACKSLASH_IS_PATH_SEPARATOR]: Handle the case in which
63845         both `\' and `/' may be use as path separators.
63846         Based on a patch from Prashant TR.
63847
63848 2000-07-31  Paul Eggert  <eggert@twinsun.com>
63849
63850         * lib/quotearg.c (quotearg_n_options): Don't make the initial
63851         slot vector a constant, since it might get modified.
63852
63853 2000-07-31  Jim Meyering  <meyering@lucent.com>
63854
63855         * lib/xmalloc.c: Use `virtual memory exhausted', not
63856         `Memory exhausted'.
63857         * lib/obstack.c (print_and_abort): Likewise.
63858
63859 2000-07-30  Paul Eggert  <eggert@twinsun.com>
63860
63861         * lib/quotearg.c (quotearg_n_options): Preallocate a slot 0
63862         buffer, so that the caller can always quote one small
63863         component of a "memory exhausted" message in slot 0.
63864         From a suggestion by Jim Meyering.
63865
63866 2000-07-30  Jim Meyering  <meyering@lucent.com>
63867
63868         * lib/makepath.c (make_path): Quote the other instance, too.
63869
63870         * lib/quotearg.c (N_STATIC_SLOTVECS): Define.
63871         (STATIC_BUF_SIZE): Define.
63872         (quotearg_n_options): Use only statically allocated storage when
63873         N < N_STATIC_SLOTVECS and the length of the quoted result is smaller
63874         than STATIC_BUF_SIZE.
63875
63876 2000-07-29  Jim Meyering  <meyering@lucent.com>
63877
63878         * lib/diacrit.c (diacrit_diac): Use __MSDOS__ in favor of MSDOS.
63879         * lib/dirname.c (dir_name): Likewise.
63880
63881         * lib/basename.c (base_name): Use ISSLASH rather than comparing against
63882         `/'.
63883
63884         * lib/dirname.c (dir_name) [MSDOS]: Declare `lim' to be const.
63885         (dir_name): Assert that there are no trailing slashes.
63886
63887 2000-07-29  Bruno Haible  <haible@clisp.cons.org>
63888
63889         * lib/mbswidth.h (mbswidth): Add a flags argument.
63890         (mbswidth): New declaration.
63891         (MBSW_ACCEPT_INVALID, MBSW_ACCEPT_UNPRINTABLE): New macros.
63892         * lib/mbswidth.c (mbswidth): Add a flags argument.
63893         (mbsnwidth): New function.
63894
63895 2000-07-24  Jim Meyering  <meyering@lucent.com>
63896
63897         * lib/mbswidth.c: Remove useless #else.  From Bruno Haible.
63898
63899 2000-07-23  Paul Eggert  <eggert@twinsun.com>
63900
63901         * m4/mbswidth.m4 (jm_PREREQ_MBSWIDTH): Check for wcwidth declaration.
63902
63903 2000-07-23  Paul Eggert  <eggert@twinsun.com>
63904
63905         * lib/quotearg.c: Streamline by invoking multibyte code only if needed.
63906         <wchar.h>: Include only if HAVE_MBRTOWC && 1 < MB_LEN_MAX.
63907         (MB_CUR_MAX): Redefine to 1 if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX).
63908         (quotearg_buffer_restyled): If a unibyte locale, don't bother to
63909         invoke multibyte primitives.
63910
63911 2000-07-23  Paul Eggert  <eggert@twinsun.com>
63912
63913         * lib/quotearg.c:
63914         Include <wchar.h> even if ! (HAVE_MBRTOWC && 1 < MB_LEN_MAX),
63915         so that mbstate_t is always defined.
63916
63917         Do not inspect MB_LEN_MAX, since it's incorrectly defined to
63918         be 1 in at least one GCC installation, and this configuration
63919         error is likely to be common.  Ignoring MB_LEN_MAX hurts
63920         performance on hosts that have mbrtowc but have only unibyte
63921         locales, but I assume these hosts are rare.
63922
63923 2000-07-23  Paul Eggert  <eggert@twinsun.com>
63924
63925         * lib/mbswidth.c (_XOPEN_SOURCE):
63926         Don't define; this causes problems on Solaris 7.
63927         (wcwidth) [!HAVE_DECL_WCWIDTH]: Declare.
63928
63929 2000-07-23  Jim Meyering  <meyering@lucent.com>
63930
63931         * m4/check-decl.m4 (jm_CHECK_DECLS): Check for declarations of these,
63932         too: getgrgid, getpwuid, getuid.
63933
63934 2000-07-23  Jim Meyering  <meyering@lucent.com>
63935
63936         * lib/basename.c (base_name): Add an assertion.
63937
63938 2000-07-23  Bruno Haible  <haible@clisp.cons.org>
63939
63940         * lib/quotearg.c: When the system forces us to redefine mbstate_t,
63941         shadow its mbsinit function.
63942
63943 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
63944
63945         * lib/mbswidth.h: New file.
63946         * lib/mbswidth.c: New file.
63947         * lib/Makefile.am (libfetish_a_SOURCES): Add mbswidth.c.
63948         (noinst_HEADERS): Add mbswidth.h.
63949
63950 2000-07-17  Bruno Haible  <haible@clisp.cons.org>
63951
63952         * lib/config.charset: Add support for FreeBSD. Improve support for
63953         HP-UX and IRIX 6.
63954
63955 2000-07-16  Bruno Haible  <haible@clisp.cons.org>
63956
63957         * m4/mbswidth.m4: New file.
63958         * m4/prereq.m4 (jm_PREREQ): Call jm_PREREQ_MBSWIDTH.
63959
63960 2000-07-15  Jim Meyering  <meyering@lucent.com>
63961
63962         * lib/makepath.c: Include quote.h.
63963         (make_path): Convert "`%s'" in format strings to "%s", and wrap each
63964         corresponding argument in a `quote (...)' call.
63965         Give better diagnostics.
63966
63967         * lib/Makefile.am (libfetish_a_SOURCES): Add quote.c.
63968         (noinst_HEADERS): Add quote.h.
63969
63970         * lib/quote.c (quote, quote_n): New file.  Two functions taken verbatim
63971         from tar's src/misc.c.
63972         * lib/quote.h: New file.  Prototypes for same.
63973
63974 2000-07-14  Paul Eggert  <eggert@twinsun.com>
63975
63976         From a suggestion by Bruno Haible.
63977         * lib/quotearg.c (mbrtowc): Do not use HAVE_WCHAR_H in the definition.
63978         Use defined mbstate_t, not HAVE_MBSTATE_T_OBJECT,
63979         to decide whether to define the BeOS workaround macro;
63980         this adjusts to the change to AC_MBSTATE_T.
63981
63982 2000-07-14  Jim Meyering  <meyering@lucent.com>
63983
63984         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Require
63985         jm_AC_TYPE_UINTMAX_T.
63986
63987 2000-07-13  Paul Eggert  <eggert@twinsun.com>
63988
63989         * lib/quotearg.h (enum quoting style): New enum clocale_quoting_style.
63990
63991         * lib/quotearg.c (quoting_style_args, quoting_style_vals,
63992         quotearg_buffer_restyled): Add support for
63993         clocale_quoting_style.  Undo previous change to
63994         locale_quoting_style behavior, and undo the "{LEFT QUOTATION MARK}"
63995         and "{RIGHT QUOTATION MARK}" msgids.
63996
63997 2000-07-10  Paul Eggert  <eggert@twinsun.com>
63998
63999         From a suggestion by Bruno Haible.
64000         * m4/mbstate_t.m4 (AC_MBSTATE_T):
64001         Renamed from AC_MBSTATE_T_OBJECT.  All uses changed.
64002         Change from a two-part test, which defines both HAVE_MBSTATE_T_OBJECT
64003         and mbstate_t, to a single-part test that simply defines mbstate_t.
64004         * m4/prereq.m4 (jm_PREREQ_QUOTEARG):
64005         s/AC_MBSTATE_T_OBJECT/AC_MBSTATE_T/.
64006
64007 2000-07-10  Jim Meyering  <meyering@lucent.com>
64008
64009         * m4/strerror_r.m4: Mirror the correction made in autoconf.
64010
64011         * m4/gnu-source.m4: Output to confdefs.h directly.
64012         Suggestion from Akim Demaille.
64013
64014 2000-07-09  Paul Eggert  <eggert@twinsun.com>
64015
64016         The old behavior of quoting `like this' doesn't look good with
64017         newer, ISO-style fonts.  See:
64018         http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html
64019
64020         Instead, quote "like this" by default.  Let the translator
64021         tailor the locale-specific quoting behavior by providing
64022         translations for {LEFT QUOTATION MARK} and {RIGHT QUOTATION MARK}.
64023
64024         * lib/quotearg.c (N_): New macro.
64025         (gettext_default): New function.
64026         (quotearg_buffer_restyled): Use
64027         gettext_default ("{LEFT QUOTATION MARK}", "\"") for left quote, and
64028         gettext_default ("{RIGHT QUOTATION MARK}", "\"") for right quote.
64029
64030 2000-07-09  Jim Meyering  <meyering@lucent.com>
64031
64032         * m4/jm-macros.m4 (jm_MACROS): Add a test to see if -lm is required
64033         to link seq.  If so, set SEQ_LIBM to -lm.  From Bruno Haible.
64034
64035         * m4/gnu-source.m4 (AC__GNU_SOURCE): New file/macro.
64036         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require it.
64037
64038 2000-07-09  Jim Meyering  <meyering@lucent.com>
64039
64040         * lib/Most files: Update copyright dates to include 2000.
64041
64042 2000-07-08  Jim Meyering  <meyering@lucent.com>
64043
64044         * lib/xgethostname.c (ENAMETOOLONG): Define to an unlikely value
64045         if not defined.
64046         (xgethostname): Remove now-unnecessary #ifdef.
64047         Move declaration of `err' into loop where it's used.
64048
64049 2000-07-05  Paul Eggert  <eggert@twinsun.com>
64050         and Bruno Haible  <haible@clisp.cons.org>
64051
64052         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Test for mbstate_t
64053         only if the test for an object-type mbstate_t fails.  This
64054         prevents us from mistakenly reporting that mbstate_t is a
64055         system object type after we "#define mbstate_t int" to work
64056         around its lack.
64057
64058 2000-07-05  Paul Eggert  <eggert@twinsun.com>
64059         and Bruno Haible  <haible@clisp.cons.org>
64060
64061         * lib/quotearg.c (mbrtowc): Declare returned type, since BeOS doesn't.
64062
64063 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
64064
64065         * m4/strerror_r.m4 (AC_FUNC_STRERROR_R): Pass a reasonably large buffer
64066         to strerror_r.
64067         Include <ctype.h> for use of isalpha.
64068
64069 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
64070
64071         * lib/xgethostname.c (xgethostname): Protect against the SunOS 5.5 bug
64072         by allocating a larger buffer. Test the gethostname return value for
64073         being >= 0, not == 0, for BeOS.  Don't exhaust memory if gethostname
64074         returns an error and ENAMETOOLONG isn't defined.
64075
64076 2000-07-05  Bruno Haible  <haible@clisp.cons.org>
64077
64078         * lib/quotearg.c (struct quoting_options): Simplify quote_these_too
64079         dimension.
64080
64081 2000-07-04  Jim Meyering  <meyering@lucent.com>
64082
64083         * m4/fsusage.m4 (jm_FILE_SYSTEM_USAGE): Use plain old `echo' instead
64084         of the deprecated AC_CHECKING.
64085
64086 2000-07-04  Jim Meyering  <meyering@lucent.com>
64087
64088         * lib/strndup.c: [!HAVE_DECL_STRNLEN]: Declare strnlen.
64089         Reported by Bruno Haible.
64090
64091 2000-07-04  Jim Meyering  <meyering@lucent.com>
64092
64093         * lib/quotearg.c: Make inclusion of <wchar.h> independent of whether
64094         HAVE_MBRTOWC is set.  Required at least for irix-5.6, which
64095         lacks mbrtowc.
64096
64097 2000-07-03  Paul Eggert  <eggert@twinsun.com>
64098
64099         * m4/mbstate_t.m4 (AC_MBSTATE_T_OBJECT): Port to autoconf 2.13.
64100         Add AC_CHECK_HEADERS(stdlib.h), since we use HAVE_STDLIB_H.
64101
64102 2000-07-03  Paul Eggert  <eggert@twinsun.com>
64103         and Bruno Haible  <haible@clisp.cons.org>
64104
64105         * lib/quotearg.c (mbrtowc):
64106         Assign to *pwc, and return 1 only if result is nonzero.
64107         (iswprint): Use ISPRINT when substituting our own mbrtowc.
64108
64109 2000-07-03  Jim Meyering  <meyering@lucent.com>
64110
64111         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strnlen.
64112
64113 2000-07-03  Jim Meyering  <meyering@lucent.com>
64114
64115         * lib/readutmp.h: [HAVE_UTMPX_H]: Include <utmp.h> if HAVE_UTMP_H.
64116         This is necessary to get a definition of e.g., UTMP_FILE on
64117         HP-UX 10.20.
64118         From Bob Proulx.
64119
64120 2000-07-02  Jim Meyering  <meyering@lucent.com>
64121
64122         * m4/mbstate_t.m4: Also define mbstate_t, if necessary.
64123
64124         * m4/chown.m4: Replace each use of AC_SUBST(LIBOBJS)/LIBOBJS=... with
64125         AC_LIBOBJ(function_name).
64126         * m4/chown.m4: Likewise.
64127         * m4/fnmatch.m4: Likewise.
64128         * m4/ftruncate.m4: Likewise.
64129         * m4/getgroups.m4: Likewise.
64130         * m4/getline.m4: Likewise.
64131         * m4/group-member.m4: Likewise.
64132         * m4/jm-macros.m4: Likewise.
64133         * m4/lstat.m4: Likewise.
64134         * m4/malloc.m4: Likewise.
64135         * m4/memcmp.m4: Likewise.
64136         * m4/nanosleep.m4: Likewise.
64137         * m4/putenv.m4: Likewise.
64138         * m4/realloc.m4: Likewise.
64139         * m4/regex.m4: Likewise.
64140         * m4/stat.m4: Likewise.
64141         * m4/strftime.m4: Likewise.
64142
64143 2000-07-02  Jim Meyering  <meyering@lucent.com>
64144
64145         * lib/quotearg.c (mbstate_t): Don't define here.
64146
64147 2000-07-02  Jim Meyering  <meyering@lucent.com>
64148
64149         * lib/nanosleep.c (SIGCONT): Define if not already defined.
64150
64151 2000-07-01  Jim Meyering  <meyering@lucent.com>
64152
64153         * m4/uptime.m4: Put double quotes around use of $cross_compiling.
64154
64155 2000-07-01  Jim Meyering  <meyering@lucent.com>
64156
64157         * m4/ls-mntd-fs.m4: Remove a `FIXME' comment and fix the associated
64158         problem.
64159
64160 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
64161
64162         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Rename BeOS specific
64163         macro from MOUNTED_NEXT_DEV to MOUNTED_FS_STAT_DEV.
64164
64165 2000-07-01  Bruno Haible  <haible@clisp.cons.org>
64166
64167         * lib/mountlist.c: Use MOUNTED_FS_STAT_DEV instead of MOUNTED_NEXT_DEV,
64168         per change in ../m4/ls-mntd-fs.m4.
64169         (read_filesystem_list): Ignore symbolic links.
64170
64171 2000-06-29  Jim Meyering  <meyering@lucent.com>
64172
64173         * lib/same.c: Include <string.h> or <strings.h>, as appropriate,
64174         for declaration of strcmp.
64175
64176         * lib/long-options.c: Include <stdlib.h>, for declaration of exit.
64177
64178         * lib/mountlist.c (fsp_to_string) [HAVE_F_FSTYPENAME_IN_STATFS]:
64179         Avoid warning by casting result to `char *' to remove `const'.
64180
64181 2000-06-28  Jim Meyering  <meyering@lucent.com>
64182
64183         * m4/mbstate_t.m4: Use stdlib.h, not stdio.h.  The latter is not
64184         included by quotearg.c, for which we perform this test.  From
64185         Bruno Haible.
64186
64187 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
64188
64189         * m4/check-decl.m4 (_jm_DECL_HEADERS): Check for utmp.h as well.
64190         * m4/prereq.m4 (jm_PREREQ_READUTMP): Likewise. If either <utmp.h> or
64191         <utmpx.h> exists, put readutmp.o into LIBOBJS.
64192
64193 2000-06-27  Bruno Haible  <haible@clisp.cons.org>
64194
64195         * lib/Makefile.am (libfetish_a_SOURCES): Remove readutmp.c.
64196
64197 2000-06-26  Paul Eggert  <eggert@twinsun.com>
64198
64199         savedir now sets errno on failure and invokes xmalloc to get memory.
64200         Fix a couple of other minor bugs while we're at it.
64201
64202         * lib/savedir.c (<unistd.h>): Do not include; there's no need.
64203         (NAMLEN): Remove macro.
64204         (malloc, realloc): Remove decls.
64205         (stpcpy): Likewise.
64206         ("xalloc.h"): Include.
64207         (NAME_SIZE_DEFAULT): New macro.
64208         (savedir): Use xmalloc / xrealloc to allocate memory.
64209         Use NAME_SIZE_DEFAULT if name_size is negative or overflows to zero.
64210         Skip "" directory entries.
64211         Use strlen to calculate directory entry length, since the old method
64212         is rarely used these days and isn't worth supporting.
64213         Don't use a pointer after freeing it.
64214         Check for integer overflow when calculating allocation size.
64215         Use memcpy to copy entries, instead of stpcpy.
64216         Set errno properly when returning NULL.
64217         Check for readdir error.
64218
64219 2000-06-26  Jim Meyering  <meyering@lucent.com>
64220
64221         * lib/posixtm.c [HAVE_STDLIB_H]: Include stdlib.h, for decl of abort.
64222
64223 2000-06-25  Jim Meyering  <meyering@lucent.com>
64224
64225         * m4/mbstate_t.m4: Include stdio.h before wchar.h to work around
64226         Linux header bug when _XOPEN_SOURCE is defined to 500.
64227
64228 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
64229
64230         * lib/unicodeio.c (print_unicode_char): Work around ansi2knr
64231         deficiency.
64232
64233 2000-06-25  Bruno Haible  <haible@clisp.cons.org>
64234
64235         * lib/getusershell.c (xmalloc, xrealloc): Remove functions.
64236         Include xalloc.h.
64237         Don't include <stdlib.h>.  Don't declare malloc, realloc.
64238
64239 2000-06-24  Jim Meyering  <meyering@lucent.com>
64240
64241         * m4/strerror_r.m4: Revive this file -- to try out an experimental
64242         version of AC_FUNC_STRERROR_R that may work even on BeOS, a system
64243         for which strerror does return char*, but which lacks a conveniently
64244         accessible declaration of the function.  If the compile-test says
64245         strerror_r doesn't work, then resort to a `run'-test that works on
64246         BeOS and segfaults on DEC Unix.
64247
64248 2000-06-24  Jim Meyering  <meyering@lucent.com>
64249
64250         * lib/error.c [!HAVE_DECL_STRERROR_R]: Declare strerror_r.
64251
64252 2000-06-23  Paul Eggert  <eggert@twinsun.com>
64253
64254         * m4/mbstate_t.m4: New file, defining AC_MBSTATE_T_OBJECT.
64255         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Use it.  Add check for iswprint.
64256
64257 2000-06-23  Paul Eggert  <eggert@twinsun.com>
64258
64259         * lib/quotearg.c: Include <wctype.h> after <wchar.h>, for Solaris 2.5.
64260         (mbrtowc, mbstate_t): Define substitutes if
64261         HAVE_MBRTOWC && HAVE_WCHAR_H && !HAVE_MBSTATE_T_OBJECT.
64262         (iswprint): Define to 1 if !defined iswprint && !HAVE_ISWPRINT,
64263         not if ! (HAVE_MBRTOWC && HAVE_WCHAR_H).
64264
64265 2000-06-23  Jim Meyering  <meyering@lucent.com>
64266
64267         * m4/afs.m4: Add missing AC_MSG_RESULT.
64268         Reported by Bruno Haible.
64269
64270         * m4/fsusage.m4: s/AC_MSG_CHECKING/AC_CHECKING/.
64271         Suggestion from Bruno Haible.
64272
64273 2000-06-23  Jim Meyering  <meyering@lucent.com>
64274
64275         * lib/getpass.c: New file, from Bruno Haible.  Required for BeOS.
64276
64277 2000-06-21  Jim Meyering  <meyering@lucent.com>
64278
64279         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add getpass.
64280
64281 2000-06-21  Jim Meyering  <meyering@lucent.com>
64282
64283         * lib/Makefile.am (libfetish_a_SOURCES): Add getstr.c.
64284         (noinst_HEADERS): Add getstr.h.
64285
64286         * lib/getline.c (getstr): Move into a separate file.
64287         * lib/getstr.c (getstr): New file, extracted from getline.c, with
64288         the following changes: new parameter, delim2; both delim[12]
64289         parameters have type `int', not `char'.  The latter would lose
64290         with 8-bit delimiters.
64291         * lib/getstr.h: New file.
64292
64293 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
64294
64295         * lib/xgetcwd.c (xgetcwd): If the required pathname length is smaller
64296         than 1024, return a memory chunk of least possible size, instead
64297         of size PATH_MAX + 2. In the loop, increment the size proportionally.
64298         Use free/xmalloc instead of xrealloc to avoid copying for very long
64299         paths.
64300
64301 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
64302
64303         * lib/path-concat.c (path_concat): Don't access dir[-1] if dir is
64304         the empty string.
64305
64306 2000-06-21  Bruno Haible  <haible@clisp.cons.org>
64307
64308         * lib/canon-host.c (canon_host): Use malloc and memcpy to copy an
64309         address, not strdup.  Include <stdlib.h> and don't declare free().
64310
64311 2000-06-19  Jim Meyering  <meyering@lucent.com>
64312
64313         * lib/getloadavg.c [HAVE_NLIST_H] (NLIST_STRUCT): Define.
64314
64315 2000-06-18  Jim Meyering  <meyering@lucent.com>
64316
64317         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Remove mkdir.
64318
64319         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): Change the
64320         `checking whether...' message to be consistent with that of the
64321         lstat test.
64322
64323 2000-06-18  Jim Meyering  <meyering@lucent.com>
64324
64325         * lib/mkdir.c: Remove file, due mainly to copyright incompatibility.
64326         Besides, these days every porting target provides a mkdir function.
64327
64328         * lib/strnlen.c: Include memory.h, string.h, and/or strings.h as
64329         needed. (this snippet comes from src/system.h).
64330
64331 2000-06-16  Bruno Haible  <haible@clisp.cons.org>
64332
64333         * m4/glibc21.m4 (jm_GLIBC21): Define GLIBC21 for Makefiles, not for C.
64334
64335 2000-06-15  Paul Eggert  <eggert@twinsun.com>
64336
64337         * lib/human.c (adjust_value): New function.
64338         (human_readable_inexact): Apply rounding style even when
64339         printing approximate values.
64340
64341 2000-06-14  Paul Eggert  <eggert@twinsun.com>
64342
64343         * lib/human.c (human_readable_inexact): Allow an input block
64344         size that is not a multiple of the output block size, and vice versa.
64345         Reported by Piergiorgio Sartor.
64346
64347 2000-06-14  Paul Eggert  <eggert@twinsun.com>
64348
64349         * lib/getdate.y (get_date): Apply relative times after time
64350         zone indicator, not before.  Reported by Todd A. Jacobs.
64351
64352 2000-06-13  Jim Meyering  <meyering@lucent.com>
64353
64354         * lib/Makefile.am (all-local): Depend on lstat.c and stat.c.
64355
64356         * lib/xstat.in [!HAVE_DECL_FREE]: Declare free in lstat.c.
64357
64358 2000-06-12  Paul Eggert  <eggert@twinsun.com>
64359
64360         * lib/xstat.in: Include <stdlib.h> in lstat, to declare "free".
64361
64362 2000-06-12  Jim Meyering  <meyering@lucent.com>
64363
64364         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Replace with
64365         AC_FUNC_GETLOADAVG from autoconf, and tweak the latter to accept an
64366         optional argument.
64367         * m4/jm-macros.m4: s/AM_FUNC_GETLOADAVG/AC_FUNC_GETLOADAVG/, and supply
64368         the optional argument, `lib'.
64369
64370 2000-06-08  Jim Meyering  <meyering@lucent.com>
64371
64372         * m4/largefile.m4: Remove file (now that it's part of autoconf).
64373
64374 2000-06-04  Paul Eggert  <eggert@twinsun.com>
64375
64376         Rewrite largefile configuration so that we don't need to run
64377         getconf and don't need AC_CANONICAL_HOST.  [I'm leaving the use of
64378         AC_CANONICAL_HOST in configure.in -- jmm]
64379
64380         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS,
64381         AC_SYS_LARGEFILE_SPACE_APPEND): Remove.
64382         (AC_SYS_LARGEFILE_TEST_INCLUDES): New macro.
64383         (AC_SYS_LARGEFILE_MACRO_VALUE): Change arguments from
64384         CODE-TO-SET-DEFAULT to VALUE, INCLUDES, FUNCTION-BODY.
64385         All uses changed.
64386         Instead of inspecting the output of getconf, try to compile the
64387         test program without and with the macro definition.
64388         (AC_SYS_LARGEFILE): Do not require AC_CANONICAL_HOST or check
64389         for getconf.  Instead, check for the needed flags by compiling
64390         test programs.
64391
64392 2000-06-04  Paul Eggert  <eggert@twinsun.com>
64393
64394         * lib/strnlen.c: Include <config.h> if HAVE_CONFIG_H.
64395
64396 2000-06-04  Jim Meyering  <meyering@lucent.com>
64397
64398         * lib/getugroups.c (getugroups): Cast -1 to gid_t, for systems like
64399         SunOS 4.1.4 for which gid_t is an unsigned type.
64400
64401 2000-06-03  Jim Meyering  <meyering@lucent.com>
64402
64403         * m4/prereq.m4 (jm_PREREQ_HUMAN): Use []-quoted list in AC_CHECK_DECLS,
64404         now that autoconf requires that.
64405
64406         * m4/jm-glibc-io.m4: Add a kludge to make autoheader emit the required
64407         #undefs.  E.g., #undef HAVE_DECL_FERROR_UNLOCKED.
64408         Use []-quoted list in AC_CHECK_DECLS, now that autoconf requires that.
64409
64410 2000-06-03  Jim Meyering  <meyering@lucent.com>
64411
64412         * lib/strnlen.c [!HAVE_DECL_MEMCHR]: Declare memchr.
64413
64414 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
64415
64416         * m4/glibc21.m4: New file.
64417         * m4/jm-macros.m4 (jm_MACROS): Call jm_GLIBC21.
64418
64419 2000-06-03  Bruno Haible  <haible@clisp.cons.org>
64420
64421         * lib/Makefile.am (install-exec-local): On systems with glibc-2.1 or
64422         newer, don't install charset.alias.
64423         * lib/config.charset: Change the Linux/glibc rules so they become empty
64424         on glibc-2.1 or newer.
64425
64426 2000-06-02  Jim Meyering  <meyering@lucent.com>
64427
64428         * lib/mountlist.c: Back out last change.  Instead, do this...
64429         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Set the
64430         me_dummy member using the same `ignore'-testing code.
64431         * lib/mountlist.h (ME_DUMMY): Add `autofs' to the list of ignored
64432         fs_type strings.
64433         From Mark D. Roth.
64434
64435 2000-05-29  Jim Meyering  <meyering@lucent.com>
64436
64437         * lib/mountlist.c (read_filesystem_list) [MOUNTED_VMOUNT]: Ignore
64438         mounts with the `ignore' attribute.  Based on a patch from
64439         Mark D. Roth.
64440
64441 2000-05-28  Jim Meyering  <meyering@lucent.com>
64442
64443         * m4/jm-macros.m4 (AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK): Rename from
64444         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
64445         * m4/stat.m4: Likewise.
64446         * m4/lstat.m4: Likewise.
64447         * m4/lstat-slash.m4: Remove file (absorbed into autoconf).
64448
64449         * m4/jm-macros.m4 (AC_FUNC_STRERROR_R): Rename from jm_FUNC_STRERROR_R.
64450         * m4/strerror_r.m4: Remove file (absorbed into autoconf).
64451
64452 2000-05-26  Jim Meyering  <meyering@lucent.com>
64453
64454         * m4/uptime.m4: Use `$cross_compiling', not `$ac_cv_prog_cc_cross'.
64455
64456 2000-05-24  Jim Meyering  <meyering@lucent.com>
64457
64458         * m4/prereq.m4: Use []-quoted list in AC_CHECK_MEMBERS, now that
64459         autoconf requires that.
64460         * m4/lib-check.m4: Likewise.
64461         * m4/jm-macros.m4: Likewise.
64462         * m4/strftime.m4: Likewise.
64463
64464         * m4/check-decl.m4 (jm_CHECK_DECLS): Use []-quoted list in
64465         AC_CHECK_DECLS, now that autoconf requires that.
64466
64467 2000-05-22  Jim Meyering  <meyering@lucent.com>
64468
64469         * m4/stat.m4: Require jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
64470         * m4/lstat.m4: Likewise.
64471
64472 2000-05-22  Jim Meyering  <meyering@lucent.com>
64473
64474         * lib/makepath.c: Remove old, now-unnecessary `#ifdef __MSDOS__' block.
64475
64476 2000-05-20  Jim Meyering  <meyering@lucent.com>
64477
64478         * m4/prereq.m4 (jm_PREREQ_HUMAN): New macro.
64479         (jm_PREREQ): Use it.
64480
64481 2000-05-18  Jim Meyering  <meyering@lucent.com>
64482
64483         * lib/hash.c (hash_rehash): Fix a nasty bug: copy the free entry list
64484         back, too, since it may have been modified by allocate_entry.
64485         (hash_delete): Rewrite to use neither the assignment operator
64486         nor the comma operator in an if-expression.
64487
64488 2000-05-15  Paul Eggert  <eggert@twinsun.com>
64489
64490         * lib/closeout.c:
64491         <sys/stat.h>, <sys/types.h>, <unistd.h>, (STDOUT_FILENO):
64492         Remove; no longer needed.
64493         "quotearg.h": Add include.
64494         (file_name): Do not bother to explicitly initialize to NULL; it's less
64495         efficient on some hosts.
64496         (close_stdout_status): Remove test as to whether stdout was already
64497         closed; it breaks for the case "echo x | sort >&-".
64498         Quote file name colons.
64499         Do not assume that _("write error") lacks format strings.
64500
64501 2000-05-15  Jim Meyering  <meyering@lucent.com>
64502
64503         * lib/version-etc.c (version_etc_copyright): Update the copyright
64504         string used in all --version output.
64505
64506 2000-05-14  Jim Meyering  <meyering@lucent.com>
64507
64508         * lib/closeout.c (close_stdout_set_file_name): New function.
64509         (close_stdout_status): Use new file-scoped global.
64510         Return right away if fstat says the stdout file descriptor is invalid.
64511         * lib/closeout.h (close_stdout_set_file_name): Declare.
64512
64513 2000-05-10  Jim Meyering  <meyering@lucent.com>
64514
64515         * lib/closeout.c [default_exit_status]: New file-scoped variable.
64516         (close_stdout_set_status): New function.
64517         * lib/closeout.h (close_stdout_set_status): Declare.
64518
64519 2000-05-09  Jim Meyering  <meyering@lucent.com>
64520
64521         * m4/gettext.m4: Rename this...
64522         * m4/libintl.m4: ...to this.
64523
64524 2000-05-08  Jim Meyering  <meyering@lucent.com>
64525
64526         * lib/long-options.c: Don't include closeout.h.
64527         (parse_long_options): Don't call close_stdout for --version.
64528
64529 2000-05-06  Paul Eggert  <eggert@twinsun.com>
64530
64531         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _XOPEN_SOURCE to
64532         be 500, instead of _GNU_SOURCE to be 1, to work around glibc
64533         2.1.3 bug.  This avoids a clash when files like regex.c define
64534         _GNU_SOURCE.
64535
64536 2000-05-06  Jim Meyering  <meyering@lucent.com>
64537
64538         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add atexit.
64539         (AC_REPLACE_FUNCS): Add strnlen.
64540
64541         * m4/rmdir-errno.m4 (fetish_FUNC_RMDIR_NOTEMPTY): New macro and file.
64542         * m4/jm-macros.m4: Require fetish_FUNC_RMDIR_NOTEMPTY.
64543
64544         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Save and restore LIBS around
64545         AC_SEARCH_LIBS call for nanosleep.
64546         (LIB_NANOSLEEP): Set and AC_SUBST.
64547
64548 2000-05-06  Jim Meyering  <meyering@lucent.com>
64549
64550         * lib/strnlen.c: Undefine __strnlen and strnlen.
64551         [!weak_alias]: Define __strnlen to strnlen.
64552
64553         * lib/atexit.c: New file, from libiberty.
64554
64555 2000-05-06  Jim Meyering  <meyering@lucent.com>
64556
64557         * lib/closeout.c (close_stdout_status): Also check for errors on the
64558         stderr stream.
64559
64560 2000-05-05  Jim Meyering  <meyering@lucent.com>
64561
64562         * m4/jm-macros.m4 (jm_MACROS): Save and restore LIBS around
64563         AC_SEARCH_LIBS call for clock_gettime.
64564         (LIB_CLOCK_GETTIME): Set and AC_SUBST.
64565
64566         * m4/search-libs.m4: Update from autoconf.
64567
64568         su doesn't work on Solaris 2.6.
64569         * m4/lib-check.m4: When checking for struct spwd.sp_pwdp, also include
64570         <shadow.h>.  Reported by Dragos Harabor.
64571
64572 2000-05-05  Bruno Haible  <haible@clisp.cons.org>
64573
64574         * lib/localcharset.c (get_charset_aliases): Use malloc, realloc and
64575         memcpy instead of xmalloc, xrealloc, path_concat.
64576         (locale_charset): Treat empty environment variables as absent.
64577         (DIRECTORY_SEPARATOR, ISSLASH): New macros.
64578
64579 2000-05-04  Jim Meyering  <meyering@lucent.com>
64580
64581         * lib/getopt.c: Update from glibc.
64582         * lib/obstack.c: Likewise.
64583         * lib/obstack.h: Likewise.
64584         * lib/regex.c: Likewise.  NB: K&R compiler support is dropped for this
64585         file
64586
64587         * lib/regex.h: Likewise.
64588         * lib/strndup.c: Likewise.
64589         * lib/strnlen.c: New file, from glibc.
64590
64591 2000-05-03  Jim Meyering  <meyering@lucent.com>
64592
64593         * m4/check-decl.m4 (AC_CHECK_DECLS): Add strndup.
64594
64595 2000-05-02  Paul Eggert  <eggert@twinsun.com>
64596
64597         * m4/largefile.m4 (AC_SYS_LARGEFILE): Define _GNU_SOURCE if
64598         this is needed to make ftello visible (e.g. glibc 2.1.3).  Use
64599         compile-time test, rather than inspecting host and OS, to
64600         decide whether to define _LARGEFILE_SOURCE.
64601
64602 2000-05-01  Jim Meyering  <meyering@lucent.com>
64603
64604         * m4/fsusage.m4: Use AC_MSG_CHECKING instead of obsolete AC_CHECKING.
64605
64606         * m4/ls-mntd-fs.m4 (jm_LIST_MOUNTED_FILESYSTEMS): Add BeOS support.
64607         Based on a patch from Bruno Haible.
64608
64609 2000-05-01  Jim Meyering  <meyering@lucent.com>
64610
64611         * lib/full-write.c (full_write): Remove `FIXME' part of comment.
64612
64613 2000-04-29  Jim Meyering  <meyering@lucent.com>
64614
64615         * lib/path-concat.c: Declare strdup only if it's not defined.
64616         * lib/canon-host.c: Likewise.
64617
64618 2000-04-28  Jim Meyering  <meyering@lucent.com>
64619
64620         * lib/rpmatch.c [HAVE_LIMITS_H]: Include limits.h before regex.h to
64621         avoid redefinition warning on some systems (HPUX).  Otherwise, regex.h
64622         is included first, then limits.h is included by locale.h by libintl.h.
64623         From John David Anglin.
64624
64625 2000-04-25  Jim Meyering  <meyering@lucent.com>
64626
64627         * lib/makepath.c (S_IRWXUGO): Define.
64628         (make_path): Always perform explicit chmod if MODE specifies any
64629         of the `special' permission bits.  Prompted by a bug report against
64630         install from Mate Wierdl and Joost van Baal.
64631
64632 2000-04-18  Jim Meyering  <meyering@lucent.com>
64633
64634         * m4/prereq.m4 (jm_PREREQ_GETPAGESIZE): New macro.
64635         (jm_PREREQ): Use it.
64636
64637 2000-04-18  Jim Meyering  <meyering@lucent.com>
64638
64639         * lib/README: New file.
64640
64641         * lib/getpagesize.h [!getpagesize && HAVE_OS_H && B_PAGE_SIZE]: Define
64642         getpagesize.  For BeOS.  Based on a patch from Bruno Haible.
64643
64644 2000-04-17  Jim Meyering  <meyering@lucent.com>
64645
64646         Get it right :-)
64647         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Emit the
64648         actual #define via AH_VERBATIM.  Don't need separate AC_DEFINE.
64649         Suggestion from Akim Demaille.
64650
64651 2000-04-17  Jim Meyering  <meyering@lucent.com>
64652
64653         * lib/strftime.c (my_strftime) [strftime]: Declare strftime here, since
64654         the definition of it to rpl_strftime also defined-away the system's
64655         declaration.
64656
64657 2000-04-15  Jim Meyering  <meyering@lucent.com>
64658
64659         Use `C' to denote so-called `contiguous' files, the same way
64660         that tar does.
64661         * lib/filemode.c (S_ISCTG) [!S_ISCTG && S_IFCTG]: Define.
64662         (ftypelet): Use S_ISCTG.
64663         From Michael Deutschmann.
64664
64665 2000-04-14  Jim Meyering  <meyering@lucent.com>
64666
64667         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use the one-arg
64668         form of AC_DEFINE.  Otherwise, the #ifndef in AH_VERBATIM gets
64669         clobbered.
64670
64671 2000-04-14  Jim Meyering  <meyering@lucent.com>
64672
64673         * lib/strftime.c (my_strftime) [#ifdef strftime]: Declare strftime.
64674
64675 2000-04-13  Jim Meyering  <meyering@lucent.com>
64676
64677         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES) [_GNU_SOURCE]: Use new
64678         AH_VERBATIM to insert required #ifndef into config.h.in.
64679         Suggestion from Akim Demaille.
64680
64681 2000-04-12  Jim Meyering  <meyering@lucent.com>
64682
64683         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Use AC_CHECK_HEADERS, not
64684         `AC_CHECK_HEADER' to check for locale.h.  Thanks to a report from
64685         Christian Krackowizer.
64686
64687         More code moved from ../configure.in into (jm_CHECK_ALL_TYPES).
64688         * m4/jm-macros.m4 (_GNU_SOURCE): Define.
64689         (AC_SYS_LARGEFILE): Require.
64690         (AM_C_PROTOTYPES): Require.
64691
64692 2000-04-08  Jim Meyering  <meyering@lucent.com>
64693
64694         * lib/Makefile.am (charset.alias): Use t-$@, not $@-t so the DOS 8.3
64695         names don't conflict.  Reported by Eli Zaretskii.
64696
64697 2000-04-07  Jim Meyering  <meyering@lucent.com>
64698
64699         * lib/putenv.c: Move inclusion of errno.h so it follows that of
64700         sys/types.h, to work around system header problems on AIX 3.2.5.
64701         From Bruno Haible.
64702
64703 2000-04-07  Bruno Haible  <haible@clisp.cons.org>
64704
64705         * lib/unicodeio.c (print_unicode_char): Avoid triggering Solaris iconv
64706         bug.  Deal with the different error behavior of Irix iconv.
64707
64708 2000-04-05  Paul Eggert  <eggert@twinsun.com>
64709
64710         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Don't use -n32 on
64711         IRIX if the installer said otherwise.
64712
64713 2000-04-05  Jim Meyering  <meyering@lucent.com>
64714
64715         Portability tweaks required for ultrix4.3.
64716         * m4/check-decl.m4 [!HAVE_UTMPX_H] (headers): Include <utmp.h>.
64717         (jm_CHECK_DECLS): Add getutent to the list of functions.
64718         (_jm_DECL_HEADERS): Add utmpx.h.
64719         From John David Anglin.
64720
64721         * m4/strftime.m4: Back out the 2000-04-02 change.
64722         Instead of that change, simply undefine putenv in the test program.
64723
64724 2000-04-05  Jim Meyering  <meyering@lucent.com>
64725
64726         Portability tweaks required for ultrix4.3.
64727         * lib/readutmp.h [HAVE_UTMPX_H && !HAVE_DECL_GETUTENT]: Declare
64728         getutent.
64729         * lib/readutmp.c: Include sys/types.h before sys/stat.h.
64730         * lib/canon-host.c: Declare strdup.
64731         * lib/path-concat.c: Likewise.
64732         From John David Anglin.
64733
64734 2000-04-04  Jim Meyering  <meyering@lucent.com>
64735
64736         Be more DOS 8.3-friendly.
64737         * lib/ref-add.sin: Renamed from ref-add.sed.in.
64738         * lib/ref-del.sin: Renamed from ref-del.sed.in.
64739         * lib/Makefile.am: Reflect renaming.
64740         Reported by Eli Zaretskii.
64741
64742         Use a temporary file name that won't clash with `charset.alias'
64743         in the DOS 8.3 name space.
64744         * lib/Makefile.am (charset_tmp): Define.
64745         (install-exec-local): Use $(charset_tmp) instead of $(charset_alias)-t.
64746         (uninstall-local): Likewise.
64747         Reported by Eli Zaretskii.
64748
64749 2000-04-03  Jim Meyering  <meyering@lucent.com>
64750
64751         * m4/gettext.m4: Fix typo in comment.
64752
64753         * m4/codeset.m4 (AC_CHECK_HEADERS): Add langinfo.h (moved here from
64754         textutils/configure.in).  Suggestion from Paul Eggert.
64755         (AC_CHECK_FUNCS): Add nl_langinfo.  (also from textutils/configure.in)
64756
64757 2000-04-02  Paul Eggert  <eggert@twinsun.com>
64758
64759         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Set TZ environment
64760         variable in the shell rather than using putenv, which isn't
64761         portable.  This avoids the configure-time inter-test dependency
64762         on the potentially-renamed putenv function.
64763
64764 2000-03-30  Paul Eggert  <eggert@twinsun.com>
64765
64766         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Include <sys/stat.h>
64767         before checking struct stat.st_blksize, so that
64768         HAVE_STRUCT_STAT_ST_BLKSIZE is defined correctly.
64769
64770 2000-03-29  Paul Eggert  <eggert@twinsun.com>
64771
64772         * m4/strftime.m4 (_jm_STRFTIME_PREREQS): Check for strftime,
64773         since strftime.c uses HAVE_STRFTIME to decide whether to use
64774         the underlying strftime.
64775
64776 2000-03-29  Paul Eggert  <eggert@twinsun.com>
64777
64778         * lib/time/strftime.c (my_strftime): Make sure we call the system
64779         strftime, not ourselves, when invoking the underlying strftime.
64780
64781 2000-03-24  Jim Meyering  <meyering@lucent.com>
64782
64783         * lib/Makefile.am (EXTRA_DIST): Add ref-add.sed.in and ref-del.sed.in.
64784         (charset_alias): Define.
64785         (install-exec-local): Factor out common code.
64786         (uninstall-local): Split lines longer than 80.
64787         (ref-add.sed, ref-del.sed): Remove rules... (do the following instead)
64788         (SUFFIXES): Define.
64789         (.sed.in.sed): New rule.  Don't redirect directly to $@.
64790         (CLEANFILES): Add ref-add.sed and ref-del.sed.
64791
64792 2000-03-19  Bruno Haible  <haible@clisp.cons.org>
64793
64794         * lib/config.charset: Output a line containing "Packages using this
64795         file".
64796         * lib/ref-add.sed.in, lib/ref-del.sed.in: New files.
64797         * lib/Makefile.am (install-exec-local, uninstall-local, ref-add.sed,
64798         ref-del.sed): New rules.
64799
64800 2000-03-17  Jim Meyering  <meyering@lucent.com>
64801
64802         * lib/unicodeio.c (<string.h>): Include only #if HAVE_STRING_H.
64803         Otherwise, include <strings.h>
64804
64805 2000-03-17  Bruno Haible  <haible@clisp.cons.org>
64806
64807         * lib/unicodeio.c (utf8_wctomb): New function.
64808         (print_unicode_char): Pass the Unicode character to iconv in UTF-8
64809         format instead of in UCS-4 with platform dependent endianness.
64810
64811 2000-03-10  Jim Meyering  <meyering@lucent.com>
64812
64813         * m4/lib-check.m4: Look for getspnam in -lgen, too.
64814         From Marco Franzen.
64815
64816 2000-03-07  Paul Eggert  <eggert@twinsun.com>
64817
64818         * lib/savedir.c (savedir): Work even if directory size is
64819         negative; this can happen with some screwy NFS configurations.
64820
64821 2000-03-06  Jim Meyering  <meyering@lucent.com>
64822
64823         * lib/localcharset.c (get_charset_aliases): Don't try to free file_name
64824         if it's NULL (because we ran out of memory).  From Bruno Haible.
64825
64826 2000-03-05  Jim Meyering  <meyering@lucent.com>
64827
64828         * lib/localcharset.c ("path-concat.h"): Include.
64829         (get_charset_aliases): Use path_concat instead of ANSI string
64830         concatenation.
64831
64832         * lib/unicodeio.h (PARAMS): Define.
64833         Use it to guard prototype.
64834
64835 2000-03-04  Jim Meyering  <meyering@lucent.com>
64836
64837         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require AC_C_VOLATILE,
64838         for lib/localcharset.c.
64839
64840 2000-03-04  Jim Meyering  <meyering@lucent.com>
64841
64842         * lib/Makefile.am (install-exec-local): Create $(libdir) before
64843         installing into it.
64844         (uninstall-local): Uncomment this rule so `make distcheck' works
64845         once again.
64846
64847         * lib/unicodeio.c (<errno.h>): Include it.
64848         (errno): Declare if not defined.
64849
64850         * lib/localcharset.c: Add Bruno's comment justifying use of volatile.
64851
64852         * lib/config.charset: New version, incorporating remarks from a linux
64853         i18n mailing list.  From Bruno Haible.
64854
64855 2000-03-04  Bruno Haible  <haible@clisp.cons.org>
64856
64857         * m4/codeset.m4: New file.
64858         * m4/iconv.m4: New file.
64859         * m4/jm-macros.m4 (jm_MACROS): Call jm_LANGINFO_CODESET and jm_ICONV.
64860
64861 2000-03-03  Jim Meyering  <meyering@lucent.com>
64862
64863         * m4/regex.m4: Make sure re_compile_pattern accepts patterns like `{1'.
64864
64865 2000-03-02  Jim Meyering  <meyering@lucent.com>
64866
64867         * m4/timespec.m4: Require AC_HEADER_TIME before the cache check so
64868         the messages come out on separate lines.
64869
64870         * m4/jm-glibc-io.m4 (jm_FUNC_GLIBC_UNLOCKED_IO): Use AC_CHECK_DECLS,
64871         rather than jm_CHECK_DECLARATIONS.
64872         * m4/decl.m4: Remove now-unused file.
64873
64874         * m4/check-decl.m4 (AC_CHECK_DECLS): Add getlogin, ttyname, and
64875         geteuid.
64876
64877 2000-03-02  Jim Meyering  <meyering@lucent.com>
64878
64879         * lib/Makefile.am (EXTRA_DIST): Add config.charset.
64880
64881 2000-03-01  Jim Meyering  <meyering@lucent.com>
64882
64883         * lib/localcharset.c: Guard some #includes with `#if HAVE_...'.
64884         * lib/unicodeio.c: Likewise.
64885
64886 2000-03-01  Bruno Haible  <haible@clisp.cons.org>
64887
64888         * lib/config.charset: New file.
64889         * lib/localcharset.c: New file.
64890         * lib/unicodeio.h, lib/unicodeio.c: New files.
64891         * lib/Makefile.am (DEFS): Add -DLIBDIR=...
64892         (libfetish_a_SOURCES): Add localcharset.c and unicodeio.c.
64893         (noinst_HEADERS): Add unicodeio.h.
64894         (all-local, install-exec-local, charset.alias): New targets.
64895
64896 2000-02-28  Paul Eggert  <eggert@twinsun.com>
64897
64898         * lib/quotearg.c (ALERT_CHAR): New macro.
64899         (quotearg_buffer_restyled): Use it.
64900
64901 2000-02-27  Jim Meyering  <meyering@lucent.com>
64902
64903         * m4/check-decl.m4: Add getenv to the list.
64904
64905 2000-02-27  Jim Meyering  <meyering@lucent.com>
64906
64907         * lib/strtoumax.c: Fix typo in decl of strtoul: s/long long/long/.
64908         Guard declaration of strtoull also with `&& HAVE_UNSIGNED_LONG_LONG'.
64909
64910         * lib/backupfile.c: Guard inclusion of stdlib.h with
64911         `#if HAVE_STDLIB_H', not `#if STDC_HEADERS'.
64912         Declare malloc if needed.
64913
64914         * lib/backupfile.c: Use `#if !HAVE_DECL...' instead of
64915         `#ifndef HAVE_DECL..'
64916         now that autoconf always defines the HAVE_DECL_ symbols.
64917         * lib/human.c: Likewise.
64918         * lib/same.c: Likewise.
64919         * lib/strtoumax.c: Likewise.
64920
64921         * lib/backupfile.c: Arrange for cpp to fail if the configure-time
64922         declaration check was not run.
64923         * lib/hash.c: Likewise.
64924         * lib/human.c: Likewise.
64925         * lib/same.c: Likewise.
64926         * lib/strtoumax.c: Likewise.
64927
64928         * lib/userspec.c (parse_user_spec): If there is no `:' but there is a
64929         `.', then first look up the entire `.'-containing string as a login
64930         name.
64931
64932 2000-02-23  Jim Meyering  <meyering@lucent.com>
64933
64934         * m4/check-decl.m4: Now that we have the new AC_CHECK_DECLS, use it
64935         in place of my hack.
64936
64937 2000-02-18  Paul Eggert  <eggert@twinsun.com>
64938
64939         * lib/getdate.y: Handle two-digit years with leading zeros correctly.
64940         (textint): New typedef.
64941         (parser_control): Member year changed from int to textint.
64942         All uses changed.
64943         (YYSTYPE): Removed; replaced by %union with int and textint members.
64944         (tDAY, tDAY_UNIT, tDAYZONE, tHOUR_UNIT, tID, tLOCAL_ZONE, tMERIDIAN,
64945         tMINUTE_UNIT, tMONTH, tMONTH_UNIT tSEC_UNIT, tSNUMBER, tUNUMBER,
64946         tYEAR_UNIT, tZONE, o_merid): Now of type <intval>.
64947         (tSNUMBER, tUNUMBER): Now of type <textintval>.
64948         (date, number, to_year): Use width of number in digits, not its value,
64949         to determine whether it's a 2-digit year, or a 2-digit time.
64950         (yylex): Store number of digits of numeric tokens.
64951         Reported by John Kendall.
64952
64953         (parser_control): Changed from struct parser_control to typedef (for
64954         consistency).  All uses changed.
64955
64956         (tID): Removed; not used.
64957         (yylex): Return '?' for unknown identifiers, rather than (unused) tID.
64958
64959 2000-02-14  Paul Eggert  <eggert@twinsun.com>
64960
64961         * lib/getpagesize.h (getpagesize): Port to VMS for Alpha;
64962         adapted from changes to grep getpagesize.h by Martin P.J. Zinser.
64963
64964 2000-02-12  Jim Meyering  <meyering@lucent.com>
64965
64966         * lib/userspec.c (ISDIGIT): Define it.
64967         (isdigit): Remove definition.
64968         (is_number): Use ISDIGIT, not isdigit.
64969         <libintl.h>: Include.
64970         (_ and N_): Define.
64971         (parse_user_spec): Mark translatable strings.
64972
64973 2000-02-10  Jim Meyering  <meyering@lucent.com>
64974
64975         With these changes, nanosleep.[ch] are finally enough like the other
64976         lib/* replacement files to compile on a few more losing systems.
64977
64978         * lib/nanosleep.h: Don't include config.h.
64979         Remove prototype from declaration of nanosleep.
64980         (PARAMS): Remove now-unneeded definition.
64981         * lib/nanosleep.c: #undef nanosleep.
64982         (rpl_nanosleep): Rename from nanosleep.
64983
64984 2000-02-10  Jim Meyering  <meyering@lucent.com>
64985
64986         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Rename replacement function from
64987         gnu_nanosleep to rpl_nanosleep.
64988
64989 2000-02-09  Jim Meyering  <meyering@lucent.com>
64990
64991         * m4/lib-check.m4 (jm_LIB_CHECK): Fix typo: check for sp_pwdp in
64992         struct spwd, rather than in struct passwd.  Reported by Gaël Quéri.
64993
64994 2000-02-08  Akim Demaille  <akim@epita.fr>
64995
64996         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Quote square brackets with
64997         `[' and `]' and remove uses of `changequote'.
64998         (AC_SYS_LARGEFILE_MACRO_VALUE): Likewise.
64999         (AC_SYS_LARGEFILE): Likewise.
65000         * m4/gettext.m4 (AM_GNU_GETTEXT): Likewise.
65001         * m4/strftime.m4 (jm_FUNC_GNU_STRFTIME): Remove now-unnecessary use
65002         of changequote.
65003         * m4/regex.m4 (jm_INCLUDED_REGEX): Likewise.
65004         * m4/readdir.m4 (jm_FUNC_READDIR): Likewise
65005         * m4/memcmp.m4 (jm_AC_FUNC_MEMCMP): Likewise, and add `int' for main.
65006         * m4/getloadavg.m4 (AM_FUNC_GETLOADAVG): Likewise.
65007
65008 2000-02-05  Jim Meyering  <meyering@lucent.com>
65009
65010         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require most macros.
65011         Remove explicit use of AC_HEADER_TIME.  It is required by
65012         jm_CHECK_TYPE_STRUCT_TIMESPEC.  Using AC_HEADER_TIME and
65013         `AC_REQUIRE'ing jm_CHECK_TYPE_STRUCT_TIMESPEC provoked a but
65014         in autoconf whereby the expansion of the latter ended up preceding
65015         the expansion of its prerequisite, AC_HEADER_TIME.
65016         Reported by Volker Borchert.
65017
65018 2000-02-03  Jim Meyering  <meyering@lucent.com>
65019
65020         * m4/prereq.m4 (jm_PREREQ_READUTMP): Check for utmpxname.
65021
65022 2000-02-03  Jim Meyering  <meyering@lucent.com>
65023
65024         * lib/readutmp.c (read_utmp): Guard with `#ifdef UTMP_NAME_FUNCTION',
65025         rather than with `#if HAVE_UTMPNAME'.
65026
65027 2000-02-02  Jim Meyering  <meyering@lucent.com>
65028
65029         * m4/prereq.m4 (jm_PREREQ_ADDEXT): Fix typo that resulted in no
65030         definition of HAVE_PATHCONF: s/AC_CHECK_FUNC/AC_CHECK_FUNCS/.
65031         Reported by Eli Zaretskii.
65032
65033 2000-02-01  Jim Meyering  <meyering@lucent.com>
65034
65035         * lib/readutmp.h (UT_USER): Add parens.  From Andreas Schwab.
65036
65037 2000-01-31  Jim Meyering  <meyering@lucent.com>
65038
65039         * m4/check-decl.m4 (jm_CHECK_DECLS): Add nanosleep to the list of
65040         functions.  Add the time.h and sys/time.h headers along with the
65041         AC_REQUIRE'ment of AC_HEADER_TIME.
65042
65043 2000-01-31  Jim Meyering  <meyering@lucent.com>
65044
65045         * lib/nanosleep.h (nanosleep): Guard declaration with
65046         `#if ! HAVE_DECL_NANOSLEEP'.
65047         Without this, OFS gets a redeclaration error for rpl_nanosleep, due to
65048         the declaration in that vendor's sys/timers.h.
65049         Reported by Christian Krackowizer.
65050
65051         * lib/quotearg.c (ISASCII): Add #undef and move definition to follow
65052         inclusion of wctype.h to work around Solaris 2.6 namespace pollution.
65053         (ISPRINT): Likewise.
65054         Reported by Tom Tromey.
65055
65056 2000-01-30  Jim Meyering  <meyering@lucent.com>
65057
65058         * m4/lib-check.m4: Clean up some kludgy old shadow password tests.
65059
65060         * m4/prereq.m4 (utmp_includes): Define.
65061         Check for ut_user and ut_name members in both struct utmpx
65062         and struct utmp.
65063
65064 2000-01-30  Jim Meyering  <meyering@lucent.com>
65065
65066         * lib/readutmp.c (extract_trimmed_name): Use UT_USER instead of
65067         hard-coding uses of ->ut_name.  The latter doesn't work with new Linux
65068         header files where only utmpx.ut_user is declared.
65069
65070         * lib/readutmp.h (UT_USER): Define.
65071
65072 2000-01-29  Jim Meyering  <meyering@lucent.com>
65073
65074         * m4/lib-check.m4: New file containing library-related checks from
65075         fileutils and sh-utils (textutils had none).
65076
65077 2000-01-28  Jim Meyering  <meyering@lucent.com>
65078
65079         * m4/perl.m4: Change format of warning message to look more like that
65080         from the missing script.  Suggestion from François Pinard.
65081
65082 2000-01-25  Jim Meyering  <meyering@lucent.com>
65083
65084         * m4/timespec.m4: Require AC_HEADER_TIME, and include sys/time.h as
65085         well as time.h in the compile check.
65086         * m4/nanosleep.m4: Require AC_HEADER_TIME rather than simply using it.
65087         Fix typo in cross-compiling case: s/yes/no/.
65088
65089 2000-01-23  Jim Meyering  <meyering@lucent.com>
65090
65091         * m4/jm-macros.m4: Move df-related tests here from
65092         fileutils/configure.in
65093
65094         * m4/ls-mntd-fs.m4: s/list_mounted_fs/ac_list_mounted_fs/
65095         (jm_LIST_MOUNTED_FILESYSTEMS): Take two parameters.
65096
65097         * m4/fsusage.m4: New file.  Extracted from fileutils/configure.in.
65098         s/space/ac_fsusage_space/.
65099         (jm_FILE_SYSTEM_USAGE): Take two parameters.
65100
65101         * m4/ftruncate.m4: New file (derived from part of
65102         fileutils/configure.in).
65103         * m4/jm-macros.m4 (jm_FUNC_FTRUNCATE): AC_REQUIRE it.
65104         (jm_CHECK_ALL_TYPES): Require AC_HEADER_MAJOR and AC_HEADER_DIRENT.
65105
65106         * m4/jm-macros.m4 (OPTIONAL_BIN_PROGS, OPTIONAL_BIN_ZCRIPTS, MAN):
65107         AC_SUBST these here, rather than just in sh-util/configure.in, so
65108         that the now-shared-by-fileutils-and-textutils lib/Makefile.am are
65109         all the same.
65110         (AM_FUNC_OBSTACK): Add (from fileutils/configure.in).
65111         (AC_CHECK_FUNCS): Merge all checks from fileutils, textutils, sh-utils.
65112         (AM_FUNC_STRTOD): Added (from textutils', sh-utils' configure.in).
65113         (AC_SUBST(POW_LIBM)): Likewise.
65114         (AC_SUBST(DF_PROG)): Moved from fileutils/configure.in.
65115
65116 2000-01-23  Jim Meyering  <meyering@lucent.com>
65117
65118         * lib/Makefile.am (libfetish_a_SOURCES): Remove explicit mention of
65119         obstack.c.
65120
65121 2000-01-22  Jim Meyering  <meyering@lucent.com>
65122
65123         * m4/jm-macros.m4: Call AC_PROG_CC_STDC just before AC_C_CONST.
65124
65125         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): Add wctype.h.
65126
65127         * m4/jm-macros.m4 (AC_CHECK_HEADERS): Add checks from fileutils'
65128         configure.in
65129         (AC_CHECK_HEADERS): Likewise for sh-utils.
65130         (AC_CHECK_HEADERS): Likewise for textutils.
65131         Merge the three lists of headers.
65132
65133         * m4/prereq.m4 (jm_PREREQ_ADDEXT): New macro.  Parts moved here
65134         from fileutils' configure.in.
65135
65136         * m4/decl.m4: Remove kludgy `test -z $ac_...AC_CHECK_HEADERS(...)'
65137         code. Moved tests into their own function (_jm_DECL_HEADERS) in
65138         check-decl.m4.
65139
65140         * m4/check-decl.m4: Use #if rather than #ifdef.
65141         Add HAVE_DECL_STRTOUL and HAVE_DECL_STRTOULL.
65142         (jm_CHECK_DECLARATIONS): Add strtoul strtoull.
65143         (_jm_DECL_HEADERS): Define new function.
65144         (jm_CHECK_DECLARATIONS): Require it.
65145
65146 2000-01-22  Jim Meyering  <meyering@lucent.com>
65147
65148         * lib/strtoumax.c: [! HAVE_DECL_STRTOUL]: Declare strtoul.
65149         [! HAVE_DECL_STRTOULL]: Declare strtoull.
65150         Required for some AIX systems.  Reported by Christian Krackowizer.
65151         [TESTING] (main): New function.
65152
65153         1997-10-17  Eli Zaretskii  <eliz@is.elta.co.il>
65154         * lib/dirname.c (dir_name): Support for DOS-style file names with drive
65155         letters.
65156
65157         * lib/quotearg.c [HAVE_WCTYPE_H]: Include <wctype.h> for decl of
65158         iswprint.
65159
65160         * lib/strverscmp.c (ISDIGIT): Define.
65161         (strverscmp): Use ISDIGIT, not isdigit.
65162
65163 2000-01-19  Jim Meyering  <meyering@lucent.com>
65164
65165         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Include <sys/time.h>, too.
65166         Use AC_HEADER_TIME.  Volker Borchert reported that OpenBSD-2.3/sparc
65167         defines `struct timespec' in <sys/time.h>
65168
65169         * m4/c-bs-a.m4: Remove uses of changequote altogether.
65170         Thanks to Akim for explaining.
65171
65172 2000-01-17  Paul Eggert  <eggert@twinsun.com>
65173
65174         * lib/nanosleep.c (nanosleep):
65175         Don't use SA_INTERRUPT to decide whether to call sigaction, as
65176         POSIX.1 doesn't require SA_INTERRUPT and some systems
65177         (e.g. Solaris 7) don't define it.  Use SA_NOCLDSTOP instead;
65178         it's been part of POSIX.1 since day 1 (in 1988).
65179
65180 2000-01-17  Jim Meyering  <meyering@lucent.com>
65181
65182         * lib/interlock: Remove unused file.  Reported by François Pinard.
65183
65184 2000-01-16  Paul Eggert  <eggert@twinsun.com>
65185
65186         * lib/quotearg.c (quotearg_buffer_restyled): Do not quote
65187         alert, backslash, formfeed, and vertical tab unnecessarily in
65188         shell quoting style.
65189
65190 2000-01-16  Jim Meyering  <meyering@lucent.com>
65191
65192         * m4/jm-macros.m4: Require jm_FUNC_GROUP_MEMBER, jm_FUNC_PUTENV,
65193         AM_FUNC_ERROR_AT_LINE, jm_FUNC_GNU_STRFTIME, jm_FUNC_MKTIME,
65194         jm_FUNC_GETGROUPS AC_FUNC_VPRINTF, AC_FUNC_ALLOCA,
65195         AM_FUNC_GETLOADAVG, and jm_SYS_PROC_UPTIME.
65196
65197 2000-01-16  Jim Meyering  <meyering@lucent.com>
65198
65199         * m4/c-bs-a.m4: Use `changequote(<<,>>)', rather than `changequote(, )'
65200         because the latter didn't work.
65201
65202 2000-01-15  Jim Meyering  <meyering@lucent.com>
65203
65204         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add gethostname and getusershell.
65205         (AC_REPLACE_FUNCS): Add memcpy and memset.
65206         Add these, too: stime strcspn stpcpy strstr strtol strtoul.
65207         Add strpbrk.
65208         Add these: euidaccess memcmp mkdir rmdir rpmatch strndup strverscmp.
65209
65210 2000-01-12  Jim Meyering  <meyering@lucent.com>
65211
65212         * m4/prereq.m4 (jm_PREREQ_CANON_HOST): New macro.
65213         (jm_PREREQ): Use it.
65214         (jm_PREREQ_READUTMP): New macro.
65215         (jm_PREREQ): Use it.
65216
65217 2000-01-11  Paul Eggert  <eggert@twinsun.com>
65218
65219         Quote multibyte characters correctly.
65220         * m4/c-bs-a.m4: New file.
65221         * m4/prereq.m4 (jm_PREREQ_QUOTEARG): New macro.
65222         (jm_PREREQ): Use it.
65223
65224 2000-01-11  Paul Eggert  <eggert@twinsun.com>
65225
65226         * m4/uintmax_t.m4: Port to autoconf 2.13.
65227
65228 2000-01-08  Jim Meyering  <meyering@ascend.com>
65229
65230         * m4/strerror_r.m4 (jm_FUNC_STRERROR_R): New file/macro.
65231         * m4/jm-macros.m4 (jm_FUNC_STRERROR_R): Require it.
65232
65233 2000-01-04  Jim Meyering  <meyering@ascend.com>
65234
65235         * m4/d-type.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE): Rename from
65236         jm_STRUCT_DIRENT_D_TYPE.
65237         * m4/d-ino.m4 (jm_CHECK_TYPE_STRUCT_DIRENT_D_INO): Rename from
65238         jm_STRUCT_DIRENT_D_INO.
65239         * m4/utimbuf.m4 (jm_CHECK_TYPE_STRUCT_UTIMBUF): Rename from
65240         jm_STRUCT_UTIMBUF.
65241         * m4/jm-macros.m4: Reflect s/jm_STRUCT_/jm_CHECK_TYPE_STRUCT_/
65242         renamings.
65243         * m4/utime.m4: Likewise.
65244
65245         * m4/timespec.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): New file, macro.
65246         * m4/jm-macros.m4 (jm_CHECK_TYPE_STRUCT_TIMESPEC): Require it.
65247
65248 2000-01-03  Paul Eggert  <eggert@twinsun.com>
65249
65250         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): Search for nanosleep in -lrt
65251         (for Solaris 7) and in -lposix4 (for Solaris 2.5.1).
65252
65253 2000-01-02  Jim Meyering  <meyering@ascend.com>
65254
65255         * m4/search-libs.m4: Escape `$' in $3 of dnl comment.  I no longer
65256         remember if this is necessary.
65257
65258 1999-12-26  Jim Meyering  <meyering@ascend.com>
65259
65260         * m4/jm-macros.m4: Use it here.
65261         * m4/nanosleep.m4 (jm_FUNC_NANOSLEEP): New file/macro.
65262
65263 1999-12-23  Jim Meyering  <meyering@ascend.com>
65264
65265         * m4/jm-macros.m4: Check for clock_gettime (moved from
65266         fileutils/configure.in)
65267         Check for gettimeofday.
65268
65269 1999-12-20  Jim Meyering  <meyering@ascend.com>
65270
65271         * m4/strftime.m4: Remove kludge, now that I'm using the fixed
65272         autoconf-2.14a-1999-12-20.
65273
65274 1999-12-19  Jim Meyering  <meyering@ascend.com>
65275
65276         * m4/lstat-slash.m4: New file.
65277         * m4/jm-macros.m4: Use the new macro:
65278         jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK.
65279
65280 1999-12-07  Jim Meyering  <meyering@ascend.com>
65281
65282         * m4/perl.m4: Require that File::Compare be available, too.
65283         Too many systems seem to lack it.
65284
65285         * m4/strftime.m4: Add checks for most of the cpp macros tested in
65286         GNU's strftime.c.  Prompted by a patch from Paul Eggert.
65287
65288 1999-11-18  Paul Eggert  <eggert@twinsun.com>
65289
65290         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around a
65291         problem with the QNX 4.25 shell, which doesn't propagate exit
65292         status of failed commands inside shell assignments.
65293
65294 1999-11-17  Jim Meyering  <meyering@ascend.com>
65295
65296         * m4/gettext.m4: Use new AC_CONFIG_LINKS in place of AC_LINK_FILES.
65297
65298 1999-11-07  Jim Meyering  <meyering@ascend.com>
65299
65300         * m4/getloadavg.m4: Add `, 1, [FIXME]' to each use of AC_DEFINE.
65301
65302 1999-11-06  Jim Meyering  <meyering@ascend.com>
65303
65304         * m4/link-follow.m4 (jm_AC_FUNC_LINK_FOLLOWS_SYMLINK): New file/macro.
65305         * m4/jm-macros.m4 (jm_MACROS): Use it here.
65306
65307 1999-11-05  Jim Meyering  <meyering@ascend.com>
65308
65309         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Move some tests from
65310         configure.in of textutils, fileutils, and sh-utils into this one
65311         (shared between those packages) file.
65312         Use `AC_CHECK_MEMBERS((struct stat.st_blksize))' instead of deprecated
65313         AC_STRUCT_ST_BLKSIZE.
65314
65315 1999-11-03  Jim Meyering  <meyering@ascend.com>
65316
65317         * m4/ssize_t.m4: Remove file.  No longer needed since the new version
65318         of AC_CHECK_TYPE checks includes unistd.h.
65319         * m4/jm-macros.m4: Use straight `AC_CHECK_TYPE(ssize_t, int)'.
65320         Suggestion from Akim Demaille.
65321
65322 1999-10-30  Jim Meyering  <meyering@ascend.com>
65323
65324         * m4/uintmax_t.m4: Require 2.14a.  Remove backslash before backtick in
65325         m4-quoted string.
65326         * m4/ls-mntd-fs.m4: Likewise.
65327         * m4/jm-macros.m4: Likewise.  Also, use AC_TYPE_SSIZE_T instead
65328         * m4/jm-winsz1.m4: Likewise.
65329
65330         * m4/const.m4: Remove file, since the fix made it into the experimental
65331         version of autoconf.
65332         * m4/mktime.m4: Likewise.
65333
65334         * m4/check-type.m4: Remove file, now that the latest version of
65335         AC_CHECK_TYPE takes a third arg to specify additional #includes.
65336
65337         * m4/ssize_t.m4: New file, requires experimental version of autoconf.
65338         * m4/jm-macros.m4: Use new AC_TYPE_SSIZE_T instead of my hacked
65339         AC_CHECK_TYPE.
65340
65341 1999-10-04  Jim Meyering  <meyering@ascend.com>
65342
65343         * m4/jm-macros.m4: Don't require autoconf-2.14.1.
65344
65345 1999-09-22  Paul Eggert  <eggert@twinsun.com>
65346
65347         * m4/largefile.m4 (AC_SYS_LARGEFILE_FLAGS): Work around GCC
65348         2.95.1 bug with HP-UX 10.20.
65349
65350 1999-09-17  Jim Meyering  <meyering@ascend.com>
65351
65352         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add strdup.
65353         Paul Nevai reported a link failure on a NeXT CUBE with NeXTSTEP 3.3
65354         due to missing strdup (against sh-utils-2.0).
65355
65356 1999-08-29  Jim Meyering  <meyering@ascend.com>
65357
65358         * m4/jm-macros.m4: Require jm_BISON.
65359         * m4/bison.m4: New file.
65360
65361 1999-08-17  Paul Eggert  <eggert@twinsun.com>
65362
65363         * m4/largefile.m4 (AC_SYS_LARGEFILE): Fix typo: missing comma
65364         in value for _FILE_OFFSET_BITS, which broke ports to HP-UX 10.20.
65365
65366 1999-08-05  Jim Meyering  <meyering@ascend.com>
65367
65368         * m4/getline.m4: Rename test file from conftestdata to conftest.data
65369         to avoid conflicts with `conftest' on 8+3 filesystems.
65370         Suggestion from Eli Zaretskii.
65371
65372 1999-08-04  Jim Meyering  <meyering@ascend.com>
65373
65374         * m4/jm-macros.m4: Move a 4-line block of code from the configure.in of
65375         fileutils and sh-utils (textutils's getline test was inadequate).
65376         (AM_FUNC_GETLINE): Run this test.
65377         (AC_CHECK_FUNCS): Check for getdelim.
65378         Reported by Bob Proulx.
65379
65380 1999-08-02  Jim Meyering  <meyering@ascend.com>
65381
65382         * m4/jm-macros.m4: Add a comment.
65383
65384 1999-08-01  Paul Eggert  <eggert@twinsun.com>
65385
65386         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): Check whether
65387         <inttypes.h> defines strtoumax as a macro (and not as a
65388         function).
65389
65390 1999-08-01  Paul Eggert  <eggert@twinsun.com>
65391
65392         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): Make sure
65393         that we can shift, multiply and divide unsigned long long
65394         values; Ultrix cc can't do it.
65395
65396 1999-08-01  Paul Eggert  <eggert@twinsun.com>
65397
65398         * m4/mktime.m4: New file, which is a preview of what should appear
65399         in the next public autoconf release.
65400
65401 1999-08-01  Paul Eggert  <eggert@twinsun.com>
65402
65403         * m4/lfs.m4: Remove this file.
65404         * m4/largefile.m4: New file.  It contains the old contents of
65405         lfs.m4, except that all names with prefix AC_LFS have been
65406         changed to use the prefix AC_SYS_LARGEFILE instead, to be
65407         compatible with future autoconf versions.  Also, some minor m4
65408         quoting problems have been fixed.
65409
65410 1999-08-01  Paul Eggert  <eggert@twinsun.com>
65411
65412         * m4/gettext.m4 (AM_WITH_NLS): Remove unnecessary lines.
65413         Fix typo: $nls_cv_header_intl was misspelled as $nsl_cv_header_intl.
65414         (AM_GNU_GETTEXT): Fix problem with brackets and m4 quoting,
65415         and simplify the shell code.
65416
65417 1999-08-01  Jim Meyering  <meyering@ascend.com>
65418
65419         * m4/mktime.m4 (AC_FUNC_MKTIME): Undefine to avoid syntax errors from
65420         m4.
65421
65422 1999-07-20  Jim Meyering  <meyering@ascend.com>
65423
65424         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memmove.
65425
65426 1999-07-15  Jim Meyering  <meyering@ascend.com>
65427
65428         * m4/jm-macros.m4 (AC_CHECK_FUNCS): Check for getpagesize.
65429
65430 1999-05-22  Jim Meyering  <meyering@ascend.com>
65431
65432         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add memchr.
65433
65434 1999-05-20  Jim Meyering  <meyering@ascend.com>
65435
65436         * m4/search-libs.m4 [AC_SEARCH_LIBS]: Quote name in undefine.
65437         Add a colon after each `then' in case $4 is empty.
65438
65439 1999-05-16  Jim Meyering  <meyering@ascend.com>
65440
65441         * m4/search-libs.m4: New file to override autoconf's AC_SEARCH_LIBS.
65442
65443 1999-05-10  Jim Meyering  <meyering@ascend.com>
65444
65445         * m4/jm-mktime.m4: Reflect renaming: AM_FUNC_MKTIME -> AC_FUNC_MKTIME.
65446
65447         * m4/jm-macros.m4: Require 2.14.1, since we use newly-renamed
65448         AC_FUNC_MKTIME.
65449
65450 1999-05-10  Andreas Schwab  <schwab@issan.cs.uni-dortmund.de>
65451
65452         * m4/jm-mktime.m4, putenv.m4: Fix typos in config.h comments.
65453
65454 1999-05-04  Paul Eggert  <eggert@twinsun.com>
65455
65456         * m4/lfs.m4 (AC_LFS): -n32, -o32, and -n64 should be in CFLAGS,
65457         not CPPFLAGS, so that linking works correctly in IRIX.
65458
65459 1999-04-30  Paul Eggert  <eggert@twinsun.com>
65460
65461         * m4/jm-macros.m4 (AC_REPLACE_FUNCS): Add dup2.
65462
65463 1999-04-20  Paul Eggert  <eggert@twinsun.com>
65464
65465         * m4/uintmax_t.m4 (jm_AC_TYPE_UINTMAX_T): Move unsigned long
65466         long check into new jm_AC_TYPE_UNSIGNED_LONG_LONG macro.
65467         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): Require
65468         jm_AC_TYPE_UNSIGNED_LONG_LONG.
65469         * m4/ulonglong.m4 (jm_AC_TYPE_UNSIGNED_LONG_LONG): New file/macro.
65470
65471         * m4/lfs.m4: Port to AIX and HP-UX.  Support cross-compilation.
65472
65473 1999-04-20  Jim Meyering  <meyering@ascend.com>
65474
65475         * m4/xstrtoumax.m4: Require jm_AC_TYPE_UNSIGNED_LONG_LONG.
65476         AC_REPLACE xstroull if necessary.  From Paul Eggert.
65477         (AC_CHECK_FUNCS): Remove strtoull, strtoumax, strtouq.
65478
65479 1999-04-18  Jim Meyering  <meyering@ascend.com>
65480
65481         * m4/xstrtoumax.m4 (jm_AC_PREREQ_XSTRTOUMAX): New file/macro.
65482         * m4/jm-macros.m4: Use it.
65483
65484 1999-04-06  Jim Meyering  <meyering@ascend.com>
65485
65486         * m4/strftime.m4: Remove test for %f.
65487
65488 1999-03-29  Jim Meyering  <meyering@ascend.com>
65489
65490         * m4/jm-macros.m4 (jm_CHECK_ALL_TYPES): New macro, contains the
65491         superset of the AC_TYPE_* checks in the textutils, fileutils,
65492         and sh-utils, plus AC_TYPE_PID_T.  Paul Eggert suggested adding
65493         AC_TYPE_PID_T.
65494
65495 1999-03-28  Jim Meyering  <meyering@ascend.com>
65496
65497         * m4/jm-macros.m4: Define GNU_PACKAGE here.
65498         Be sure to AC_SUBST it, once again, so that @GNU_PACKAGE@ is
65499         replaced e.g., in the *.sh files of the sh-utils.
65500
65501 1999-03-20  Jim Meyering  <meyering@ascend.com>
65502
65503         * m4/jm-macros.m4: s/jm_WITH_REGEX/jm_INCLUDED_REGEX/.
65504         * m4/regex.m4 (jm_INCLUDED_REGEX): Rename from jm_WITH_REGEX.
65505         Don't depend on AM_GLIBC.  Suggestions from Alain Magloire.
65506
65507 1999-03-19  Jim Meyering  <meyering@ascend.com>
65508
65509         * m4/jm-winsz1.m4 (jm_WINSIZE_IN_PTEM): New macro.
65510
65511 1999-03-12  Jim Meyering  <meyering@ascend.com>
65512
65513         * m4/jm-macros.m4: Use AC_FUNC_SETVBUF_REVERSED.
65514
65515 1999-03-07  Jim Meyering  <meyering@ascend.com>
65516
65517         * m4/jm-glibc-io.m4: Use only those *_unlocked macros that are
65518         declared.
65519
65520 1999-02-17  Jim Meyering  <meyering@ascend.com>
65521
65522         * m4/gettext.m4 (AM_GNU_GETTEXT): Do `changequote' around use of
65523         brackets in macro definition.  From Eli Zaretskii and Alain Magloire.
65524
65525 1999-02-07  Jim Meyering  <meyering@ascend.com>
65526
65527         * m4/group-member.m4: New file -- extracted from sh-utils'
65528         configure.in.
65529
65530         1999-02-05  Eli Zaretskii  <eliz@is.elta.co.il>
65531         * m4/gettext.m4: Support DOS-style d:/foo/bar absolute file names.
65532
65533 1999-02-06  Jim Meyering  <meyering@ascend.com>
65534
65535         * m4/chown.m4: Use `AC_SUBST(LIBOBJS)' since we set LIBOBJS.
65536         * m4/fnmatch.m4: Likewise.
65537         * m4/getgroups.m4: Likewise.
65538         * m4/lstat.m4: Likewise.
65539         * m4/malloc.m4: Likewise.
65540         * m4/putenv.m4: Likewise.
65541         * m4/realloc.m4: Likewise.
65542         * m4/regex.m4: Likewise.
65543         * m4/stat.m4: Likewise.
65544         * m4/strftime.m4: Likewise.
65545         Suggestion from Alain Magloire.
65546
65547         * m4/chown.m4: Use `.$ac_objext', not `.o'.
65548         * m4/fnmatch.m4: Likewise.
65549         * m4/getgroups.m4: Likewise.
65550         * m4/getline.m4: Likewise.
65551         * m4/lstat.m4: Likewise.
65552         * m4/malloc.m4: Likewise.
65553         * m4/memcmp.m4: Likewise.
65554         * m4/putenv.m4: Likewise.
65555         * m4/realloc.m4: Likewise.
65556         * m4/regex.m4: Likewise.
65557         * m4/stat.m4: Likewise.
65558         * m4/strftime.m4: Likewise.
65559         Suggestion from Alain Magloire.
65560
65561         * m4/jm-macros.m4: Actually invoke jm_WITH_REGEX now that it requires
65562         an argument.
65563
65564         * m4/regex.m4: Add a run-time Test for proper operation of
65565         re_compile_pattern.
65566
65567 1999-01-31  Jim Meyering  <meyering@ascend.com>
65568
65569         * m4/getloadavg.m4: Check for locale.h and the function, setlocale.
65570
65571 1999-01-30  Jim Meyering  <meyering@ascend.com>
65572
65573         * m4/check-type.m4: Use 3-arg form of AC_DEFINE.
65574
65575         * m4/jm-mktime.m4: Make this a wrapper around the official
65576         AM_FUNC_MKTIME rather than my private copy, now that the official one
65577         is up to date.
65578         * m4/mktime.m4: Remove file.
65579
65580         * m4/getloadavg.m4: Use 3-arg form of AC_DEFINE.
65581         * m4/uptime.m4: Likewise.
65582         * m4/uintmax_t.m4: Likewise.
65583
65584 1999-01-28  Jim Meyering  <meyering@ascend.com>
65585
65586         * m4/jm-macros.m4: Use jm_AFS.
65587         * m4/afs.m4: New file (from fileutils' configure.in).
65588
65589         * m4/assert.m4: Use the 3-argument forms of AC_DEFINE* macros.
65590         * m4/chown.m4: Likewise.
65591         * m4/d-ino.m4: Likewise.
65592         * m4/d-type.m4: Likewise.
65593         * m4/fnmatch.m4: Likewise.
65594         * m4/getgroups.m4: Likewise.
65595         * m4/gettext.m4: Likewise.
65596         * m4/jm-mktime.m4: Likewise.
65597         * m4/jm-winsz2.m4: Likewise.
65598         * m4/lcmessage.m4: Likewise.
65599         * m4/ls-mntd-fs.m4: Likewise.
65600         * m4/malloc.m4: Likewise.
65601         * m4/memcmp.m4: Likewise.
65602         * m4/putenv.m4: Likewise.
65603         * m4/realloc.m4: Likewise.
65604         * m4/st_mtim.m4: Likewise.
65605         * m4/strftime.m4: Likewise.
65606
65607 1999-01-16  Jim Meyering  <meyering@ascend.com>
65608
65609         * m4/jm-macros.m4 (ARGMATCH_DIE): Define.
65610         (ARGMATCH_DIE_DECL): Define.
65611
65612 1999-01-12  Jim Meyering  <meyering@ascend.com>
65613
65614         * m4/Makefile.am.in: Rewrite to avoid using fmt.
65615         Reported by Lars Hecking.
65616
65617 1999-01-10  Jim Meyering  <meyering@ascend.com>
65618
65619         * m4/fstypename.m4: Use the new 3-arg form of AC_DEFINE instead of my
65620         gross kludge.
65621         * m4/inttypes_h.m4: Likewise.
65622         * m4/lstat.m4: Likewise.
65623         * m4/malloc.m4: Likewise.
65624         * m4/readdir.m4: Likewise.
65625         * m4/realloc.m4: Likewise.
65626         * m4/st_dm_mode.m4: Likewise.
65627         * m4/stat.m4: Likewise.
65628         * m4/utimbuf.m4: Likewise.
65629         * m4/utimes.m4: Likewise.
65630
65631         * m4/check-decl.m4: Use the new 3-arg form of AC_DEFINE instead of the
65632         AC_CHECK_FUNCS hack.  Now, it's still a hack, but at least the
65633         comments in config.h.in are meaningful.
65634
65635         * m4/jm-macros.m4: Require autoconf-2.13 here.
65636
65637         * m4/regex.m4: By default, don't use the included regex.c on systems
65638         with glibc 2.  Suggestion from Uli Drepper.
65639
65640 1999-01-02  Jim Meyering  <meyering@ascend.com>
65641
65642         * m4/jm-macros.m4: Replace strcasecmp and strncasecmp.
65643
65644 1998-12-18  Jim Meyering  <meyering@ascend.com>
65645
65646         * m4/Makefile.am.in (Makefile.am): Simplify rule.
65647         Based on a suggestion from Lars Hecking.
65648
65649 1998-11-16  Paul Eggert  <eggert@twinsun.com>
65650
65651         * m4/lfs.m4 (AC_LFS): Add support for HP-UX 10.20 and HP-UX 11.
65652
65653 1998-11-16  Jim Meyering  <meyering@ascend.com>
65654
65655         * m4/lfs.m4: Double-quote the `uname...` expression.
65656
65657 1998-11-14  Jim Meyering  <meyering@ascend.com>
65658
65659         * m4/lstat.m4: Correct comment.  POSIX does not permit it to succeed.
65660         * m4/stat.m4: Likewise.
65661
65662 1998-11-03  Jim Meyering  <meyering@ascend.com>
65663
65664         * m4/stat.m4: Rewrite to set HAVE_STAT_EMPTY_STRING_BUG.
65665         * m4/lstat.m4: Rewrite to set HAVE_LSTAT_EMPTY_STRING_BUG.
65666
65667 1998-10-18  Jim Meyering  <meyering@ascend.com>
65668
65669         * m4/check-decl.m4 (jm_CHECK_DECL_LOCALTIME_R): Remove macro.
65670
65671 1998-10-17  Jim Meyering  <meyering@ascend.com>
65672
65673         * m4/decl.m4 (jm_CHECK_DECLARATION): Don't hard-code which headers to
65674         include, though we still hard-code the `require'-like AC_CHECK_HEADERS
65675         calls for those previously hard-coded headers.  Instead, take a new
65676         parameter.
65677         (jm_CHECK_DECLARATIONS): Reflect interface change.
65678         * m4/check-decl.m4 (jm_CHECK_DECLS): Likewise.
65679         (jm_CHECK_DECL_LOCALTIME_R): New macro.
65680
65681         * m4/mktime.m4: Test for spring-forward gap before long-running test.
65682
65683 1998-10-14  Jim Meyering  <meyering@ascend.com>
65684
65685         * m4/mktime.m4: Use the more portable "TZ=PST8PDT,M4.1.0,M10.5.0"
65686         instead of "TZ=America/Vancouver".  From Paul Eggert.
65687
65688 1998-10-11  Jim Meyering  <meyering@ascend.com>
65689
65690         * m4/mktime.m4 (jm_AM_FUNC_MKTIME): New file and macro.
65691         This adds a test for a recently added compatibility fix for mktime.c.
65692         * m4/jm-mktime.m4: Require jm_AM_FUNC_MKTIME, not AM_FUNC_MKTIME.
65693
65694 1998-09-27  Jim Meyering  <meyering@ascend.com>
65695
65696         * m4/jm-macros.m4 (jm_MACROS): Require jm_FUNC_FNMATCH.
65697
65698         * m4/fnmatch.m4 (jm_FUNC_FNMATCH): New file/macro.  Extracted from
65699         ../configure.in, including a change from Gordon Matzigkeit to allow
65700         cross-compiling for the Hurd.
65701
65702         * m4/glibc.m4: New file/macro to test for the GNU C Library
65703         versions 1 and 2.  From Gordon Matzigkeit.
65704         Indent.
65705
65706 1998-09-21  Jim Meyering  <meyering@ascend.com>
65707
65708         * m4/chown.m4: Declare locals: before, after.  From Andries Brouwer.
65709
65710 1998-08-18  Paul Eggert  <eggert@twinsun.com>
65711
65712         Port nanosecond-resolution times to UnixWare 2.1.2 and
65713         pedantic Solaris 2.6.
65714
65715         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC): Renamed from
65716         AC_STRUCT_ST_MTIM.
65717         * m4/st_mtim.m4 (AC_STRUCT_ST_MTIM_NSEC):
65718         Generate name of ns member, instead of just 1 or undef.
65719         Allow for UnixWare 2.1.2 and Solaris 2.6 if in pedantic mode.
65720
65721 1998-08-15  Jim Meyering  <meyering@ascend.com>
65722
65723         * m4/ssize_t.m4 (jm_TYPE_SSIZE_T): Remove file.
65724         * m4/check-type.m4: New file.  Replacement for AC_CHECK_TYPE.
65725         * m4/jm-macros.m4: Use the new AC_CHECK_TYPE(ssize_t, int)
65726         instead of jm_TYPE_SSIZE_T.
65727
65728 1998-08-12  Jim Meyering  <meyering@ascend.com>
65729
65730         * m4/st_dm_mode.m4: New file.  From Johan Danielsson.
65731
65732 1998-08-02  Jim Meyering  <meyering@ascend.com>
65733
65734         * m4/st_mtim.m4: Use hack to avoid having to put #undef HAVE_ST_MTIM
65735         in acconfig.h manually.
65736
65737 1998-07-31  Paul Eggert  <eggert@twinsun.com>
65738
65739         * m4/st_mtim.m4: New file.
65740
65741 1998-07-28  Jim Meyering  <meyering@ascend.com>
65742
65743         * m4/utimes.m4: Undef stat.
65744
65745 1998-07-25  Jim Meyering  <meyering@ascend.com>
65746
65747         * m4/utime.m4 (jm_FUNC_UTIME): New file and macro.
65748         * m4/utimes.m4 (jm_FUNC_UTIMES_NULL): New file and macro.
65749
65750 1998-07-09  Manfred Hollstein  <manfred@s-direktnet.de>
65751
65752         * m4/chown.m4 (jm_FUNC_CHOWN): Add a check to verify that the
65753         uid and gid actually remain unchanged.
65754
65755 1998-07-07  Jim Meyering  <meyering@ascend.com>
65756
65757         * m4/jm-glibc-io.m4: Remove fclose_unlocked.
65758
65759 1998-07-04  Jim Meyering  <meyering@ascend.com>
65760
65761         * m4/regex.m4: Use syscmd, ifelse, and sysval.  Mainly as an exercise
65762         to prove that this macro can be used in packages without regex.c.
65763
65764 1998-07-04  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
65765
65766         * m4/gettext.m4 (AM_WITH_NLS): Remove intl/libintl.h if <libintl.h>
65767         is to be used.
65768
65769 1998-07-03  Jim Meyering  <meyering@ascend.com>
65770
65771         * m4/gettext.m4: Add -lintl if it's found to be necessary.
65772
65773         * m4/gettext.m4: New file -- from gettext-0.10.35.
65774         * m4/lcmessage.m4: Likewise.
65775         * m4/progtest.m4: Likewise.
65776
65777         * m4/regex.m4 (jm_WITH_REGEX): New file and macro.
65778         * m4/jm-macros.m4: Require the new macro.
65779
65780 1998-06-29  Jim Meyering  <meyering@ascend.com>
65781
65782         * m4/fstypename.m4: Include sys/param.h.  NetBSD 1.3.1 requires this
65783         for the definition of NGROUPS (used in a system header included
65784         by sys/mount.h).
65785
65786 1998-06-28  Jim Meyering  <meyering@ascend.com>
65787
65788         * m4/ls-mntd-fs.m4: New file.
65789         * m4/fstypename.m4: New file.
65790
65791         * m4/jm-macros.m4: Require the new macro.
65792         * m4/jm-glibc-io.m4: New file.
65793
65794 1998-05-19  Jim Meyering  <meyering@ascend.com>
65795
65796         * m4/jm-macros.m4: Add jm_FUNC_LCHOWN.
65797         * m4/lchown.m4: New file.
65798
65799         * m4/Makefile.am.in: New file.
65800         * m4/Makefile.am (Makefile.am): Depend on Makefile.am.in.
65801
65802 1998-05-14  Jim Meyering  <meyering@ascend.com>
65803
65804         * m4/Makefile.am (EXTRA_DIST): Add them.
65805         * m4/jm-macros.m4: New file.
65806         * m4/utimbuf.m4: New file.
65807
65808 1998-05-12  Jim Meyering  <meyering@ascend.com>
65809
65810         * m4/Makefile.am (EXTRA_DIST): Add isc-posix.m4.
65811
65812 1998-05-11  Jim Meyering  <meyering@ascend.com>
65813
65814         * m4/isc-posix.m4: New file.
65815
65816 1998-05-10  Jim Meyering  <meyering@ascend.com>
65817
65818         * m4/jm-mktime.m4: Use AM_FUNC_MKTIME, now that it's up to date.
65819
65820 1998-05-09  Jim Meyering  <meyering@ascend.com>
65821
65822         * m4/Makefile.am (EXTRA_DIST): Add ssize_t.m4.
65823         (EXTRA_DIST): Remove mktime.m4, now that the new version is included
65824         with automake.
65825
65826         * m4/ssize_t.m4: New file.
65827         * m4/mktime.m4: Remove file -- the new automake has this now.
65828
65829 1998-04-26  Jim Meyering  <meyering@ascend.com>
65830
65831         * m4/assert.m4: New file.
65832         * m4/Makefile.am (EXTRA_DIST): Add assert.m4.
65833
65834 1998-04-05  Jim Meyering  <meyering@ascend.com>
65835
65836         * m4/prereq.m4 (jm_PREREQ_REGEX): New macro.
65837         (jm_PREREQ): Use it here.
65838
65839 1998-03-23  Jim Meyering  <meyering@eng.ascend.com>
65840
65841         * m4/inttypes_h.m4: Kludges so I don't have to add HAVE_INTTYPES_H
65842         in acconfig.h.
65843
65844 1998-03-15  Jim Meyering  <meyering@eng.ascend.com>
65845
65846         * m4/prereq.m4: New file.
65847         * m4/error.m4: New file.
65848         * m4/Makefile.am (EXTRA_DIST): Add error.m4 and prereq.m4.
65849
65850 1998-02-07  Jim Meyering  <meyering@eng.ascend.com>
65851
65852         * m4/getline.m4: Don't set am_cv_func_working_getline before the
65853         cache-check for the same variable -- that defeated the purpose of
65854         the test; the test program was never run.  This was a problem only
65855         on systems with losing getline functions -- HP-UX 10.20 is one.
65856         Reported by Bjorn Helgaas.
65857
65858 1998-02-06  Jim Meyering  <meyering@eng.ascend.com>
65859
65860         * m4/Makefile.am (EXTRA_DIST): Add perl.m4.
65861
65862 1998-01-10  Jim Meyering  <meyering@na-net.ornl.gov>
65863
65864         * m4/Makefile.am (EXTRA_DIST): Add const.m4.
65865
65866         * m4/const.m4: New file.  Use an initializer in this declaration
65867         typedef int charset[2]; const charset x;
65868         Reported by Bob Glickstein.
65869
65870 1997-12-21  Jim Meyering  <meyering@na-net.ornl.gov>
65871
65872         * m4/chown.m4: Fix reversed types on -1 args to chown.
65873         From Kaveh Ghazi.
65874
65875 1997-12-14  Jim Meyering  <meyering@na-net.ornl.gov>
65876
65877         * m4/check-decl.m4: s/DECLARATION_/DECL_/g.
65878         Add lseek and memchr.
65879
65880         * m4/decl.m4: s/HAVE_DECLARATION_/HAVE_DECL_/g.
65881         T.E.Dickey <dickey@clark.net> said that some older preprocessors
65882         have a 20-character limit on names.
65883
65884 1997-11-30  Jim Meyering  <meyering@na-net.ornl.gov>
65885
65886         * m4/inttypes_h.m4: New file.
65887         * m4/uintmax_t.m4: New file.
65888         * m4/Makefile.am (EXTRA_DIST): Add inttypes_h.m4 and uintmax_t.m4.
65889
65890
65891         -----
65892
65893         Local Variables:
65894         coding: utf-8
65895         End:
65896
65897         Copyright (C) 1997-2010 Free Software Foundation, Inc.
65898
65899         Copying and distribution of this file, with or without
65900         modification, are permitted provided the copyright notice
65901         and this notice are preserved.