careadlinkat: Clarify specification.
[gnulib.git] / ChangeLog
index eee9509..589f7ee 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,124 @@
+2011-04-09  Bruno Haible  <bruno@clisp.org>
+
+       careadlinkat: Clarify specification.
+       * lib/careadlinkat.h (careadlinkat): Clarify preadlinkat argument.
+       (careadlinkatcwd): Add comment.
+       * lib/careadlinkat.c (careadlinkat): Clarify preadlinkat argument.
+
+2011-04-09  Bruno Haible  <bruno@clisp.org>
+
+       areadlinkat: Avoid link error on many platforms.
+       * modules/areadlinkat (Depends-on): Add areadlink.
+
+2011-04-09  Bruno Haible  <bruno@clisp.org>
+
+       allocator, careadlinkat: Fix double-inclusion guard.
+       * lib/allocator.h: Fix double-inclusion guard.
+       * lib/careadlinkat.h: Likewise.
+
+2011-04-09  Bruno Haible  <bruno@clisp.org>
+
+       relocatable-prog-wrapper: Update after module 'areadlink' changed.
+       * lib/relocwrapper.c: Update dependencies hierarchy.
+       * build-aux/install-reloc: Update list of files to be compiled.
+       * modules/relocatable-prog-wrapper (Files): Add lib/careadlinkat.[hc],
+       lib/allocator.[hc].
+
+2011-04-08  Eric Blake  <eblake@redhat.com>
+
+       strftime: silence gnulib-tool warning
+       * modules/strftime-tests (Depends-on): Drop automatic dependency.
+
+2011-04-08  Bruno Haible  <bruno@clisp.org>
+
+       verify: Fix syntax error with GCC 4.6 in C++ mode.
+       * lib/verify.h (HAVE__STATIC_ASSERT): Don't define in C++ mode.
+       (HAVE_STATIC_ASSERT): New macro.
+       (verify_true, verify): Use 'static_assert' if it is supported and
+       '_Static_assert' is not supported.
+
+2011-04-08  Paul Eggert  <eggert@cs.ucla.edu>
+
+       allocator: New module.
+       * modules/allocator, lib/allocator.c: New files.
+       * lib/allocator.h (stdlib_allocator): New decl.
+       * lib/careadlinkat.c (_GL_USE_STDLIB_ALLOC, standard_allocator):
+       Remove.  Do not include <stdlib.h>.
+       (careadlinkat): Use stdlib_allocator instead of rolling our own.
+       * modules/careadlinkat (Files): Remove lib/allocator.h.
+       (Depends-on): Add allocator.
+
+       stdlib: let modules use system malloc, realloc
+       * lib/stdlib.in.h (malloc, realloc): Don't #define or add warnings
+       if !_GL_USE_STDLIB_ALLOC.
+       (malloc, realloc): Limit this change to a smaller scope.
+
+       * lib/careadlinkat.c (_GL_USE_STDLIB_ALLOC): Define.
+       (malloc, realloc): Don't #undef; no longer needed.
+       * lib/malloca.c (_GL_USE_STDLIB_ALLOC, malloc): Likewise.
+       * lib/progreloc.c (_GL_USE_STDLIB_ALLOC, malloc): Likewise.
+       * lib/setenv.c (_GL_USE_STDLIB_ALLOC, malloc, realloc): Likewise.
+       * lib/canonicalize-lgpl.c (_GL_USE_STDLIB_ALLOC, malloc): Likewise.
+       * lib/relocatable.c (_GL_USE_STDLIB_ALLOC, malloc): Likewise.
+       * lib/relocwrapper.c (_GL_USE_STDLIB_ALLOC, malloc): Likewise.
+       * lib/malloc.c (_GL_USE_STDLIB_ALLOC, malloc): Likewise.
+       * lib/realloc.c (_GL_USE_STDLIB_ALLOC, malloc, realloc): Likewise.
+
+       careadlinkat: rename members to avoid problem
+       * lib/allocator.h (struct allocator): Rename members from
+       malloc/realloc to allocate/reallocate, to avoid problems if malloc
+       and realloc are #define'd.  Reported by Eric Blake in
+       <http://lists.gnu.org/archive/html/bug-gnulib/2011-04/msg00091.html>.
+       * lib/careadlinkat.c (careadlinkat): Adjust to renaming.
+
+2011-04-08  Eric Blake  <eblake@redhat.com>
+
+       nonblocking: reduce dependency
+       * tests/test-nonblocking.c: Only test sockets when in use.
+       * modules/nonblocking-tests (Depends-on): Drop socket.
+       (Makefile.am): Link even if sockets are not present.
+       * modules/pipe2-tests (Makefile.am): Likewise.
+       * lib/ioctl.c (ioctl) [WIN32]: Fail if sockets are not also in use.
+
+       pipe2: fix O_NONBLOCK support on mingw
+       * modules/pipe2 (Depends-on): Add nonblocking.
+       * lib/pipe2.c (pipe2) [WIN32]: Add O_NONBLOCK support.
+       * tests/test-pipe2.c (is_nonblocking): Adjust test accordingly.
+       * tests/test-nonblocking.c (main): Likewise.
+       * modules/pipe2-tests (Makefile.am): Avoid link failure.
+
+       fcntl-h: fix O_ACCMODE on cygwin
+       * doc/posix-headers/fcntl.texi (fcntl.h): Document the bug.
+       * lib/fcntl.in.h (O_ACCMODE): Fix it.
+
+       pipe-filter: drop O_NONBLOCK workarounds
+       * modules/pipe-filter-gi (Depends-on): Add fcntl-h.
+       * modules/pipe-filter-ii (Depends-on): Likewise.
+       * lib/pipe-filter-aux.h (O_NONBLOCK): Delete workaround.
+
+       nonblocking: provide O_NONBLOCK for mingw
+       * modules/nonblocking (Depends-on): Add open.
+       (configure.ac): Set new witness macro.
+       * m4/fcntl_h.m4 (gl_FCNTL_H_DEFAULTS): Provide default for it.
+       * modules/fcntl-h (Makefile.am): Substitute it.
+       * lib/fcntl.in.h (O_NONBLOCK): Guarantee non-zero definition when
+       nonblocking module is in use.
+       * lib/nonblocking.c: Adjust portability test.
+       * lib/open.c (open): Don't let native open see gnulib flag.
+       * tests/test-fcntl-h.c (main): Enhance test.
+       * tests/test-open.h (test_open): Likewise.
+       * doc/posix-headers/fcntl.texi (fcntl.h): Document the replacement.
+
+       careadlink: fix compilation error on mingw
+       * lib/careadlinkat.c (standard_allocator): Avoid renaming fields
+       within struct allocator.
+
+2011-04-06  Eric Blake  <eblake@redhat.com>
+
+       binary-io: relicense under LGPLv2+
+       * modules/binary-io (License): Relax to LGPLv2+.
+       Requested for libvirt, and required by pipe2.
+
 2011-04-06  Paul Eggert  <eggert@cs.ucla.edu>
 
        verify: use _Static_assert if available