Merge branch 'stable'
[gnulib.git] / ChangeLog
index c146bcb..528a59f 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,490 @@
+2009-11-19  Eric Blake  <ebb9@byu.net>
+
+       manywarnings: depend on warnings
+       * modules/manywarnings (Depends-on): Add warnings.
+
+       build: avoid compiler warnings
+       * lib/select.c (rpl_select): Delete unused variable.
+       * lib/setsockopt.c (rpl_setsockopt): Avoid incompatible pointer.
+
+2009-11-18  Eric Blake  <ebb9@byu.net>
+
+       tests: avoid false negative with --with-packager
+       * tests/test-version-etc.sh: Discard packager information.
+       * tests/test-argp-version-etc-1.sh: Likewise.
+       Reported by Mike Frysinger.
+
+       utimens: fix regression on Solaris
+       * m4/utimens.m4 (gl_UTIMENS): Check for BSD bug.
+       * lib/utimens.c (fdutimens): Revert 2009-11-08 change; Solaris 10
+       can only change fd timestamps via futimesat.  Instead, use an
+       additional witness macro to avoid BSD bug.
+       Reported by Jim Meyering.
+
+2009-11-17  Simon Josefsson  <simon@josefsson.org>
+
+       * gnulib-tool: Support LGPLv3+ licenses in module files.  Tiny
+       patch from ludo@gnu.org (Ludovic Courtès).
+
+2009-11-17  Jim Meyering  <meyering@redhat.com>
+
+       version-etc: use proper license string
+       * modules/version-etc (License): Use LGPL, not LGPLv3+.
+       * modules/version-etc-fsf: Likewise.
+
+2009-11-17  Jim Meyering  <meyering@redhat.com>
+
+       version-etc-fsf: relax license to LGPLv3+
+       * modules/version-etc-fsf (License): Relax license.
+
+2009-11-16  Jim Meyering  <meyering@redhat.com>
+
+       version-etc: relax license to LGPLv3+
+       * modules/version-etc (License): Relax license.
+
+       better AC_REQUIRE expanded-before-required-warning avoidance
+       * m4/chown.m4 (gl_FUNC_CHOWN, gl_FUNC_CHOWN_FOLLOWS_SYMLINK): Define
+       with AC_DEFUN_ONCE, rather than AC_DEFUN, to avoid AC_REQUIRE warnings.
+       Suggested by Eric Blake.  This change also reverts commit 1b712ba8,
+       which is no longer needed.
+
+2009-11-16  Jim Meyering  <meyering@redhat.com>
+
+       avoid new AC_REQUIRE expanded-before-required warnings
+       * modules/chown (configure.ac): Require gl_FUNC_CHOWN, rather than
+       merely using it.
+       * modules/euidaccess (configure.ac): Likewise for gl_FUNC_EUIDACCESS.
+       * modules/faccessat (configure.ac): Likewise for gl_FUNC_FACCESSAT.
+
+2009-11-15  Simon Josefsson  <simon@josefsson.org>
+
+       * lib/gc-pbkdf2-sha1.c: Remove comments from RFC 2898.  Reported
+       by Vladimir 'phcoder' Serbinenko <phcoder@gmail.com>.
+
+2009-11-14  Eric Blake  <ebb9@byu.net>
+
+       fnmatch: avoid compiler warning
+       * lib/fnmatch_loop.c (NEW_PATTERN): Coerce addition to unsigned,
+       to silence compiler warning about mismatch signedness in ?:.
+       Reported by Robert Millan.
+
+2009-11-14  Robert Millan  <rmh.grub@aybabtu.com>  (tiny change)
+
+       gnulib-tool: correctly detect absence of m4 directories
+       * gnulib-tool: Avoid extra newline on data passed to wc -l.
+
+2009-11-14  John W. Eaton  <jwe@gnu.org>
+
+       strftime.h: wrap funtion declaration in extern "C" block
+       * lib/strftime.h (nstrftime) [__cplusplus]: Wrap declaration.
+
+2009-11-13  Eric Blake  <ebb9@byu.net>
+
+       getgroups: avoid compiler warning
+       * lib/getgroups.c (rpl_getgroups): Delete shadowed variable.
+
+       getgroups: work around FreeBSD bug
+       * lib/getgroups.c (rpl_getgroups): Work around the bug.
+       * m4/getgroups.m4 (gl_FUNC_GETGROUPS): Detect the bug.
+       * doc/posix-functions/getgroups.texi (getgroups): Document it.
+       * tests/test-getgroups.c (main): Fix buffer overrun.
+
+       getgroups: avoid compilation failure
+       * lib/getgroups.c (includes): Include <stdint.h> for SIZE_MAX.
+       * modules/getgroups (Depends-on): Add stdint.
+
+2009-11-13  Jim Meyering  <meyering@redhat.com>
+
+       test-getgroups: avoid compilation failure
+       * tests/test-getgroups.c: Include <stdint.h> for use of SIZE_MAX.
+
+2009-11-13  Eric Blake  <ebb9@byu.net>
+
+       getgroups, getugroups: provide stubs for mingw
+       * lib/getgroups.c (getgroups): Provide ENOSYS stub for mingw.
+       * lib/getugroups.c (getugroups): Likewise.
+       * m4/getgroups.m4 (gl_FUNC_GETGROUPS): Check for missing
+       function.  Modernize replacement scheme.
+       (gl_PREREQ_GETGROUPS): Delete.
+       * m4/getugroups.m4 (gl_GETUGROUPS): Check for <grp.h>.
+       * modules/getgroups (configure.ac): Declare witness.
+       * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add default.
+       * modules/unistd (Depends-on): Substitute witness.
+       * lib/unistd.in.h (getgroups): Declare replacement.
+
+       getgroups: avoid calling exit
+       * modules/getgroups (Depends-on): Add malloc-posix and unistd,
+       drop xalloc.
+       * modules/getgroups-tests (Depends-on, Makefile.am): Drop unneeded
+       dependencies.
+       * lib/getgroups.c (rpl_getgroups): Fail with ENOMEM rather than
+       exiting, in the rare case of malloc failure.
+
+       getgroups: fix logic error
+       * lib/getgroups.c (rpl_getgroups): Don't fail if current process
+       has more than 20 groups.
+       * modules/getgroups-tests: New test.
+       * tests/test-getgroups.c: New file.
+
+2009-11-10  Kamil Dudka  <kdudka@redhat.com>
+
+       fts: do not fail on a submount during traversal
+       * lib/fts.c (fts_build): Read the stat info again after opening
+       a directory if the FTS_TIGHT_CYCLE_CHECK flag is set.
+       Original report at http://bugzilla.redhat.com/501848.
+
+2009-11-12  Jim Meyering  <meyering@redhat.com>
+
+       bootstrap: generalize autoheader check
+       * build-aux/bootstrap: Look for AC_CONFIG_HEADER as well as
+       AC_CONFIG_HEADERS.
+
+2009-11-11  Eric Blake  <ebb9@byu.net>
+
+       readlink: detect FreeBSD bug
+       * m4/readlink.m4 (gl_FUNC_READLINK): Also detect FreeBSD bug with
+       slash on symlink.
+       * doc/posix-functions/readlink.texi (readlink): Document the bug.
+       * tests/test-readlink.h (test_readlink): Enhance test.
+
+       symlink: detect FreeBSD bug
+       * m4/symlink.m4 (gl_FUNC_SYMLINK): Also detect FreeBSD bug with
+       slash on symlink.
+       * doc/posix-functions/symlink.texi (symlink): Document the bug.
+       * tests/test-symlink.h (test_symlink): Enhance test.
+
+2009-11-10  Eric Blake  <ebb9@byu.net>
+
+       link: detect FreeBSD bug
+       * m4/link.m4 (gl_FUNC_LINK): Also detect FreeBSD bug with slash on
+       symlink.
+       * doc/posix-functions/link.texi (link): Document the bug.
+       * tests/test-link.h (test_link): Enhance test.
+       * tests/test-linkat.c (main): Update caller.
+
+       unlink, remove: detect FreeBSD bug
+       * m4/unlink.m4 (gl_FUNC_UNLINK): Also detect FreeBSD bug with
+       slash on symlink.
+       * doc/posix-functions/unlink.texi (unlink): Document the bug.
+       * doc/posix-functions/remove.texi (remove): Likewise.
+       * tests/test-unlink.h (test_unlink): Enhance test.
+       * tests/test-remove.c (main): Likewise.
+
+2009-11-09  Eric Blake  <ebb9@byu.net>
+
+       rename: detect FreeBSD bug
+       * m4/rename.m4 (gl_FUNC_RENAME): Also detect FreeBSD bug with
+       slash on symlink.
+       * modules/renameat-tests (Depends-on): Add filenamecat.
+       * tests/test-rename.h (test_rename): Allow one more errno.
+       * tests/test-renameat.c (main): Likewise.
+       * doc/posix-functions/rename.texi (rename): Document the bug.
+
+       open: detect FreeBSD bug
+       * m4/open.m4 (gl_FUNC_OPEN): Also detect FreeBSD bug with slash on
+       symlink.
+       * doc/posix-functions/open.texi (open): Document the bug.
+       * doc/posix-functions/utimes.texi (utimes): Likewise.
+       * tests/test-open.h (test_open): Add parameters, and test symlink
+       handling.
+       * tests/test-open.c (main): Adjust caller.
+       * tests/test-fcntl-safer.c (main): Likewise.
+       * modules/open-tests (Depends-on): Add stdbool, symlink.
+       * modules/fcntl-safer-tests (Depends-on): Likewise.
+       * tests/test-openat.c (main): Add test-open tests.
+
+       stat: detect FreeBSD bug
+       * m4/stat.m4 (gl_FUNC_STAT): Also detect FreeBSD bug with slash on
+       symlink.
+       * doc/posix-functions/stat.texi (stat): Document the bug.
+       * tests/test-stat.h (test_stat_func): Add argument.
+       * tests/test-stat.c (main): Adjust caller.
+       * tests/test-fstatat.c (main): Likewise.
+       * modules/stat-tests (Depends-on): Add stdbool, symlink.
+       Reported by Jim Meyering.
+
+2009-11-09  James Youngman  <jay@gnu.org>
+
+       strftime.c: include ignore-value.h only when FPRINTFTIME is defined
+       * lib/strftime.c: Correct placement of #include "ignore-value.h".
+
+2009-11-08  Jim Meyering  <meyering@redhat.com>
+
+       utimens: remove invalid futimesat call
+       * lib/utimens.c (fdutimens): Remove invalid futimesat call.
+       It used the file descriptor of the target file as the DIR_FD
+       parameter and NULL as the file name.  That caused failure with
+       errno == EFAULT on FreeBSD-8.0-rc2
+
+2009-11-07  Eric Blake  <ebb9@byu.net>
+
+       fflush, freadseek: use fseeko, not fseek
+       * lib/fflush.c (clear_ungetc_buffer_preserving_position)
+       (clear_ungetc_buffer): Avoid potential problems on large files.
+       * lib/freadseek.c (freadseek): Likewise.
+       * modules/freadseek (Depends-on): Add fseeko.
+       * modules/fseek (configure.ac): Set a witness.
+       * tests/test-fflush.c (main): Use fseeko.
+       * tests/test-fpurge.c (fseek): Disable link warning.
+       * tests/test-freadable.c (fseek): Likewise.
+       * tests/test-freading.c (fseek): Likewise.
+       * tests/test-fseeko.c (fseek): Likewise.
+       * tests/test-ftell.c (fseek): Likewise.
+       * tests/test-ftello.c (fseek): Likewise.
+       * tests/test-fwritable.c (fseek): Likewise.
+       * tests/test-fwriting.c (fseek): Likewise.
+
+2009-11-06  Simon Josefsson  <simon@josefsson.org>
+
+       * modules/memchr (Depends-on): Drop getpagesize dependency.
+
+2009-11-06  Simon Josefsson  <simon@josefsson.org>
+
+       * build-aux/pmccabe2html: Disable execute bit.  Suggested by
+       Reported by Ludovic Courtès.
+       * build-aux/pmccabe2html: Improve example usage.
+       * build-aux/pmccabe2html: Drop #! header.  Doc fix.
+
+2009-11-06  Jim Meyering  <meyering@redhat.com>
+
+       do-release-commit-and-tag: New module.
+       Automate the release-commit and tag process.
+       * build-aux/do-release-commit-and-tag: New script, from coreutils.
+       * modules/do-release-commit-and-tag: New file.
+       * MODULES.html.sh (Support for maintaining and releasing): Add it.
+
+2009-11-06  Simon Josefsson  <simon@josefsson.org>
+
+       * modules/select-tests (test_select_LDADD): Add $(INET_PTON_LIB)
+       because test-select.c uses inet_pton.
+
+2009-11-06  Simon Josefsson  <simon@josefsson.org>
+
+       * m4/getaddrinfo.m4: Add content of INET_NTOP_LIB to
+       GETADDRINFO_LIB.  Bump serial number.
+       * modules/getaddrinfo (Link): Only mention GETADDRINFO_LIB again.
+       Suggested by Eric Blake <ebb9@byu.net>.
+
+2009-11-05  Eric Blake  <ebb9@byu.net>
+
+       strtod: detect darwin bug
+       * m4/strtod.m4 (gl_FUNC_STRTOD): Filter out darwin bug on "nan(".
+       Reported by Leo Davis.
+
+       freopen-safer: new module
+       * modules/freopen-safer: New module.
+       * m4/stdio-safer.m4 (gl_FREOPEN_SAFER): New macro.
+       * lib/freopen-safer.c (freopen_safer): New file.
+       * lib/stdio-safer.h (freopen_safer): New declaration.
+       * lib/stdio--.h (freopen): New override.
+       * MODULES.html.sh (File stream based Input/Output): Mention it.
+       * doc/posix-functions/freopen.texi (freopen): Mention pitfalls and
+       freopen-safer module.
+       * doc/posix-functions/stderr.texi (stderr): Likewise.
+       * doc/posix-functions/stdin.texi (stdin): Likewise.
+       * doc/posix-functions/stdout.texi (stdout): Likewise.
+       * modules/freopen-safer-tests: New test.
+       * tests/test-reopen-safer.c: New file.
+
+2009-11-05  Jim Meyering  <meyering@redhat.com>
+
+       maint.mk: Prohibit inclusion of "close-stream.h" without use.
+       * top/maint.mk (sc_prohibit_close_stream_without_use): New rule.
+
+2009-11-05  Simon Josefsson  <simon@josefsson.org>
+
+       * modules/pmccabe2html (configure.ac): Check for pmccabe tool.
+
+2009-11-05  Simon Josefsson  <simon@josefsson.org>
+
+       * modules/getaddrinfo (Link): Add $(INET_NTOP_LIB).
+
+2009-11-05  Simon Josefsson  <simon@josefsson.org>
+
+       Fix link error.
+       * m4/inet_ntop.m4 (gl_INET_NTOP): Fix test of AC_SEARCH_LIBS result.
+       * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
+
+2009-11-05  Simon Josefsson  <simon@josefsson.org>
+
+       * tests/test-func.c: Also test value of __func__.
+
+2009-11-05  Simon Josefsson  <simon@josefsson.org>
+
+       * tests/test-sys_socket.c: Use smaller constant value, sa_family_t
+       may be an 8-bit type.  Reported by Bruno Haible <bruno@clisp.org>.
+
+2009-11-05  Bruno Haible  <bruno@clisp.org>
+
+       Fix link error.
+       * m4/inet_ntop.m4 (gl_INET_NTOP): Fix test of AC_SEARCH_LIBS result.
+       * m4/inet_pton.m4 (gl_INET_PTON): Likewise.
+       Reported by Brad Hards <bradh@frogmouth.net> via Simon Josefsson.
+
+2009-11-05  Bruno Haible  <bruno@clisp.org>
+
+       Tests for module 'inet_pton'.
+       * modules/inet_pton-tests: New file.
+       * tests/test-inet_pton.c: New file.
+
+2009-11-05  Bruno Haible  <bruno@clisp.org>
+
+       Tests for module 'inet_ntop'.
+       * modules/inet_ntop-tests: New file.
+       * tests/test-inet_ntop.c: New file.
+
+2009-11-04  Eric Blake  <ebb9@byu.net>
+
+       stdlib-safer: wrap all mkstemp variants
+       * modules/mkostemp (configure.ac): Set witness.
+       * modules/mkostemps (configure.ac): Likewise.
+       * modules/mkstemps (configure.ac): Likewise.
+       * lib/stdlib-safer.h (mkostemp_safer, mkostemps_safer)
+       (mkstemps_safer): Wrap more functions.
+       * lib/stdlib--.h (mkostemp, mkostemps, mkstemps): Default the
+       wrapping.
+       * lib/mkstemp-safer.c (mkostemp_safer, mkostemps_safer)
+       (mkstemps_safer): Implement the wrappers.
+
+       mkstemps, mkostemps: new modules
+       * modules/mkostemps: New module.
+       * modules/mkstemps: Likewise.
+       * lib/mkostemps.c (mkostemps): New file.
+       * lib/mkstemps.c (mkstemps): Likewise.
+       * m4/mkostemps.m4 (gl_FUNC_MKOSTEMPS): Likewise.
+       * m4/mkstemps.m4 (gl_FUNC_MKSTEMPS): Likewise.
+       * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Add witnesses.
+       * modules/stdlib (Makefile.am): Substitute them.
+       * lib/stdlib.in.h (mkostemps, mkstemps): Declare them.
+       * doc/glibc-functions/mkstemps.texi (mkstemps): New file.
+       * doc/glibc-functions/mkostemps.texi (mkostemps): Likewise.
+       * doc/gnulib.texi (Glibc stdlib.h): Include them.
+       * MODULES.html.sh (File system functions): Mention them.
+
+       tempname: resync from glibc
+       * lib/tempname.c (__gen_tempname): Add suffixlen argument.  Use
+       same values for __GT_FILE as glibc.  Abort even when assertions
+       are disabled.
+       * lib/tempname.h (GT_FILE): Use glibc __GT_FILE, if available, and
+       match its value otherwise.  Allow idempotent inclusion.
+       * lib/mkdtemp.c (mkdtemp): Adjust caller.
+       * lib/mkostemp.c (mkostemp): Likewise.
+       * lib/mkstemp.c (mkstemp): Likewise.
+       * lib/tmpfile.c (tmpfile): Likewise.
+       * NEWS: Document this.
+
+       utimens: fix use of futimens on older Linux
+       * lib/utimens.c (fdutimens): Use updated, rather than original,
+       timespec to avoid bug in older Linux kernel.
+       Reported by Simon Josefsson.
+
+2009-11-04  Bruno Haible  <bruno@clisp.org>
+
+       Make num_processors more flexible and consistent.
+       * lib/nproc.h (enum nproc_query): New type.
+       (num_processors): Add a 'query' argument.
+       * lib/nproc.c: Include <stdlib.h>, <sched.h>, c-ctype.h.
+       (num_processors): Add a 'query' argument. Test the value of the
+       OMP_NUM_THREADS environment variable if requested. On Linux, NetBSD,
+       mingw, count the number of CPUs available for the current process.
+       * m4/nproc.m4 (gl_PREREQ_NPROC): Require AC_USE_SYSTEM_EXTENSIONS.
+       Check for sched_getaffinity and sched_getaffinity_np.
+       * modules/nproc (Depends-on): Add c-ctype, extensions.
+       * NEWS: Mention the change.
+
+2009-11-03  Bruno Haible  <bruno@clisp.org>
+
+       * NEWS: Document the new library dependencies of inet_ntop, inet_pton.
+
+2009-11-03  Jim Meyering  <meyering@redhat.com>
+
+       test-getaddrinfo: avoid compilation failure on FreeBSD 7.2
+       * tests/test-getaddrinfo.c (simple): Test for EAI_NODATA only
+       if it is defined.
+
+2009-11-02  Eric Blake  <ebb9@byu.net>
+
+       mktime, timegm: share common declaration
+       * lib/mktime-internal.h: New file.
+       * lib/mktime.c: Use it rather than open-coding a declaration.
+       * lib/timegm.c: Likewise.
+       * modules/mktime (Files): Ship it.
+       * modules/timegm (Files): Likewise.
+       Suggested by Bruno Haible.
+
+       test-update-copyright: update test to match script changes
+       * tests/test-update-copyright.sh: Avoid hard-coding perl
+       location.  Don't update *.bak created by earlier runs.
+
+2009-11-02  Paul Eggert  <eggert@cs.ucla.edu>
+           Simon Josefsson  <simon@josefsson.org>
+           Bruno Haible  <bruno@clisp.org>
+
+       Fix link error on Solaris 8.
+       * m4/inet_pton.m4 (gl_INET_PTON): Search for the function inet_pton
+       also in libnsl. Define also INET_PTON_LIB.
+       * modules/inet_pton (Link): New section.
+
+2009-11-02  Simon Josefsson  <simon@josefsson.org>
+           Bruno Haible  <bruno@clisp.org>
+
+       * m4/inet_ntop.m4 (gl_INET_NTOP): Define also INET_NTOP_LIB.
+       * modules/inet_ntop (Link): New section.
+       Reported by Boyan Kasarov <bkasarov@gmail.com>.
+
+2009-11-02  Eric Blake  <ebb9@byu.net>
+
+       maint: avoid compiler warnings in m4 macros
+       * m4/ungetc.m4 (gl_FUNC_UNGETC_WORKS): Avoid unused variable.
+       * m4/rmdir.m4 (gl_FUNC_RMDIR): Include correct header.
+
+2009-11-02  Simon Josefsson  <simon@josefsson.org>
+
+       * m4/pmccabe2html.m4: Remove file.
+       * modules/pmccabe2html: Drop pmccabe2html.m4.  Don't call m4
+       function.  Change maintainer.
+       * build-aux/pmccabe2html: Use /bin/sh with magic instead of
+       hard-coding path to awk.  Tiny patch from ludo@gnu.org (Ludovic
+       Courtès).
+
+2009-10-31  Eric Blake  <ebb9@byu.net>
+
+       fseeko: fix m4 regression
+       * m4/fseeko.m4 (gl_FUNC_FSEEKO): Use modern macro.  Fixes
+       regression from 2009-10-27.
+       Reported by Ralf Wildenhues.
+
+2009-10-31  Jim Meyering  <meyering@redhat.com>
+
+       inttostr: aesthetics and improved (compile-time) safety
+       Define inttype_is_signed rather than inttype_is_unsigned,
+       since the sole use is via "#if inttype_is_signed".
+       * lib/imaxtostr.c (inttype_is_signed): Define this, rather than
+       inttype_is_unsigned.
+       * lib/offtostr.c (inttype_is_signed): Likewise.
+       * lib/uinttostr.c (inttype_is_signed): Likewise.
+       * lib/umaxtostr.c (inttype_is_signed): Likewise.
+       * lib/inttostr.c (inttostr): Use verify to cross-check the
+       inttype_is_signed value and the signedness of the actual type.
+       * modules/inttostr (Depends-on): Add verify.
+
+2009-10-30  Eric Blake  <ebb9@byu.net>
+
+       build: avoid compiler warnings
+       * lib/fchmodat.c (lchmod): Mark unused variables.
+       * lib/getopt.c (_getopt_initialize): Likewise.
+       * lib/mktime.c (__mktime_internal): Provide prototype.
+       * lib/inttostr.c (inttostr): Avoid compiler warning even with
+       older gcc that do not understand #pragma GCC diagnostic.
+       * lib/uinttostr.c (inttype_is_unsigned): Define.
+       * lib/umaxtostr.c (inttype_is_unsigned): Likewise.
+
+2009-10-30  Michael Haubenwallner  <michael.haubenwallner@salomon.at>
+
+       stat: fix compilation on AIX
+       * lib/sys_stat.in.h (stat): Work with fact that large files on AIX
+       only see struct stat64.
+
 2009-10-30  Eric Blake  <ebb9@byu.net>
 
        exclude: make more robust