relocatable-prog-wrapper: Assume strerror() exists.
[gnulib.git] / ChangeLog
index 75a0b57..44d33c9 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,718 @@
+2011-05-21  Bruno Haible  <bruno@clisp.org>
+
+       relocatable-prog-wrapper: Assume strerror() exists.
+       * modules/relocatable-prog-wrapper (Files): Remove lib/strerror.c,
+       m4/strerror.m4.
+       (configure.ac): Don't invoke gl_FUNC_STRERROR_SEPARATE.
+       * lib/relocwrapper.c: Remove mention of strerror module.
+       * lib/strerror.c: Assume REPLACE_STRERROR is 1.
+       * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): Remove macro.
+       (gl_FUNC_STRERROR): Inline it here. Don't define REPLACE_STRERROR as a
+       C macro.
+
+2011-05-21  Bruno Haible  <bruno@clisp.org>
+
+       select: Simplify replacement idiom.
+       * m4/select.m4 (gl_FUNC_SELECT): Set REPLACE_SELECT also on native
+       Win32 platforms.
+       * lib/sys_select.in.h (select): Simplify accordingly.
+       * modules/select (Depends-on): Likewise.
+
+2011-05-21  Bruno Haible  <bruno@clisp.org>
+
+       mkdir-p: Simplify autoconf macro.
+       * m4/mkdir-p.m4 (gl_MKDIR_PARENTS): Don't require gl_FUNC_LCHMOD,
+       gl_FUNC_LCHOWN.
+
+2011-05-21  Eric Blake  <eblake@redhat.com>
+
+       strerror_r: avoid clobbering strerror on cygwin
+       * lib/strerror_r.c (strerror_r): Don't use cygwin's strerror_r;
+       fall back instead to sys_errlist.
+       * modules/strerror (configure.ac): Add witness.
+       * tests/test-strerror_r.c (main): Enhance test.
+       * doc/posix-functions/strerror_r.texi (strerror_r): Document it.
+       * tests/test-perror2.c (main): Free memory before exit.
+
+2011-05-21  Bruno Haible  <bruno@clisp.org>
+
+       mkdtemp: Use gnulib naming conventions.
+       * m4/mkdtemp.m4 (gl_FUNC_MKDTEMP): Renamed from gt_FUNC_MKDTEMP.
+       * modules/mkdtemp (configure.ac): Update.
+
+2011-05-20  Eric Blake  <eblake@redhat.com>
+
+       strerror_r: avoid corrupting errno on Solaris
+       * m4/strerror_r.m4 (gl_FUNC_STRERROR_R): Check for Solaris behavior.
+       * doc/posix-functions/strerror_r.texi (strerror_r): Document it.
+
+       strerror_r: avoid compiler warning
+       * m4/strerror_r.m4 (gl_FUNC_STRERROR_R): Don't return a char*.
+
+       strerror_r: simplify AIX code
+       * lib/strerror_r.c (strerror_r): Filter out buflen of 1 up front.
+
+       test-perror: avoid spurious failure on FreeBSD
+       * modules/perror-tests (Depends-on): Add strerror, now that
+       strerror_r no longer pulls it in.
+
+2011-05-20  Bruno Haible  <bruno@clisp.org>
+
+       strerror_r-posix: Remove unused dependencies.
+       * modules/strerror_r-posix (Depends-on): Remove strerror.
+       Reported by Eric Blake.
+
+2011-05-20  Paul Eggert  <eggert@cs.ucla.edu>
+
+       intprops: remove assumption about A|B representation
+       * lib/intprops.h (_GL_BINARY_OP_OVERFLOW): Do not assume that A|B
+       is a valid integer if both A and B are.  Although this is true for
+       all known practical hosts, the C standard doesn't guarantee it,
+       and the code need not assume it.  Also, this change may work around
+       HP-UX 11.23 and IRIX 6.5 cc bugs reported by Bruno Haible in
+       <http://lists.gnu.org/archive/html/bug-gnulib/2011-05/msg00426.html>.
+
+2011-05-20  Eric Blake  <eblake@redhat.com>
+
+       perror: work around FreeBSD bug
+       * m4/perror.m4 (gl_FUNC_PERROR): Also replace perror if strerror_r
+       is broken.  Move AC_LIBOBJ...
+       * modules/perror (configure.ac): Here.
+       * doc/posix-functions/perror.texi (perror): Document this.
+       * tests/test-perror2.c (main): Enhance test.
+
+       test-perror: check for strerror interactions
+       * tests/macros.h (STREQ): Add macro.
+       * modules/perror-tests (Files): Add second test.
+       * tests/test-perror2.c (main): New file.
+       * doc/posix-functions/perror.texi (perror): Document glibc bug.
+
+       test-perror: rewrite to use init script
+       * modules/perror-tests (Files): Add init.sh.
+       * tests/test-perror.sh: Use temporary directory.
+
+2011-05-20  Jim Meyering  <meyering@redhat.com>
+
+       maint: replace misused "a" with "an"
+       * doc/intprops.texi: "a integer"
+       * doc/regex.texi: "a explanation"
+       * lib/alignof.h: "a object"
+       * lib/argmatch.h: "a explanation"
+       * lib/argp-help.c: "a option" and "a OPTION_DOC"
+       * lib/stdint.in.h: "a integer"
+       * lib/userspec.c: "a owner"
+       * doc/gnulib.texi: Fix "a idea", and reword.
+
+2011-05-19  Jim Meyering  <meyering@redhat.com>
+
+       maint: correct misuse of "a" and "an"
+       * doc/regex.texi (Collating Symbol Operators): s/an close.../a close/
+       * lib/argp-help.c: "an docum...": s/an/a/
+       * lib/argp-parse.c: "An vector": s/An/A/
+       * lib/execute.c: "an native": s/an/a/
+       * lib/spawn-pipe.c: Likewise.
+       * lib/gc.h: "an Gc_rc": s/an/a/
+       * lib/unigbrk.in.h: "an grapheme": s/an/a/
+       * lib/fts.c: "an stat.st_dev": s/an/a/
+
+2011-05-19  Paul Eggert  <eggert@cs.ucla.edu>
+
+       intprops-tests: work around HP-UX 11.23 cc bug with constants
+       * tests/test-intprops.c (VERIFY): New macro.
+       (main): Use it, instead of verify, to work around the compiler bug; see
+       <http://lists.gnu.org/archive/html/bug-gnulib/2011-05/msg00401.html>.
+
+       intprops: work around IRIX 6.5 cc bug with 0u - 0u + -1
+       See http://lists.gnu.org/archive/html/bug-gnulib/2011-05/msg00406.html
+       * lib/intprops.h (_GL_INT_NEGATE_CONVERT): New macro.
+       (_GL_INT_SIGNED, _GL_INT_MAXIMUM, _GL_DIVIDE_OVERFLOW):
+       (_GL_REMAINDER_OVERFLOW): Use it.
+
+       intprops-tests: revert unsigned part of previous change
+       * tests/test-intprops.c (UINT_MAX, ULONG_MAX, UINTMAX_MAX, U0, U1):
+       Remove; they weren't actually needed.  All uses of U0 and U1 removed,
+       and other casts to 'unsigned int' reverted to 'u' suffixes.  See
+       <http://lists.gnu.org/archive/html/bug-gnulib/2011-05/msg00406.html>.
+
+2011-05-19  Bruno Haible  <bruno@clisp.org>
+
+       strerror_r: Work around strerror_r() change in Cygwin 1.7.8.
+       * lib/strerror_r.c (strerror_r) [CYGWIN]: Recognize when the system's
+       strerror_r() returned without filling the buffer.
+       Reported by Eric Blake.
+
+2011-05-19  Eric Blake  <eblake@redhat.com>
+
+       strerror_r: guarantee unchanged errno
+       * lib/strerror_r.c (strerror_r): Guarantee unchanged errno.
+       * lib/strerror-impl.h (strerror): Set errno to match strerror_r
+       failure.
+       * tests/test-strerror_r.c (main): Enhance test.
+
+2011-05-19  Bruno Haible  <bruno@clisp.org>
+
+       strerror_r: Reorder #if blocks.
+       * lib/strerror_r.c (strerror_r): Reorder conditionals in the function
+       for consistency with the previous commit.
+
+2011-05-19  Bruno Haible  <bruno@clisp.org>
+
+       perror: Avoid clobbering the strerror buffer when possible.
+       * lib/strerror-impl.h: New file, extracted from lib/strerror.c.
+       * lib/strerror.c: Include it.
+       * modules/strerror (Files): Add lib/strerror-impl.h.
+       * lib/perror.c: Include <stdlib.h>, intprops.h, verify.h.
+       (my_strerror): New function, defined through lib/strerror-impl.h.
+       (perror): Use it instead of strerror.
+       * modules/perror (Files): Add lib/strerror-impl.h.
+       (Depends-on): Remove strerror. Add intprops, verify, strerror_r-posix.
+
+2011-05-19  Eric Blake  <eblake@redhat.com>
+
+       strerror_r: fix on newer cygwin
+       * lib/strerror_r.c (strerror_r): Cygwin now has
+       __xpg_strerror_r, use it.
+
+2011-05-19  Bruno Haible  <bruno@clisp.org>
+
+       strerror_r: Avoid clobbering the strerror buffer when possible.
+       * lib/strerror.c: Define _NETBSD_SOURCE. Include <nl_types.h>.
+       (sys_nerr, sys_errlist): New declarations.
+       (strerror_r): Be careful not to clobber the strerror buffer on NetBSD,
+       HP-UX, native Win32, IRIX, and 32-bit Solaris.
+       * m4/strerror_r.m4 (gl_PREREQ_STRERROR_R): Test whether catgets exists.
+
+2011-05-19  Bruno Haible  <bruno@clisp.org>
+
+       strerror_r: Fix test failure on mingw.
+       * m4/strerror_r.m4 (gl_FUNC_STRERROR_R): Don't define
+       EXTEND_STRERROR_R.
+       * lib/strerror_r.c (strerror_r): Test the various GNULIB_defined_*
+       macros from errno.in.h instead.
+
+2011-05-19  Eric Blake  <eblake@redhat.com>
+
+       strerror: relax test for Solaris
+       * tests/test-strerror.c (main): Permit Solaris behavior.
+       * tests/test-strerror_r.c (main): Likewise.
+
+       strerror: enforce POSIX ruling on strerror(0)
+       * m4/strerror.m4 (gl_FUNC_STRERROR_SEPARATE): Expose BSD bug.
+       * m4/strerror_r.m4 (gl_FUNC_STRERROR_R): Likewise.
+       * lib/strerror_r.c (rpl_strerror_r): Work around it.
+       * doc/posix-functions/strerror.texi (strerror): Document it.
+       * doc/posix-functions/strerror_r.texi (strerror_r): Likewise.
+       * tests/test-strerror.c (main): Strengthen test.
+       * tests/test-strerror_r.c (main): Likewise.
+
+2011-05-19  Paul Eggert  <eggert@cs.ucla.edu>
+
+       intprop-tests: port to older and more-pedantic compilers
+       * modules/intprops-tests (Files): Add tests/macros.h.
+       * tests/test-intprops.c: Include macros.h.
+       (TYPE_IS_INTEGER): Use ASSERT, not verify, to test this macro, as
+       it's no longer documented to expand to an integer constant expression.
+       (TYPE_SIGNED): Use ASSERT, not verify, to test this macro when the
+       argument is floating point, as it's no longer documented to expand
+       to an integer constant expression in that case.
+       (UINT_MAX, ULONG_MAX, UINTMAX_MAX): Redefine to work around
+       compiler bugs reported by Bruno Haible.  See
+       <http://lists.gnu.org/archive/html/bug-gnulib/2011-05/msg00401.html>.
+       (U0, U1): New constants, to work around the same bugs.  Also,
+       in tests, use e.g., "(unsigned int) 39" rather than "39u".
+
+       intprops: work around C compiler bugs
+       * lib/intprops.h (INT_MULTIPLY_RANGE_OVERFLOW): Work around compiler
+       bug in Sun C 5.11 2010/08/13 and other compilers; see
+       <http://lists.gnu.org/archive/html/bug-gnulib/2011-05/msg00401.html>.
+
+       intprops: TYPE_IS_INTEGER, TYPE_SIGNED not integer constant exprs
+       * doc/intprops.texi (Integer Type Determination): Fix
+       documentation for TYPE_IS_INTEGER: it returns an constant
+       expression, not an integer constant expression.  Fix doc for
+       TYPE_SIGNED: it returns an integer constant expression only if its
+       argument is an integer type.  (TYPE_IS_INTEGER is the same, but is
+       hardly worth documented that way....)
+
+2011-05-18  Bruno Haible  <bruno@clisp.org>
+
+       strerror_r: Avoid clobbering the strerror buffer when possible.
+       * lib/strerror_r.c (strerror_r): Merge the three implementations.
+       Handle gnulib defined errno values here. When strerror() returns NULL
+       or an empty string, return EINVAL.
+       * lib/strerror.c (strerror): Always call strerror_r. Don't handle
+       gnulib defined errno values here.
+       * modules/strerror (Depends-on): Add verify, strerror_r-posix.
+
+2011-05-18  Eric Blake  <eblake@redhat.com>
+
+       fnmatch: avoid compiler warning
+       * lib/fnmatch_loop.c (FCT): Use correct type.
+       Reported by Matthias Bolte.
+
+2011-05-13  Jim Meyering  <meyering@redhat.com>
+
+       maint.mk: three new prohibit_<HDR>_without_use rules
+       * top/maint.mk (sc_prohibit_stdio--_without_use): New rule.
+       (sc_prohibit_stdio-safer_without_use): Likewise.
+       (sc_prohibit_xfreopen_without_use): Likewise.
+
+2011-05-17  Jim Meyering  <meyering@redhat.com>
+
+       announce-gen: fail if the NEWS delta is empty
+       If there's nothing noteworthy in NEWS, then either you forgot
+       or you shouldn't be releasing.
+       * build-aux/announce-gen: Die if the NEWS delta is effectively empty.
+
+2011-05-17  Pádraig Brady <P@draigBrady.com>
+
+       * top/maint.mk (_gl_tight_scope:): Automatically exclude compiler
+       reserved symbols starting with double underscore from the check.
+
+2011-05-17  Paul Eggert  <eggert@cs.ucla.edu>
+
+       intprops: add doc
+       * doc/intprops.texi: New file, documenting intprops.
+       * doc/gnulib.texi (Particular Modules): Include it.
+
+       verify: add doc to gnulib manual and fix example
+       * doc/gnulib.texi (Compile-time Assertions): New node, for 'verify'.
+       * doc/verify.texi (Compile-time Assertions): Update 'assert' doc.
+       (Compile-time Assertions): Fix example so it can't overflow.
+
+2011-05-17  Jim Meyering  <meyering@redhat.com>
+
+       warnings.m4: don't usurp save_CPPFLAGS variable name
+       * m4/warnings.m4: Prefix local temporary variable name with gl_.
+
+       doc: fix typo
+       * doc/gnulib-intro.texi (Target Platforms): s/is/are/
+
+2011-05-16  Paul Eggert  <eggert@cs.ucla.edu>
+           Bruno Haible  <bruno@clisp.org>
+
+       doc: Tweak recent change.
+       * README (Portability guidelines): Tweak new text.
+       * doc/gnulib-intro.texi (Target Platforms): Likewise. Mention
+       Interix 6.1.
+
+2011-05-16  Eric Blake  <eblake@redhat.com>
+
+       inttypes: avoid autoconf warning
+       * m4/inttypes.m4 (gl_INTTYPES_INCOMPLETE): Only expand once.
+       * m4/stdint.m4 (gl_STDINT_H): Likewise.
+
+2011-05-16  Sam Steingold <sds@gnu.org>
+       and Eric Blake  <eblake@redhat.com>
+
+       vc-list-files: accept multiple directory operands
+       * build-aux/vc-list-files: Iterate over all remaining operands.
+
+2011-05-16  Bruno Haible  <bruno@clisp.org>
+
+       Fix confusion regarding deprecated modules.
+       * modules/calloc (Status, Notice): Mark module as deprecated, not
+       obsolete.
+       * modules/fnmatch-posix (Status, Notice): Likewise.
+       * modules/getdate (Status, Notice): Likewise.
+       * modules/getopt (Status, Notice): Likewise.
+       * modules/malloc (Status, Notice): Likewise.
+       * modules/pipe (Status, Notice): Likewise.
+       * modules/realloc (Status, Notice): Likewise.
+       * modules/rename-dest-slash (Status, Notice): Likewise.
+       * modules/unictype/bidicategory-all (Status, Notice): Likewise.
+       * modules/unictype/bidicategory-byname (Status, Notice): Likewise.
+       * modules/unictype/bidicategory-name (Status, Notice): Likewise.
+       * modules/unictype/bidicategory-of (Status, Notice): Likewise.
+       * modules/unictype/bidicategory-test (Status, Notice): Likewise.
+
+2011-05-16  Bruno Haible  <bruno@clisp.org>
+
+       doc: List the target platforms.
+       * doc/gnulib-intro.texi (Target Platforms): New section.
+       * doc/gnulib.texi (Introduction): Update menu.
+       * README (Portability guidelines): Refer to the new section. Update
+       statement about oldest supported environment. Remove rationale why
+       <errno.h>, <string.h>, <stdlib.h> are assumed. Update example of an
+       unportable C89 function.
+       Reported by Bastien Roucariès <roucaries.bastien@gmail.com> and
+       Charles Wilson <cygwin@cwilson.fastmail.fm>. Feedback from Paul Eggert.
+
+2011-05-16  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * build-aux/bootstrap (gnulib_tool): Handle symlink timestamps better.
+
+2011-05-13  Paul Eggert  <eggert@cs.ucla.edu>
+
+       intprops-tests: new module
+       * modules/intprops-tests, tests/test-intprops.c: New files.
+
+       intprops: add safe, portable integer overflow checking
+       * lib/intprops.h (_GL_INT_CONVERT, _GL_INT_TWOS_COMPLEMENT):
+       (_GL_INT_SIGNED, _GL_INT_MINIMUM, _GL_INT_MAXIMUM):
+       (_GL_SIGNED_INT_MINIMUM, INT_ADD_RANGE_OVERFLOW):
+       (INT__SUBTRACT__RANGE_OVERFLOW, INT_NEGATE_RANGE_OVERFLOW):
+       (INT_MULTIPLY_RANGE_OVERFLOW, INT_REMAINDER_RANGE_OVERFLOW):
+       (INT_LEFT_SHIFT_RANGE_OVERFLOW, _GL_ADD_OVERFLOW):
+       (_GL__SUBTRACT__OVERFLOW, _GL_MULTIPLY_OVERFLOW, _GL_DIVIDE_OVERFLOW):
+       (_GL_REMAINDER_OVERFLOW, _GL_UNSIGNED_NEG_MULTIPLE, INT_ADD_OVERFLOW):
+       (INT__SUBTRACT__OVERFLOW, INT_NEGATE_OVERFLOW, INT_MULTIPLY_OVERFLOW):
+       (INT_DIVIDE_OVERFLOW, INT_REMAINDER_OVERFLOW):
+       (INT_LEFT_SHIFT_OVERFLOW, _GL_BINARY_OP_OVERFLOW): New macros.
+
+2011-05-12  James Youngman  <jay@gnu.org>
+
+       Add a test for glibc's Bugzilla bug #12378.
+       * m4/fnmatch.m4: Use gnulib's fnmatch if the system fnmatch
+       doesn't allow the literal matching of a lone "[" (which is
+       required by POSIX).
+       * tests/test-fnmatch.c (main): Check that "[/b" matches itself.
+
+2011-05-11  Ulrich Drepper  <drepper@gmail.com>
+
+       Sync glibc change fixing Bugzilla bug #12378.
+       * lib/fnmatch_loop.c (FCT): When matching '[' keep track of
+       beginning and fall back to matching as normal character if the
+       string ends before the matching ']' is found.  This is what POSIX
+       requires.
+
+2011-05-13  Eric Blake  <eblake@redhat.com>
+
+       getcwd-lgpl: relax test for FreeBSD
+       * doc/posix-functions/getcwd.texi (getcwd): Document portability
+       issue.
+       * tests/test-getcwd-lgpl.c (main): Relax test.
+       Reported by Matthias Bolte.
+
+2011-05-11  Eric Blake  <eblake@redhat.com>
+
+       test-fflush: silence compiler warning
+       * tests/test-fflush.c (main): Don't fclose a NULL pointer.
+
+2011-05-11  Bruno Haible  <bruno@clisp.org>
+
+       canonicalize, canonicalize-lgpl: Avoid crash dialog on MacOS X.
+       * m4/canonicalize.m4 (gl_FUNC_REALPATH_WORKS): Add GL_NOCRASH code.
+       * modules/canonicalize (Depends-on): Add 'nocrash'.
+       * modules/canonicalize-lgpl (Depends-on): Likewise.
+       * doc/posix-functions/realpath.texi: Update platforms list.
+       Reported by Ryan Schmidt <ryandesign@macports.org>.
+
+2011-05-11  Bruno Haible  <bruno@clisp.org>
+
+       group-member: Declare function in <unistd.h>.
+       * lib/unistd.in.h (group_member): New declaration.
+       * lib/group-member.h: Remove file.
+       * lib/group-member.c: Include <unistd.h> instead of group-member.h.
+       * tests/test-unistd-c++.cc: Check signature of group_member.
+       * m4/group-member.m4 (gl_FUNC_GROUP_MEMBER): Require
+       gl_UNISTD_H_DEFAULTS. Set HAVE_GROUP_MEMBER.
+       * m4/unistd_h.m4 (gl_UNISTD_H): Check whether group_member is declared.
+       (gl_UNISTD_H_DEFAULTS): Initialize GNULIB_GROUP_MEMBER,
+       HAVE_GROUP_MEMBER.
+       * modules/group-member (Files): Remove lib/group-member.h.
+       (Depends-on): Add unistd. Specify conditions.
+       (configure.ac): Invoke gl_UNISTD_MODULE_INDICATOR.
+       (Include): Change to <unistd.h>.
+       * modules/unistd (Makefile.am): Substitute GNULIB_GROUP_MEMBER,
+       HAVE_GROUP_MEMBER.
+       * NEWS: Mention the change.
+       * lib/euidaccess.c: Don't include group-member.h.
+
+2011-05-11  Bruno Haible  <bruno@clisp.org>
+
+       group-member: Document module.
+       * doc/glibc-functions/group_member.texi: Mention the 'group-member'
+       module.
+
+2011-05-11  Bruno Haible  <bruno@clisp.org>
+
+       fclose: Fix mistake earlier today.
+       * lib/fclose.c (rpl_fclose): Don't assume that EOF < 0.
+
+2011-05-11  Eric Blake  <eblake@redhat.com>
+
+       fclose: preserve fflush errors
+       * lib/fclose.c (rpl_fclose): Don't lose fflush errors.
+       Reported by Jim Meyering.
+
+       bootstrap: support a prereq of 'rpcgen -' on RHEL5
+       * build-aux/bootstrap (check_versions): When no specific version
+       is required, merely check that the app produces an exit status
+       that indicates its existence.
+
+       maint.mk: drop redundant check
+       * top/maint.mk (sc_the_the): Delete; sc_prohibit_doubled_word does
+       the same but better.
+
+2011-05-11  Bruno Haible  <bruno@clisp.org>
+
+       fclose: Fix possible link error.
+       * lib/fclose.c (rpl_fclose): Invoke _gl_unregister_fd, not
+       unregister_shadow_fd. Improve comments.
+       * lib/sockets.c (close_fd_maybe_socket): Add comments. Reported by
+       Eric Blake.
+
+2011-05-11  Jim Meyering  <meyering@redhat.com>
+
+       maint.mk: improve "can not" detection and generalize rule name
+       * top/maint.mk (sc_prohibit_undesirable_word_seq): Renamed from
+       sc_prohibit_can_not, since we'll probably add a few more word pairs here.
+       Use the same technique as in sc_prohibit_doubled_word, so that
+       we recognize "can not" also when the words are separated by a newline.
+       Suggested by Eric Blake.
+       (perl_filename_lineno_text_): Define.  Factored out of...
+       (prohibit_doubled_word_): ...here.  Use the new definition.
+       (prohibit_undesirable_word_seq_): New var.  Use it here, too.
+       (prohibit_undesirable_word_seq_RE_): New overridable variable.
+       (ignore_undesirable_word_sequence_RE_): New overridable variable.
+
+2011-05-10  Eric Blake  <eblake@redhat.com>
+
+       fclose: avoid double close race when possible
+       * lib/fclose.c (rpl_fclose): Rewrite to avoid double-close race on
+       all but WINDOWS_SOCKETS.
+
+2011-05-10  Bastien Roucariès  <roucaries.bastien@gmail.com>
+
+       openat: correct new comment
+       * lib/openat-proc.c (openat_proc_name): Correct the comment.
+
+2011-05-10  Jim Meyering  <meyering@redhat.com>
+
+       openat: add comments
+       * lib/openat-proc.c (openat_proc_name): Add comments,
+       mostly from Eric Blake.
+
+2011-05-09  Eric Blake  <eblake@redhat.com>
+
+       openat: reduce syscalls in first probe of /proc
+       * lib/openat-proc.c (openat_proc_name): Require that /proc/self/fd
+       be a directory.  Simplify the probe for .. bugs.
+       * modules/openat (Depends-on): Drop same-inode.
+       Reported by Bastien ROUCARIES.
+
+2011-05-09  Jim Meyering  <meyering@redhat.com>
+
+       maint.mk: change semantics/name of tight_scope variables
+       * top/maint.mk (_gl_TS_var_match, _gl_TS_function_match):
+       Rename variables to align with semantics that make them more useful.
+
+       maint.mk: tweak new rule's name not to impinge
+       * top/maint.mk (_gl_tight_scope): Rename from sc_tight_scope-0.
+       (sc_tight_scope): Use new rule name rather than $@-0.
+
+       maint.mk: add a syntax-check rule to ensure tightly-scoped symbols
+       * top/maint.mk (sc_tight_scope): New rule.
+       (sc_tight_scope-0): New rule, ifdef'd out.
+       (_gl_TS_dir): Default.
+       (_gl_TS_unmarked_extern_functions, _gl_TS_function_regex): Define.
+       (_gl_TS_unmarked_extern_vars, _gl_TS_var_regex): Define.
+
+2011-05-09  Simon Josefsson  <simon@josefsson.org>
+
+       * m4/gc.m4: Remove gl_PREREQ_GC (not used).  Reported by Bruno
+       Haible <bruno@clisp.org>.
+
+2011-05-08  Bruno Haible  <bruno@clisp.org>
+
+       Comments.
+       * m4/isnanf.m4: Add comment.
+       * m4/isnanl.m4: Likewise.
+
+2011-05-08  Bruno Haible  <bruno@clisp.org>
+
+       glob: Remove obsolete macro.
+       * m4/glob.m4 (gl_GLOB_SUBSTITUTE): Remove macro.
+
+2011-05-08  Paul Eggert  <eggert@cs.ucla.edu>
+
+       intprops: Sun C 5.11 supports __typeof__
+       * lib/intprops.h (_GL_HAVE___TYPEOF__): New macro, which is set
+       for either GCC 2 or later, as before, or for Sun C 5.11 or later,
+       which is new.
+       (_GL_SIGNED_TYPE_OR_EXPR): Use it.
+
+       intprops: switch to usual gnulib indenting and naming
+       * lib/intprops.h (_GL_INTPROPS_H): Rename from GL_INTPROPS_H.
+       (_GL_SIGNED_TYPE_OR_EXPR): Rename from signed_type_or_expr__.
+
+       * tests/test-inttostr.c (IS_TIGHT): Adjust to above renaming.
+
+2011-05-08  Jim Meyering  <meyering@redhat.com>
+
+       maint.mk: suppress "Entering/Leaving directory" diag in announcement
+       * top/maint.mk (release-prep): Use make's --no-print-directory
+       option when generating the announcement.  This eliminates the
+       pesky "make[2]: Entering/Leaving directory" diagnostics in the
+       generated announcement template.
+
+2011-05-08  Bruno Haible  <bruno@clisp.org>
+
+       tzset: Fix gettimeofday wrapper on Solaris 2.6.
+       * m4/tzset.m4 (gl_FUNC_TZSET_CLOBBER): When invoking
+       gl_GETTIMEOFDAY_REPLACE_LOCALTIME, also set REPLACE_GETTIMEOFDAY.
+
+2011-05-07  Paul Eggert  <eggert@cs.ucla.edu>
+
+       ignore-value, verify: Omit include files from lib_SOURCES.
+       * modules/ignore-value, modules/verify (Makefile.am):
+       Don't put ignore-value.h, or verify.h, into lib_SOURCES, as
+       that leads Automake to duplicate use of am__objects_... variables
+       in Makefile.in.  See
+       <http://lists.gnu.org/archive/html/emacs-devel/2011-05/msg00257.html>.
+
+2011-05-07  Bruno Haible  <bruno@clisp.org>
+
+       fclose: Simplify autoconf macro.
+       * m4/fclose.m4 (gl_FUNC_FCLOSE): Assume gl_FUNC_FFLUSH_STDIN is
+       defined.
+
+2011-05-07  Bruno Haible  <bruno@clisp.org>
+
+       canonicalize-lgpl: Fix autoconf macro ordering bug.
+       * m4/canonicalize.m4 (gl_CANONICALIZE_LGPL): Require
+       gl_STDLIB_H_DEFAULTS.
+
+2011-05-06  Eric Blake  <eblake@redhat.com>
+
+       maintainer-makefile: make sc_po_check easier to tune
+       * top/maint.mk (sc_po_check): Allow overriding which non-VC files
+       to probe for strings, such as an alternate location for gnulib.
+
+       fclose: guarantee behavior on seekable stdin
+       * modules/fclose (Depends-on): Add fflush.
+       * doc/posix-functions/fclose.texi (fclose): Document this.
+       * tests/test-fclose.c (main): Make test for this unconditional.
+
+2011-05-06  Bruno Haible  <bruno@clisp.org>
+
+       fflush, fpurge: Relicense under LGPLv2+.
+       * modules/fflush (License): Change from LGPLv3+ to LGPLv2+.
+       * modules/fpurge (License): Likewise.
+       With permission from Eric Blake and Jim Meyering.
+       Suggested by Eric Blake.
+
+2011-05-06  Karl Berry  <karl@gnu.org>
+
+       * MODULES.html.sh (func_all_modules): remove exit.
+
+2011-05-06  Jim Meyering  <meyering@redhat.com>
+
+       maint.mk: use info-gnu@ as the default only for a stable release
+       * top/maint.mk: Don't default to info-gnu for alpha or beta releases.
+       For those, just use $(PACKAGE_BUGREPORT), in which case we don't have
+       to set the Mail-Followup-To header.  Prompted by Reuben Thomas in
+       http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/26488
+
+2011-05-05  Paul Eggert  <eggert@cs.ucla.edu>
+
+       assert-h: new module, which supports C1X-style static_assert
+       * lib/assert.in.h, m4/assert_h.m4, modules/assert-h: New files.
+       * lib/verify.h: Revamp so that this can be copied into assert.h,
+       while retaining the ability to use it standalone as before.
+       Rename private identifiers so as not to encroach on the
+       standard C namespace, since this is now used by assert.h.
+       (_GL_VERIFY_TYPE): New macro, factoring out differing parts of
+       the old verify_true.
+       (_GL_VERIFY_TRUE): New macro, with much of the contents of
+       the old verify_true.  Use _GL_VERIFY_TYPE.
+       (_GL_VERIFY): New macro, with much of the contents of the old verify.
+       (static_assert): New macro, if _GL_STATIC_ASSERT_H
+       is defined and static_assert is not; _GL_STATIC_ASSERT_H is
+       defined when this file is copied into the replacement assert.h.
+       (_Static_assert): New macro, if _GL_STATIC_ASSERT_H is defined
+       and _Static_assert is not built in.
+       (verify_true, verify): Define only if _GL_STATIC_ASSERT_H is not
+       defined, and use the new macros mentioned above.
+       * doc/posix-headers/assert.texi: Document this.
+
+2011-05-05  Bruno Haible  <bruno@clisp.org>
+
+       fclose, fflush: Respect rules for use of AC_LIBOBJ.
+       * m4/fflush.m4 (gl_FUNC_FFLUSH): Don't invoke gl_REPLACE_FCLOSE.
+       * m4/fclose.m4 (gl_FUNC_FCLOSE): Invoke gl_FUNC_FFLUSH_STDIN and
+       gl_REPLACE_FCLOSE here.
+       * modules/fflush (Depends-on): Remove fclose.
+       * doc/posix-functions/fclose.texi: Mention module 'fflush' only in
+       combination with module 'fclose'.
+
+2011-05-05  Bruno Haible  <bruno@clisp.org>
+
+       fflush, fseeko: Respect rules for use of AC_LIBOBJ.
+       * m4/fflush.m4 (gl_FUNC_FFLUSH_STDIN): New macro, extracted from
+       gl_FUNC_FFLUSH.
+       (gl_FUNC_FFLUSH): Use it.
+       (gl_REPLACE_FFLUSH): Don't invoke gl_REPLACE_FSEEKO.
+       * m4/fseeko.m4 (gl_FUNC_FSEEKO): Invoke gl_FUNC_FFLUSH_STDIN and
+       gl_REPLACE_FSEEKO here.
+
+2011-05-05  Bruno Haible  <bruno@clisp.org>
+
+       tzset: Relicense under LGPL.
+       * modules/tzset (License): Change to LGPL.
+       No agreement needed; it's a no-op.
+
+       strtoimax, strtoumax: Relicense under LGPL.
+       * modules/strtoimax (License): Change to LGPL.
+       * modules/strtoumax (License): Likewise.
+       With permission from Jim Meyering, Paul Eggert:
+       <http://lists.gnu.org/archive/html/bug-gnulib/2011-05/msg00124.html>
+       <http://lists.gnu.org/archive/html/bug-gnulib/2011-05/msg00109.html>
+
+       getgroups: Relicense under LGPL.
+       * modules/getgroups (License): Change to LGPL.
+       With permission from Jim Meyering, Paul Eggert, Eric Blake:
+       <http://lists.gnu.org/archive/html/bug-gnulib/2011-05/msg00111.html>
+       <http://lists.gnu.org/archive/html/bug-gnulib/2011-05/msg00148.html>
+       <http://lists.gnu.org/archive/html/bug-gnulib/2011-05/msg00138.html>
+
+       nanosleep: Relicense under LGPL.
+       * modules/nanosleep (License): Change to LGPL.
+       With permission from Jim Meyering, Paul Eggert, Eric Blake, Bruno
+       Haible:
+       <http://lists.gnu.org/archive/html/bug-gnulib/2011-05/msg00111.html>
+       <http://lists.gnu.org/archive/html/bug-gnulib/2011-05/msg00148.html>
+       <http://lists.gnu.org/archive/html/bug-gnulib/2011-05/msg00138.html>
+       <http://lists.gnu.org/archive/html/bug-gnulib/2011-05/msg00131.html>
+
+       futimens: Relicense under LGPL.
+       * modules/futimens (License): Change to LGPL.
+       With permission from Eric Blake:
+       <http://lists.gnu.org/archive/html/bug-gnulib/2011-05/msg00138.html>
+
+       fflush: Relicense under LGPL.
+       * modules/fflush (License): Change to LGPL.
+       With permission from Eric Blake, Bruno Haible, Jim Meyering:
+       <http://lists.gnu.org/archive/html/bug-gnulib/2011-05/msg00138.html>
+       <http://lists.gnu.org/archive/html/bug-gnulib/2011-05/msg00131.html>
+       <http://lists.gnu.org/archive/html/bug-gnulib/2011-05/msg00133.html>
+
+       tmpfile: Relicense under LGPL.
+       * modules/tmpfile (License): Change to LGPL.
+       With permission from Ben Pfaff:
+       <http://lists.gnu.org/archive/html/bug-gnulib/2010-12/msg00185.html>
+
+       isfinite: Relicense under LGPL.
+       * modules/isfinite (License): Change to LGPL.
+       With permission from Ben Pfaff, Bruno Haible:
+       <http://lists.gnu.org/archive/html/bug-gnulib/2010-12/msg00185.html>
+       <http://lists.gnu.org/archive/html/bug-gnulib/2011-05/msg00130.html>
+
+       acosl..tanl: Relicense under LGPL.
+       * modules/acosl (License): Change to LGPL.
+       * modules/asinl (License): Likewise.
+       * modules/atanl (License): Likewise.
+       * modules/cosl (License): Likewise.
+       * modules/expl (License): Likewise.
+       * modules/logl (License): Likewise.
+       * modules/sinl (License): Likewise.
+       * modules/sqrtl (License): Likewise.
+       * modules/tanl (License): Likewise.
+       Source code originally from glibc and Paolo Bonzini. Agreements:
+       <http://lists.gnu.org/archive/html/bug-gnulib/2011-05/msg00137.html>
+       <http://lists.gnu.org/archive/html/bug-gnulib/2011-05/msg00128.html>
+
 2011-05-05  Bruno Haible  <bruno@clisp.org>
 
        signal: Define sighandler_t.
 
        (x)memcoll: speedup when input is known to be NUL delimited
        * lib/memcoll.c: Include stdlib.
