stat: use pathmax.h only if needed
[gnulib.git] / ChangeLog
index c76f3ae..72bd11e 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,275 @@
+2011-09-18  Paul Eggert  <eggert@cs.ucla.edu>
+
+       stat: use pathmax.h only if needed
+       * lib/stat.c: Include pathmax.h only if REPLACE_FUNC_STAT_DIR.
+       This is better for Emacs, which does not have a mingw port and
+       therefore can avoid the pathmax module.
+
+       utimens: remove dependency on dup2
+       * lib/utimens.c (fdutimens): Don't invoke dup2; it's not needed
+       to work around the Linux kernel bug.
+       * modules/utimens (Depends-on): Remove dup2.
+
+2011-09-18  Bruno Haible  <bruno@clisp.org>
+
+       inet_ntop, inet_pton: Look for it also in libresolv.
+       * m4/inet_ntop.m4 (gl_FUNC_INET_NTOP): If the function was not found in
+       libnsl, search for it in libresolv.
+       * m4/inet_pton.m4 (gl_FUNC_INET_PTON): Likewise.
+       Needed on Solaris 7.
+
+2011-09-18  Bruno Haible  <bruno@clisp.org>
+
+       accept, accept4 tests: Avoid link error on Solaris.
+       * modules/accept-tests (Makefile.am): Link test-accept against
+       $(LIBSOCKET).
+       * modules/accept4-tests (Makefile.am): Link test-accept4 against
+       $(LIBSOCKET).
+
+       accept4: Avoid link error on Solaris.
+       * modules/accept4 (Link): New section.
+
+       socket functions: Avoid link errors on Solaris.
+       * modules/accept (Depends-on): Add socketlib.
+       (Link): New section.
+       * modules/bind (Depends-on): Add socketlib.
+       (Link): New section.
+       * modules/connect (Depends-on): Add socketlib.
+       (Link): New section.
+       * modules/getpeername (Depends-on): Add socketlib.
+       (Link): New section.
+       * modules/getsockname (Depends-on): Add socketlib.
+       (Link): New section.
+       * modules/getsockopt (Depends-on): Add socketlib.
+       (Link): New section.
+       * modules/listen (Depends-on): Add socketlib.
+       (Link): New section.
+       * modules/recv (Depends-on): Add socketlib.
+       (Link): New section.
+       * modules/recvfrom (Depends-on): Add socketlib.
+       (Link): New section.
+       * modules/send (Depends-on): Add socketlib.
+       (Link): New section.
+       * modules/sendto (Depends-on): Add socketlib.
+       (Link): New section.
+       * modules/setsockopt (Depends-on): Add socketlib.
+       (Link): New section.
+       * modules/shutdown (Depends-on): Add socketlib.
+       (Link): New section.
+       * modules/socket (Depends-on): Add socketlib.
+       (Link): New section.
+
+2011-09-18  Bruno Haible  <bruno@clisp.org>
+
+       ptsname tests: Let the test fail rather than hang (e.g. on AIX 5.1).
+       * tests/test-ptsname.c (main): Terminate the test if it takes longer
+       than 5 seconds.
+       * modules/ptsname-tests (configure.ac): Test for alarm.
+
+2011-09-18  Bruno Haible  <bruno@clisp.org>
+
+       posix_spawn_file_actions_add*: Fix module dependencies.
+       * modules/posix_spawn_file_actions_addclose (Dependencies): Add
+       posix_spawn_file_actions_init.
+       * modules/posix_spawn_file_actions_adddup2 (Dependencies): Likewise.
+       * modules/posix_spawn_file_actions_addopen (Dependencies): Likewise.
+
+2011-09-18  Bruno Haible  <bruno@clisp.org>
+
+       rename, renameat tests: Avoid test failures on FreeBSD 6.4.
+       * tests/test-rename.h (test_rename): Allow error code EEXIST.
+       * tests/test-renameat.c (main): Likewise.
+
+2011-09-18  Bruno Haible  <bruno@clisp.org>
+
+       Tests for module 'accept4'.
+       * modules/accept4-tests: New file.
+       * tests/test-accept4.c: New file.
+
+2011-09-18  Bruno Haible  <bruno@clisp.org>
+
+       Tests for module 'accept'.
+       * modules/accept-tests: New file.
+       * tests/test-accept.c: New file.
+
+2011-09-18  Bruno Haible  <bruno@clisp.org>
+
+       dup2: Support for MSVC.
+       * lib/dup2.c: Include msvc-inval.h.
+       (rpl_dup2): Handle invalid parameter notifications during dup2 and
+       _get_osfhandle calls.
+       * modules/dup2 (Depends-on): Add msvc-inval.
+       * doc/posix-functions/dup2.texi: Mention problem on MSVC.
+
+       New module 'msvc-inval'.
+       * lib/msvc-inval.h: New file.
+       * lib/msvc-inval.c: New file.
+       * m4/msvc-inval.m4: New file.
+       * modules/msvc-inval: New file.
+
+2011-09-17  Bruno Haible  <bruno@clisp.org>
+
+       Tests for module 'pclose'.
+       * modules/pclose-tests: New file.
+
+       New module 'pclose'.
+       * lib/stdio.in.h (pclose): New declaration.
+       * lib/pclose.c: New file.
+       * m4/pclose.m4: New file.
+       * m4/stdio_h.m4 (gl_STDIO_H): Test whether pclose is declared.
+       (gl_STDIO_H_DEFAULTS): Initialize GNULIB_PCLOSE, HAVE_PCLOSE.
+       * modules/stdio (Makefile.am): Substitute GNULIB_PCLOSE, HAVE_PCLOSE.
+       * modules/pclose: New file.
+       * modules/popen-tests (Depends-on): Add pclose.
+       * modules/popen-safer-tests (Depends-on): Likewise.
+       * doc/posix-functions/pclose.texi: Mention the new module.
+
+2011-09-17  Bruno Haible  <bruno@clisp.org>
+
+       popen: Support for MSVC.
+       * lib/stdio.in.h (popen): Declare it if the system lacks this function.
+       * lib/popen.c (popen): Provide alternate definition for native Windows.
+       * m4/popen.m4 (gl_FUNC_POPEN): Test if popen exists. Set HAVE_POPEN.
+       * m4/stdio_h.m4 (gl_STDIO_H_DEFAULTS): Initialize HAVE_POPEN.
+       * modules/popen (Depends-on, configure.ac): Update condition.
+       * modules/stdio (Makefile.am): Substitute HAVE_POPEN.
+       * doc/posix-functions/popen.texi: Mention that the MSVC problem is
+       fixed.
+
+2011-09-17  Bruno Haible  <bruno@clisp.org>
+
+       isnanl, isnand, isnanf: Work around MSVC bug.
+       * lib/isnan.c (FUNC): Use alternate ways of computing NaN and Infinity.
+
+2011-09-17  Bruno Haible  <bruno@clisp.org>
+
+       sys_socket tests: Fix recent mistake.
+       * tests/test-sys_socket.c (t1): Avoid collision of identifiers.
+
+2011-09-17  Bruno Haible  <bruno@clisp.org>
+
+       putenv: Support for MSVC.
+       * modules/putenv (Depends-on): Add environ.
+       * lib/putenv.c (environ): Disable declaration.
+       * lib/unistd.in.h: Update comment.
+
+2011-09-17  Bruno Haible  <bruno@clisp.org>
+
+       math: Avoid macro redefinition warnings on MSVC.
+       * lib/math.in.h (ceilf, ceill, floorf, floorl, frexpl, ldexpl):
+       Undefine before redefining.
+
+2011-09-17  Bruno Haible  <bruno@clisp.org>
+
+       doc: Mention functions which are declared as macros.
+       * doc/posix-functions/*[fl].texi: Mention that some functions are
+       defined as macros with arguments only.
+
+2011-09-17  Bruno Haible  <bruno@clisp.org>
+
+       Add dependencies to new dirent related modules.
+       * modules/backupfile (Depends-on): Add opendir, readdir, closedir.
+       * modules/fts (Depends-on): Likewise.
+       * modules/glob (Depends-on): Likewise.
+       * modules/savedir (Depends-on): Likewise.
+       * modules/scandir (Depends-on): Likewise.
+       * modules/dirent-safer (Depends-on): Add opendir, closedir.
+       * modules/fdopendir (Depends-on): Add opendir.
+
+2011-09-17  Bruno Haible  <bruno@clisp.org>
+
+       inet_pton: Support for MSVC on Windows Vista or newer.
+       * lib/arpa_inet.in.h (inet_pton): Also consider REPLACE_INET_PTON.
+       * lib/inet_pton.c (rpl_inet_pton): Use a simple wrapper if
+       HAVE_DECL_INET_PTON is defined.
+       * m4/inet_pton.m4 (gl_FUNC_INET_PTON): Invoke gl_PREREQ_SYS_H_WINSOCK2.
+       On platforms with <winsock2.h>, test whether inet_pton is declared in
+       <ws2tcpip.h>. If so, arrange to replace it.
+       * m4/arpa_inet_h.m4 (gl_ARPA_INET_H_DEFAULTS): Initialize
+       REPLACE_INET_PTON.
+       * modules/arpa_inet (Makefile.am): Substitute REPLACE_INET_PTON.
+       * modules/inet_pton (Files): Add m4/sys_socket_h.m4.
+       (Depends-on, configure.ac): Update condition.
+       * doc/posix-functions/inet_pton.texi: Mention the MSVC problem.
+
+2011-09-17  Bruno Haible  <bruno@clisp.org>
+
+       inet_ntop: Support for MSVC on Windows Vista or newer.
+       * lib/arpa_inet.in.h (inet_ntop): Also consider REPLACE_INET_NTOP.
+       * lib/inet_ntop.c (rpl_inet_ntop): Use a simple wrapper if
+       HAVE_DECL_INET_NTOP is defined.
+       * m4/inet_ntop.m4 (gl_FUNC_INET_NTOP): Invoke gl_PREREQ_SYS_H_WINSOCK2.
+       On platforms with <winsock2.h>, test whether inet_ntop is declared in
+       <ws2tcpip.h>. If so, arrange to replace it.
+       * m4/arpa_inet_h.m4 (gl_ARPA_INET_H_DEFAULTS): Initialize
+       REPLACE_INET_NTOP.
+       * modules/arpa_inet (Makefile.am): Substitute REPLACE_INET_NTOP.
+       * modules/inet_ntop (Files): Add m4/sys_socket_h.m4.
+       (Depends-on, configure.ac): Update condition.
+       * doc/posix-functions/inet_ntop.texi: Mention the MSVC problem.
+
+2011-09-16  Eric Blake  <eblake@redhat.com>
+
+       test-fsync: yet another enhancement
+       * tests/test-fsync.c (main): Also test behavior on read-only text
+       file.
+
+2011-09-16  Bruno Haible  <bruno@clisp.org>
+
+       Enhance fsync, fdatasync tests.
+       * tests/test-fsync.c (main): Test both STDIN_FILENO and STDOUT_FILENO.
+       * tests/test-fdatasync.c (main): Likewise.
+
+2011-09-16  Bruno Haible  <bruno@clisp.org>
+
+       Support for MSVC compiler: Ensure mode_t gets defined.
+       * m4/fcntl_h.m4 (gl_FCNTL_H): Require AC_TYPE_MODE_T.
+       * m4/spawn_h.m4 (gl_SPAWN_H): Likewise.
+       * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Likewise.
+       * m4/sys_types_h.m4 (gl_SYS_TYPES_H): Likewise.
+       * tests/test-fcntl-h.c: Check that mode_t is defined.
+       * tests/test-sys_stat.c: Likewise.
+       * tests/test-sys_types.c: Likewise.
+       * doc/posix-headers/fcntl.texi: Mention the missing mode_t problem.
+       * doc/posix-headers/sys_stat.texi: Likewise.
+       * doc/posix-headers/sys_types.texi: Likewise.
+
+2011-09-16  Bruno Haible  <bruno@clisp.org>
+
+       sys_stat: Support for MSVC.
+       * lib/sys_stat.in.h (S_IFIFO): Define to _S_IFIFO if that exists.
+       * tests/test-sys_stat.c: Don't assume that S_IFBLK exists.
+       * doc/posix-headers/sys_stat.texi: Mention missing S_IFIFO, S_IFBLK on
+       MSVC.
+
+2011-09-16  Bruno Haible  <bruno@clisp.org>
+
+       Support for MSVC compiler: Ensure off_t gets defined.
+       * lib/unistd.in.h: Include <sys/types.h>.
+       * tests/test-fcntl-h.c: Check that off_t is defined.
+       * tests/test-sys_stat.c: Likewise.
+       * tests/test-sys_types.c: Likewise.
+
 2011-09-16  Eric Blake  <eblake@redhat.com>
 
+       fdatasync: port to Solaris
+       * m4/fdatasync.m4 (gl_FUNC_FDATASYNC): Set LIB_FDATASYNC.
+       * modules/fdatasync (Link): Document it.
+       * modules/fdatasync-tests (test_fdatasync_LDADD): Link with it.
+
+       fdatasync: port to MacOS X 10.7
+       * m4/fdatasync.m4 (gl_FUNC_FDATASYNC): Check for present but not
+       declared.
+       * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Another default.
+       * modules/unistd (Makefile.am): Substitute it.
+       * lib/unistd.in.h (fdatasync): Declare on MacOS.
+       * doc/posix-functions/fdatasync.texi (fdatasync): Document it.
+
+       fdatasync: minor improvements
+       * modules/fdatasync (Depends-on): Add condition for fsync.
+       * lib/fdatasync.c (fdatasync): Add comment.
+       * tests/test-unistd-c++.cc: Test fdatasync.
+
        unistd: update refs to newer POSIX
        * lib/unistd.in.h: Prefer POSIX 2008 over 2001.
        Suggested by Bruno Haible.