extensions: port better to MINUX 3, HP-UX, autoheader 2.62
[gnulib.git] / ChangeLog
index 67ef27d..e3fb3bd 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
+2013-02-06  Paul Eggert  <eggert@cs.ucla.edu>
+
+       extensions: port better to MINUX 3, HP-UX, autoheader 2.62
+       Some of these changes are merged in from git Autoconf.
+       * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS):
+       When deciding whether to define _XOPEN_SOURCE, inspect the
+       preprocessor macro __hpux instead of the more-heavyweight
+       operation of requiring AC_CANONICAL_HOST.  Define _NETBSD_HOST on
+       MINUX, for MINUX 3.  Use USE_SYSTEM_EXTENSIONS, not __EXTENSIONS__,
+       as the key for __EXTENSIONS__.
+
+       unistd: avoid namespace pollution on non-glibc systems
+       * lib/unistd.in.h: #define __need_getopt before including <getopt.h>.
+       This avoids namespace pollution on non-glibc systems, by causing
+       gnulib unistd.h to behave more like glibc unistd.h.  I also hope
+       that this fixes a bug on FreeBSD, reported by Mats Erik Andersson in
+       <http://lists.gnu.org/archive/html/bug-gnulib/2013-02/msg00027.html>.
+
+2013-02-04  Paul Eggert  <eggert@cs.ucla.edu>
+
+       tmpdir: use secure_getenv
+       * lib/tmpdir.c (__secure_getenv) [!LIBC]:
+       Define to secure_getenv, not getenv.
+       * m4/tmpdir.m4 (gt_TMPDIR): Don't check for __secure_getenv,
+       as that's now secure_getenv's job.
+       * modules/tmpdir (Depends-on): Add secure_getenv.
+
+       tempname: use secure_getenv
+       * lib/tempname.c (__secure_getenv) [!_LIBC]:
+       Define to secure_getenv, not getenv.
+       * modules/tempname (Depends-on):
+       Add secure_getenv.
+
+       secure_getenv: new module
+       * MODULES.html.sh (Extra functions based on ANSI C 89):
+       Add secure_getenv.
+       * doc/glibc-functions/secure_getenv.texi: New file.
+       * doc/gnulib.texi: Include it.
+       * lib/secure_getenv.c, m4/secure_getenv.m4, modules/secure_getenv:
+       New files.
+       * lib/stdlib.in.h (secure_getenv): New decl.
+       * m4/stdlib_h.m4 (gl_STDLIB_H, gl_STDLIB_H_DEFAULTS):
+       * modules/stdlib (stdlib.h):
+       Add secure_getenv checks.
+
+2013-02-03  Paul Eggert  <eggert@cs.ucla.edu>
+
+       getcwd: break fdopendir + save_cwd recursive loop (Bug#13516)
+       Reported for OS X 10.8.2 by Assaf Gordon in
+       <http://bugs.gnu.org/13516>.
+       * lib/getcwd.c (HAVE_OPENAT_SUPPORT): Do not define if
+       !HAVE_OPENAT && !HAVE_FDOPENDIR.
+       * m4/getcwd-abort-bug.m4: Reformat to match test-getcwd.c
+       so that they can be kept in sync more easily.  Avoid PATH_MAX
+       test on the Hurd.  Sync from test-getcwd.c for errno tests after
+       mkdir or chdir failure.
+       * tests/test-getcwd.c (HAVE_OPENAT_SUPPORT): New macro, from
+       lib/getcwd.c.
+       (test_abort_bug): Do not test for the deep directory bug unless we
+       have openat support.  Avoid PATH_MAX test on the Hurd.
+
+       regex-tests, regex: fix bug: memset undeclared
+       * tests/test-regex.c: Don't include regex.h twice.  Include
+       string.h, to declare memset.  Christensen's report also mentioned
+       this issue.
+       * m4/regex.m4 (gl_REGEX): Keep test program more in sync with
+       test-regex.c, to avoid future problems like this.  Remove
+       AC_INCLUDES_DEFAULT.  Include <string.h>.  Don't include <regex.h>
+       twice.
+
+       regex-tests: fix link errors on older Solaris
+       These need to link with @LIBINTL@ to get libintl_gettext.
+       Problem reported by Tom G. Christensen in
+       <http://lists.gnu.org/archive/html/bug-gnulib/2013-02/msg00003.html>.
+       * modules/regex-tests (test_regex_LDADD): New macro.
+
+2013-01-31  Paul Eggert  <eggert@cs.ucla.edu>
+
+       regex-tests: new module
+       * modules/regex-tests, tests/test-regex.c: New files.
+
+       regex: fix off-by-one error in configure test
+       * m4/regex.m4 (gl_REGEX): Test should return 21, not 20.
+
+2013-01-31  Eric Blake  <eblake@redhat.com>
+
+       regex: avoid infinite configure test
+       * m4/regex.m4 (gl_REGEX): Add an alarm escape hatch.
+
+2013-01-31  Reuben Thomas  <rrt@sc3d.org>
+
+       openpty: fix bug where HAVE_OPENPTY wasn't defined
+       See the thread starting at:
+       http://lists.gnu.org/archive/html/bug-gnulib/2013-01/msg00185.html
+       * m4/pty.m4 (gl_FUNC_OPENPTY): Define HAVE_OPENPTY when the
+       openpty function exists, not merely when we intend to replace it.
+
+2013-01-30  Paul Eggert  <eggert@cs.ucla.edu>
+
+       sys_time: port to Solaris 2.6
+       There is a circularity problem on Solaris 2.6, where <time.h> includes
+       <sys/time.h> for struct timespec.  The include nesting is gnulib
+       <time.h>, system <time.h>, gnulib <sys/time.h>, system
+       <sys/time.h>, gnulib <sys/types.h>, system <sys/types.h>, gnulib
+       <sys/select.h>, gnulib <signal.h>, system <sys/signal.h>, system
+       <sys/siginfo.h>; the last, innermost file needs struct
+       timestruc_t, which is defined in <sys/time.h>, which has not been
+       fully parsed.  Problem reported by Tom G. Christensen in
+       <http://lists.gnu.org/archive/html/bug-gnulib/2013-01/msg00113.html>.
+       * lib/sys_select.in.h: Treat Solaris 2.6's problem with
+       <sys/time.h> and <sys/types.h> like OSF/1's similar problem.
+       * lib/sys_time.in.h: Redo to resemble sys_select.in.h, which
+       uses split double-inclusion guards.
+
+2013-01-29  Paul Eggert  <eggert@cs.ucla.edu>
+
+       regex: test for buffer overrun
+       * m4/regex.m4 (gl_REGEX): Add test case, by Andreas Schwab,
+       for the just-fixed regex bug.
+
+2013-01-29  Andreas Schwab  <schwab@suse.de>
+
+       regex: fix buffer overrun in regexp matcher
+       * lib/regexec.c (extend_buffers): Add parameter min_len.
+       (check_matching): Pass minimum needed length.
+       (clean_state_log_if_needed): Likewise.
+       (get_subexp): Likewise.
+
+2013-01-28  Pádraig Brady  <P@draigBrady.com>
+
+       mountlist: don't consider "devtmpfs" as dummy
+       * lib/mountlist.c (ME_DUMMY_0): Remove "devtmpfs"
+       as there is storage associcated with it.
+
+2013-01-27  Paul Eggert  <eggert@cs.ucla.edu>
+
+       futimens-tests, utimens-tests: Depend on gettext.
+       This works around a problem introduced in my 2013-01-12 patch,
+       which added @LIBINTL@ to these modules.
+       * modules/futimens-tests (Depends-on):
+       * modules/utimens-tests (Depends-on): Add gettext.
+
+2013-01-26  Eric Blake  <eblake@redhat.com>
+
+       test-getpeername: fix typo
+       * tests/test-getpeername.c: Fix typo introduced in fd cleanup.
+
+2013-01-20  Bernhard Voelker  <mail@bernhard-voelker.de>
+
+       bootstrap: remove the need for a sorted .gitignore file
+       * build-aux/bootstrap (insert_sorted_if_absent): Adjust and
+       rename to insert_if_absent(), so that we don't need or generate
+       a sorted .gitignore file.  We do require a .gitignore with no
+       existing duplicate entries and enforce that.
+       (sort_patterns): Remove this function as we now use the simpler
+       technigue of inserting blacklist entries at the top of the file,
+       assuming gnulib won't be inserting !whitelist entries.
+
+2013-01-23  Paul Eggert  <eggert@cs.ucla.edu>
+
+       readlinkat: don't depend on gl_FUNC_OPENAT
+       * m4/readlinkat.m4 (gl_FUNC_READLINKAT): Don't require gl_FUNC_OPENAT.
+       Perhaps a similar change needs to be made for linkat.m4, mkfifoat.m4,
+       renameat.m4, symlinkat.m4; but one thing at a time.
+
+       statat: new module, split out from fstatat
+       GNU Emacs needs the POSIX-specified fstatat, but not the
+       gnulib-specified statat and lstat.  Split the latter two into a
+       new module 'statat'.
+       * lib/openat.h: Depend on GNULIB_STATAT, not GNULIB_FSTATAT.
+       * lib/openat.h, lib/statat.c (STATAT_INLINE):
+       Rename from FSTATAT_INLINE. All uses changed.
+       * modules/fstatat (Files): Remove lib/statat.c.
+       (gl_MODULE_INDICATOR([fstatat])): Remove.
+       (lib_SOURCES): Remove.
+       (Maintainer): Add self.
+       * modules/statat, modules/statat-tests, tests/test-statat.c: New files.
+       * tests/test-fstatat.c (BASE): Don't define if already defined.
+       (do_stat, do_lstat) [!TEST_STATAT]: Test fstatat instead.
+
+2013-01-22  Paul Eggert  <eggert@cs.ucla.edu>
+
+       tests: don't assume fd 99 is closed
+       * tests/test-accept.c, tests/test-accept4.c, tests/test-bind.c:
+       * tests/test-close.c, tests/test-connect.c, tests/test-dprintf.c:
+       * tests/test-dup.c, tests/test-dup2.c, tests/test-faccessat.c:
+       * tests/test-fchdir.c, tests/test-fchmod.c, tests/test-fchmodat.c:
+       * tests/test-fchown.c, tests/test-fchownat.c, tests/test-fclose.c:
+       * tests/test-fdatasync.c, tests/test-fdopen.c, tests/test-fdopendir.c:
+       * tests/test-fflush.c, tests/test-fgetc.c, tests/test-fputc.c:
+       * tests/test-fread.c, tests/test-freopen.c, tests/test-fseeko4.c:
+       * tests/test-fstat.c, tests/test-fstatat.c, tests/test-fsync.c:
+       * tests/test-ftello4.c, tests/test-ftruncate.c, tests/test-futimens.h:
+       * tests/test-fwrite.c, tests/test-getpeername.c:
+       * tests/test-getsockname.c, tests/test-getsockopt.c:
+       * tests/test-grantpt.c, tests/test-ioctl.c, tests/test-isatty.c:
+       * tests/test-linkat.c, tests/test-listen.c, tests/test-lseek.c:
+       * tests/test-mkdirat.c, tests/test-mkfifoat.c, tests/test-openat.c:
+       * tests/test-pread.c, tests/test-pwrite.c, tests/test-read.c:
+       * tests/test-readlinkat.c, tests/test-recv.c, tests/test-recvfrom.c:
+       * tests/test-renameat.c, tests/test-select.h, tests/test-send.c:
+       * tests/test-sendto.c, tests/test-setsockopt.c, tests/test-shutdown.c:
+       * tests/test-symlinkat.c, tests/test-ttyname_r.c:
+       * tests/test-unlinkat.c, tests/test-unlockpt.c:
+       * tests/test-utimensat.c, tests/test-vdprintf.c, tests/test-write.c:
+       Close file descriptor 99, instead of assuming it's already closed.
+
+2013-01-21  Paul Eggert  <eggert@cs.ucla.edu>
+
+       stpncpy: port to OS X 10.8
+       * lib/stpncpy.c (__stpncpy): Parenthesize name when defining function.
+       Problem reported by Assaf Gordon in <http://bugs.gnu.org/13495>.
+
+2013-01-16  Paul Eggert  <eggert@cs.ucla.edu>
+
+       unistd: port to recent mingw
+       * lib/unistd.in.h: Remove special invocation convention for mingw,
+       which breaks for the latest mingw version.  See John W. Eaton in
+       <http://lists.gnu.org/archive/html/bug-gnulib/2013-01/msg00100.html>.
+
+       largefile: port better to Mac OS X 10.5
+       This patch is backported from Autoconf git.
+       * m4/largefile.m4 (AC_SYS_LARGEFILE): Use AC_DEFINE, not
+       AH_VERBATIM, to define _DARWIN_USE_64_BIT_INODE, to avoid problems
+       with ino_t size being different for configuration time versus
+       build/run time.  Problem reported by PHO in
+       <http://lists.gnu.org/archive/html/bug-autoconf/2013-01/msg00040.html>.
+
+2013-01-15  Paul Eggert  <eggert@cs.ucla.edu>
+
+       doc: clarify -Werror
+       * doc/warnings.texi (warnings): -Werror is not always a bad idea;
+       clarify that it's intended for developers, not for ordinary builds,
+       and mention --enable-gcc-warnings as one possible use.
+
+2013-01-15  Andoni Morales Alastruey  <ylatuya@gmail.com>  (tiny change)
+
+       stdint: fix build with Android's Bionic fox x86
+       * lib/stdint.in.h: fix check to test if included-fixed/sys/types.h
+       was already included as _SSIZE_T_DEFINED_ might also be defined
+       in include/machine/_types.h, which is included by stdio.h
+
+2013-01-13  Paul Eggert  <eggert@cs.ucla.edu>
+
+       net_if-tests: port to Solaris 7 + GCC 3.4.6
+       Problem reported by Tom G. Christensen in
+       <http://lists.gnu.org/archive/html/bug-gnulib/2013-01/msg00091.html>.
+       * tests/test-net_if.c (ni): Move to next the code that uses it,
+       so that it's declared only if needed.
+
+2013-01-12  Paul Eggert  <eggert@cs.ucla.edu>
+
+       net_if-tests: port to older Solaris
+       Problem reported by Tom G. Christensen in
+       <http://lists.gnu.org/archive/html/bug-gnulib/2013-01/msg00086.html>.
+       * modules/net_if-tests (NET_IF_LIB): New substitution.
+       (test_net_if_LDADD): New makefile macro, which uses NET_IF_LIB.
+       (HAVE_IF_NAMEINDEX): New C macro.
+       * tests/test-net_if.c: Bypass most of the test if !HAVE_IF_NAMEINDEX.
+
+       system-quote-tests: port to older Solaris
+       Problem reported by Tom G. Christensen in
+       <http://lists.gnu.org/archive/html/bug-gnulib/2013-01/msg00086.html>.
+       * tests/test-system-quote-child.c (fopen, fread): Undef.
+
+       c-xvasprintf etc.: fix link errors on older Solaris
+       These need to link with @LIBINTL@ to get libintl_gettext.
+       Problem reported by Tom G. Christensen in
+       <http://lists.gnu.org/archive/html/bug-gnulib/2013-01/msg00086.html>.
+       * modules/c-xvasprintf-tests (test_c_xvasprintf_LDADD):
+       * modules/readtokens-tests (test_readtokens_LDADD): New macros.
+       * modules/futimens-tests (test_futimens_LDADD):
+       * modules/utimens-tests (test_utimens_LDADD): Add @LIBINTL@.
+
+2013-01-10  Paul Eggert  <eggert@cs.ucla.edu>
+
+       locale: port to Solaris 2.6 and 7 + GNU gettext
+       * lib/locale.in.h: Just include_next <locale.h> when
+       being invoked recursively.  This prevents problems on Solaris 2.6 and 7
+       when combining the localename module with GNU gettext 0.18.2.
+       Problem reported by Tom G. Christensen in
+       <http://lists.gnu.org/archive/html/bug-gnulib/2013-01/msg00084.html>.
+
+2013-01-09  Paul Eggert  <eggert@cs.ucla.edu>
+
+       stdlib: port to Solaris 2.6
+       Also, the code worked on Solaris 7 through 9 only by accident.
+       Problem reported by Tom G. Christensen in
+       <http://lists.gnu.org/archive/html/bug-gnulib/2013-01/msg00059.html>.
+       * lib/stdlib.in.h: If __need_system_stdlib_h is defined,
+       simply include the system stdlib.h.
+       * lib/getopt.in.h (__need_system_stdlib_h):
+       * lib/pthread.in.h (__need_system_stdlib_h):
+       * lib/unistd.in.h (__need_system_stdlib_h) [!__GLIBC__]:
+       Define when including <stdlib.h>, to avoid problems at least for
+       the pthread case on Solaris 2.6 and 7.  These .h files can get by
+       with the system stdlib.h.
+
+2013-01-06  Paul Eggert  <eggert@cs.ucla.edu>
+
+       doc: update main copyright year
+       * doc/gnulib.texi: Update copyright date.
+
+       doc: improve ISO 8601 discussion
+       * doc/parse-datetime.texi (Combined date and time of day items):
+       Specify more carefully what formats are supported and what is
+       done with excess precision.
+
+2013-01-05  Paul Eggert  <eggert@cs.ucla.edu>
+
+       doc: avoid small caps
+       * doc/parse-datetime.texi, doc/regex.texi: Don't use small caps;
+       they're more trouble than they're worth.  Suggested by Karl Berry
+       in <http://bugs.gnu.org/13360>.
+
+       regex: conform to strict C
+       * lib/regcomp.c (parse_bracket_exp): Add cast to conform to strict C.
+       From Aharon Robbins.
+
+       gnulib-tool: fix incompatibility with autopoint 0.18.2
+       * gnulib-tool: Don't indent AM_GNU_GETTEXT_VERSION line.
+       Problem reported by Tom G. Christensen in
+       <http://lists.gnu.org/archive/html/bug-gnulib/2013-01/msg00053.html>.
+
+2013-01-04  Paul Eggert  <eggert@cs.ucla.edu>
+
+       fprintftime: bring back and reword fwrite comment
+       * lib/strftime.c (cpy) [FPRINTFTIME]: Re-add reworded comment.
+
+       stdio: remove now-unnecessary stdio.c
+       Since stdio.in.h no longer uses inline functions, we no longer
+       need to compile the extern versions.
+       * lib/stdio.c: Remove.
+       * modules/stdio (Files): Remove lib/stdio.c.
+       (lib_SOURCES): Remove.
+
+       unicodeio: depend on stdio, not ignore-value
+       * lib/unicodeio.c: Do not include ignore-value.h.
+       (fwrite_success_callback): Use plain fwrite, not ignore_value + fwrite.
+       * modules/unicodeio (Depends-on): Depend on stdio, not ignore-value.
+
+       fprintftime: depend on stdio, not ignore-value
+       * lib/strftime.c [FPRINTFTIME]: Do not include ignore-value.h.
+       (cpy) [FPRINTFTIME]: Use plain fwrite, not ignore_value of fwrite,
+       since the stdio module arranges to silence that warning now.
+       * modules/fprintftime (Depends-on): Depend on stdio, not ignore-value.
+
+2012-10-04  Simon Josefsson  <simon@josefsson.org>
+
+       stdint-tests: Fix expanded-before-required-warning.
+       * modules/stdint-tests (Depends-on): Use AC_REQUIRE.
+
+2013-01-03  Paul Eggert  <eggert@cs.ucla.edu>
+
+       fwrite: silence __wur only for older glibc versions
+       * lib/stdio.in.h (fwrite): Limit workaround to glibc 2.4 through 2.15.
+       This will help us remove this workaround some time in the far future.
+
+2013-01-03  Eric Blake  <eblake@redhat.com>
+
+       fwrite: silence __wur without using inline
+       * lib/stdio.in.h (fwrite): Limit warn_unused_result workaround to
+       just gcc, and in a way that avoids inline issues.
+       * modules/stdio (Depends-on): Drop extern-inline.
+
+2013-01-03  Jim Meyering  <jim@meyering.net>
+
+       update-copyright: avoid copyright notice date corruption
+       Given a sequence of copyright year numbers in which the final
+       one was a two-digit number that happened to be a substring of
+       a preceding four-digit year number, we would mistakenly update
+       the substring (from two- to four-digit) rather than the two-digit
+       number at the end, which, combined with the addition of the current
+       4-digit year number would yield two 5-digit year numbers, e.g.,
+       here, it would convert the first "99" to "1999, 2013" rather than
+       the final one:
+         1991, 99
+         11999, 20131, 1999
+       * build-aux/update-copyright: Tighten a regexp.
+       * tests/test-update-copyright.sh: Add a test case to trigger the bug.
+       Reported by Joseph Myers in
+       http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/32281
+
+2013-01-01  Paul Eggert  <eggert@cs.ucla.edu>
+
+       regex: omit needless signed-pointer casts
+       * lib/regcomp.c (build_charclass, build_charclass_op):
+       Use char *, not unsigned char *, for class name and extra.
+       The char values are always nonnegative so there's no need to
+       insist on unsigned char * here, and using char * removes the need
+       for casts.  Reported by Aharon Robbins in
+       <http://sourceware.org/ml/libc-alpha/2012-12/msg00456.html>.
+
+       regex: support Gawk, which never uses alloca
+       * lib/regex_internal.h [!_LIBC && !HAVE_ALLOCA]:
+       Do not include in this case.  Gawk doesn't supply a substitute
+       alloca.h and doesn't need one.
+
+       regex: port __libc_lock_define usage to C89
+       * lib/regex_internal.h (__libc_lock_define) [!_LIBC]: Remove.
+       (struct re_dfa_t): Use #ifdef instead.  '__libc_lock_define (, lock)'
+       does not conform to C89, as it has an empty macro argument.
+       Reported by Aharon Robbins in
+       <http://sourceware.org/ml/libc-alpha/2012-12/msg00456.html>.
+
+2013-01-01  Eric Blake  <eblake@redhat.com>
+
+       maint: update all copyright year number ranges
+       Run "make update-copyright".
+
+       version-etc: bump copyright year reported in --version
+       * lib/version-etc.c (COPYRIGHT_YEAR): Update to 2013.
+
+2012-12-31  Eric Blake  <eblake@redhat.com>
+
+       sigprocmask-tests: skip test if pid is unexpectedly large
+       * tests/test-sigprocmask.c (main): Add range check.
+
+       git-version-gen: avoid test -z portability glitch
+       * build-aux/git-version-gen: Prefer portable test spelling, since
+       git-version-gen is run on more than just developer machines.
+
+2012-12-31  Peter Rosin  <peda@lysator.liu.se>  (tiny change)
+
+       git-version-gen: add --fallback option to use if git is not present
+       * build-aux/git-version-gen: Add support for the new option --fallback,
+       which comes into play when there is no $tarball_version_file and
+       git is not working.
+       (scriptversion): Update.
+
+       maint.mk: handle missing git with more grace
+       * top/maint.mk (no-submodule-changes, public-submodule-commit):
+       Quietly proceed if git is not present.
+
+2012-12-31  Eric Blake  <eblake@redhat.com>
+
+       dup2: work around cygwin bug
+       * m4/dup2.m4 (gl_FUNC_DUP2): Flush out cygwin core dump.
+       * lib/dup2.c (rpl_dup2): Work around it.
+       * doc/posix-functions/dup2.texi (dup2): Document it.
+
+2012-12-30  Paul Eggert  <eggert@cs.ucla.edu>
+
+       regex: remove unnecessary dependency on localcharset.h
+       * lib/regex_internal.h [!_LIBC]: Don't include localcharset.h;
+       hasn't been needed for years.
+       * modules/regex (Depends-on): Remove localcharset.
+
+       regex: revert single-byte change
+       * lib/regexec.c (check_node_accept_bytes): Revert previous change
+       to this function.  This was alredy fixed in a different way, at
+       bdb56bacd57070eced9998569ffe3f3c37ef5964 in the glibc git; see
+       <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=510219> and
+       <http://sourceware.org/bugzilla/show_bug.cgi?id=9697>.
+
+       regex: simplify based on Gawk version
+       * lib/regex_internal.c (re_dfa_add_node): Simplify.
+       Reported by Aharon Robbins in
+       <http://sourceware.org/ml/libc-alpha/2012-12/msg00456.html>.
+
+2012-12-29  Paul Eggert  <eggert@cs.ucla.edu>
+
+       regex: check that pattern char is single-byte
+       Reported by Aharon Robbins in
+       <http://sourceware.org/ml/libc-alpha/2012-12/msg00456.html>.
+       * lib/regexec.c (check_node_accept_bytes):
+       Return 0 if the pattern string has a multibyte character here.
+
+       regex: implement rational ranges
+       Reported by Aharon Robbins in
+       <http://sourceware.org/ml/libc-alpha/2012-12/msg00456.html>.
+       * lib/regcomp.c (build_range_exp) [!_LIBC]:
+       * lib/regexec.c (check_node_accept_bytes) [!_LIBC]:
+       Implement rational ranges.
+
+       regex: avoid redefining __wctype
+       Reported by Aharon Robbins in
+       <http://sourceware.org/ml/libc-alpha/2012-12/msg00456.html>.
+       * lib/regex_internal.h (__wctype, __iswctype) [!_LIBC]:
+       #undef before defining.
+
+       regex: port to hosts where malloc (0) == NULL
+       Reported by Aharon Robbins in
+       <http://sourceware.org/ml/libc-alpha/2012-12/msg00456.html>.
+       * lib/regex_internal.c (re_node_set_alloc):
+       Don't assume that malloc (0) yields nonnull.
+       * lib/regex_internal.h (MALLOC_0_IS_NONNULL): New macro.
+       * m4/regex.m4 (gl_PREREQ_REGEX): Require gl_EEMALLOC.
+       * modules/regex (Files): Add m4/eealloc.m4.
+
+       regex: port to C89
+       Reported by Aharon Robbins in
+       <http://sourceware.org/ml/libc-alpha/2012-12/msg00456.html>.
+       * lib/regcomp.c (init_word_char): Declaration before statement.
+
+       regex: merge glibc changes
+       Also, copy the license wording from glibc.  This simplifies
+       merging changes.  gnulib-tool will change the wording to GPL as
+       appropriate, when importing it to other packages.  The only
+       glibc change made since the last merge, which needs merging, is:
+       2012-05-24 Andreas Schwab <schwab@linux-m68k.org>
+       * lib/regex_internal.h (gettext): Remove use of INTUSE.
+
+       * users.txt: Add Emacs.
+
+       doc: omit mention of version when not needed
+       * doc/gnulib-intro.texi (Portability and Application Code):
+       * doc/gnulib.texi (Brief Overview, Legacy Function Substitutes):
+       Don't mention particular dates or versions when not necessary, so
+       that the documentation won't go out of date so quickly.
+
+       * doc/intprops.texi (Integer Properties): Fix Texinfo typo.
+
+2012-12-28  Akim Demaille  <akim@lrde.epita.fr>
+
+       bootstrap: pass --force to autoreconf.
+       * build-aux/bootstrap (AUTORECONFFLAGS): New.
+       Add "--force" so that Automake's ylwrap and other such tools
+       be updated at each bootstrap invocation.
+       Use it.
+
+2012-12-27  Paul Eggert  <eggert@cs.ucla.edu>
+
+       argp: fix port of port new 'inline' approach to Sun C 5.12 + Solaris 10
+       The earlier patch forgot to update one of the #if conditions, causing
+       a problem on Debian testing i386 reported by Mats Erik Andersson
+       <http://lists.gnu.org/archive/html/bug-gnulib/2012-12/msg00124.html>.
+       * lib/argp-fmtstream.h (__argp_fmtstream_putc, argp_fmtstream_putc)
+       (__argp_fmtstream_puts, argp_fmtstream_puts)
+       (__argp_fmtstream_write, argp_fmtstream_write)
+       [!_LIBC && !__OPTIMIZE__]: Declare as ARGP_FS_EI, not as extern.
+
+       * doc/gnulib-readme.texi: Minor fixups.
+       (Portability guidelines): Modernize URLs.  Remove some repetition.
+       (Indent with spaces not TABs): Reword to avoid too-long lines.
+       Remove some '@ifset standalone' stuff that isn't used.
+
+       * doc/gnulib-readme.texi (Portability guidelines):
+       ctype.h, not ctime.h.
+
+       Correct name of POSIX.1-2001.
+       * doc/posix-functions/fgetc.texi (fgetc):
+       * doc/posix-functions/fgets.texi (fgets):
+       * doc/posix-functions/fread.texi (fread):
+       * doc/posix-functions/fscanf.texi (fscanf):
+       * doc/posix-functions/getc.texi (getc):
+       * doc/posix-functions/getchar.texi (getchar):
+       * doc/posix-functions/scanf.texi (scanf):
+       POSIX.1-2001, not POSIX-2001.
+
+       doc: move README into manual
+       * README: Move contents to new file doc/gnulib-readme.texi.
+       Replace with a one-line summary.
+       * doc/gnulib.texi (Brief Overview): New section,
+       with old intro preface.  Include gnulib-readme.texi for contents.
+       (Philosophy): Rename from "Introduction", since this
+       section no longer introduces the rest.  Write a new preface.
+       * doc/gnulib-readme.texi: New file, with the old contents of
+       README texinfo-ized.  This way, the README info appears
+       in the online and printed manual.
+
+2012-12-25  Ben Pfaff  <blp@cs.stanford.edu>
+
+       c-xvasprintf: Fix "implicit declaration of function" GCC warning.
+       * lib/c-xvasprintf.c: Add missing #include "c-vasprintf.h", for
+       c_vasprintf() prototype.
+
+2012-12-24  Ben Pfaff  <blp@cs.stanford.edu>
+
+       c-vasprintf: Fix "empty declaration" warning reported by GCC.
+       * lib/c-vasprintf.h: Remove stray semicolon.
+
+2012-12-23  Paul Eggert  <eggert@cs.ucla.edu>
+
+       gettext: avoid obsolete macro AM_PROG_MKDIR_P
+       It is obsolete and is planned to be removed from Automake 1.14; see
+       <http://lists.gnu.org/archive/html/automake/2012-12/msg00029.html>.
+       * build-aux/po/Makefile.in.in (install-data, install-data-yes)
+       (installdirs-data, installdirs-data-yes):
+       Use $(MKDIR_P), not $(mkdir_p).
+       * m4/intl.m4 (AM_INTL_SUBDIR):
+       * m4/po.m4 (AM_PO_SUBDIRS):
+       Require AC_PROG_MKDIR_P, not AM_PROG_MKDIR_P.
+
+2012-12-22  Paul Eggert  <eggert@cs.ucla.edu>
+
+       argp: port new 'inline' approach to Sun C 5.12 + Solaris 10
+       On this platform, we are not optimizing but we are using
+       the substitute for extern inlines, so compile as if
+       C99-style extern inline, or a substitute, is available.
+       * lib/argp-fmtstream.h (argp_fmtstream_set_lmargin)
+       (__argp_fmtstream_set_lmargin, argp_fmtstream_set_rmargin)
+       (__argp_fmtstream_set_rmargin, argp_fmtstream_set_wmargin)
+       (__argp_fmtstream_set_wmargin, argp_fmtstream_point)
+       (__argp_fmtstream_point) [!_LIBC && !__OPTIMIZE__]:
+       Declare as ARGP_FS_EI, not as extern.
+       * lib/argp.h (argp_usage, __argp_usage, _option_is_short)
+       (__option_is_short, _option_is_end, __option_is_end)
+       [!_LIBC && __USE_EXTERN_INLINES]:
+       Declare as ARGP_EI, not as extern.
+
+2012-12-21  Paul Eggert  <eggert@cs.ucla.edu>
+
+       AC_PROG_MKDIR_P: port workaround to pre-2.62 Autoconf
+       * m4/gnulib-common.m4 (AC_PROG_MKDIR_P, AC_C_RESTRICT):
+       Use m4_ifndef([AC_AUTOCONF_VERSION], ...), not
+       m4_if(m4_version_compare(m4_defn([AC_AUTOCONF_VERSION]),[2.62]),[-1],
+       ...), as the latter is fatal with older Autoconfs.
+       Problem reported and fix suggested by Eric Blake in thread starting at
+       <http://lists.gnu.org/archive/html/bug-gnulib/2012-12/msg00097.html>.
+
+2012-12-20  Paul Eggert  <eggert@cs.ucla.edu>
+
+       AC_PROG_MKDIR_P: don't workaround if not buggy
+       * m4/gnulib-common.m4 (AC_PROG_MKDIR_P):
+       Define only for Autoconf versions before 2.62.
+       (AC_C_RESTRICT): Use documented AC_AUTOCONF_VERSION, not
+       undocumented m4_PACKAGE_VERSION, for consistency with the
+       abovementioned change to AC_PROG_MKDIR_P.  This should suffice
+       since we're checking for 2.62 or later, and AC_AUTOCONF_VERSION
+       was introduced in 2.62.
+
+2012-12-15  Ben Pfaff  <blp@cs.stanford.edu>
+
+       New 'c-*printf' modules for formatted output in C locale.
+
+       New module 'c-vasnprintf'.
+       * modules/c-vasnprintf: New file.
+       * lib/c-vasnprintf.c: New file.
+       * lib/c-vasnprintf.h: New file.
+
+       New module 'c-snprintf'.
+        * modules/c-snprintf: New file.
+        * modules/c-snprintf-tests: New file.
+        * lib/c-snprintf.c: New file.
+        * lib/c-snprintf.h: New file.
+        * tests/test-c-snprintf.c: New file.
+        * tests/test-c-snprintf.sh: New file.
+
+       New module 'c-vsnprintf'.
+        * modules/c-vsnprintf: New file.
+        * modules/c-vsnprintf-tests: New file.
+        * lib/c-vsnprintf.c: New file.
+        * lib/c-vsnprintf.h: New file.
+        * tests/test-c-vsnprintf.c: New file.
+        * tests/test-c-vsnprintf.sh: New file.
+
+       New module 'c-vasprintf'.
+        * modules/c-vasprintf: New file.
+        * modules/c-vasprintf-tests: New file.
+        * lib/c-asprintf.c: New file.
+        * lib/c-vasprintf.c: New file.
+        * lib/c-vasprintf.h: New file.
+        * tests/test-c-vasprintf.c  +: New file.
+        * tests/test-c-vasprintf.sh: New file.
+
+       New module 'c-xvasprintf'.
+        * modules/c-xvasprintf: New file.
+        * modules/c-xvasprintf-tests: New file.
+        * lib/c-xasprintf.c: New file.
+        * lib/c-xvasprintf.c: New file.
+        * lib/c-xvasprintf.h: New file.
+        * tests/test-c-xvasprintf.c: New file.
+        * tests/test-c-xvasprintf.sh: New file.
+
+2012-12-18  Paul Eggert  <eggert@cs.ucla.edu>
+
+       argp: better 'inline'
+       Use extern-inline module to declare extern inline functions.
+       This avoids some bogus warning diagnostics.  Problem discovered
+       when modifying GNU tar to use the manywarnings module.
+       * lib/argp.h, lib/argp-xinl.c (ARGP_EI) [!_LIBC]:
+       * lib/argp-fmtstream.h, lib/argp-fs-xinl.c (ARGP_FS_EI) [!_LIBC]:
+       Define based on extern-inline.
+       * modules/argp (Depends-on): Add extern-inline.
+
+2012-12-17  Paul Eggert  <eggert@cs.ucla.edu>
+
+       filemode, sys_stat: Handle MPX files a la AIX.
+       * lib/filemode.c (ftypelet): Report 'm' for MPX files.
+       * lib/sys_stat.in.h (S_ISMPX): New macro.
+       * tests/test-sys_stat.c: Add tests for MPX files.
+
+2012-12-16  Alexandre Duret-Lutz  <adl@lrde.epita.fr>
+
+       x-to-1: honor $PERL
+       * build-aux/x-to-1.in: Run $HELP2MAN via $PERL so that the user gets
+       a chance to use his preferred version of Perl.  This is typically
+       required by Darwin users whose default /usr/bin/perl does not have all
+       the libraries required by help2man, and who need to use their MacPorts
+       installation of Perl instead.
+
+2012-12-16  Akim Demaille  <akim@lrde.epita.fr>
+
+       gnu-web-doc-update: add all the new files, even in new directories
+       See http://lists.gnu.org/archive/html/bug-gnulib/2012-12/msg00057.html
+       * build-aux/gnu-web-doc-update (--dry-run, $dryrun): New.
+       Use it.
+       (main): Don't use cvsutils to get the list of unknown files,
+       just add all the existing files and directories.
+
+2012-12-16  Akim Demaille  <akim@lrde.epita.fr>
+
+       gnu-web-doc-update: improve --help
+       * build-aux/gnu-web-doc-update: Move comments into --help.
+
+2012-12-07  Eric Wong  <normalperson@yhbt.net>
+
+       mountlist: recognize more "dummy" file systems
+       * lib/mountlist.c (ME_DUMMY_0):
+       Add these dummy FS names to the list:
+       - "debugfs" virtual filesystem for kernel debugging
+       - "devpts" PTY slave filesystem
+       - "devtmpfs" device filesystem on top of tmpfs/ramfs
+       - "fusectl" control filesystem for FUSE
+       - "mqueue" enumerates POSIX message queues
+       - "rpc_pipefs" kernel <-> userspace bridge for NFS
+       - "sysfs" is for exporting kernel objects
+       - "devfs" device filesystem for Linux 2.4 and FreeBSD
+
+2012-12-11  Paul Eggert  <eggert@cs.ucla.edu>
+
+       extern-inline: avoid incompatibility with Darwin Libc
+       * m4/extern-inline.m4 (_GL_INLINE, _GL_EXTERN_INLINE): Do not use
+       extern inline if __APPLE__.  Use _GL_UNUSED in the non-inline branch.
+       Problem reported by Akim Demaille in
+       <http://lists.gnu.org/archive/html/bug-gnulib/2012-12/msg00023.html>.
+
+2012-12-11  Simon Josefsson  <simon@josefsson.org>
+
+       gnupload: Work with GnuPG using gpg-agent (for smartcards).
+       * build-aux/gnupload: If GnuPG is configured to use gpg-agent,
+       let it handle password prompting.
+
+2012-12-10  Eli Zaretskii  <eliz@gnu.org>
+
+       canonicalize, canonicalize-lgpl: Microsoft Windows prefix fixes
+       * lib/canonicalize.c (canonicalize_filename_mode):
+       * lib/canonicalize-lgpl.c (__realpath): Recompute prefix_len after
+       fetching the current directory.  Don't overrun the beginning of
+       rpath if there's no slashes after the MS-Windows drive letter.
+
+2012-12-08  Stefano Lattarini  <stefano.lattarini@gmail.com>
+
+       maint.mk: avoid extra forks
+       * top/maint.mk (_cfg_mk): The GNU make manual documents that
+       "$(wildcard FILE)" expands to empty if FILE doesn't exist.
+       So use that instead of "$(shell test -f FILE && echo FILE)".
+
+2012-12-07  Paul Eggert  <eggert@cs.ucla.edu>
+
+       vasnprintf: fix ASCII_ONLY typo
+       * lib/unistdio/u8-vasnprintf.c (FCHAR_T_ONLY_ASCII):
+       * lib/unistdio/u16-vasnprintf.c (FCHAR_T_ONLY_ASCII):
+       * lib/unistdio/u32-vasnprintf.c (FCHAR_T_ONLY_ASCII):
+       New macro, replacing ASCII_ONLY.  This fixes a typo.  See thread at
+       <http://lists.gnu.org/archive/html/bug-gnulib/2012-12/msg00021.html>.
+
+2012-12-05  Paul Eggert  <eggert@cs.ucla.edu>
+
+       list, oset, xlist, xoset: fix extern inline issue with C99
+       This was introduced by my recent changes for 'inline'.
+       Problem reported for gettext by Daiki Ueno in
+       <http://lists.gnu.org/archive/html/bug-gnulib/2012-12/msg00000.html>.
+       * lib/gl_list.h (gl_list_nx_create_empty, gl_list_create)
+       (gl_list_nx_create, gl_list_size, gl_list_node_value)
+       (gl_list_node_set_value, gl_list_node_nx_set_value, gl_list_next_node)
+       (gl_list_previous_node, gl_list_get_at)
+       (gl_list_nx_set_at, gl_list_search, gl_list_search_from)
+       (gl_list_search_from_to, gl_list_indexof, gl_list_indexof_from)
+       (gl_list_indexof_from_to, gl_list_nx_add_first, gl_list_nx_add_last)
+       (gl_list_nx_add_before, gl_list_nx_add_after, gl_list_nx_add_at)
+       (gl_list_remove_node, gl_list_remove_at, gl_list_remove, gl_list_free)
+       (gl_list_iterator, gl_list_iterator_from_to, gl_list_iterator_next)
+       (gl_list_iterator_free, gl_sortedlist_search)
+       (gl_sortedlist_search_from_to, gl_sortedlist_indexof)
+       (gl_sortedlist_indexof_from_to, gl_sortedlist_add, gl_sortedlist_nx_add)
+       (gl_sortedlist_remove):
+       * lib/gl_oset.h (go_oset_nx_create_empty, gl_oset_size, gl_oset_search)
+       (gl_oset_search_atleast, gl_oset_nx_add, gl_oset_remove, gl_oset_free)
+       (gl_oset_iterator, gl_oset_iterator_next, gl_oset_iterator_free):
+       * lib/gl_xlist.h (gl_list_create_empty, gl_list_create)
+       (gl_list_node_set_value, gl_list_set_at, gl_list_add_first)
+       (gl_list_add_last, gl_list_add_before, gl_list_add_after)
+       (gl_list_add_at, gl_sortedlist_add):
+       * lib/gl_xoset.h (gl_oset_create_empty, gl_oset_add):
+       Wrap these extern decls inside "#if 0", because they are implemented
+       as inline functions, and extern inline is not what's wanted here.
+       It would simplify these .h files to remove the extern decls entirely,
+       although a downside would be less-clear separation between
+       specification and implementation.
+
+2012-11-29  Paul Eggert  <eggert@cs.ucla.edu>
+
+       sys_stat: no 'static inline'
+       * lib/sys_stat.in.h (rpl_mkdir): Now static, not static inline.
+       * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H): Do not require AC_C_INLINE.
+
+       extern-inline: no 'static inline'
+       * m4/extern-inline.m4 (gl_EXTERN_INLINE):
+       Do not require AC_C_INLINE.
+       (_GL_INLINE, _GL_EXTERN_INLINE): Define as 'static', not as
+       'static inline', for older compilers.
+
+       snippet/warn-on-use: no 'static inline'
+       * build-aux/snippet/warn-on-use.h:
+       Remove unnecessary 'inline' in comment.
+
+       rbtree-list, rbtreehash-list: no 'static inline'
+       * lib/gl_anyrbtree_list2.h (rotate_left, rotate_right):
+       * lib/gl_anytree_list2.h (node_at):
+       * lib/gl_anytreehash_list1.h (hash_resize_after_add)
+       (gl_oset_first, add_nodes_to_buckets):
+       Now static, not static inline.
+
+       regex: no 'static inline'
+       * lib/regex_internal.c (calc_state_hash):
+       * lib/regex_internal.h (bitset_set, bitset_clear, bitset_contain)
+       (bitset_empty, bitset_set_all, bitset_copy, bitset_not, bitset_merge)
+       (bitset_mask, re_string_char_size_at, re_string_wchar_at):
+       Now static, not static inline.
+       (inline) [__GNUC__ < 3 && _LIBC]:
+       Remove macro; no longer needed.
+
+       xvasprintf: no 'static inline'
+       * lib/xvasprintf.c (xstrcat):
+       Now static, not static inline.
+       * m4/xvasprintf.m4 (gl_XVASPRINTF):
+       Do not require AC_C_INLINE.
+
+       parse-datetime, parse-duration: no 'static inline'
+       * lib/parse-datetime.y (to_uchar):
+       * lib/parse-duration.c (str_const_to_ul, str_const_to_l)
+       (scale_n_add):
+       Now static, not static inline.
+       * m4/parse-datetime.m4 (gl_PARSE_DATETIME):
+       * modules/parse-duration (configure.ac):
+       Do not require AC_C_INLINE.
+
+       getaddrinfo: no 'static inline'
+       * lib/getaddrinfo.c (validate_family):
+       Now static, not static inline.
+       * m4/getaddrinfo.m4 (gl_PREREQ_GETADDRINFO):
+       Do not require AC_C_INLINE.
+
+       ftruncate, fts, lstat, openat, raise: no 'static inline'
+       * lib/ftruncate.c (chsize_nothrow):
+       * lib/fts.c (opendirat, diropen):
+       * lib/lstat.c (orig_lstat):
+       * lib/openat.c (orig_openat):
+       * lib/raise.c (raise_nothrow):
+       Now static, not static inline.
+       * m4/ftruncate.m4 (gl_PREREQ_FTRUNCATE):
+       * m4/fts.m4 (gl_FUNC_FTS_CORE):
+       * m4/lstat.m4 (gl_PREREQ_LSTAT):
+       * m4/openat.m4 (gl_PREREQ_OPENAT):
+       * m4/raise.m4 (gl_PREREQ_RAISE):
+       Do not require AC_C_INLINE.
+
+       fflush, stat: no 'static inline'
+       * lib/fflush.c (clear_ungetc_buffer_preserving_position)
+       (clear_ungetc_buffer, disable_seek_optimization)
+       (restore_seek_optimization, update_fpos_cache):
+       * lib/stat.c (orig_stat):
+       Now static, not static inline.
+       * lib/fflush.c (disable_seek_optimization, restore_seek_optimization)
+       (update_fpos_cache):
+       Define only if ! (defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1).
+       * m4/fflush.m4 (gl_PREREQ_FFLUSH):
+       * m4/stat.m4 (gl_PREREQ_STAT):
+       Do not require AC_C_INLINE.
+
+       error, filevercmp: no 'static inline'
+       * lib/error.c (is_open, flush_stdout):
+       * lib/filevercmp.c (order):
+       Now static, not static inline.
+       * m4/error.m4 (gl_PREREQ_ERROR):
+       * modules/filevercmp (configure.ac):
+       Do not require AC_C_INLINE.
+
+       dup, execute, fatal-signal, etc.: no 'static inline'
+       * lib/dup.c (dup_nothrow):
+       * lib/execute.c (nonintr_close, nonintr_open):
+       * lib/fatal-signal.c (uninstall_handlers, install_handlers):
+       * lib/fopen.c (orig_fopen):
+       * lib/freadseek.c (freadptrinc):
+       * lib/freopen.c (orig_freopen):
+       * lib/fstat.c (orig_fstat, fstat_nothrow):
+       * lib/get-rusage-as.c (get_rusage_as_via_setrlimit)
+       (get_rusage_as_via_iterator):
+       * lib/get-rusage-data.c (get_rusage_data_via_setrlimit):
+       * lib/getdtablesize.c (_setmaxstdio_nothrow):
+       * lib/isatty.c (_isatty_nothrow):
+       * lib/open.c (orig_open):
+       * lib/read.c (read_nothrow):
+       * lib/sigprocmask.c (signal_nothrow):
+       * lib/spawn-pipe.c (nonintr_close, nonintr_open):
+       * lib/vasnprintf.c (MAX_ROOM_NEEDED):
+       * lib/wait-process.c (unregister_slave_subprocess):
+       * lib/write.c (write_nothrow):
+       Now static, not static inline.
+       * lib/spawn-pipe.c (nonintr_open): Define only if
+       (defined _WIN32 || defined __WIN32__) && ! defined __CYGWIN__.
+       * m4/dup.m4 (gl_PREREQ_DUP):
+       * m4/execute.m4 (gl_EXECUTE):
+       * m4/fatal-signal.m4 (gl_FATAL_SIGNAL):
+       * m4/fopen.m4 (gl_PREREQ_FOPEN):
+       * m4/freadseek.m4 (gl_FUNC_FREADSEEK):
+       * m4/freopen.m4 (gl_PREREQ_FREOPEN):
+       * m4/fstat.m4 (gl_PREREQ_FSTAT):
+       * m4/getdtablesize.m4 (gl_PREREQ_GETDTABLESIZE):
+       * m4/isatty.m4 (gl_PREREQ_ISATTY):
+       * m4/open.m4 (gl_PREREQ_OPEN):
+       * m4/read.m4 (gl_PREREQ_READ):
+       * m4/signalblocking.m4 (gl_PREREQ_SIGPROCMASK):
+       * m4/spawn-pipe.m4 (gl_SPAWN_PIPE):
+       * m4/vasnprintf.m4 (gl_PREREQ_VASNPRINTF):
+       * m4/wait-process.m4 (gl_WAIT_PROCESS):
+       * m4/write.m4 (gl_PREREQ_WRITE):
+       * modules/get-rusage-as, modules/get-rusage-data (configure.ac):
+       Do not require AC_C_INLINE.
+
+       c-strtod, memcoll, readutmp: no 'static inline'
+       * lib/c-strtod.c (c_locale):
+       * lib/memcoll.c (strcoll_loop):
+       * lib/readutmp.c (desirable_utmp_entry):
+       Now static, not static inline.
+       * m4/c-strtod.m4 (gl_C_STRTOD, gl_C_STRTOLD):
+       * m4/memcoll.m4 (gl_MEMCOLL):
+       * m4/readutmp.m4 (gl_READUTMP):
+       Do not require AC_C_INLINE.
+
+       arctwo, md4, md5, sha1, sha256, sha512: no 'static inline'
+       * lib/arctwo.c (to_uchar):
+       * lib/md4.c (set_uint32):
+       * lib/md5.c (set_uint32):
+       * lib/sha1.c (set_uint32):
+       * lib/sha256.c (set_uint32):
+       * lib/sha512.c (set_uint64):
+       Now static, not static inline.  This is a bit simpler, and doesn't
+       affect performance with GCC and default optimization.
+       * m4/arctwo.m4 (gl_ARCTWO):
+       * m4/md4.m4 (gl_MD4):
+       * m4/md5.m4 (gl_MD5):
+       * m4/sha1.m4 (gl_SHA1):
+       * m4/sha256.m4 (gl_SHA256):
+       * m4/sha512.m4 (gl_SHA512):
+       Do not require AC_C_INLINE.
+
+       cond, lock, thread: better 'inline'
+       * lib/glthread/cond.c, lib/glthread/cond.h (_GLTHREAD_COND_INLINE):
+       * lib/glthread/thread.c, lib/glthread/thread.h (_GLTHREAD_THREAD_INLINE):
+       New macros.  Use them instead of static inline, for header functions.
+       * lib/glthread/cond.c (gl_waitqueue_init, gl_waitqueue_remove)
+       (gl_waitqueue_notify_first, gl_waitqueue_notify_all):
+       * lib/glthread/lock.c (gl_waitqueue_init)
+       (gl_waitqueue_notify_first, gl_waitqueue_notify_all):
+       * lib/glthread/thread.c (get_current_thread_handle):
+       Change 'static inline' to 'inline'.
+       * lib/glthread/cond.h, lib/glthread/thread.h:
+       Use _GL_INLINE_HEADER_BEGIN, _GL_INLINE_HEADER_END.
+       * m4/cond.m4 (gl_COND):
+       * m4/lock.m4 (gl_PREREQ_LOCK):
+       * m4/thread.m4 (gl_THREAD):
+       Do not require AC_C_INLINE.
+       * modules/cond, modules/thread (Depends-on): Add extern-inline.
+
+       chdir-long, cycle-check, savewd: better 'inline'
+       * lib/chdir-long.c (cdb_init, cdb_fchdir, cdb_free)
+       (find_non_slash):
+       * lib/cycle-check.c (is_zero_or_power_of_two):
+       * lib/savewd.c (savewd_delegating):
+       Change 'static inline' to 'inline'.
+       * lib/savewd.c, lib/savewd.h (SAVEWD_INLINE): New macro.
+       Replace all remaining uses of 'static inline' with it.
+       * lib/savewd.h:
+       Use _GL_INLINE_HEADER_BEGIN, _GL_INLINE_HEADER_END.
+       * m4/chdir-long.m4 (gl_PREREQ_CHDIR_LONG):
+       * m4/cycle-check.m4 (gl_CYCLE_CHECK):
+       * m4/savewd.m4 (gl_SAVEWD):
+       Do not require AC_C_INLINE.
+       * modules/savewd (Depends-on): Add extern-inline.
+
+       base32, base64: no need for 'inline'
+       * lib/base32.c (to_uchar, get_8, decode_8):
+       * lib/base64.c (to_uchar, get_4, decode_4):
+       Change 'static inline' to 'inline'.
+       * m4/base32.m4 (gl_PREREQ_BASE32):
+       * m4/base64.m4 (gl_PREREQ_BASE64):
+       Do not require AC_C_INLINE.
+
+       array-oset, linkedhash-list, rbtree-oset: no need for 'inline'
+       * lib/gl_array_oset.c (gl_array_nx_add_at):
+       (gl_array_remove_at):
+       * lib/gl_linkedhash_list.c (hash_resize_after_add)
+       (add_to_bucket, remove_from_bucket):
+       * lib/gl_rbtree_oset.c (rotate_left, rotate_right):
+       Change 'static inline' to 'static', as it's simpler to omit
+       'inline' unless there's a significant performance advantage.
+
+       list, oset, xlist, xoset, xsublist: simplify via extern inline
+       * lib/gl_list.h, lib/gl_list.c (GL_LIST_INLINE):
+       * lib/gl_oset.c, lib/gl_oset.h (GL_OSET_INLINE):
+       * lib/gl_xlist.c, lib/gl_xlist.h (GL_XLIST_INLINE):
+       * lib/gl_xoset.c, lib/gl_xoset.h (GL_XOSET_INLINE):
+       * lib/gl_xsublist.c, lib/gl_xsublist.h (GL_XSUBLIST_INLINE):
+       New macro.  Replace all uses of 'static inline' with it.
+       [HAVE_INLINE]: Implement functions as *_INLINE functions,
+       instead of as macros FOO that are defined to static inline
+       functions FOO_inline.
+       * lib/gl_list.c, lib/gl_oset.c, lib/gl_xlist.c, lib/gl_xoset.c:
+       * lib/gl_xsublist.c:
+       Reimplement from scratch, by defining the corresponding *_INLINE
+       macro and including the corresponding .h file.  This is simpler.
+       * modules/list, modules/oset, modules/xlist, modules/xoset:
+       (Files): Remove m4/gl_list.m4.
+       (configure.ac): Remove gl_LIST.
+       * m4/gl_list.m4: Remove.
+       * modules/list, modules/oset, modules/xlist, modules/xoset:
+       * modules/xsublist:
+       (Depends-on): Depend on extern-inline, not inline.
+
+       xalloc: better 'inline'
+       * lib/xmalloc.c, lib/xalloc.h (XALLOC_INLINE):
+       New macro.  Replace all uses of 'static inline' with it.
+       (static_inline): Remove.
+       * lib/xalloc.h (xnmalloc, xnrealloc, x2nrealloc, xcharalloc):
+       Let 'extern inline' do the work automatically, instead of doing
+       it by hand.
+       * m4/xalloc.m4 (gl_PREREQ_XALLOC, gl_PREREQ_XMALLOC):
+       Remove.  All uses removed.
+       * modules/xalloc (Depends-on): Remove 'inline'.  Add 'extern-inline'.
+
+       gethrxtime: better 'inline'
+       * lib/xtime.c: New file.
+       * lib/gethrxtime.c, lib/gethrxtime.h (GETHRXTIME_INLINE):
+       * lib/xtime.h (XTIME_INCLUDE):
+       New macros.  Replace all uses of 'static inline' with them.
+       * lib/gethrxtime.c (gethrxtime): Define only if
+       ! (HAVE_ARITHMETIC_HRTIME_T && HAVE_DECL_GETHRTIME), since
+       this source file is now always compiled, because of the extern inline.
+       * lib/gethrxtime.h, lib/xtime.h:
+       Use _GL_INLINE_HEADER_BEGIN, _GL_INLINE_HEADER_END.
+       * m4/gethrxtime.m4 (gl_GETHRXTIME): Do not check for clock macros
+       if gethrtime works, as they're not needed in that case.
+       (gl_XTIME): Do not require AC_C_INLINE.
+       (gl_PREREQ_GETHRXTIME): Remove; all uses removed, as it's always
+       compiled now.  Move the check into gl_GETHRXTIME.
+       * modules/gethrxtime (Files, lib_SOURCES): Add lib/xtime.c.
+       (Depends-on): Add extern-inline.
+       (configure.ac): gethrxtime is always compiled now.
+       (lib_SOURCES): Add gethrxtime.c.
+
+       wctype-h: better 'inline'
+       * lib/wctype-h.c: New file.
+       * lib/wctype.in.h (_GL_WCTYPE_INLINE):
+       New macro.  Replace all uses of 'static inline' with it.
+       Use _GL_INLINE_HEADER_BEGIN, _GL_INLINE_HEADER_END.
+       * m4/wctype_h.m4 (gl_WCTYPE_H): Do not require AC_C_INLINE.
+       * modules/wctype-h (Files, lib_SOURCES): Add lib/wctype-h.c.
+       (Depends-on): Add extern-inline.
+
+       unistd: better 'inline'
+       * lib/unistd.c: New file.
+       * lib/unistd.in.h (_GL_UNISTD_INLINE):
+       New macro.  Replace all uses of 'static inline' with it.
+       Use _GL_INLINE_HEADER_BEGIN, _GL_INLINE_HEADER_END.
+       * m4/unistd_h.m4 (gl_UNISTD_H): Do not require AC_C_INLINE.
+       * modules/unistd (Files, lib_SOURCES): Add lib/unistd.c.
+       (Depends-on): Add extern-inline.
+
+       sys_socket: better 'inline'
+       * lib/sys_socket.c: New file.
+       * lib/sys_socket.in.h (_GL_SYS_SOCKET_INLINE):
+       New macro.  Replace all uses of 'static inline' with it.
+       Use _GL_INLINE_HEADER_BEGIN, _GL_INLINE_HEADER_END.
+       * m4/sys_socket_h.m4 (gl_HEADER_SYS_SOCKET): Do not require AC_C_INLINE.
+       * modules/sys_socket (Files, lib_SOURCES): Add lib/sys_socket.c.
+       (Depends-on): Add extern-inline.
+
+       stdio: better 'inline'
+       * lib/stdio.c: New file.
+       * lib/stdio.in.h (_GL_STDIO_INLINE):
+       New macro.  Replace all uses of 'static inline' with it.
+       Use _GL_INLINE_HEADER_BEGIN, _GL_INLINE_HEADER_END.
+       * m4/stdio_h.m4 (gl_STDIO_H): Do not require AC_C_INLINE.
+       * modules/stdio (Files, lib_SOURCES): Add lib/stdio.c.
+       (Depends-on): Add extern-inline.
+
+       sigaction: better 'inline'
+       * lib/sig-handler.c: New file.
+       * lib/sig-handler.h (SIG_HANDLER_INLINE):
+       New macro.  Replace all uses of 'static inline' with it.
+       Use _GL_INLINE_HEADER_BEGIN, _GL_INLINE_HEADER_END.
+       * m4/sigaction.m4 (gl_PREREQ_SIG_HANDLER_H): Do not require AC_C_INLINE.
+       * modules/sigaction (Files, lib_SOURCES): Add lib/sig-handler.c.
+       (Depends-on): Add extern-inline.
+
+       selinux-h: better 'inline'
+       * lib/se-context.c, lib/se-selinux.c: New files.
+       * lib/getfilecon.c (map_to_failure): Omit 'inline' for static function.
+       * lib/se-context.in.h (SE_CONTEXT_INLINE):
+       New macro.  Replace all uses of 'static inline' with it.
+       Use _GL_INLINE_HEADER_BEGIN, _GL_INLINE_HEADER_END.
+       * lib/se-selinux.in.h (SE_SELINUX_INLINE):
+       New macro.  Replace all uses of 'static inline' with it.
+       Use _GL_INLINE_HEADER_BEGIN, _GL_INLINE_HEADER_END.
+       * modules/selinux-h (Files, lib_SOURCES):
+       Add lib/se-context.c, lib/se-selinux.c.
+       (Depends-on): Add extern-inline.
+       (configure.ac): Do not require AC_C_INLINE.
+
+       pthread: better 'inline'
+       * lib/pthread.c: New file.
+       * lib/pthread.in.h (_GL_PTHREAD_INLINE):
+       New macro.  Replace all uses of 'static inline' with it.
+       Use _GL_INLINE_HEADER_BEGIN, _GL_INLINE_HEADER_END.
+       * m4/pthread.m4 (gl_PTHREAD_CHECK):
+       Add AC_LIBOBJ([pthread]).  Do not require AC_C_INLINE.
+       * modules/pthread (Files): Add lib/pthread.c.
+       (Depends-on): Add extern-inline.
+
+       math: better 'inline'
+       * lib/math.c: New file.
+       * lib/math.in.h (_GL_MATH_INLINE):
+       New macro.  Replace all uses of 'static inline' with it.
+       Use _GL_INLINE_HEADER_BEGIN, _GL_INLINE_HEADER_END.
+       * m4/math_h.m4 (gl_MATH_H):
+       Do not require AC_C_INLINE.
+       * modules/math (Files, lib_SOURCES):
+       Add lib/math.c.
+       (Depends-on): Add extern-inline.
+
+       count-one-bits: better 'inline'
+       * lib/count-one-bits.c: New file.
+       * lib/count-one-bits.h (COUNT_ONE_BITS_INLINE):
+       New macro.  Replace all uses of 'static inline' with it.
+       Use _GL_INLINE_HEADER_BEGIN, _GL_INLINE_HEADER_END.
+       * m4/count-one-bits.m4 (gl_COUNT_ONE_BITS):
+       Do not require AC_C_INLINE.
+       * modules/count-one-bits (Files, lib_SOURCES):
+       Add lib/count-one-bits.c.
+       (Depends-on): Add extern-inline.
+
+       count-leading-zeros: better 'inline'
+       * lib/count-leading-zeros.c: New file.
+       * lib/count-leading-zeros.h (COUNT_LEADING_ZEROS_INLINE):
+       New macro.  Replace all uses of 'static inline' with it.
+       Use _GL_INLINE_HEADER_BEGIN, _GL_INLINE_HEADER_END.
+       * m4/count-leading-zeros.m4 (gl_COUNT_LEADING_ZEROS):
+       Do not require AC_C_INLINE.
+       * modules/count-leading-zeros (Files, lib_SOURCES):
+       Add lib/count-leading-zeros.c.
+       (Depends-on): Add extern-inline.
+
+       bitrotate: better 'inline'
+       * lib/bitrotate.c: New file.
+       * lib/bitrotate.h (BITROTATE_INLINE):
+       New macros.
+       Replace all uses of 'static inline' with them.
+       Use _GL_INLINE_HEADER_BEGIN, _GL_INLINE_HEADER_END.
+       * modules/bitrotate (Files, lib_SOURCES): Add lib/bitrotate.c.
+       (Depends-on): Add extern-inline.
+       (configure.ac): Do not require AC_C_INLINE.
+
+2012-11-20  Theophile Ranquet <ranquet@lrde.epita.fr>
+
+       maint.mk: avoid gratuitous failure
+       Reported by Stefano Lattarini in
+       <http://lists.gnu.org/archive/html/bug-bison/2012-11/msg00022.html>
+       * top/maint.mk (public-submodule-commit): Quote more safely.
+
+2012-11-20  Eli Zaretskii  <eliz@gnu.org>
+
+       canonicalize, canonicalize-lgpl: support MS-Windows file names
+       See <http://lists.gnu.org/archive/html/bug-gnulib/2012-11/msg00074.html>
+       for test cases, which it'd be nice to add at some point.
+       * lib/canonicalize.c, lib/canonicalize-lgpl.c: Include dosname.h.
+       * lib/canonicalize.c (canonicalize_filename_mode):
+       * lib/canonicalize-lgpl.c (__realpath):
+       Use FILE_SYSTEM_PREFIX_LEN instead of assuming that the first
+       slash is at the beginning of the file name.  Use ISSLASH, instead
+       of a literal '/'.  Use IS_ABSOLUTE_FILE_NAME instead of comparing
+       the first character with '/'.  Test for
+       DOUBLE_SLASH_IS_DISTINCT_ROOT only if the file name does not begin
+       with a drive letter.
+       * lib/canonicalize.c (SLASHES): New macro.
+       (canonicalize_filename_mode): Use SLASHES instead of a literal "/".
+
+2012-11-17  Dmitry V. Levin  <ldv@altlinux.org>
+
+       fts: introduce FTS_VERBATIM
+       * lib/fts_.h (FTS_VERBATIM): New bit flag.
+       (FTS_OPTIONMASK, FTS_NAMEONLY, FTS_STOP): Adjust.
+       * lib/fts.c (fts_open): Honor it.
+
+2012-11-09  Pádraig Brady  <P@draigBrady.com>
+
+       getlogin-tests: allow errno == ENXIO
+       * tests/test-getlogin.c (main): Skip tests if getlogin fails
+       with errno == ENXIO (No controlling tty).
+       getlogin_r-tests: Likewise. Also allow errno == ENOENT
+       * tests/test-getlogin_r.c (main): Skip tests if getlogin_r fails
+       with errno == ENOENT.  This was reported to happen in various
+       situations on GNU/Linux.
+
+2012-11-09  Paul Eggert  <eggert@cs.ucla.edu>
+
+       getlogin-tests: allow errno == ENOENT
+       * tests/test-getlogin.c (main): Skip tests if getlogin fails
+       with errno == ENOENT.  This happened to me on Ubuntu 12.04.1 x86,
+       when running a test in an Emacs shell buffer.
+
+2012-11-08  Jim Meyering  <jim@meyering.net>
+
+       tests/nap.h: avoid warning about unused variable
+       * tests/nap.h (nap_works): Remove now-unused declaration of "result".
+
+       prefix-gnulib-mk: avoid overzealous "lib/"-prefix addition
+       * build-aux/prefix-gnulib-mk (prefix): Tighten a regexp to require
+       white space before each of the special-cased file names, to avoid
+       adding "lib/" after $(libdir)/.  Reported by Matias A. fonzo
+       in http://bugs.gnu.org/12830.
+
+2012-11-08  Paul Eggert  <eggert@cs.ucla.edu>
+
+       fcntl-h: default O_SEARCH, O_EXEC back to O_RDONLY
+       O_PATH doesn't work with Linux kernel 3.6.5, as fchmod (fd, ...)
+       fails with errno == EBADF when fd is opened with O_PATH.
+       Reported by Jim Meyering in
+       <http://lists.gnu.org/archive/html/bug-gnulib/2012-11/msg00026.html>.
+       * doc/posix-headers/fcntl.texi (fcntl.h): Document this.
+       * lib/fcntl.in.h (O_EXEC, O_SEARCH) [O_PATH]: Default back to O_RDONLY.
+
+2012-11-07  Paul Eggert  <eggert@cs.ucla.edu>
+
+       test-utimens: speed up by taking shorter naps
+       * tests/nap.h (lt_mtime, get_mtime, nap_works, guess_delay):
+       New functions.
+       (nap): Use them, to do a better job of guessing the delay.
+       On Fedora 17 with ext4 atop md atop hard disks, this made
+       test-utimens run 10x faster, because the test napped for
+       1 ms at a time rather than 20 ms.  Reported by Stefano Lattarini in
+       <http://bugs.gnu.org/12820#11>.
+
+2012-11-07  Jim Meyering  <jim@meyering.net>
+
+       mountlist.c: fix a compilation failure
+       * lib/mountlist.c (read_file_system_list): Fix a compilation failure
+       I introduced while transforming commit v0.0-7683-g613bcb6
+
+2012-11-05  Paul Eggert  <eggert@cs.ucla.edu>
+
+       errno: port to LynxOS 178 2.2.2
+       Problem reported by Joel Brobecker in
+       <http://lists.gnu.org/archive/html/bug-gnulib/2012-10/msg00088.html>.
+       * doc/posix-headers/errno.texi (errno.h): Document this.
+       * lib/errno.in.h (EILSEQ, GNULIB_defined_EILSEQ) [!EILSEQ]: New macros.
+       * lib/strerror-override.c, lib/strerror-override.h (strerror_override):
+       Supply a string for EILSEQ.
+       * m4/errno_h.m4 (gl_HEADER_ERRNO_H): Check for EILSEQ.
+
+2012-11-05  Paul Eggert  <eggert@cs.ucla.edu>
+
+       fcntl-h: default O_SEARCH, O_EXEC to O_PATH if available
+       Linux kernel 2.6.39 introduced O_PATH (see
+       <http://lwn.net/Articles/433854/>) and this is a better fallback
+       for O_SEARCH and O_EXEC than O_RDONLY, if O_PATH is available.
+       * doc/posix-headers/fcntl.texi (fcntl.h): Document this.
+       * lib/fcntl.in.h (O_EXEC, O_SEARCH) [O_PATH]: Default to O_PATH.
+       * lib/fcntl.in.h (O_ACCMODE):
+       * tests/test-fcntl-h.c (main):
+       Do not reject O_ACCMODE merely because it has more than the
+       minimal number of bits, as POSIX allows extensions here.
+
+2012-11-04  Andrew Warshall  <warshall@99main.com>  (tiny change)
+
+       mountlist: do not classify a bind-mounted dir entry as "dummy"
+       * lib/mountlist.c (ME_DUMMY_0): Rename from ME_DUMMY, but omit
+       the "none"-testing clause.
+       (ME_DUMMY) [MOUNTED_GETMNTENT1]: New macro to encapsulate the
+       exception for bind-mounted directories.
+
+2012-11-01  Akim Demaille  <akim@lrde.epita.fr>
+
+       quote: provide a means to escape strings with nul characters
+       * lib/quote.h, lib/quotearg.c (quote_mem, quote_n_mem): New functions.
+       (quote, quote_n): Rename formal arguments for consistency with
+       quotearg.
+
+2012-10-30  Paul Eggert  <eggert@cs.ucla.edu>
+
+       test-raise: don't assume 199 is an invalid signal
+       * tests/test-raise.c (main): Don't assume 199 is not a signal number.
+
+       sh-quote-tests: port to Solaris 9
+       * modules/sh-quote-tests (test_sh_quote_LDADD): Add @LIBINTL@.
+       Problem reported by Dagobert Michelsen in
+       <http://lists.gnu.org/archive/html/bug-gnulib/2012-10/msg00114.html>.
+
+2012-10-28  Jim Meyering  <jim@meyering.net>
+
+       maint.mk: rename a new configurable variable
+       * top/maint.mk (_gl_translatable_string_re): Rename from
+       translation-markers: _gl_ prefix to insulate from user Makefile code,
+       and the _re suffix to inform that it's a regular expression.
+
+2012-10-26  Eric Blake  <eblake@redhat.com>
+
+       maint.mk: let packages tweak sc_po_check pattern
+       * top/maint.mk (sc_po_check): Add translation-markers, to allow
+       finding files with other translation markers.
+
+2012-10-16  Paul Eggert  <eggert@cs.ucla.edu>
+
+       euidaccess: speed up 'configure' on GNU hosts
+       * m4/euidaccess.m4 (gl_FUNC_NONREENTRANT_EUIDACCESS):
+       Check for setregid here, not in gl_PREREQ_EUIDACCESS, since
+       it's needed only in this case.  Use AC_CHECK_DECLS, not
+       AC_CHECK_DECLS_ONCE.
+       (gl_PREREQ_EUIDACCESS): Do not use AC_CHECK_HEADERS_ONCE libgen.h
+       or AC_REQUIRE for AC_FUNC_GETGROUPS.
+
+       * lib/regexec.c (re_search_internal): Fix grammar in comment.
+
+2012-10-15  Paul Eggert  <eggert@cs.ucla.edu>
+
+       fchmodat, fchownat, fstatat: port to non-inlining compilers
+       Problem reported for FreeBSD 9 by Jim Meyering in
+       <http://lists.gnu.org/archive/html/bug-gnulib/2012-10/msg00070.html>.
+       * lib/chmodat.c, lib/chownat.c, lib/statat.c:
+       New files, which define FCHMODAT_INLINE etc.
+       * lib/fchmodat.c (FCHMODAT_INLINE):
+       * lib/fchownat.c (FCHOWNAT_INLINE):
+       * lib/fstatat.c (FSTATAT_INLINE):
+       Remove, as chmodat.c etc. now do this.
+       * modules/fchmodat (Files): Add lib/chmodat.c.
+       * modules/fchownat (Files): Add lib/chownat.c.
+       * modules/fstatat (Files): Add lib/statat.c.
+
+2012-10-15  Jim Meyering  <jim@meyering.net>
+
+       fchmodat.c, fchownat.c: compile-impeding typos
+       * lib/fchmodat.c (FCHMODAT_INLINE): Fix typo: s/#include/#define/
+       * lib/fchownat.c (FCHOWNAT_INLINE): Likewise.
+       Introduced in commit v0.0-7636-gd202279.
+
+2012-10-15  Paul Eggert  <eggert@cs.ucla.edu>
+
+       fcntl-h: support GNU flags like O_IGNORE_CTTY
+       * doc/posix-headers/fcntl.texi (fcntl.h): Support O_IGNORE_CTTY,
+       O_NOLINK, and O_NOTRANS.  These flags are nonzero on GNU/Hurd
+       systems.  Discovered when using fcntl-h with GNU Emacs, which uses
+       O_IGNORE_CTTY.  Fix misspelling of F_SETLKW.
+       * lib/fcntl.in.h (O_IGNORE_CTTY, O_NOLINK, O_NOTRANS):
+       Define to 0 if not already defined.
+       * tests/test-fcntl-h.c: Test these new flags.
+
+2012-10-14  Paul Eggert  <eggert@cs.ucla.edu>
+
+       faccessat, etc.: support AT_FDCWD-only use
+       * lib/at-func.c: If GNULIB_SUPPORT_ONLY_AT_FDCWD, then support
+       this function only if its first argument is AT_FDCWD.
+       Emacs wants faccessat for AT_EACCESS but not for any first-arg
+       values other than AT_FDCWD, so it doesn't want all the openat
+       machinery with fchdir etc.
+       * modules/faccessat, modules/fchmodat, modules/fchownat (Files):
+       * modules/fstatat, modules/mkdirat, modules/openat (Files):
+       * modules/unlinkat (Files):
+       Remove lib/openat-priv.h, as at-internal supplies this file.
+       Removing this file here allows us to support programs like Emacs
+       that avoid at-internal.
+
+       faccessat: speed up 'configure' on mainstream hosts
+       * m4/faccessat.m4 (gl_PREREQ_FACCESSAT):
+       Use AT_CHECK_FUNCS for 'access', not AC_CHECK_FUNCS_ONCE,
+       since it's only on unusual platforms that we need to check for
+       'access', and it's better not to slow 'configure' down on all
+       platforms.
+
+       faccessat: port to Solaris 10
+       * lib/faccessat.c: Include <fcntl.h>, for AT_EACCESS.
+       Needed on Solaris 10, which doesn't have AT_EACCESS,
+       so we need the Gnulib fcntl.h, which defines it.
+
+2012-10-14  Pádraig Brady  <P@draigBrady.com>
+       canonicalize: fix C89 compilation
+       * lib/canonicalize.c (canonicalize_filename_mode): Swap order of
+       declarations so C89 is supported.  Also remove the comment
+       referencing memorty allocation as the suggested feature could
+       not be implemented as suggested.
+       Reported by Michael Goffioul.
+
+2012-10-12  Paul Eggert  <eggert@cs.ucla.edu>
+
+       group-member: omit unnecessary dependencies
+       This is for Emacs, which has its own allocator and where we
+       don't want to use xalloc.
+       * lib/group-member.c: Include xalloc-oversized.h, not xalloc.h,
+       since we no longer use xmalloc.  Do not include stdbool.h, since
+       the changes below happen to remove the only use of bool.
+       (GROUPBUF_SIZE): New constant.
+       (struct group_info): Remove n_groups member.  Add groupbuf member.
+       This lets us get the groups without using malloc, usually.
+       (free_group_info, get_group_info): Adjust to this.
+       (get_group_info): Return the number of groups found, or -1 on error.
+       Use plain malloc not xmalloc, and treat its failure as if there
+       are no groups, as the user already loses in case of error.
+       (group_member): Simplify, based on changes to get_group_info.
+       * modules/group-member (Depends-on): Remove dependencies on
+       xalloc and stdbool.  Add dependency on xalloc-oversized.
+
+2012-10-08  Alexandre Duret-Lutz  <adl@lrde.epita.fr>  (tiny change)
+
+       gethrxtime: port to C++
+       * lib/gethrxtime.h, lib/xtime.h [__cplusplus]: Add extern "C".
+
+2012-10-04  Paul Eggert  <eggert@cs.ucla.edu>
+
+       ptsname: fix macro-name typo
+       * lib/stdlib.in.h (ptsname): Fix misspelling of GNULIB_NAMESPACE.
+
+2012-10-03  Simon Josefsson  <simon@josefsson.org>
+
+       inttostr: Relax license.
+       * modules/inttostr (License): Change from LGPL to LGPLv2+.
+
+2012-10-03  Eric Blake  <eblake@redhat.com>
+
+       ptsname_r: support ptys returned by FreeBSD posix_openpt
+       * lib/ptsname_r.c (__ptsname_r): Don't munge name if it already
+       lives in /dev/pts/.
+
+2012-10-02  Eric Blake  <eblake@redhat.com>
+
+       pselect: reject invalid file descriptors
+       * m4/pselect.m4 (gl_FUNC_PSELECT): Probe for FreeBSD bug.
+       * lib/pselect.c (rpl_pselect) [!win32]: Work around it.
+       * modules/pselect (Depends-on): Add dup2.
+       * doc/posix-functions/pselect.texi (pselect): Document this.
+
+       select: reject invalid file descriptors
+       * m4/select.m4 (gl_FUNC_SELECT): Probe for FreeBSD bug.
+       * lib/select.c (rpl_select) [!win32]: Work around it.
+       * modules/select (Depends-on): Add dup2.
+       * doc/posix-functions/select.texi (select): Document this.
+
+       select: enhance test
+       * tests/test-select.h (do_select_bad_nfd_nowait, test_bad_nfd):
+       New functions.
+       (test_function): Enhance test.
+       (do_select_bad_fd): Avoid any stale errno values.
+
+       ptsname: reject invalid file descriptors
+       http://www.austingroupbugs.net/view.php?id=503
+       * m4/ptsname.m4 (gl_FUNC_PTSNAME): Probe for FreeBSD bug.
+       * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Add new witness.
+       * modules/stdlib (Makefile.am): Replace witness.
+       * lib/stdlib.in.h (ptsname): Allow for replacement.
+       * modules/ptsname (configure.ac): Trigger replacement.
+       * doc/posix-functions/ptsname.texi (ptsname): Document this.
+
+2012-10-02:  Nikos Mavrogiannopoulos  <nmav@gnutls.org>  (tiny change)
+
+       hash-pjw-bare: new module
+       * lib/hash-pjw-bare.c: New file, very much like hash-pjw.c.
+       * lib/hash-pjw-bare.h: Likewise.
+       * modules/hash-pjw-bare: New file.
+       * MODULES.html.sh (Misc): Add it.
+
+2012-10-02  Eric Blake  <eblake@redhat.com>
+
+       manywarnings: cater to more gcc infelicities
+       * m4/manywarnings.m4 (gl_MANYWARN_ALL_GCC): Add test for
+       -Wuninitialized without -O.
+
+2012-10-01  Ed Maste  <emaste@freebsd.org>  (tiny change)
+
+       select, poll tests: Make setsockopt invocation effective.
+       * tests/test-poll.c (open_server_socket): Move setsockopt() call before
+       the bind() call.
+       * tests/test-select.h (open_server_socket): Likewise.
+
+2012-09-30  Paul Eggert  <eggert@cs.ucla.edu>
+
+       sockets, sys_stat: restore AC_C_INLINE
+       This undoes the 2012-09-22 patch.
+       * m4/sockets.m4 (gl_SOCKETS):
+       * m4/sys_stat_h.m4 (gl_HEADER_SYS_STAT_H):
+       Restore AC_C_INLINE, since MSVC requires __inline or _inline
+       and does not support plain 'inline'.  Reported by Bruno Haible in
+       <http://lists.gnu.org/archive/html/bug-gnulib/2012-09/msg00183.html>.
+
+2012-09-30  Bruno Haible  <bruno@clisp.org>
+
+       localeconv tests: Avoid test failure on OpenIndiana.
+       * tests/test-localeconv.c (main): On OpenIndiana (a Solaris 11 variant)
+       skip the 'grouping' and 'mon_grouping' tests.
+       Reported by Jim Meyering.
+
+2012-09-30  Bruno Haible  <bruno@clisp.org>
+
+       havelib: Follow libtool developments.
+       * m4/lib-ld.m4: Rebase on libtool.m4 from libtool-2.4.
+       Suggested by Simon Josefsson.
+
+2012-09-29  Jim Meyering  <meyering@redhat.com>
+
+       fstatat.c: fix a compile-impeding typo
+       * lib/fstatat.c (FSTATAT_INLINE): Fix typo: s/#include/#define/
+       Introduced in commit v0.0-7636-gd202279.
+       Mats Erik Andersson reported the resulting OpenBSD compilation failure.
+
+2012-09-28  Akim Demaille  <akim@lrde.epita.fr>
+
+       extern-inline: provide a -Wundef safe config.h
+       * m4/extern-inline.m4 (gl_EXTERN_INLINE): Protect
+       "#if __GNUC_STDC_INLINE__" with "defined __GNUC_STDC_INLINE__"
+       to produce a -Wundef warning free config.h.
+
+2012-09-26  Paul Eggert  <eggert@cs.ucla.edu>
+
+       hash-pjw: relax license to LGPLv2+
+       * modules/hash-pjw (License): Relax, with consent of author.
+
+2012-09-25  Akim Demaille  <akim@lrde.epita.fr>
+
+       maint.mk: fix strict vs. lazy variable issues with RELEASE
+       * top/maint.mk (_equal): New function.
+       (member_check): Strip the result to avoid spurious spaces.
+       (url_dir_list): Do not use ifeq, which is strict, as it will
+       require RELEASE_TYPE to be defined.
+       (announcement_Cc_, announcement_mail_headers_): Likewise: instead
+       of relying on ifeq, use $(release_type) to dispatch (lazily) onto...
+       (announcement_Cc_alpha,announcement_mail_headers_alpha)
+       (announcement_Cc_beta,announcement_mail_headers_beta)
+       (announcement_Cc_stable,announcement_mail_headers_stable): these.
+       (release): Do not depend on $(release-type), as it forces its
+       evaluation.  Bounce to it.
+
 2012-09-25  Akim Demaille  <akim@lrde.epita.fr>
 
        maint.mk: formatting changes
 2012-09-25  Akim Demaille  <akim@lrde.epita.fr>
 
        maint.mk: formatting changes
 2011-07-06  Erik Faye-Lund  <kusmabite@gmail.com>
 
        poll: do not return 0 on timeout=-1
 2011-07-06  Erik Faye-Lund  <kusmabite@gmail.com>
 
        poll: do not return 0 on timeout=-1
-       * lib/poll.c: Loop with yield if no events occured
+       * lib/poll.c: Loop with yield if no events occurred.
 
 2011-07-06  Eric Blake  <eblake@redhat.com>
 
 
 2011-07-06  Eric Blake  <eblake@redhat.com>
 
 
        assume <ctype.h>, ..., <time.h> exist
        For years gnulib has been assuming the existence of the headers
 
        assume <ctype.h>, ..., <time.h> exist
        For years gnulib has been assuming the existence of the headers
-       <ctime.h>, <errno.h>, <fcntl.h>, <locale.h>, <signal.h>,
+       <ctype.h>, <errno.h>, <fcntl.h>, <locale.h>, <signal.h>,
        <stdio.h>, <stdlib.h>, <string.h>, and <time.h>.  Omit checks for
        them, since they don't appear to be needed.
        * README (Portability guidelines): Document this.
        <stdio.h>, <stdlib.h>, <string.h>, and <time.h>.  Omit checks for
        them, since they don't appear to be needed.
        * README (Portability guidelines): Document this.
 
        * lib/wcwidth.h: Declare nothing if !HAVE_WCHAR_T. Provide a fallback
        declaration for wcwidth.
 
        * lib/wcwidth.h: Declare nothing if !HAVE_WCHAR_T. Provide a fallback
        declaration for wcwidth.
-       * lib/mbswidth.c: Restore the includes of <wchar.h> and <wctypes.h>.
+       * lib/mbswidth.c: Restore the includes of <wchar.h> and <wctype.h>.
 
 2006-06-28  Bruno Haible  <bruno@clisp.org>
 
 
 2006-06-28  Bruno Haible  <bruno@clisp.org>
 
        coding: utf-8
        End:
 
        coding: utf-8
        End:
 
-       Copyright (C) 1997-2012 Free Software Foundation, Inc.
+       Copyright (C) 1997-2013 Free Software Foundation, Inc.
 
        Copying and distribution of this file, with or without
        modification, are permitted provided the copyright notice
 
        Copying and distribution of this file, with or without
        modification, are permitted provided the copyright notice