-       (memcoll0) New function.
-       (strcoll_loop) New function, refactored for use in both memcoll
+       (memcoll0): New function.
+       (strcoll_loop): New function, refactored for use in both memcoll
        and memcoll0.
-       * lib/memcoll.h: Add prototype for memcoll0.
-       * lib/xmemcoll.c: (xmemcoll0) New function.
-       (collate_error) New function, refactored for use in both xmemcoll
+       * lib/memcoll.h (memcoll0): Add prototype.
+       * lib/xmemcoll.c (xmemcoll0): New function.
+       (collate_error): New function, refactored for use in both xmemcoll
        and xmemcoll0.
-       * lib/xmemcoll.h: Add prototype for xmemcoll0.
+       * lib/xmemcoll.h (xmemcoll0): Add prototype.
        * m4/memcoll.m4: add inline invocation.
 
 2010-07-06  Pádraig Brady  <P@draigBrady.com>
 2010-06-08  Peter Simons  <simons@cryp.to>
 
        maint.mk: make the news-check rule more configurable
-       * top/maint.mk (news-check-lines-spec) New variable.
+       * top/maint.mk (news-check-lines-spec): New variable.
        (news-check): Use "sed -n 1,10p" in place of "head".
 
 2010-06-07  Jim Meyering  <meyering@redhat.com>
        * lib/pipe.c (create_pipe) [WIN32]: Likewise. Use fd_safer_noinherit
        instead of fd_safer.
        * tests/test-pipe.c: Include <windows.h>.
