getcwd: fix mingw bugs
[gnulib.git] / ChangeLog
index 4f8321a..8dae3ab 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,302 @@
+2011-04-27  Eric Blake  <eblake@redhat.com>
+
+       getcwd: fix mingw bugs
+       * m4/getcwd.m4 (gl_FUNC_GETCWD_NULL): Detect one mingw bug.
+       * doc/posix-functions/getcwd.texi (getcwd): Document the problems.
+       * lib/getcwd-lgpl.c (rpl_getcwd): Fix return type.
+
+2011-04-27  Bruno Haible  <bruno@clisp.org>
+
+       mkstemps: Ensure declaration on MacOS X 10.5.
+       * lib/stdlib.in.h: Include <unistd.h> when mkstemps is requested.
+       * doc/glibc-functions/mkstemps.texi: Document header file problem on
+       MacOS X.
+
+2011-04-27  Bruno Haible  <bruno@clisp.org>
+
+       mkstemp: More documentation.
+       * doc/posix-functions/mkstemp.texi: Document header file problem on
+       MacOS X.
+
+2011-04-27  Bruno Haible  <bruno@clisp.org>
+
+       mkstemp: Tweak configure message when cross-compiling.
+       * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): When cross-compiling, qualify the
+       result as a guess.
+
+2011-04-27  Bruno Haible  <bruno@clisp.org>
+
+       clean-temp: Clarify what it does.
+       * lib/clean-temp.h: Add more comments.
+       * doc/posix-functions/mkstemp.texi: Tweak reference to 'clean-temp'
+       module.
+       * doc/glibc-functions/mkostemp.texi: Mention 'clean-temp' here too.
+       * doc/glibc-functions/mkstemps.texi: Likewise.
+       * doc/glibc-functions/mkostemps.texi: Likewise.
+
+2011-04-27  Eric Blake  <eblake@redhat.com>
+
+       fchdir: avoid extra chdir and fix test
+       * modules/fchdir (Depends-on): Add dosname, filenamecat-lgpl,
+       getcwd-lgpl.
+       * lib/fchdir.c (get_name): Any absolute name will do; it does not
+       have to be canonical.
+       (canonicalize_file_name): Drop unused macro.
+       * m4/dup2.m4 (gl_REPLACE_DUP2): Ensure dup2 is replaced.
+
+       filenamecat-lgpl: fix licence
+       * modules/filenamecat-lgpl (License): Mark as LGPLv2+, as intended
+       when it was first created.
+
+       linkat, renameat: add missing dependency
+       * modules/linkat (Depends-on): Require getcwd-lgpl.
+       * modules/renameat (Depends-on): Likewise.
+
+       tests: reduce dependencies
+       * tests/test-linkat.c (main): Use lighter-weight getcwd.
+       * tests/test-renameat.c (main): Likewise.
+       * modules/linkat-tests (Depends-on): Relax dependency.
+       * modules/renameat-tests (Depends-on): Likewise.
+       * modules/fchdir-tests (Depends-on): Likewise.  Also make cloexec
+       dependency explicit.
+
+       save-cwd: reduce default dependency
+       * modules/save-cwd (Depends-on): Use getcwd-lgpl.
+       * lib/save-cwd.c: Update comments.
+       * NEWS: Document the semantic change.
+
+       getcwd: enhance tests
+       * tests/test-getcwd-lgpl.c: New file, taken from...
+       * tests/test-getcwd.c: ...old contents.  Rewrite this file to
+       repeat long path stress tests from m4 probe.
+       * modules/getcwd-lgpl-tests: New module.
+       * modules/getcwd-tests (Depends-on): Depend on lgpl tests.
+       * m4/getcwd-abort-bug.m4: Update comment.
+       * m4/getcwd-path-max.m4: Likewise.
+
+       getcwd-lgpl: new module
+       * modules/getcwd-lgpl: New module.
+       * lib/getcwd-lgpl.c: New file.
+       * doc/posix-functions/getcwd.texi (getcwd): Document it.
+       * MODULES.html.sh (lacking POSIX:2008): Likewise.
+       * modules/getcwd (configure.ac): Set C witness.
+       * m4/getcwd.m4 (gl_FUNC_GETCWD_LGPL): New macro.
+
+       getcwd: tweak comments
+       * m4/getcwd-abort-bug.m4: Fix comments.
+       * m4/getcwd-path-max.m4: Likewise.
+       * m4/getcwd.m4: Likewise.
+
+2011-04-27  Reuben Thomas  <rrt@sc3d.org>
+       and Eric Blake  <eblake@redhat.com>
+
+       mkstemp: replace if system version uses wrong permissions
+       * m4/mkstemp.m4 (gl_FUNC_MKSTEMP): Add test for non-owner
+       read/write mode bits set in file created by mkstemp.
+       * doc/posix-functions/mkstemp.texi (mkstemp): Document the fix.
+
+2011-04-27  Eric Blake  <eblake@redhat.com>
+
+       passfd: avoid compiler warning
+       * lib/passfd.c (sendfd, recvfd): Avoid shadowing names.
+       Reported by Laine Stump.
+
+2011-04-27  J.T. Conklin  <jtc@acorntoolworks.com>  (tiny change)
+
+       * gnulib-tool: change "join -a 2" to "join -a2", the latter is
+       required by the NetBSD (and perhaps other 4.4BSD derived) join.
+
+2011-04-27  Reuben Thomas  <rrt@sc3d.org>
+       and Eric Blake  <eblake@redhat.com>
+
+       mkstemp: mention clean-temp module
+       * lib/mkstemp.c: Add comment.
+       * doc/posix-functions/mkstemp.texi (mkstemp): Likewise.
+
+2011-04-26  Paul Eggert  <eggert@cs.ucla.edu>
+
+       inttypes: also provide default values for 32-bit tests
+       * m4/inttypes.m4 (gl_INTTYPES_H_DEFAULTS): Also provide default values
+       for INT32_MAX_LT_INTMAX_MAX and for UINT32_MAX_LT_UINTMAX_MAX.
+
+2011-04-25  Paul Eggert  <eggert@cs.ucla.edu>
+
+       strtoumax: remove dependency on strtoimax
+       This is like the strtoull change of yesterday.
+       * modules/strtoumax (Files): Add lib/strtoimax.c.
+       (Depends-on): Remove strtoimax and add verify.
+
+       inttypes-incomplete: new module
+       * m4/inttypes.m4 (gl_INTTYPES_INCOMPLETE): New macro, containing
+       all but the PRI* and SCN* parts of gl_INTTYPES_H.
+       (gl_INTTYPES_PRI_SCN): New macro, containing the PRI* and SCN* parts
+       of gl_INTTYPES_H.
+       (gl_INTTYPES_H): Rewrite in terms of these new macros.
+       (gl_INTTYPES_H_DEFAULTS): Provide defaults for the PRI* and SCN*
+       parts, in case gl_INTTYPE_PRI_SCN is not invoked.
+       * modules/imaxabs, modules/imaxdiv, modules/strtoimax (Depends-on):
+       * modules/strtoumax, modules/xstrtol (Depends-on):
+       Depend on inttypes-incomplete, not inttypes.
+       * modules/inttypes-incomplete: New module, containing the contents
+       of the old modules/inttypes module, except that the Files: section
+       omits m4/inttypes-pri.m4, and the configure.ac section invokes
+       gl_INTTYPES_INCOMPLETE rather than gl_INTTYPES_H.
+       * modules/inttypes (Files): Remove lib/inttypes.in.h, m4/inttypes.m4.
+       (Depends-on): Depend only on inttypes-incomplete.
+       (Makefile.am): Remove everything; this is now in inttypes-incomplete.
+
+       inttypes: omit now-redundant strtoimax and strtoumax work
+       * m4/inttypes.m4 (gl_INTTYPES_H): Do not check for strtoimax and
+       strtoumax decls; gl_FUNC_STRTOIMAX and gl_FUNC_STRTOUMAX now do this.
+
+       strtoimax, strtoumax: simplify, port to HP-UX 11.00 64-bit
+       This supports apps that need pointers to strtoimax and strtoumax,
+       and ports to HP-UX 11.00 64.bit, which has macros that expand to
+       nonexistent functions.  See
+       <http://lists.gnu.org/archive/html/bug-gnulib/2011-04/msg00241.html>
+       et seq.
+       * lib/inttypes.in.h (strtoimax, strtoumax): #undef before declaring.
+       * m4/strtoimax.m4 (gl_FUNC_STRTOIMAX): Don't check whether it's
+       a macro.
+       * m4/strtoumax.m4 (gl_FUNC_STRTOUMAX): Likewise.
+
+2011-04-25  Simon Josefsson  <simon@josefsson.org>
+
+       * modules/gnumakefile (configure.ac): Replace TAB with SPCs.
+
+2011-04-25  Bruno Haible  <bruno@clisp.org>
+
+       strtol, strtoul: Mark modules as obsolete.
+       * modules/strtol (Status, Notice): New sections.
+       * modules/strtoul (Status, Notice): New sections.
+
+2011-04-25  Bruno Haible  <bruno@clisp.org>
+
+       strtod: Remove check for strtod, unless supporting old platforms.
+       * modules/strtod-obsolete: New file.
+       * m4/strtod-obsolete.m4: New file.
+       * m4/strtod.m4 (gl_FUNC_STRTOD): Don't check whether strtod is declared
+       if gl_FUNC_STRTOD_OBSOLETE is not also defined.
+       * modules/strtod (Depends-on): Add strtod-obsolete.
+       * doc/posix-functions/strtod.texi: Mention module strtod-obsolete.
+
+2011-04-25  Bruno Haible  <bruno@clisp.org>
+
+       strcase: Make module obsolete.
+       * modules/strcase (Status, Notice): New sections.
+
+2011-04-25  Bruno Haible  <bruno@clisp.org>
+
+       dup2: Remove check for dup2, unless supporting old obsolete platforms.
+       * modules/dup2-obsolete: New file.
+       * m4/dup2-obsolete.m4: New file.
+       * m4/dup2.m4 (gl_FUNC_DUP2): Don't check whether dup2 exists if
+       gl_FUNC_DUP2_OBSOLETE is not also defined.
+       * modules/dup2 (Depends-on): Add dup2-obsolete.
+       * doc/posix-functions/dup2.texi: Mention module dup2-obsolete.
+
+2011-04-25  Bruno Haible  <bruno@clisp.org>
+
+       strnlen: Avoid memchr related link error on old obsolete platforms.
+       * modules/memchr-obsolete: New file.
+       * m4/memchr-obsolete.m4: New file.
+       * m4/memchr.m4 (gl_FUNC_MEMCHR): Don't check whether memchr exists if
+       gl_FUNC_MEMCHR_OBSOLETE is not also defined.
+       * modules/memchr (Depends-on): Add memchr-obsolete.
+       * modules/strnlen (Depends-on): Likewise.
+       * doc/posix-functions/memchr.texi: Mention module memchr-obsolete.
+
+2011-04-25  Jim Meyering  <meyering@redhat.com>
+
+       maint.mk: makefile_at_at_check extend and clean up
+       * top/maint.mk (sc_makefile_at_at_check): Check *.mk files
+       in addition to */Makefile.am.
+       Exempt legitimate uses of @VAR@ notation, e.g.,
+       MAKEINFO = env LANG= LC_MESSAGES= LC_ALL= LANGUAGE= @MAKEINFO@
+       Remove obsolete coreutils-specific comment.
+       Prompted by discussion here:
+       http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/26074
+
+2011-04-24  Paul Eggert  <eggert@cs.ucla.edu>
+
+       strtoul: remove dependency on strtol
+       This is so that 'configure' need not check for strtol merely because
+       the application needs strtoul.
+       * modules/strtoul (Files): Add lib/strtol.c.
+       (Depends-on): Remove strtol.
+
+       strtoull: remove dependency on strtoul
+       This is like the strtoll change.
+       * modules/strtoull (Files): Add lib/strtol.c, lib/strtoul.c.
+       (Depends-on): Remove strtoul.
+
+       strtoll: remove dependency on strtol
+       This is so that 'configure' need not check for strtol merely because
+       the application needs strtoll.
+       * modules/strtoll (Files): Add lib/strtol.c.
+       (Depends-on): Remove strtol.
+
+2011-04-22  Paul Eggert  <eggert@cs.ucla.edu>
+
+       inttypes: Move some configure check to module 'imaxdiv'.
+       * m4/imaxdiv.m4 (gl_FUNC_IMAXDIV): Require gl_INTTYPES_H_DEFAULTS
+       instead of gl_INTTYPES_H.  Check for imaxdiv decl here.
+       * m4/inttypes.m4 (gl_INTTYPES_H): Don't check for imaxdiv decl here.
+
+2011-04-22  Paul Eggert  <eggert@cs.ucla.edu>
+
+       inttypes: Move some configure check to module 'imaxabs'.
+       * m4/imaxabs.m4 (gl_FUNC_IMAXABS): Require gl_INTTYPES_H_DEFAULTS
+       instead of gl_INTTYPES_H.  Check for imaxabs decl here.
+       * m4/inttypes.m4 (gl_INTTYPES_H): Don't check for imaxabs decl here.
+
+2011-04-22  Paul Eggert  <eggert@cs.ucla.edu>
+
+       inttypes: Remove configure tests that are not needed since 2009-12-31.
+       * m4/inttypes.m4 (gl_INTTYPES_H): Remove determination of
+       gl_cv_header_working_inttypes_h.
+
+2011-04-22  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * modules/strnlen (Depends-on): Remove memchr.
+       The strnlen implementation doesn't need the memchr module's fixes; see
+       <http://lists.gnu.org/archive/html/bug-gnulib/2011-04/msg00237.html>.
+
+       strtol: remove dependency on wchar
+       * lib/strtol.c: Include <wchar.h> only if USE_WIDE_CHAR is defined.
+       * modules/strtol (Depends-on): Remove wchar.
+
 2011-04-21  Eric Blake  <eblake@redhat.com>
 
