Add comments.
[gnulib.git] / ChangeLog
index 44d91e6..18677b4 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,583 @@
+2009-08-12  Bruno Haible  <bruno@clisp.org>
+
+       * m4/getopt.m4: Add comments.
+
+2009-08-12  Bruno Haible  <bruno@clisp.org>
+
+       Disable multithread support by default on Cygwin 1.5.x.
+       * m4/threadlib.m4 (gl_THREADLIB_EARLY_BODY): On Cygwin 1.5.x and older,
+       set gl_use_threads=no if not specified otherwise.
+
+2009-08-11  Bruno Haible  <bruno@clisp.org>
+
+       Avoid compilation error on NetBSD 5.0.
+       * tests/test-locale.c: Write sizeof (NULL) instead of sizeof NULL.
+       * tests/test-stdio.c: Likewise.
+       * tests/test-stdlib.c: Likewise.
+       * tests/test-string.c: Likewise.
+       * tests/test-unistd.c: Likewise.
+       Reported by Greg Troxel <gdt@ir.bbn.com>
+       at <https://savannah.gnu.org/support/?106973>.
+
+2009-08-11  Bruno Haible  <bruno@clisp.org>
+
+       * modules/dup2-tests (Depends-on): Remove close.
+
+       Undo 2009-07-19 commit.
+       * modules/acl-tests (Depends-on): Remove close.
+       * modules/binary-io-tests (Depends-on): Likewise.
+       * modules/closein-tests (Depends-on): Likewise.
+       * modules/flock-tests (Depends-on): Likewise.
+       * modules/fsync-tests (Depends-on): Likewise.
+       * modules/lseek-tests (Depends-on): Likewise.
+       * modules/pipe-tests (Depends-on): Likewise.
+       * modules/posix_spawn-tests (Depends-on): Likewise.
+       * modules/posix_spawnp-tests (Depends-on): Likewise.
+       * modules/stat-time-tests (Depends-on): Likewise.
+       * modules/yesno-tests (Depends-on): Likewise.
+
+2009-08-10  Bruno Haible  <bruno@clisp.org>
+
+       * lib/vasnprintf.c (DCHAR_SET): Undefine at the end.
+
+2009-08-10  Bruno Haible  <bruno@clisp.org>
+
+       Fix a gcc warning.
+       * lib/write.c (rpl_write): Cast result of _get_osfhandle.
+
+2009-08-10  Bruno Haible  <bruno@clisp.org>
+
+       Don't optimize AC_LIBOBJs, as they may appear in different contexts.
+       * m4/close.m4 (gl_REPLACE_CLOSE): Execute AC_LIBOBJ unconditionally,
+       not only the first time.
+       * m4/fclose.m4 (gl_REPLACE_FCLOSE): Likewise.
+       * m4/open.m4 (gl_REPLACE_OPEN): Likewise.
+       * m4/strstr.m4 (gl_FUNC_STRSTR): Execute AC_LIBOBJ when REPLACE_STRSTR
+       is 1, not only the the first time.
+
+2009-08-10  Bruno Haible  <bruno@clisp.org>
+
+       Make it possible to use module 'gethostname' without module 'close'.
+       * lib/unistd.in.h (close): Evoke a link error only if
+       UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS is set.
+       * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Initialize
+       UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS.
+       * modules/unistd (Makefile.am): Substitute
+       UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS.
+       * lib/sys_ioctl.in.h (ioctl): Evoke a link error only if
+       SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS is set.
+       * m4/sys_ioctl_h.m4 (gl_SYS_IOCTL_H_DEFAULTS): Initialize
+       SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS.
+       * modules/sys_ioctl (Makefile.am): Substitute
+       SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS.
+       * modules/socket (configure.ac): On native Windows, set
+       UNISTD_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS and
+       SYS_IOCTL_H_HAVE_WINSOCK2_H_AND_USE_SOCKETS.
+       Reported by Sam Steingold <sds@gnu.org>.
+
+2009-08-10  Bruno Haible  <bruno@clisp.org>
+
+       * m4/close.m4 (gl_FUNC_CLOSE): Add comment.
+       * modules/ioctl (configure.ac): Likewise.
+
+2009-08-10  Bruno Haible  <bruno@clisp.org>
+
+       Avoid collision between gnulib wrapper and libintl wrapper.
+       * lib/stdio-write.c (printf): Don't define if a printf wrapper is
+       already defined in intl/printf.c.
+       (vprintf): Test REPLACE_VPRINTF_POSIX, not REPLACE_VFPRINTF_POSIX.
+       (vfprintf): Test REPLACE_VFPRINTF_POSIX, not REPLACE_VPRINTF_POSIX.
+
+2009-08-09  Bruno Haible  <bruno@clisp.org>
+
+       Make <sys/select.h> really self-contained, also on Solaris 10.
+       * lib/sys_select.in.h: Include <string.h>.
+       * m4/sys_select_h.m4 (gl_HEADER_SYS_SELECT): Test also against
+       Solaris 10 problem.
+       * tests/test-sys_select.c (main): Add check that FD_ZERO can be used.
+       * doc/posix-headers/sys_select.texi: Mention the Solaris 10 problem.
+       Reported by Jim Meyering.
+
+2009-08-09  Bruno Haible  <bruno@clisp.org>
+
+       Avoid warnings from 'aclocal' that are due to a use of macro name
+       AM_XGETTEXT_OPTION that is not defined in automake.
+       * modules/argp (configure.ac): Hide use of AM_XGETTEXT_OPTION from
+       automake.
+       * modules/error (configure.ac): Likewise.
+       * modules/propername (configure.ac): Likewise.
+       * modules/vasprintf (configure.ac): Likewise.
+       * modules/verror (configure.ac): Likewise.
+       * modules/xprintf (configure.ac): Likewise.
+       * modules/xvasprintf (configure.ac): Likewise.
+
+2009-08-08  Bruno Haible  <bruno@clisp.org>
+
+       Avoid compilation error in C++ mode.
+       * lib/gettimeofday.c (rpl_gettimeofday): Cast timezone argument.
+       Reported by Sam Steingold <sds@gnu.org>.
+
+2009-08-08  Bruno Haible  <bruno@clisp.org>
+
+       * m4/gethostname.m4 (gl_FUNC_GETHOSTNAME): Define HOST_NAME_MAX also
+       for the various Unix platforms.
+       * doc/posix-headers/limits.texi: Update platforms list regarding
+       HOST_NAME_MAX.
+       Reported by Tom G. Christensen <tgc@jupiterrise.com>.
+
+2009-08-07  Jim Meyering  <meyering@redhat.com>
+
+       selinux-at: fix typo in a comment
+       * lib/selinux-at.h: s/getfileconat/getfilecon/ in a comment.
+       Spotted by Paolo Bonzini.
+
+       selinux-at: remove redundant m4 code, add documentation
+       * modules/selinux-at (configure.ac): Remove redundant code.
+       LIB_SELINUX is already set via the dependent module, selinux-h.
+       (Include): Add quotes around selinux-at.h.
+       * lib/selinux-at.h: Add documentation.
+       Reported by Bruno Haible in
+       http://marc.info/?l=gnulib-bug&m=124958988300749
+
+2009-08-07  Bruno Haible  <bruno@clisp.org>
+
+       Avoid link error on MacOS X 10.3 and 10.4.
+       * lib/argp-ba.c (argp_program_bug_address): Explicitly zero-initialize
+       on non-ELF systems.
+       * lib/argp-pv.c (argp_program_version): Likewise.
+       Reported by Simon Josefsson.
+
+2009-08-07  Simon Josefsson  <simon@josefsson.org>
+
+       * tests/test-version-etc.sh: Use $EXEEXT.
+
+2009-08-06  Joel E. Denny  <jdenny@clemson.edu>
+
+       update-copyright: update documentation to point to maint.mk
+       * build-aux/update-copyright: Here.
+
+2009-08-06  Jim Meyering  <meyering@redhat.com>
+
+       maint.mk: support update-copyright-local
+       * top/maint.mk (update-copyright-local): Define place-holder.
+       (update-copyright): Depend on $(update-copyright-local).
+
+2009-08-06  Jim Meyering  <meyering@redhat.com>
+
+       selinux-at: new module
+       Initially written for coreutils, this module will soon be
+       used by findutils, too.
+       * MODULES.html.sh [Misc]: Add selinux-at.
+       * lib/selinux-at.h: New file, from coreutils.
+       * lib/selinux-at.c: Likewise.
+       * modules/selinux-at: Likewise.
+       (License): Change from LGPL to GPL, since it depends
+       on the GPL'd openat module.
+
+       doc: update README
+       * README: Remove references to cogito.
+       Remove cvs-repo-updating instructions from 2007.
+       Don't imply that CVS is better if you have limited disk space.
+
+2009-08-05  Joel E. Denny  <jdenny@clemson.edu>
+
+       update-copyright: support C-style comments
+       * build-aux/update-copyright: Implement and document.
+       * tests/test-update-copyright.sh: Test.
+
+2009-08-05  Joel E. Denny  <jdenny@clemson.edu>
+
+       update-copyright: support omitted "(C)"
+       * build-aux/update-copyright: Implement and document.  Also,
+       allow variable whitespace before "(C)".
+       * tests/test-update-copyright.sh: Test.
+
+2009-08-05  Joel E. Denny  <jdenny@clemson.edu>
+
+       update-copyright: don't trip on non-FSF copyright statements
+       * build-aux/update-copyright: Fix so that the first correctly
+       formatted FSF copyright statement is recognized no matter what
+       appears before it.  Update documentation.
+       * tests/test-update-copyright.sh: Test that.
+
+2009-08-05  Joel E. Denny  <jdenny@clemson.edu>
+
+       update-copyright: clean up code a little
+       * build-aux/update-copyright: Append "_re" to the name of any
+       variable holding a regular expression.
+       Replace "old" and "new" with "stmt" in variable names.
+       Do not accept 2-digit UPDATE_COPYRIGHT_YEAR, which was not
+       handled correctly.
+       Format code more consistently.
+
+2009-08-05  Joel E. Denny  <jdenny@clemson.edu>
+
+       update-copyright-tests: improve portability
+       * tests/test-update-copyright.sh: Use cmp if diff cannot handle
+       -u or /dev/null.  Suggested by Jim Meyering and Eric Blake.
+
+2009-08-03  Joel E. Denny  <jdenny@clemson.edu>
+
+       update-copyright: support @copyright{} and &copy;
+       * build-aux/update-copyright: Implement and document.
+       * tests/test-update-copyright.sh: Test.
+
+2009-08-04  Jim Meyering  <meyering@redhat.com>
+
+       update-copyright-tests: correctly test EOL=\r\n handling
+       * tests/test-update-copyright.sh: Put \r at the end of some lines
+       for the dos-eol tests.  Based on a patch by Joel E. Denny.
+
+       maint.mk: make update-copyright exclusion list more configurable
+       * top/maint.mk (update-copyright): Default to excluding COPYING,
+       but allow an override, in case someone does want to update that file.
+
+       maint.mk: don't update copyright date in COPYING
+       * top/maint.mk (update-copyright): Exclude COPYING.
+
+       maint.mk: add a copyright-updating rule
+       * top/maint.mk (update-copyright): New rule.
+       Derived from coreutils/Makefile.am.
+
+       update-copyright: rename some variables
+       * build-aux/update-copyright: Rename a few variables for clarity.
+       Tweak syntax.  List Joel E. Denny as coauthor.
+
+2009-08-03  Joel E. Denny  <jdenny@clemson.edu>
+
+       update-copyright: fix bug for 2-digit last year and add tests
+       * build-aux/update-copyright: Fix bug.
+       Use UPDATE_COPYRIGHT_YEAR from environment as current year if
+       specified.
+       * modules/update-copyright-tests: New
+       * tests/test-update-copyright.sh: New.
+
+2009-07-31  Joel E. Denny  <jdenny@clemson.edu>
+
+       update-copyright: handle leading tabs in line prefix
+       * build-aux/update-copyright: Count leading tabs as 8 spaces
+       when computing margin.  This helps with the formatting of
+       ChangeLogs, for example.
+       Fix documentation a little.
+
+2009-07-31  Joel E. Denny  <jdenny@clemson.edu>
+
+       update-copyright: support EOL=\r\n
+       * build-aux/update-copyright: Implement that.
+
+2009-07-31  Joel E. Denny  <jdenny@clemson.edu>
+
+       update-copyright: automatically format copyright statements
+       * build-aux/update-copyright: Implement that.
+       Also, be a little more predictable and safer by always failing
+       when the full copyright format is not perfectly recognized as an
+       unbroken whole.  Discussed at
+       <http://lists.gnu.org/archive/html/bug-gnulib/2009-07/msg00131.html>.
+       Rewrite documentation.
+
+2009-08-03  Bruno Haible  <bruno@clisp.org>
+
+       * m4/iconv.m4 (AM_ICONV): Fix displayed message with autoconf-2.64.
+
+2009-08-02  Bruno Haible  <bruno@clisp.org>
+
+       Tests for module 'uname'.
+       * modules/uname-tests: New file.
+       * tests/test-uname.c: New file.
+
+       New module 'uname'.
+       * lib/uname.c: New file.
+       * m4/uname.m4: New file.
+       * modules/uname: New file.
+       * doc/posix-functions/uname.texi: Mention the new module.
+
+2009-08-02  Bruno Haible  <bruno@clisp.org>
+
+       Tests for module 'sys_utsname'.
+       * modules/sys_utsname-tests: New file.
+       * tests/test-sys_utsname.c: New file.
+
+       New module 'sys_utsname'.
+       * lib/sys_utsname.in.h: New file, based on glibc's <sys/utsname.h>.
+       * m4/sys_utsname_h.m4: New file.
+       * modules/sys_utsname: New file.
+       * doc/posix-headers/sys_utsname.texi: Mention the new module.
+
+2009-08-02  Bruno Haible  <bruno@clisp.org>
+
+       Implicitly initialize the sockets library.
+       * lib/gethostname.c: Include sockets.h.
+       (rpl_gethostname): Invoke gl_sockets_startup.
+       * lib/socket.c: Include sockets.h.
+       (rpl_socket): Invoke gl_sockets_startup.
+       * modules/gethostname (Depends-on): Add sockets.
+       * modules/socket (Depends-on): Likewise.
+       * tests/test-poll.c: Don't include sockets.h.
+       (main): Don't invoke gl_sockets_startup.
+       * tests/test-select.c: Don't include sockets.h.
+       (main): Don't invoke gl_sockets_startup.
+
+2009-08-02  Bruno Haible  <bruno@clisp.org>
+
+       Allow multiple calls to gl_sockets_startup.
+       * lib/sockets.c (initialized_sockets_version): New variable.
+       (gl_sockets_startup): Do nothing if already called for this or a higher
+       version.
+       (gl_sockets_cleanup): Reset initialized_sockets_version.
+
+2009-08-03  Simon Josefsson  <simon@josefsson.org>
+
+       * tests/test-argp-version-etc-1.sh: Use EXEEXT.  Don't fail on
+       different project/version.
+
+2009-08-02  Paolo Bonzini  <bonzini@gnu.org>
+            Bruno Haible  <bruno@clisp.org>
+
+       Tests for module 'pipe-filter-gi'.
+       * modules/pipe-filter-gi-tests: New file.
+       * tests/test-pipe-filter-gi1.sh: New file.
+       * tests/test-pipe-filter-gi1.c: New file.
+       * tests/test-pipe-filter-gi2.sh: New file.
+       * tests/test-pipe-filter-gi2-main.c: New file.
+       * tests/test-pipe-filter-gi2-child.c: New file.
+
+       New module 'pipe-filter-gi'.
+       * lib/pipe-filter-gi.c: New file.
+       * modules/pipe-filter-gi: New file.
+
+2009-08-02  Bruno Haible  <bruno@clisp.org>
+            Paolo Bonzini  <bonzini@gnu.org>
+
+       Tests for module 'pipe-filter-ii'.
+       * modules/pipe-filter-ii-tests: New file.
+       * tests/test-pipe-filter-ii1.sh: New file.
+       * tests/test-pipe-filter-ii1.c: New file.
+       * tests/test-pipe-filter-ii2.sh: New file.
+       * tests/test-pipe-filter-ii2-main.c: New file.
+       * tests/test-pipe-filter-ii2-child.c: New file.
+
+       New module 'pipe-filter-ii'.
+       * lib/pipe-filter.h: New file.
+       * lib/pipe-filter-ii.c: New file.
+       * lib/pipe-filter-aux.h: New file.
+       * modules/pipe-filter-ii: New file.
+
+2009-08-02  Simon Josefsson  <simon@josefsson.org>
+
+       * lib/gc-libgcrypt.c: Change copyright to FSF.
+       * lib/gc-gnulib.c: Likewise.
+
+2009-08-02  Martin Lambers  <marlam@marlam.de>  (tiny change)
+
+       * lib/gethostname.c: Include limits.h.
+
+2009-08-02  Simon Josefsson  <simon@josefsson.org>
+            Bruno Haible  <bruno@clisp.org>
+
+       Ensure HOST_NAME_MAX as part of the gethostname module.
+       * m4/gethostname.m4 (gl_FUNC_GETHOSTNAME): On native Windows platforms,
+       define also HOST_NAME_MAX.
+       * tests/test-gethostname.c: Include <limits.h>.
+       (main): Check also HOST_NAME_MAX.
+       * doc/posix-headers/limits.texi: Document the mingw problem.
+
+2009-08-02  Bruno Haible  <bruno@clisp.org>
+
+       * lib/gethostname.c (gethostname): Fix handling of large len argument.
+       Add comments.
+
+2009-03-31  Simon Josefsson  <simon@josefsson.org>
+
+       * lib/gethostname.c: Add Windows wrapper.
+       * m4/gethostname.m4: Look for gethostname in -lws2_32.
+       * modules/gethostname: Depend on sys_socket & errno, for also
+       added lib/w32sock.h.  Add GETHOSTNAME_LIB link directive.
+       * modules/gethostname-tests: Link to @GETHOSTNAME_LIB@.
+
+2009-07-31  Jim Meyering  <meyering@redhat.com>
+
+       getloadavg: fix symbol name in comment
+       * lib/getloadavg.c: Correct a typo I introduced when adding
+       comments to Matt's change: s/NLIST_POINTER/N_NAME_POINTER/.
+       Matt Kraai spotted the problem.
+
+2009-07-29  Matt Kraai  <mkraai@beckman.com>
+
+       getloadavg: check whether n_name is a pointer, for QNX 6.4.1
+       * lib/getloadavg.c (getloadavg): Use the strcpy-into-nlist.n_name
+       code also if ! defined N_NAME_POINTER.
+       * m4/getloadavg.m4 (gl_GETLOADAVG): Add a link-test for N_NAME_POINTER.
+       This is required on QNX 6.4.1, where /usr/include/nlist.h exists,
+       but the n_name member is a 12-byte array.
+
+2009-07-29  Joel E. Denny  <jdenny@clemson.edu>
+
+       update-copyright: generalize comment handling
+       * build-aux/update-copyright: Handle copyright statements
+       within more comment styles.
+       Document usage.
+       Report any file with an external copyright holder or parse failure.
+
+2009-07-29  Jim Meyering  <meyering@redhat.com>
+
+       mktime: correct setting of REPLACE_MKTIME
+       * m4/mktime.m4 (gl_FUNC_MKTIME): Set REPLACE_MKTIME=0, when required.
+
+       update-copyright: new module
+       * modules/update-copyright: New file.
+       * build-aux/update-copyright: New file.
+       * MODULES.html.sh (maint+release support): Add update-copyright.
+
+2009-07-27  Bruno Haible  <bruno@clisp.org>
+
+       Fix compilation error when <ctime> is used and mktime is replaced.
+       * lib/time.in.h (mktime): New declaration.
+       * m4/mktime.m4 (gl_FUNC_MKTIME): Require gl_HEADER_TIME_H_DEFAULTS. Set
+       REPLACE_MKTIME instead of defining mktime in config.h.
+       * m4/time_h.m4 (gl_HEADER_TIME_H_DEFAULTS): Initialize REPLACE_MKTIME.
+       * modules/time (Makefile.am): Substitute REPLACE_MKTIME.
+       Reported by Ross McFarland <rwmcfa1@neces.com>.
+
+2009-07-27  Bruno Haible  <bruno@clisp.org>
+
+       * lib/math.in.h (cosl, logl, sinl): Undefine before declaring it.
+       Reported by Matt Kraai <mkraai@beckman.com>.
+
+2009-07-25  Jim Meyering  <meyering@redhat.com>
+
+       maint.mk: avoid warnings about missing files
+       * top/maint.mk (PREV_VERSION): Suppress stderr, to hide a
+       diagnostic when .prev-version does not exist.
+       (_cfg_mk): Define, so it can be empty when cfg.mk does not exist.
+       (syntax-check-rules): Use $(_cfg_mk) to avoid a diagnostic about
+       nonexistent cfg.mk.
+       Suggestions from Simon Josefsson.
+
+2009-07-25  Bruno Haible  <bruno@clisp.org>
+
+       * lib/math.in.h (cosl, logl, sinl): Don't declare if they are already
+       defined as macros. Needed on QNX 6.4.1.
+       Reported by Matt Kraai <mkraai@beckman.com>.
+
+2009-07-23  Jim Meyering  <meyering@redhat.com>
+
+       maint.mk: invoke "make dist" with a working value of XZ_OPT
+       * top/maint.mk (vc-dist): Use no "-" in the value of XZ_OPT.
+
+2009-07-22  Matt Kraai  <mkraai@beckman.com>  (tiny change)
+
+       Make fseeko.c compile on QNX.
+       * lib/fseeko.c (rpl_fseeko): Use the numerical value of _MWRITE.
+
+2009-07-22  Peter Simons  <simons@cryp.to>
+
+       C++: wrap md2,md5,sha1,etc. function declarations in extern "C" scope
+       * lib/md2.h [__cplusplus]: Wrap declarations in extern "C" scope.
+       * lib/md4.h: Likewise.
+       * lib/md5.h: Likewise.
+       * lib/sha1.h: Likewise.
+       * lib/sha256.h: Likewise.
+       * lib/sha512.h: Likewise.
+
+       tests-sha1: don't assign literal string to 'char *' variable
+       * tests/test-sha1.c (main): Declare locals with "const" to match
+       attributes of the right hand side.
+
+2009-07-21  Eric Blake  <ebb9@byu.net>
+
+       dup2: fix more mingw problems
+       * lib/dup2.c (rpl_dup2) [_WIN32]: Avoid hanging when duplicating
+       fd to itself.
+       * doc/posix-functions/dup2.texi (dup2): Document the bug.
+       * lib/unistd.in.h (dup2) [REPLACE_FCHDIR]: Avoid name collision.
+       * lib/fchdir.c (dup2): Manage preprocessor macros correctly.
+       (rpl_dup2_fchdir): Rename from rpl_dup2, and let dup2 module take
+       care of mingw bugs.
+
+2009-07-21  Jim Meyering  <meyering@redhat.com>
+
+       vc-list-files: avoid failure when /bin/sh is dash
+       * build-aux/vc-list-files: Avoid a shell portability problem with dash.
+       On some Debian based systems, /bin/sh is a symlink to dash, and running
+       this command would omit the "/" following each 'tests' prefix:
+         dash -x build-aux/vc-list-files -C . tests
+       That is because bash and dash work differently:
+         $ for i in bash dash; do $i -c 'a=odd; a=ok b=$a; echo '$i' $b'; done
+         bash ok
+         dash odd
+
+2009-07-21  Eric Blake  <ebb9@byu.net>
+
+       dup2-tests: test previous patch
+       * modules/dup2-tests: New file.
+       * tests/test-dup2.c: Likewise.
+       * tests/test-open.c (main): Avoid unspecified behavior.
+       * tests/test-pipe.c (child_main): Use dup2 semantics to simplify
+       test.
+
+       dup2: work around mingw and cygwin 1.5 bug
+       * m4/dup2.m4 (gl_FUNC_DUP2): Detect mingw bug.
+       * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add witness.
+       * modules/unistd (Makefile.am): Substitute it.
+       * lib/unistd.in.h (dup2): Declare the replacement.
+       * lib/dup2.c (dup2) [REPLACE_DUP2]: Implement it.
+       * doc/posix-functions/dup2.texi (dup2): Document the bugs.
+       * lib/fchdir.c (rpl_dup2): Don't collide with mingw replacement.
+       * modules/execute (Depends-on): Add dup2.
+       * modules/fseterr (Depends-on): Likewise.
+       * modules/pipe (Depends-on): Likewise.
+       * modules/posix_spawn-internal (Depends-on): Likewise.
+
+2009-07-21  Bruno Haible  <bruno@clisp.org>
+
+       * modules/.gitattributes: New file.
+
+2009-07-20  Bruno Haible  <bruno@clisp.org>
+
+       * tests/test-pipe.c (BACKUP_STDERR_FILENO): New macro.
+       (main): Use it.
+
+2009-07-20  Eric Blake  <ebb9@byu.net>
+
+       test-pipe: make a bit more robust.
+       * tests/test-pipe.c (myerr): Allow error messages regardless of
+       what we do to stderr.
+       (test_pipe): Rearrange to avoid deadlock.
+       (child_main): Try a larger read, to ensure we avoided deadlock.
+       * lib/pipe.c (create_pipe) [_WIN32]: Fix comment.
+       * lib/pipe.h (create_pipe_bidi): Document potential for deadlock
+       if misused.
+
+2009-07-19  Jim Meyering  <meyering@redhat.com>
+
+       fts: avoid false-positive cycle-detection
+       * lib/fts.c (fts_read): Reinitialize cycle-detection data structures
+       for each new command line argument.
+
+2009-07-19  Bruno Haible  <bruno@clisp.org>
+
+       Fix build error on mingw with the modules sys_select and unistd.
+       * modules/acl-tests (Depends-on): Add close.
+       * modules/binary-io-tests (Depends-on): Likewise.
+       * modules/closein-tests (Depends-on): Likewise.
+       * modules/flock-tests (Depends-on): Likewise.
+       * modules/fsync-tests (Depends-on): Likewise.
+       * modules/lseek-tests (Depends-on): Likewise.
+       * modules/pipe-tests (Depends-on): Likewise.
+       * modules/posix_spawn-tests (Depends-on): Likewise.
+       * modules/posix_spawnp-tests (Depends-on): Likewise.
+       * modules/stat-time-tests (Depends-on): Likewise.
+       * modules/yesno-tests (Depends-on): Likewise.
+
+2009-07-19  Bruno Haible  <bruno@clisp.org>
+
+       Unify conditionals.
+       * lib/pipe.h: Detect native Win32 by looking at _WIN32 and __WIN32__
+       macros, not at the compiler macros.
+       * lib/pipe.c: Likewise.
+       * lib/execute.c: Likewise.
+       * lib/spawni.c: Likewise.
+
 2009-07-19  Bruno Haible  <bruno@clisp.org>
 
        Fix handling of closed stdin/stdout/stderr on mingw.