-       (child_main) [WIN32]: Test the handle of STDERR_FILENO, not its close() result.
+       (child_main) [WIN32]: Test the handle of STDERR_FILENO, not its close()
+       result.
 
        * tests/test-pipe.c (child_main, parent_main): New functions, extracted
        from main.
        (signbit): New macro.
        * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize GNULIB_SIGNBIT and
        REPLACE_SIGNBIT.
-       * modules/math (Makefile.am) Substibute also GNULIB_SIGNBIT and
+       * modules/math (Makefile.am): Substibute also GNULIB_SIGNBIT and
        REPLACE_FREXPL into math.h.
 
 2007-04-06  Bruno Haible  <bruno@clisp.org>
        * lib/math_.h (frexpl): Define as a replacement macro if REPLACE_FREXPL
        is set. Don't provide a prototype if REPLACE_FREXPL is not set.
        * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize REPLACE_FREXPL.
-       * modules/math (Makefile.am) Substibute also REPLACE_FREXPL into math.h.
+       * modules/math (Makefile.am): Substibute also REPLACE_FREXPL into
+       math.h.
 
 2007-03-25  Bruno Haible  <bruno@clisp.org>
 
        * modules/tempname (Depends-on): Likewise.
        * modules/utimens (Depends-on): Likewise.
        * modules/gettimeofday (Files): Remove lib/gettimeofday.h.
