+2012-11-29 Paul Eggert <eggert@cs.ucla.edu>
+
+ 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