+       passfd: fix test regression on Linux
+       * modules/passfd-tests (configure.ac): Correct socketpair check.
+
+       passfd: speed up configure and drop unused code
+       * m4/afunix.m4 (gl_SOCKET_AFUNIX): Rename...
+       * m4/passfd.m4 (gl_PASSFD): ...to something more fitting of
+       its use.  Drop test for setting unused HAVE_UNIXSOCKET_SCM_RIGHTS.
+       Instead of probing at configure for unix_scm_rights_bsd44_way,
+       instead probe for CMSG_FIRSTHDR at compile time.  Simplify BSD 4.3
+       check to a struct member probe.
+       * lib/passfd.c (includes): Nothing here requires <sys/un.h>.
+       (sendfd, recvfd): Update preprocessor checks.
+       * modules/passfd (Files): Reflect rename, and drop unused file.
+       (Depends-on): Drop unused dependency.
+
+       passfd: allow compilation on mingw
+       * modules/sys_socket (Depends-on): Add sys_uio.
+       * lib/sys_socket.in.h [!@HAVE_SYS_SOCKET_H@]: Use it for struct
+       iovec and a minimal struct msghdr.
+       * m4/afunix.m4 (gl_SOCKET_AFUNIX): Detect recvmsg/sendmsg.
+       * tests/test-sys_socket.c (main): Enhance test.
+       * lib/passfd.c (include): Drop <sys/uio.h>; <sys/sockets.h> is
+       guaranteed to provide what we need.
+       (sendmsg, recvmsg): Declare fallbacks if we lack sendmsg.
+       * modules/passfd-tests (Depends-on): Add sys_wait.
+       * tests/test-passfd.c (main): Skip test on mingw, for now.
+       * doc/posix-headers/sys_socket.texi (sys/socket.h): Document the
+       partial 'struct msghdr' implementation.
+
        sys_uio: new module
        * modules/sys_uio: New module.
        * modules/sys_uio-tests: Likewise.