-       (Include:) Change back to <sys/time.h>.
-       (Maintainer:) Add self.
+       (Include): Change back to <sys/time.h>.
+       (Maintainer): Add self.
        * modules/sys_time: New file.
        * modules/tempname (Depends-on): Add gettimeofday.
        * tests/test-gettimeofday.c: Include <sys/time.h>
        * m4/ulonglong.m4 (AC_TYPE_UNSIGNED_LONG_LONG_INT): Likewise.
        * m4/longlong.m4 (gl_AC_TYPE_LONG_LONG): Now just call
        AC_TYPE_LONG_LONG_INT.  This macro is obsolete and will go soon.
-       * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG) Likewise.
+       * m4/ulonglong.m4 (gl_AC_TYPE_UNSIGNED_LONG_LONG): Likewise.
 
        * m4/stdint.m4 (gl_STDINT_H): Rewrite to accommodate stdint_.h
        changes.  Make 2.59 a prerequisite.  Check and substitute for
 2005-04-21  Oskar Liljeblad  <oskar@osk.mine.nu>
 
        * gnulib-tool (Options): Add -s for --symlink/--symbolic.
-       (func_ln_if_changed) Remove forcibly for no error message
+       (func_ln_if_changed): Remove forcibly for no error message
        in case file does not exist.
 
 2005-04-19  Simon Josefsson  <jas@extundo.com>
        * lib/gethrxtime.h, lib/gethrxtime.c, lib/xtime.h: New files.
        * lib/timespec.h (gettime): Return void, since it always
        succeeds now.  All uses changed.
-       * lib/gettime.c (gettime) Likewise.
+       * lib/gettime.c (gettime): Likewise.
        [HAVE_NANOTIME]: Prefer nanotime.
        Assume gettimeofday succeeds, as POSIX requires.
        Assime time () succeeds, since other code already does.
        * lib/full-write.c: Correct credits, as cccp.c no longer
        exists and anyway it was so heavily changed from the old cccp
        code as to be unrecognizable.  Include full-write.h.
-       (full_write) Return size_t, with short writes meaning failure.
+       (full_write): Return size_t, with short writes meaning failure.
        All callers changed.  This fixes a bug with large buffers
        on 64-bit hosts.
        * lib/utime.c: Include full-write.h.