+2013-10-10 Eric Blake <eblake@redhat.com>
+
+ strtoumax: fix typo in previous commit.
+ * modules/strtoumax (Depends-on): Fix typo.
+ * modules/strtoimax (Depends-on): Likewise.
+
+2013-10-10 Paul Eggert <eggert@cs.ucla.edu>
+
+ strtoumax: port to Solaris 8
+ This problem was introduced in the recent HP-UX patch.
+ Reported by Tom G. Christensen in
+ <http://lists.gnu.org/archive/html/bug-gnulib/2013-10/msg00037.html>.
+ * modules/strtoumax (Depends-on): Test HAVE_STRTOUMAX
+ and REPLACE_STRTOUMAX rather than ac_cv_func_strtoumax.
+
+2013-10-09 Paul Eggert <eggert@cs.ucla.edu>
+
+ strtoimax, strtoumax: port to HP-UX 11.11
+ Problem reported by Daniel Richard G. in
+ <http://lists.gnu.org/archive/html/bug-gnulib/2013-10/msg00023.html>.
+ * lib/inttypes.in.h (strtoumax): Replace strtoumax if
+ REPLACE_STRTOUMAX, thus treating it consistently with strtoimax.
+ * m4/inttypes.m4 (gl_INTTYPES_H_DEFAULTS): Add default for
+ REPLACE_STRTOUMAX.
+ * m4/strtoimax.m4 (gl_FUNC_STRTOIMAX):
+ * m4/strtoumax.m4 (gl_FUNC_STRTOUMAX):
+ Replace the function if defined as a macro but not as a function.
+ * modules/inttypes-incomplete (inttypes.h): Substitute
+ REPLACE_STRTOUMAX.
+ * modules/strtoumax (configure.ac): Replace strtoumax if
+ REPLACE_STRTOUMAX.
+
+2013-10-08 Paul Eggert <eggert@cs.ucla.edu>
+
+ strtoimax: port to HP-UX 11.11
+ Problem reported by Daniel Richard G.
+ * lib/strtoimax.c (Strtoimax, Strtol, Strtoll): New macros.
+ (strtoimax, strtol, strtoll) [UNSIGNED]: Remove, since
+ they might clash with inttypes.h.
+
+2013-10-06 Paul Eggert <eggert@cs.ucla.edu>
+
+ New module 'count-trailing-zeros'.
+ * MODULES.html.sh: Mention it.
+ * lib/count-trailing-zeros.c, lib/count-trailing-zeros.h:
+ * m4/count-trailing-zeros.m4, modules/count-trailing-zeros:
+ * modules/count-trailing-zeros-tests:
+ * tests/test-count-trailing-zeros.c:
+ New files.
+
+ count-leading-zeros: port to MSC; support types wider than 64 bits
+ The ideas behind the MSC port are stolen from Emacs.
+ * lib/count-leading-zeros.h:
+ Don't include verify.h: it's no longer needed, as types wider than
+ 64 bits are now supported.
+ (COUNT_LEADING_ZEROS): New arg MSC_BUILTIN, for better
+ performance with MSC. All uses changed. Do not assume that TYPE
+ has at most 64 bits.
+ (count_leading_zeros_32): Assume 0 < X < 2**32, for speed.
+ All uses changed. Fold the subtraction from 31 into the table.
+
+ count-one-bits: port to MSC; support types wider than 64 bits
+ The ideas behind the MSC port are stolen from Emacs.
+ * lib/count-one-bits.c (popcount_support) [_MSC_VER]: New variable.
+ * lib/count-one-bits.h: Include limits.h, for CHAR_BIT.
+ Don't include verify.h: it's no longer needed, as types wider than
+ 64 bits are now supported.
+ (COUNT_ONE_BITS_GENERIC): New macro.
+ (popcount_supported) [_MSC_VER]: New inline function.
+ (COUNT_ONE_BITS): Use it. New arg MSC_BUILTIN, for better
+ performance with MSC. All uses changed. Do not assume that TYPE
+ has at most 64 bits.
+ * modules/count-one-bits (Depends-on): Do not depend on 'verify'.
+
+2013-10-06 Andrew Borodin <aborodin@vmail.ru>
+
+ mountlist: fix resource leak with MOUNTED_INTERIX_STATVFS
+ * lib/mountlist.c (read_file_system_list): fix leak of directory
+ streams in case of #ifdef MOUNTED_INTERIX_STATVFS.
+
+2013-10-06 Paul Eggert <eggert@cs.ucla.edu>
+
+ tests: improve diagnostic when an assertion fails
+ * tests/macros.h (ASSERT): Report the assertion that failed.
+
+2013-10-02 Paul Eggert <eggert@cs.ucla.edu>
+
+ verify: new macro 'assume'
+ This is taken from Emacs, and should be generally useful.
+ * doc/verify.texi (assume): Document it.
+ * lib/verify.h (assume): New macro.
+ (__has_builtin): Expand to 0 if not defined.
+
+2013-09-26 Eric Blake <eblake@redhat.com>
+
+ dup2, dup3: work around another cygwin crasher
+ * m4/dup2.m4 (gl_FUNC_DUP2): Expose the bug.
+ * m4/dup3.m4 (gl_FUNC_DUP3): Likewise.
+ * tests/test-dup2.c (main): Likewise.
+ * lib/dup2.c (rpl_dup2): Use setdtablesize to avoid it.
+ * lib/dup3.c (dup3): Likewise.
+ * doc/posix-functions/dup2.texi (dup2): Document it.
+ * doc/glibc-functions/dup3.texi (dup3): Likewise.
+
+ getdtablesize: work around cygwin issue
+ * m4/getdtablesize.m4 (gl_FUNC_GETDTABLESIZE): Detect problem.
+ * modules/getdtablesize (configure.ac): Build replacement.
+ * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Set up a witness.
+ * modules/unistd (Makefile.am): Expose the witness.
+ * lib/unistd.in.h (getdtablesize): Declare replacement.
+ * lib/getdtablesize.c (rpl_getdtablesize): Work around it.
+ * tests/test-getdtablesize.c (main): Test it.
+ * doc/glibc-functions/getdtablesize.texi (getdtablesize): Document it.
+
+2013-09-25 Mats Erik Andersson <gnu@gisladisker.se>
+
+ pmccabe2html: escaping of special characters
+ Escape all '<', '>', and '&' in HTML output.
+ * build-aux/pmccabe2html (html_fnc): Call gsub()
+ instead of sub() to capture all '<', '>', and '&'.
+ Neither of '<' and '>' is special in a regexp,
+ so first arguments to gsub() are corrected. Also,
+ in replacement strings, ampersand must be escaped.
+ Finally, '&' must be handled first, then '<' and '>'.
+
+2013-09-24 Eric Blake <eblake@redhat.com>
+
+ manywarnings: enable nicer gcc warning messages
+ * m4/manywarnings.m4 (gl_MANYWARN_ALL_GCC): Older gcc requires
+ some -f options for optimal warnings.
+
+2013-09-21 Jim Meyering <meyering@fb.com>
+
+ timespec: use the new TIMESPEC_RESOLUTION in a few more places
+ * lib/timespec-add.c (timespec_add): Also replace 999999999
+ with TIMESPEC_RESOLUTION - 1.
+ * lib/timespec-sub.c (timespec_sub): Likewise.
+
+2013-09-23 Paul Eggert <eggert@cs.ucla.edu>
+
+ warnings: port --enable-gcc-warnings to Solaris Studio 12.3
+ Problem reported by Dagobert Michelsen via Eric Blake in
+ <http://lists.gnu.org/archive/html/bug-gnulib/2013-09/msg00052.html>.
+ * m4/warnings.m4 (gl_COMPILER_OPTION_IF): Use AC_LINK_IFELSE,
+ not AC_COMPILE_IFELSE.
+
+2013-09-23 Eric Blake <eblake@redhat.com>
+
+ configmake: support new --runstatedir option
+ * m4/configmake.m4 (gl_CONFIGMAKE_PREP): Substitute runstatedir
+ even if autoconf was too old to provide the command line option.
+ * modules/configmake (Makefile.am): Propagate it to .h file.
+
+2013-09-22 Paul Eggert <eggert@cs.ucla.edu>
+
+ ctype, string: depend on extern-inline
+ This is needed to complete the recent OS X fixes.
+ Also, fix related documentation as suggested by Eric Blake.
+ * doc/posix-functions/isalnum.texi, doc/posix-functions/isalpha.texi:
+ * doc/posix-functions/isascii.texi, doc/posix-functions/iscntrl.texi:
+ * doc/posix-functions/isdigit.texi, doc/posix-functions/isgraph.texi:
+ * doc/posix-functions/islower.texi, doc/posix-functions/isprint.texi:
+ * doc/posix-functions/ispunct.texi, doc/posix-functions/isspace.texi:
+ * doc/posix-functions/isupper.texi, doc/posix-functions/isxdigit.texi:
+ * doc/posix-functions/toascii.texi, doc/posix-functions/tolower.texi:
+ * doc/posix-functions/toupper.texi:
+ List the 'ctype' gnulib module.
+ * doc/posix-functions/strcat.texi, doc/posix-functions/strcpy.texi:
+ * doc/posix-functions/strncpy.texi:
+ List the 'string' gnulib module.
+ * modules/memcpy, modules/memmove, modules/memset (Depends-on):
+ Add string.
+ * modules/ctype, modules/string (Depends-on): Add extern-inline.
+
+2013-09-19 Pádraig Brady <P@draigBrady.com>
+
+ userspec: support optional parameters to parse_user_spec()
+ * lib/userspec.c (parse_user_spec): If the GID param is NULL,
+ then avoid group processing and treat the full spec as a user.
+ (parse_with_separator): Allow the USERNAME and GROUPNAME to
+ be optional params (NULL), in which case they're ignored.
+
+2013-09-19 Paul Eggert <eggert@cs.ucla.edu>
+
+ timespec: new function make_timespec, and new constants
+ * lib/timespec.h: Incorporate recent changes on the Emacs trunk.
+ (TIMESPEC_RESOLUTION, LOG10_TIMESPEC_RESOLUTION): New constants.
+ (make_timespec): New function.
+ * lib/dtotimespec.c (dtotimespec):
+ * lib/timespec-add.c (timespec_add):
+ * lib/timespec-sub.c (timespec_sub):
+ * lib/utimens.c (validate_timespec):
+ * lib/utimensat.c (rpl_utimensat):
+ Use these new constants and functions.
+
+ stdio: OS X port of putc_unlocked + extern inline
+ * lib/stdio.in.h (putc_unlocked): #undef on problematic Apple platforms.
+ * doc/posix-functions/putc_unlocked.texi:
+ * doc/posix-functions/putchar_unlocked.texi:
+ Document this portability problem.
+
+ signal: OS X port of sigaddset etc. + extern inline
+ * lib/signal.in.h (sigaddset, sigdelset, sigemptyset, sigfillset)
+ (sigismember): #undef on problematic Apple platforms.
+ * doc/posix-functions/sigaddset.texi:
+ * doc/posix-functions/sigdelset.texi:
+ * doc/posix-functions/sigemptyset.texi:
+ * doc/posix-functions/sigfillset.texi:
+ * doc/posix-functions/sigismember.texi:
+ Document this portability problem.
+
+ extern-inline: do not always suppress extern inline on OS X
+ * m4/extern-inline.m4 (gl_EXTERN_INLINE): Suppress the use of
+ extern inline on Apple only if the particular compile-time
+ configuration is known to have the problem.
+ (_GL_EXTERN_INLINE_APPLE_BUG): New private macro, to implement this.
+ (_GL_EXTERN_INLINE_IN_USE): New macro, intended for use by
+ other Gnulib modules.
+
+ extern-inline: document fixes for ctype and wctype macros
+ * doc/posix-functions/isalnum.texi, doc/posix-functions/isalpha.texi:
+ * doc/posix-functions/isascii.texi, doc/posix-functions/isblank.texi:
+ * doc/posix-functions/iscntrl.texi, doc/posix-functions/isdigit.texi:
+ * doc/posix-functions/isgraph.texi, doc/posix-functions/islower.texi:
+ * doc/posix-functions/isprint.texi, doc/posix-functions/ispunct.texi:
+ * doc/posix-functions/isspace.texi, doc/posix-functions/isupper.texi:
+ * doc/posix-functions/iswalnum.texi, doc/posix-functions/iswalpha.texi:
+ * doc/posix-functions/iswcntrl.texi, doc/posix-functions/iswctype.texi:
+ * doc/posix-functions/iswdigit.texi, doc/posix-functions/iswgraph.texi:
+ * doc/posix-functions/iswlower.texi, doc/posix-functions/iswprint.texi:
+ * doc/posix-functions/iswpunct.texi, doc/posix-functions/iswspace.texi:
+ * doc/posix-functions/iswupper.texi, doc/posix-functions/iswxdigit.texi:
+ * doc/posix-functions/isxdigit.texi, doc/posix-functions/toascii.texi:
+ * doc/posix-functions/memcpy.texi, doc/posix-functions/memmove.texi:
+ * doc/posix-functions/memset.texi, doc/posix-functions/stpcpy.texi:
+ * doc/posix-functions/stpncpy.texi, doc/posix-functions/strcat.texi:
+ * doc/posix-functions/strcpy.texi, doc/posix-functions/strncat.texi:
+ * doc/posix-functions/strncpy.texi:
+ * doc/posix-functions/tolower.texi, doc/posix-functions/toupper.texi:
+ * doc/posix-functions/towlower.texi, doc/posix-functions/towupper.texi:
+ Document that Gnulib fixes portability problems with these
+ functions on OS X 10.8 and earlier when called from plain inline
+ or extern inline functions.
+
+2013-09-17 Kevin Cernekee <cernekee@gmail.com>
+
+ fflush, freadahead, fseeko: Fix for Android
+ Suggested by Bruno Haible in:
+ <http://lists.gnu.org/archive/html/bug-gnulib/2012-01/msg00306.html>
+ * lib/stdio-impl.h: Use local __sfileext definition.
+
+2013-09-17 Mats Erik Andersson <gnu@gisladisker.se>
+
+ pmccabe2html: Portability to other awk versions.
+ The functions systime() and strftime() are available
+ in Gawk only. Properly close two HTML-tags 'style'
+ and 'span'.
+ * build-aux/pmccabe2html (BEGIN): Store timing
+ strings in EPOCH_TIME and CHRONOS_TIME. Replace
+ systime() in HTML_COMMENT.
+ (html_header): Correctly close tag 'style'.
+ (END): Replace strftime() by CHRONOS_TIME. Close
+ tag 'span' correctly, not as 'div'.
+
+2013-09-17 Mats Erik Andersson <gnu@gisladisker.se> (tiny change)
+
+ getgroups: statement without effect
+ * lib/getgroups.c (rpl_getgroups) [HAVE_GETGROUPS]:
+ Change equality conditional to expected assignment.
+
+2013-09-09 Eric Blake <eblake@redhat.com>
+
+ glob: fix compilation
+ * lib/glob.in.h (__THROW): Fix missing line in previous commit.
+
+2013-09-07 Eric Blake <eblake@redhat.com>
+
+ glob: fix build for platforms without __THROW
+ * lib/glob.in.h (__THROW): Add definition again.
+
+2013-09-04 Anton Ovchinnikov <revolver112@gmail.com> (tiny change)
+
+ regex-quote: fix buffer access out of bounds
+ http://lists.gnu.org/archive/html/bug-gnulib/2013-09/msg00001.html
+ * lib/regex-quote.c (regex_quote_spec_pcre):
+ Fix typo that resulted in an out-of-bounds read.
+
+2013-09-04 Eric Blake <eblake@redhat.com>
+
+ glob: avoid -Wattribute warnings on glibc
+ * lib/glob.c (next_brace_sub, prefix_array, collated_compare): Use
+ __THROWNL, not __THROW, on static functions.
+ * lib/glob.in.h (__THROW): Adjust...
+ (__THROWNL): ...accordingly.
+
+2013-08-28 Paul Eggert <eggert@cs.ucla.edu>
+
+ headers: check that _GL_INLINE_HEADER_BEGIN is defined
+ Suggested by Bruce Korb in:
+ http://lists.gnu.org/archive/html/bug-gnulib/2013-08/msg00070.html
+ * doc/extern-inline.texi (extern inline):
+ Suggest checking that _GL_INLINE_HEADER_BEGIN is defined.
+ * lib/acl-internal.h, lib/argp-fmtstream.h, lib/argp.h:
+ * lib/binary-io.h, lib/bitrotate.h, lib/count-leading-zeros.h:
+ * lib/count-one-bits.h, lib/eealloc.h, lib/execinfo.in.h:
+ * lib/gethrxtime.h, lib/gl_list.h, lib/gl_oset.h, lib/gl_xlist.h:
+ * lib/gl_xoset.h, lib/gl_xsublist.h, lib/glthread/cond.h:
+ * lib/glthread/thread.h, lib/math.in.h, lib/mbchar.h, lib/mbfile.h:
+ * lib/mbiter.h, lib/mbuiter.h, lib/openat.h, lib/pipe-filter-aux.h:
+ * lib/priv-set.h, lib/pthread.in.h, lib/savewd.h, lib/se-context.in.h:
+ * lib/se-selinux.in.h, lib/sig-handler.h, lib/stat-time.h:
+ * lib/sys_socket.in.h, lib/timespec.h, lib/u64.h, lib/unistd.in.h:
+ * lib/utimens.h, lib/wctype.in.h, lib/xalloc.h, lib/xsize.h:
+ * lib/xtime.h:
+ Check that _GL_INLINE_HEADER_BEGIN is defined.
+
+2013-08-29 Pádraig Brady <P@draigBrady.com>
+
+ bootstrap: remove the --version requirement from ancillary tools
+ * build-aux/bootstrap (check_exists): A new refactored function to
+ determine if a command exists.
+ (find_tool): Use the new function which does not require the
+ --version option to be supported.
+ (check_versions): Use the new function.
+
+2013-08-26 Simon Josefsson <simon@josefsson.org>
+
+ gc: support HMAC-SHA256 and HMAC-SHA512.
+ * lib/gc.h: Add gc_hmac_sha256 and gc_hmac_sha512.
+ * lib/gc-libgcrypt.c (gc_hmac_sha256, gc_hmac_sha512): New
+ functions.
+ (gc_hmac_md5): Use symbolic constant.
+ * lib/gc-gnulib.c: Include hmac.h for HMAC-SHA256/512 too.
+ (gc_hmac_sha256, gc_hmac_sha512): New functions.
+ * lib/hmac.h: Add hmac_sha256 and hmac_sha512 prototypes.
+ * m4/sha256.m4: Protect against empty expansion.
+ * m4/sha512.m4: Likewise.
+ * lib/hmac-sha256.c: New file.
+ * lib/hmac-sha512.c: Likewise.
+ * m4/gc-hmac-sha256.m4: Likewise.
+ * m4/gc-hmac-sha512.m4: Likewise.
+ * m4/gc-sha256.m4: Likewise.
+ * m4/gc-sha512.m4: Likewise.
+ * modules/crypto/gc-hmac-sha256: Likewise.
+ * modules/crypto/gc-hmac-sha256-tests: Likewise.
+ * modules/crypto/gc-hmac-sha512: Likewise.
+ * modules/crypto/gc-hmac-sha512-tests: Likewise.
+ * modules/crypto/hmac-sha256: Likewise.
+ * modules/crypto/hmac-sha256-tests: Likewise.
+ * modules/crypto/hmac-sha512: Likewise.
+ * modules/crypto/hmac-sha512-tests: Likewise.
+ * tests/test-gc-hmac-sha256.c: Likewise.
+ * tests/test-gc-hmac-sha512.c: Likewise
+ * tests/test-hmac-sha256.c: Likewise.
+ * tests/test-hmac-sha512.c: Likewise
+
+2013-08-24 Daiki Ueno <ueno@gnu.org>
+
+ * m4/intl.m4: Update from gettext-0.18.3.1, which fixes a misuse
+ of AC_CHECK_DECLS.
+
+2013-08-23 Paul Eggert <eggert@cs.ucla.edu>
+
+ selinux-at: omit unnecessary include
+ * lib/selinux-at.c: Don't include dosname.h; not needed, since
+ this source file doesn't use its macros, and subsidiary files that
+ use the macros already include it.
+
+2013-08-21 Eric Blake <eblake@redhat.com>
+
+ d-ino: avoid false negative on symlink
+ * m4/d-ino.m4 (gl_CHECK_TYPE_STRUCT_DIRENT_D_INO): Use lstat.
+ Reported by Stephane Chazelas.
+
+2013-08-12 Mike Miller <mtmiller@ieee.org> (tiny change)
+
+ bootstrap: port to OpenBSD sed
+ * build-aux/bootstrap (insert_if_absent): Port to OpenBSD sed which
+ does not interpret `-' as a file argument to mean stdin.
+
+2013-08-15 Eric Blake <eblake@redhat.com>
+
+ warnings: minor optimization
+ * m4/warnings.m4 (gl_COMPILER_OPTION_IF): Use fewer processes.
+
+ warnings: check -Wfoo rather than -Wno-foo
+ * m4/warnings.m4 (gl_COMPILER_OPTION_IF): If name begins with
+ -Wno-, test if the compiler recognizes the positive form instead.
+
+2013-08-15 Karl Berry <karl@gnu.org>
+
+ * config/srclist-update: add option "doclicense" to placate
+ pulling *.texi files from Emacs. Write terse usage
+ documentation at the top.
+
+2013-08-13 Paul Eggert <eggert@cs.ucla.edu>
+
+ xvasprintf-tests: port to GCC with hardening flags
+ * tests/test-xvasprintf.c (test_xasprintf): Pass another arg to
+ xasprintf, to pacify GCC. Reported by Santiago Vila in:
+ http://lists.gnu.org/archive/html/bug-diffutils/2013-08/msg00002.html
+
+2013-08-11 Paul Eggert <eggert@cs.ucla.edu>
+
+ fpending: port to recent Cygwin change to stdio_ext.h
+ Reported by LRN in
+ <http://lists.gnu.org/archive/html/bug-gnulib/2013-08/msg00028.html>.
+ * lib/fpending.h: Don't worry about HAVE_DECL___FPENDING;
+ just declare __fpending unless it's a macro.
+ A duplicate decl shouldn't hurt.
+ * m4/fpending.m4 (gl_FUNC_FPENDING): Check that an __fpending
+ call compiles and links, instead of separately checking for
+ decl and lib function.
+ * modules/fpending (configure-ac):
+ Adjust to fpending.m4's renaming of shell variable.
+
+2013-08-10 Paul Eggert <eggert@cs.ucla.edu>
+
+ sys_time: port to OpenBSD
+ * lib/sys_time.in.h: Simply delegate to the system's header
+ in the BSDish cases as well. Problem reported by Mike Miller in
+ <http://lists.gnu.org/archive/html/bug-gnulib/2013-08/msg00016.html>.
+ * tests/test-sys_select.c, tests/test-sys_time.c (verify_tv_sec_type):
+ Allow platforms like 64-bit OpenBSD where timeval's tv_sec is
+ wider than time_t.
+
+2013-08-09 Pádraig Brady <P@draigBrady.com>
+
+ bootstrap: support checksum utils having -c but not --status
+ * build-aux/bootstrap: Only look for sha1sum if updating po files.
+ Add sha1 to the list of supported checksum utils since it's now
+ supported through adjustments below.
+ (update_po_files): Remove the use of --status
+ in a way that will suppress all error messages, but since this is
+ only used to minimize updates, it shouldn't cause an issue.
+ Exit early if there is a problem updating the po file checksums.
+ (find_tool): Remove the check for --version support as this
+ is optional as per commit 86186b17. Don't even check for the
+ presence of the command as if that is needed, it's supported
+ through configuring prerequisites in bootstrap.conf.
+ Prompt that when a tool isn't found, one can define an environment
+ variable to add to the hardcoded search list.
+
+2013-08-05 Jim Meyering <meyering@fb.com>
+
+ regex: port to non-glibc/lock-using systems
+ Since 29-05-2013 commit, 55ba71f4, compilation on a non-glibc
+ system with GNULIB_LOCK would fail due to absence of the
+ included "glthread/lock.h". This would affect any package
+ for which the "lock" module is used only by the regex module,
+ and not explicitly used.
+ * m4/regex.m4 (gl_PREREQ_REGEX): Require gl_GLIBC21.
+ * modules/regex (Depends-on) [!GLIBC && $ac_use_included_regex]:
+ Add a dependency on the "lock" module.
+
+2013-07-20 Daiki Ueno <ueno@gnu.org>
+
+ localecharset: make locale_charset thread-safe on Mac OS X
+ * lib/localcharset.c (locale_charset) [DARWIN7]: Use MB_CUR_MAX_L
+ instead of MB_CUR_MAX.
+
+2013-07-20 Daiki Ueno <ueno@gnu.org>
+
+ gettext: update to version 0.18.3
+ * m4/intl.m4, m4/po.m4: Update from gettext-0.18.3. In particular,
+ require AC_PROG_SED to allow user to specify custom sed command when
+ generating en@quot PO file.
+
+2013-07-18 Werner Lemberg <wl@gnu.org> (tiny change)
+
+ bootstrap: use correct source when copying build-aux files
+ * build-aux/bootstrap (gnulib_extra_files): This variable is
+ relative to upstream gnulib layout, not downstream.
+
+2013-07-17 Paul Eggert <eggert@cs.ucla.edu>
+
+ tmpdir: fix bug in VMS port
+ * lib/tmpdir.c (path_search) [__VMS]: Never add slash.
+ See Steven M. Schweda in
+ <http://lists.gnu.org/archive/html/bug-gnulib/2013-07/msg00026.html>.
+
+2013-07-15 Paul Eggert <eggert@cs.ucla.edu>
+
+ tmpdir: port to VMS, to // != /, and to long dirs
+ * lib/tmpdir.c (__libc_secure_getenv) [!_LIBC]: Rename from
+ __secure_getenv, so that we're more like the glibc version.
+ All uses changed.
+ (path_search): Don't put slash after directory if __VMS.
+ Problem reported by Steven M. Schweda in
+ <http://lists.gnu.org/archive/html/bug-gnulib/2013-07/msg00019.html>.
+ Simplify code to add slash; no need for a loop.
+ Do not remove trailing slash from "//".
+ Do not assume dlen <= INT_MAX.
+
+2013-07-09 Paul Eggert <eggert@cs.ucla.edu>
+
+ regex: port to --with-included-regex --enable-gcc-warnings non-threaded
+ * lib/regex_internal.h (lock_fini, lock_lock): Rework to avoid
+ gcc warnings in the non-threaded case. Reported by Charlie Brown in
+ <http://lists.gnu.org/archive/html/bug-gnulib/2013-07/msg00015.html>.
+
+ accept4, dup3, pipe2: port to Cygwin
+ Problem reported for Emacs by Ken Brown in <http://bugs.gnu.org/14821>.
+ * lib/accept4.c (accept4) [O_BINARY]:
+ * lib/dup3.c (dup3) [O_BINARY]:
+ * lib/pipe2.c (pipe2) [O_BINARY]:
+ Use set_binary_mode, not setmode.
+ * lib/pipe2.c [!GNULIB_BINARY_IO]: Include binary-io.h.
+ * modules/binary-io (Depends-on): Remove module indicator.
+ These last two bits undo the previous change to pipe2 and binary-io.
+
+2013-07-09 Pádraig Brady <P@draigBrady.com>
+
+ mountlist: add support for deallocating returned list entries
+ * lib/mountlist.c (free_mount_entry): A new exported function
+ to deallocate a mount list entry.
+ (read_file_system_list): Refactor to use the new deallocation function.
+ Suggested by Anton Ovchinnikov.
+
+2013-07-07 Paul Eggert <eggert@cs.ucla.edu>
+
+ stdalign, verify: port to FreeBSD 9.1, to C11, and to C++11
+ Problem reported by Ulrich Mueller in <http://bugs.gnu.org/14812>.
+ * lib/stdalign.in.h (_Alignas, _Alignof):
+ Port to FreeBSD 9.1, and to C11 and C++11.
+ (_Alignas): Also support ICC.
+ * lib/verify.h (_Static_assert): Undef if <stddef.h> defines it.
+ * m4/stdalign.m4 (gl_STDALIGN_H): Port to ICC and to C++11.
+
+2013-07-06 Paul Eggert <eggert@cs.ucla.edu>
+
+ fnmatch: don't goto over declaration
+ * lib/fnmatch_loop.c (FCT): Hoist local up one level, to avoid
+ undefined behavior for goto over a declaration.
+ Problem reported by Charlie Brown in
+ <http://lists.gnu.org/archive/html/bug-gnulib/2013-07/msg00009.html>.
+
+ pipe2: decouple from binary-io a bit
+ This is for Emacs, which needs pipe2 but not binary-io.
+ * lib/pipe2.c [!GNULIB_BINARY_IO]: Don't include binary-io.h.
+ * modules/binary-io (Depends-on): Add module indicator.
+
+2013-07-03 Eric Blake <eblake@redhat.com>
+
+ mgetgroups: relax license to LGPLv2+
+ * modules/getugroups (License): Change from GPLv3+.
+ * modules/mgetgroups (License): Likewise.
+ * modules/getgroups (License): Change from LGPLv3+.
+
+ xalloc-oversized: relax license to LGPLv2+
+ * modules/xalloc-oversized (License): Change from GPLv3+.
+
+ nproc: relax license to LGPLv2+
+ * modules/nproc (License): Change from LGPLv3+.
+
+ bootstrap: honor --no-git
+ * build-aux/bootstrap: Don't even try to use git when user is
+ pointing to a static checkout.
+
+2013-06-23 Paul Eggert <eggert@cs.ucla.edu>
+
+ ignore-value: port to gcc -pedantic
+ * lib/ignore-value.h (ignore_value):
+ Port to gcc -pedantic, by using __extension__.
+ Reindent as per usual gnulib style nowadays.
+ Simplify GCC version check.
+
+2013-06-21 Paul Eggert <eggert@cs.ucla.edu>
+
+ extern-inline: port to gcc -std=c89
+ * m4/extern-inline.m4 (gl_EXTERN_INLINE):
+ Do not use __gnu_inline__ if pedantic and pre-C99.
+
+2013-06-18 Paul Eggert <eggert@cs.ucla.edu>
+
+ doc: document extern-inline
+ * doc/extern-inline.texi: New file.
+ * doc/gnulib.texi (alloca-opt): Include it.
+ * m4/extern-inline.m4: Move some comments to documentation,
+ and others closer to what they describe.
+
+ doc: chatter less
+ * doc/Makefile (NEWEST_GNULIB_TEXI_FILE): New macro.
+ (updated-stamp): Use it. This causes 'make' to output just
+ one file name rather than zillions.
+
+ fflush, fseeko: port to musl cross-compiles
+ * lib/fseeko.c (fseeko): Assume that fflushing stdin works if
+ on some implementation that (1) is not known to be buggy,
+ (2) claims conformance to POSIX.1-2008 or later, and (3) is being
+ cross-compiled to so we can't easily check for lack of
+ conformance. This is for cross-compiling to musl.
+ Reported by Rich Felker in
+ <http://lists.gnu.org/archive/html/bug-gnulib/2013-06/msg00043.html>.
+ * m4/fclose.m4 (gl_FUNC_FCLOSE):
+ * m4/fflush.m4 (gl_FUNC_FFLUSH):
+ * m4/fseeko.m4 (gl_FUNC_FSEEKO):
+ Adjust to above change.
+ * m4/fflush.m4 (gl_FUNC_FFLUSH_STDIN): Set gl_cv_func_fflush_stdin
+ to 'cross', not to 'no', when cross-compiling. AC_DEFINE
+ FUNC_FFLUSH_STDIN to 1, 0, -1 if fflushing stdin is known to work,
+ known not to work, or unknown.
+
+2013-06-15 Paul Eggert <eggert@cs.ucla.edu>
+
+ msvc-inval: port to mingw-w64
+ * lib/msvc-inval.c (gl_msvc_invalid_parameter_handler):
+ Use __cdecl, not cdecl, for mingw-w64. Reported by LRN in
+ <http://lists.gnu.org/archive/html/bug-gnulib/2013-06/msg00039.html>.
+
+2013-06-11 Paul Eggert <eggert@cs.ucla.edu>
+
+ getcwd-lgpl: port to Tru64
+ * lib/getcwd-lgpl.c: Include <stdlib.h>, for malloc etc.
+ Problem reported by Steven M. Schweda in
+ <http://lists.gnu.org/archive/html/bug-gzip/2013-06/msg00010.html>.
+
+ tests: port large-fd POSIX spawn tests to OS X
+ Problem reported by Daiki Ueno in
+ <http://lists.gnu.org/archive/html/bug-gnulib/2013-06/msg00031.html>.
+ * tests/test-posix_spawn_file_actions_addclose.c:
+ * tests/test-posix_spawn_file_actions_adddup2.c:
+ * tests/test-posix_spawn_file_actions_addopen.c:
+ Include <limits.h>, for OPEN_MAX, if available.
+ (big_fd): New static function.
+ (main): Use it.
+
+2013-06-04 Bernhard Voelker <mail@bernhard-voelker.de>
+
+ tests/nap.h: use an adaptive delay to avoid ctime update issues
+ The recent change in nap.h (5191133e) decreased the probability of lost
+ races to about a third, however such problems could still be observed
+ in virtual machines and openSUSE's OBS.
+ Before, nap() detected the needed time once empirically and then used
+ that delay (together with a small correction multiplier) in further
+ calls. This problem has been reported and discussed several times,
+ including guesses about possible kernel issues:
+ https://lists.gnu.org/archive/html/bug-gnulib/2013-04/msg00071.html
+ http://lists.gnu.org/archive/html/coreutils/2012-03/msg00088.html
+ https://lists.gnu.org/archive/html/bug-gnulib/2011-11/msg00226.html
+ http://bugs.gnu.org/12820
+ https://lists.gnu.org/archive/html/bug-gnulib/2010-11/msg00113.html
+ https://lists.gnu.org/archive/html/bug-gnulib/2009-11/msg00007.html
+ Now, nap() avoids the race alltogether by verifying on a reference
+ file whether a timestamp difference has happened.
+ * tests/nap.h (nap_fd): Define file descriptor variable for the
+ witness file.
+ (nap_works): Change return value to bool. Change passing
+ the old file's status by value instead of by reference as this function
+ does no longer update that timestamp; rename the function argument from
+ st to old_st. Remove the local variables cdiff and mdiff because that
+ function now returns true/false instead of the precise delay.
+ (guess_delay): Remove function.
+ (clear_tmp_file): Add new function to close and unlink the witness file.
+ (nap): Instead of re-using the delay which has been calculated during
+ the first call, avoid the race by actually verifying that a timestamp
+ difference can be observed on the current file system. Use an adaptive
+ approach for the delay to minimize execution time. Assert that the
+ maximum delay is <= ~2 seconds, more precisely sum(2^n) from 0 to 30
+ = 2^31 - 1 = 2.1s.
+ Use atexit to call clear_tmp_file when the process terminates.
+
+2013-06-02 Paul Eggert <eggert@cs.ucla.edu>
+
+ sig2str: port to C++
+ * lib/sig2str.h (sig2str, str2sig): Declare as extern "C".
+ Reported by Daniel J Sebald in
+ <http://lists.gnu.org/archive/html/bug-gnulib/2013-06/msg00000.html>.
+
+2013-05-30 Eric Blake <eblake@redhat.com>
+
+ docs: mention cygwin shortcoming in <sys/un.h>
+ * doc/posix-headers/sys_un.texi (sys/un.h): Mention problem.
+
+ vasnprintf: silence mingw compiler warning
+ * lib/vasnprintf.c (VASNPRINTF): Avoid unused variable warning.
+
+2013-05-29 Paul Eggert <eggert@cs.ucla.edu>
+
+ c-ctype, regex, verify: port to gcc -std=c90 -pedantic
+ Avoid constructions that are rejected by gcc -std=c90 -pedantic.
+ This fixes a porting bug I recently reintroduced in regex, and
+ some other instances that I discovered while testing the fix.
+ * lib/c-ctype.h [__STRICT_ANSI__]: Avoid ({ ... }).
+ * lib/regcomp.c (utf8_sb_map) [__STRICT_ANSI__]: Avoid [0 ... N] = E.
+ * lib/regex_internal.h [!_LIBC && GNULIB_LOCK]: Do not use a macro
+ with an empty argument if this is a pedantic pre-C99 GCC.
+ * lib/verify.h: Do not use _Static_assert if this is a pedantic
+ pre-C11 GCC.
+
+ regex: adapt to locking regime instead of depending on pthread
+ Instead of depending on pthread, adapt to whatever thread
+ modules are in use. Problem reported by Ludovic Courtès in
+ <http://lists.gnu.org/archive/html/bug-gnulib/2013-05/msg00082.html>
+ and by Mats Erik Andersson in
+ <http://lists.gnu.org/archive/html/bug-gnulib/2013-05/msg00100.html>.
+ * lib/regex_internal.h (lock_define, lock_init, lock_fini):
+ Support either the 'lock' module, or the 'pthread' module, or
+ no module.
+ (lock_lock, lock_unlock): New macros.
+ * lib/regexec.c (regexec, re_search_stub): Use the new macros.
+ * modules/lock, modules/pthread (configure.ac): Add module indicator.
+ * modules/regex (Depends-on): Remove pthread.
+
+2013-05-22 Eric Blake <eblake@redhat.com>
+
+ getgroups: document portability issues
+ * doc/glibc-functions/initgroups.texi (initgroups): Mention
+ multithread safety.
+ * doc/posix-functions/getpwuid.texi (getpwuid): Likewise.
+ * doc/posix-functions/getpwuid_r.texi (getpwuid_r): Likewise.
+ * doc/glibc-functions/getgrouplist.texi (getgrouplist): Mention
+ getugroups.
+ * doc/posix-functions/getgroups.texi (getgroups): Mention
+ multithread safety and mgetgroups.
+
+2013-05-22 Bernhard Voelker <mail@bernhard-voelker.de>
+
+ test-lchown, test-chown: also skip test if chown fails with EPERM
+ * tests/test-lchown.h (test_lchown): Add EPERM to the condition to
+ skip this test, to handle FAT file systems.
+ * tests/test-chown.h (test_chown): Likewise.
+
+2013-05-19 Paul Eggert <eggert@cs.ucla.edu>
+
+ regex: fix dfa race in multithreaded uses
+ Problem reported by Ludovic Courtès in
+ <http://lists.gnu.org/archive/html/bug-gnulib/2013-05/msg00058.html>.
+ * lib/regex_internal.h (lock_define, lock_init, lock_fini):
+ New macros. All uses of __libc_lock_define, __libc_lock_init
+ changed to use the first two of these.
+ (__libc_lock_lock, __libc_lock_unlock): New macros, for
+ non-glibc platforms.
+ (struct re_dfa_t): Define the lock unconditionally.
+ * lib/regexec.c (regexec, re_search_stub): Remove some now-incorrect
+ '#ifdef _LIBC"s.
+ * modules/regex (Depends-on): Add pthread, if we use the
+ included regex.
+
+ * lib/regcomp.c: Do actions that are not needed for glibc,
+ but may be needed elsewhere.
+ (regfree, re_compile_internal): Destroy the lock.
+ (re_compile_internal): Check for lock-initialization failure.
+
+ malloca: port to compilers that reject size-zero arrays
+ This fixes a bug introduced in my previous patch.
+ * lib/malloca.c (struct preliminary_header): Use an int
+ rather than a character array of size int; that's simpler.
+ (struct header): Remove, replacing with ...
+ (union header): New type. This avoids the need for declaring a
+ character array of size zero, which is not allowed on some platforms.
+ All uses changed.
+
+2013-05-18 Paul Eggert <eggert@cs.ucla.edu>
+
+ parse-datetime, tests: don't use "string" + int
+ Recent versions of 'clang' complain about C source code that
+ uses expressions of the form '"string literal" + integer',
+ I guess on the theory that it's confusing for readers who are
+ used to C++. On those grounds I suppose it's OK to make this
+ minor style change.
+ * lib/parse-datetime.y (parse_datetime):
+ * tests/test-fchdir.c (main):
+ * tests/test-snprintf-posix.h (test_function):
+ * tests/test-snprintf.c (main):
+ * tests/test-vasnprintf-posix.c (test_function):
+ * tests/test-vasnprintf.c (test_function):
+ * tests/test-vsnprintf.c (main):
+ * tests/unistdio/test-ulc-asnprintf1.h (test_function):
+ Rewrite '"str" + E' to '&"str"[E]'.
+
+2013-05-17 Alexandre Duret-Lutz <adl@lrde.epita.fr>
+
+ argmatch: port to C++
+ * lib/argmatch.h [__cplusplus]: Add extern "C".
+
+ argp: typo fix
+ * lib/argp-help.c: Typo in comment.
+
+2013-05-15 Paul Eggert <eggert@cs.ucla.edu>
+
+ manywarnings: update for GCC 4.8.0
+ * m4/manywarnings.m4 (gl_MANYWARN_ALL_GCC):
+ Add -Waggressive-loop-optimizations, -Wreturn-local-addr, which
+ are new to GCC 4.8. Remove -Wformat=2, -Wmissing-format-attribute,
+ -Wmissing-noreturn, as they are duplicates of other warnings.
+ Remove -Wunreachable-code, as it is removed in GCC 4.8 and
+ was documented to be flaky in earlier versions of GCC.
+
+ spawn-tests, sys_socket-tests, sys_wait-tests: port to clang
+ * tests/test-spawn.c (main):
+ * tests/test-sys_socket.c (main):
+ * tests/test-sys_wait.c (main):
+ Don't have a switch value that isn't covered by a case.
+
+ getaddrinfo-tests: port --enable-gcc-warnings to clang
+ * tests/test-getaddrinfo.c (simple):
+ Avoid casts from looser to stricter-aligned pointers.
+
+ thread: port --enable-gcc-warnings to clang
+ * lib/glthread/thread.h [__clang__ && USE_POSIX_THREADS_WEAK]:
+ Include <signal.h>, to pacify a warning about pthread_sigmask.
+
+ stdio: use __REDIRECT for fwrite, fwrite_unlocked
+ * lib/stdio.in.h (fwrite):
+ When working around bug 11959, use __REDIRECT rather than '#define
+ fwrite(...) ... fwrite (...) ...'. This is a more-targeted way to
+ fix the -Wunused-value issue with clang, and it works with GCC too.
+ Problem with targeting reported by Eric Blake in
+ <http://lists.gnu.org/archive/html/bug-gnulib/2013-05/msg00067.html>.
+ (fwrite_unlocked): Treat like fwrite. I ran into this issue while
+ debugging the fwrite issue.
+
+ stdio: port --enable-gcc-warnings to clang
+ * lib/stdio.in.h (fwrite) [__clang__]: Ignore -Wunused-value entirely,
+ since the GCC workaround for fwrite does not pacify clang.
+
+ sig2str: port --enable-gcc-warnings to clang
+ * lib/sig2str.c (sig2str): Avoid warning about unused printf argument.
+
+ obstack: port --enable-gcc-warnings to clang
+ * lib/obstack.h (obstack_ptr_grow_fast, obstack_int_grow_fast):
+ Avoid casts from looser to stricter-aligned pointers.
+
+ memchr2: port --enable-gcc-warnings to clang
+ * lib/memchr2.c (memchr2):
+ Avoid casts from looser to stricter-aligned pointers.
+
+ mbsstr: port --enable-gcc-warnings to clang
+ * lib/mbsstr.c (knuth_morris_pratt_multibyte):
+ Avoid casts from looser to stricter-aligned pointers.
+
+ malloca: port --enable-gcc-warnings to clang
+ * lib/malloca.c (struct header): New member 'magic', to avoid casts.
+ (mmalloca): Avoid casts from looser to stricter-aligned pointers.
+
+ inttostr: port --enable-gcc-warnings to clang
+ * lib/anytostr.c [__clang__]: Ignore -Wtautological-compare.
+
+ warnings: port to clang
+ Problem reported by Daniel P. Berrange via Eric Blake in
+ <http://lists.gnu.org/archive/html/bug-gnulib/2013-05/msg00055.html>.
+ * m4/warnings.m4 (gl_UNKNOWN_WARNINGS_ARE_ERRORS): New macro.
+ (gl_WARN_ADD): Use it.
+
+2013-05-11 Jim Meyering <meyering@fb.com>
+
+ quotearg: do not read beyond end of buffer
+ * lib/quotearg.c (quotearg_buffer_restyled): Do not read beyond the
+ end of an ARG for which no length was specified. With an N-byte
+ quote string, (e.g., N is 3 in the fr_FR.UTF-8 locale), this function
+ would read N-2 bytes beyond ARG's trailing NUL. This was triggered
+ via coreutils' misc/sort-debug-keys.sh test and detected by running
+ the test against a binary compiled with gcc-4.8.0's -fsanitize=address.
+ * tests/test-quotearg-simple.c (main): Add a test to trigger the bug.
+ * modules/quotearg-simple-tests (Files): Add tests/zerosize-ptr.h.
+ Introduced via the 2000-01-15 commit, c4b7f3f8, "Quote multibyte
+ characters correctly."
+
+2013-05-11 Daiki Ueno <ueno@gnu.org>
+
+ lock: work around pthread recursive mutexes bug in Mac OS X 10.6
+ * m4/lock.m4: Don't define HAVE_PTHREAD_MUTEX_RECURSIVE if the
+ compilation target is Mac OS X 10.6.
+ Problem reported by parafin and Andoni Morales in
+ <http://savannah.gnu.org/bugs/?37844> and
+ <http://lists.gnu.org/archive/html/bug-gettext/2013-05/msg00007.html>.
+
+2013-05-11 Paul Eggert <eggert@cs.ucla.edu>
+
+ mkdir-p: remove assumptions about umask and mode
+ * lib/mkdir-p.c (make_dir_parents): Do not assume that the current
+ umask is 0, or that MODE is a subset of MODE_BITS.
+
+2013-05-10 Eric Blake <eblake@redhat.com>
+
+ maint.mk: catch more abuse of HAVE_DECL in syntax-check
+ * top/maint.mk (sc_prohibit_defined_have_decl_tests): Relax regex.
+
+2012-05-10 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ deps: require Automake >= 1.9.6 in generated Makefile fragments
+
+ That is the same minimal version required in the DEPENDENCIES file.
+ Moreover, the old code generated a requirement of Automake >= 1.5,
+ and that is an insanely outdated version.
+
+ * gnulib-tool: Bump minimal version requirement in AUTOMAKE_OPTIONS.
+ * tests/havelib/rpathlx/Makefile.am: Likewise.
+ * tests/havelib/rpathly/Makefile.am: Likewise.
+ * tests/havelib/rpathlyx/Makefile.am: Likewise.
+ * tests/havelib/rpathlz/Makefile.am: Likewise.
+ * tests/havelib/rpathlzyx/Makefile.am: Likewise.
+ * tests/havelib/rpathx/Makefile.am: Likewise.
+ * tests/havelib/rpathy/Makefile.am: Likewise.
+ * tests/havelib/rpathz/Makefile.am: Likewise.
+
+2013-05-08 Eric Blake <eblake@redhat.com>
+
+ bootstrap: AC_INIT may have more than four parameters
+ * build-aux/bootstrap (extract_package_name): Correctly extract
+ non-empty tarname field. Avoid range in regex.
+ Based on a report by Sami Kerola <kerolasa@iki.fi>.
+
+2013-05-07 Paul Eggert <eggert@cs.ucla.edu>
+
+ qacl: port to MS-Windows port of GNU Emacs
+ * lib/acl-errno-valid.c (acl_errno_valid) [ENOTSUP == ENOSYS]:
+ Omit the duplicate ENOTSUP case. Needed for the MS-Windows
+ port of GNU Emacs. Problem reported by Eli Zaretskii in
+ <http://bugs.gnu.org/14295#14>.
+
+2013-05-07 Mike Frysinger <vapier@gentoo.org>
+
+ acl: include quote.h
+ * lib/copy-acl.c: Include quote.h.
+ * lib/set-acl.c: Likewise.
+
+2013-05-06 Mike Frysinger <vapier@gentoo.org>
+
+ fchownat, renameat, unlinkat: update statat dependencies
+ These modules use statat and lstatat, not fstatat; so depend on
+ the statat module, which was split out recently from fstatat.
+ * modules/fchownat, modules/unlinkat: Change fstatat to statat.
+ * modules/renameat: Likewise. Also delete fstat.
+ URL: http://bugs.gentoo.org/468790
+
+2012-05-04 Stefano Lattarini <stefano.lattarini@gmail.com>
+
+ Assume gnulib is checked out from Git, not CVS
+
+ In fact, access to the gnulib repository through CVS has been
+ disabled, or more precisely, got broken and was never restored; see:
+ <http://lists.gnu.org/archive/html/bug-gnulib/2013-05/msg00008.html>
+
+ Note that support for CVS is not removed completely and unthinkingly
+ by this change: only support for CVS checkouts of gnulib itself is
+ removed. For example, the 'bootstrap' script still cater to .cvsingore
+ files and CVS directories, for the benefit of those poor gnulib clients
+ still stuck with CVS. Ditto for the 'gnulib-tool' script itself.
+
+ * gnulib-tool: Simplify accordingly.
+ * posix-modules: Likewise.
+ * MODULES.html.sh: Likewise.
+ * doc/gnulib.texi: No longer mention the decommissioned CVS gnulib
+ repository.
+ * doc/gnulib-intro.texi: Likewise.
+ * doc/gnulib-readme.texi: Likewise.
+ * doc/gnulib-tool.texi: In the examples and explanations, refer to a
+ sample '.gitignore' file rather than a sample '.cvsignore'.
+ * NEWS: Update.
+ * m4/extensions.m4: While at it, remove a comment mistakenly referring
+ to "CVS Autoconf" rather than "git Autoconf".
+
+2013-04-30 Paul Eggert <eggert@cs.ucla.edu>
+
+ utimensat-tests, etc.: try to fix some races
+ Problem reported by Bernhard Voelker in
+ <http://lists.gnu.org/archive/html/bug-gnulib/2013-04/msg00071.html>.
+ I don't know whether this patch fixes that race condition, but it
+ fixes *some* race conditions, so it should be a win.
+ * modules/chown-tests (Depends-on):
+ * modules/fchownat-tests (Depends-on):
+ * modules/fdutimensat-tests (Depends-on):
+ * modules/futimens-tests (Depends-on):
+ * modules/lchown-tests (Depends-on):
+ * modules/stat-time-tests (Depends-on):
+ * modules/utimens-tests (Depends-on):
+ * modules/utimensat-tests (Depends-on):
+ Depend on nanosleep, not usleep.
+ * modules/chown-tests (test_chown_LDADD):
+ * modules/lchown-tests (test_lchown_LDADD):
+ * modules/stat-time-tests (test_stat_time_LDADD):
+ New macro.
+ * modules/fchownat-tests (test_fchownat_LDADD):
+ * modules/fdutimensat-tests (test_fdutimensat_LDADD):
+ * modules/futimens-tests (test_futimens_LDADD):
+ * modules/utimens-tests (test_utimens_LDADD):
+ * modules/utimensat-tests (test_utimensat_LDADD):
+ Add $(LIB_NANOSLEEP).
+ * modules/stat-time-tests (Files): Add tests/nap.h.
+ * tests/nap.h: Include <limits.h>, for INT_MAX.
+ (lt_mtime): Remove.
+ (diff_timespec): New function.
+ (get_stat): Rename from get_mtime. All callers changed.
+ (nap_works): Determine the needed delay by inspecting the
+ file system's timestamp jumps; this should be more reliable.
+ Look at both mtime and ctime, and take the maximum of the two jumps.
+ (nap_works, guess_delay):
+ Return a nanosecond cound, not a microsecond count.
+ All callers changed.
+ (nap_works, nap): Use nanosleep, not usleep. Check for nanosleep
+ failure.
+ (nap): Multiply the guess by 1.125, to accommodate the case where
+ the file system's clock is a bit slower than nanosleep's clock.
+ * tests/test-stat-time.c (BASE): New macro.
+ Include nap.h.
+ (nap): Remove; nap.h now defines this. This removes a duplicate
+ implementation of 'nap'.
+
+ utimens, utimensat: work around Solaris UTIME_OMIT bug
+ Solaris 11.1 and Solaris 10 have the same UTIME_OMIT bug that
+ Linux kernel 2.6.32 does. Work around it in the same way.
+ * doc/posix-functions/futimens.texi (futimens):
+ * doc/posix-functions/utimensat.texi (utimensat): Document the bug.
+ * lib/utimens.c (fdutimens, lutimens):
+ * lib/utimensat.c (rpl_utimensat): Work around the bug.
+
+ gettext: now it's your responsibility to add -I$(top_builddir)/intl
+ Formerly, it was your responsibility to do this for all Makefile.ams
+ other than Gnulib's. Now it's your responsibility to do it for
+ Gnulib's Makefile.am, too.
+ * NEWS: Document this.
+ * modules/gettext (AM_CPPFLAGS): Don't append -$(top_builddir)/intl.
+
+ acl: include errno.h to get errno
+ Reported by Daiki Ueno in
+ <http://lists.gnu.org/archive/html/bug-gnulib/2013-04/msg00073.html>.
+ * lib/copy-acl.c, lib/set-acl.c: Include errno.h.
+
+2013-04-29 Paul Eggert <eggert@cs.ucla.edu>
+
+ tests: don't assume getdtablesize () <= 10000000
+ * modules/cloexec-tests:
+ * modules/dup2-tests:
+ * modules/dup3-tests:
+ * modules/nonblocking-tests:
+ * modules/posix_spawn_file_actions_addclose-tests:
+ * modules/posix_spawn_file_actions_adddup2-tests:
+ * modules/posix_spawn_file_actions_addopen-tests:
+ * modules/unistd-safer-tests:
+ Depend on the getdtablesize module.
+ * tests/test-cloexec.c:
+ * tests/test-dup-safer.c:
+ * tests/test-dup2.c:
+ * tests/test-dup3.c:
+ * tests/test-fcntl.c:
+ * tests/test-nonblocking.c:
+ * tests/test-posix_spawn_file_actions_addclose.c:
+ * tests/test-posix_spawn_file_actions_adddup2.c:
+ * tests/test-posix_spawn_file_actions_addopen.c:
+ Don't assume getdtablesize () <= 10000000.
+
+2013-04-28 Paul Eggert <eggert@cs.ucla.edu>
+
+ extern-inline: work around bug in Sun c99
+ * m4/extern-inline.m4 (_GL_INLINE, _GL_EXTERN_INLINE):
+ Work around bug in Sun C 5.12 c99's implementation of 'inline'.
+
+2013-04-27 Paul Eggert <eggert@cs.ucla.edu>
+
+ qacl: new module, broken out from the acl module
+ This is for GNU Emacs, which wants the acl functions but does
+ not want 'error' invoked when they fail.
+ * lib/acl-internal.h: Do not include error.h, quote.h.
+ (ENOSYS, ENOTSUP): Remove; no longer needed.
+ (ACL_NOT_WELL_SUPPORTED): Remove; replaced by acl_errno_valid.
+ * lib/acl.h: Include <stdbool.h>.
+ (acl_errno_valid): New function.
+ * lib/copy-acl.c, lib/set-acl.c: Include errno,h, not acl-internal.h.
+ * lib/copy-acl.c (qcopy_acl): Move to lib/qcopy-acl.c.
+ * lib/set-acl.c: Rename from lib/set-mode-acl.c.
+ (chmod_or_fchmod, qset_acl): Move to lib/qset-acl.c.
+ (ACL_INTERNAL_INLINE): Remove; no longer needed.
+ * lib/file-has-acl.c (file_has_acl):
+ * lib/qcopy-acl.c (qcopy_acl):
+ * lib/qset-acl.c (qset_acl):
+ Use acl_errno_valid instead of ACL_NOT_WELL_SUPPORTED.
+ * modules/acl (Files): Move lib/acl.h, lib/acl-internal.h,
+ lib/acl_entries.c, lib/set-mode-acl.c (renamed to lib/set-acl.c),
+ lib/file-has-acl.c, m4/acl.m4 to qacl module.
+ Add lib/set-acl.c.
+ (Depends-on): Move extern-inline, fstat, sys_stat to qacl module.
+ Add qacl.
+ (configure.ac): Move gl_FUNC_ACL to qacl module.
+ (lib_SOURCES): Remove file-has-acl.c (moved to qacl module).
+ Rename set-mode-acl.c to set-acl.c.
+ * lib/acl-errno-valid.c: New file.
+ * lib/qcopy-acl.c: New file, moved from the old lib/copy-acl.c; the
+ copy_acl function remains in copy-acl.c.
+ * lib/qcopy-acl.c, lib/qset-acl.c: Do not include gettext.h.
+ (_): Remove; not needed.
+ * lib/qset-acl.c: New file, moved from the old lib/set-mode-acl.c; the
+ set_acl function remains in set-acl.c (renamed from set-mode-acl.c).
+ * modules/qacl: New file, moved from the old modules/acl.
+ (Files, lib_SOURCES): Add acl-errno-valid.c, qcopy-acl.c, qset-acl.c.
+ Remove set-mode-acl.c, copy-acl.c.
+ (Depends-on): Remove error, gettext-h, quote. Add stdbool.
+
+ alignof, intprops, malloca: port better to IBM's C compiler
+ * lib/alignof.h (alignof_type) [__IBM_ALIGNOF__]: Use __alignof__.
+ * lib/intprops.h (_GL_HAVE___TYPEOF__) [__IBM_TYPEOF__]: Now 1.
+ * lib/malloca.h (sa_alignof): [__IBM_ALIGNOF__]: Use __alignof__.
+
+2013-04-25 Daiki Ueno <ueno@gnu.org>
+
+ wctype-h: fix gettext link error on mingw
+ Reported by Josue Andrade Gomes and Takayuki Tsunakawa in
+ <https://lists.gnu.org/archive/html/bug-gettext/2013-03/msg00086.html>.
+ * lib/wctype.in.h [__MINGW32__]: Include <ctype.h> before defining
+ rpl_towupper and rpl_towupper.
+
+2013-04-11 Dmitry V. Levin <ldv@altlinux.org>
+
+ regex-tests, regex: allow glibc re_search behavior
+ * tests/test-regex.c (main): In test for glibc bug 15078, reformat
+ re_search input data to make the multi-character collating element
+ in it clearly visible, and treat re_search return code 0 as valid.
+ * m4/regex.m4 (gl_REGEX): Likewise.
+
+2013-03-30 Paul Eggert <eggert@cs.ucla.edu>
+
+ stdalign: doc fix
+ * doc/posix-headers/stdalign.texi (stdalign.h):
+ Gnulib doesn't support '_Alignof expr'.
+
+2013-03-29 Paul Eggert <eggert@cs.ucla.edu>
+
+ stdalign: port to stricter ISO C11
+ ISO C11 says that _Alignof's operand must be a parenthesized type.
+ Problem reported by Eli Zaretskii in
+ <http://lists.gnu.org/archive/html/emacs-devel/2013-03/msg00960.html>.
+ * doc/posix-headers/stdalign.texi (stdalign.h): Document this.
+ * m4/stdalign.m4 (gl_STDALIGN_H): Don't use _Alignof (expr).
+
+2013-03-21 Paul Eggert <eggert@cs.ucla.edu>
+
+ sys_select, sys_time: port 2013-01-30 Solaris 2.6 fix to Cygwin
+ Problem reported by Marco Atzeri in
+ <http://lists.gnu.org/archive/html/bug-gnulib/2013-03/msg00000.html>.
+ * lib/sys_select.in.h [HAVE_SYS_SELECT_H && _CYGWIN_SYS_TIME_H]:
+ Simply delegate to the system <sys/select.h> in this case too.
+ Also, pay attention to _GL_SYS_SELECT_H_REDIRECT_FROM_SYS_TIME_H only
+ if OSF/1, since otherwise Cygwin breaks, and it doesn't seem to
+ be needed on Solaris either.
+ * lib/sys_time.in.h [_CYGWIN_SYS_TIME_H]:
+ Simply delegate to the system <sys/time.h> in this case.
+
+2013-03-19 Karl Berry <karl@gnu.org>
+
+ * build-aux/gnupload: check for erroneous (with gnupload) use of
+ ftp-upload.gnu.org, tweak help.
+
+2013-03-19 Paul Eggert <eggert@cs.ucla.edu>
+
+ copy-file, rpmatch: fix problems found by cppcheck
+ Reported by Arno Onken in
+ <http://lists.gnu.org/archive/html/bug-gnulib/2013-03/msg00069.html>.
+ * lib/rpmatch.c (try): Fix memory leak.
+ * lib/copy-file.c: Include "ignore-value.h".
+ (qcopy_file_preserving): Ignore chown value.
+ * modules/copy-file (Depends-on): Add ignore-value.
+
+2013-01-27 Jim Meyering <jim@meyering.net>
+
+ prefix-gnulib-mk: give better diagnostics
+ * build-aux/prefix-gnulib-mk: Don't just "die".
+ Give better diagnostics upon failure.
+
+2013-03-13 Paul Eggert <eggert@cs.ucla.edu>
+
+ putenv: port to Solaris 10
+ * lib/putenv.c (_unsetenv, putenv): Use HAVE_DECL__PUTENV, not
+ HAVE__PUTENV. Solaris 10 has a _putenv that's not declared and
+ is not what is wanted here.
+ * m4/putenv.m4 (gl_PREREQ_PUTENV): Check for _putenv's
+ declaration, not for its existence.
+
+2013-03-12 Paul Eggert <eggert@cs.ucla.edu>
+
+ mktime: fix configure typo
+ * m4/mktime.m4 (gl_FUNC_MKTIME): Fix typo in previous change.
+
+2013-03-12 Eric Blake <eblake@redhat.com>
+
+ regex-tests: skip UTF-8 test on mingw
+ * modules/regex-tests (Depends-on): Add localcharset.
+ * tests/test-regex.c (main): Use it to skip test on mingw.
+
+2013-03-11 Eric Blake <eblake@redhat.com>
+
+ tests: make it easier to bypass alarm time in debugger
+ * tests/test-file-has-acl.c (main): Allow gdb to override alarm.
+ * tests/test-memmem.c (main): Likewise.
+ * tests/test-passfd.c (main): Likewise.
+ * tests/test-ptsname.c (main): Likewise.
+ * tests/test-ptsname_r.c (main): Likewise.
+ * tests/test-strcasestr.c (main): Likewise.
+ * tests/test-strstr.c (main): Likewise.
+
+ regex: port to mingw's recent addition of undeclared alarm
+ * doc/posix-functions/alarm.texi (alarm): Document that alarm
+ exists but still doesn't work in newer mingw.
+ * m4/frexp.m4 (gl_FUNC_FREXP_WORKS): Check for alarm declaration,
+ not existence. Ensure SIGALRM is not trapped.
+ * m4/mktime.m4 (gl_FUNC_MKTIME): Likewise.
+ * m4/regex.m4 (gl_REGEX): Likewise.
+ * m4/remainderf.m4 (gl_FUNC_REMAINDERF_WORKS): Likewise.
+ * tests/test-regex.c (main): Use correct probe for alarm.
+
+ putenv: avoid compilation warning on mingw
+ * lib/putenv.c (_unsetenv): Protect variable declaration.
+ (putenv): Fix indentation.
+
+2013-03-11 Gary V. Vaughan <gary@gnu.org>
+
+ unistd: don't prevent Tru64 Unix from using gnulib strtod.
+ * lib/unistd.in.h: be careful not to include un-needed system
+ stdlib.h from here, because that prevents gnulib stdlib.h from
+ defining rpl_strtod correctly.
+
+2013-03-09 Gary V. Vaughan <gary@gnu.org>
+
+ vasprintf-posix-tests: allow rounding 1.51 to 1, per the previous
+ changesets, but for the 'precision 0' test.
+ * tests/test-vasprintf-posix.c (test_function): Don't insist on
+ round-to-even, since POSIX says rounding is implementation-defined
+ and OS X 10.8.2 rounds 1.51 to 1 here.
+
+ vasprintf-posix-tests: allow rounding 1.5 to 1, per the previous
+ changeset.
+ * tests/test-vasprintf-posix.c (test_function): Don't insist on
+ round-to-even, since POSIX says rounding is implementation-defined
+ and OS X 10.8.2 rounds 1.5 to 1 here.
+
+2013-03-08 Paul Eggert <eggert@cs.ucla.edu>
+
+ vasnprintf-posix-tests: allow rounding 1.5 to 1
+ * tests/test-vasnprintf-posix.c (test_function): Don't insist on
+ round-to-even, since POSIX says rounding is implementation-defined
+ and OS X 10.8.2 rounds 1.5 to 1 here. Reported by Gary V. Vaughan in
+ <http://lists.gnu.org/archive/html/bug-gnulib/2013-03/msg00019.html>.
+
+ bootstrap: port to FreeBSD
+ * build-aux/bootstrap (bootstrap_sync): Port sh -c usage to shells
+ that treat '--' differently. Reported by Mats Erik Andersson in
+ <http://lists.gnu.org/archive/html/bug-gnulib/2013-03/msg00012.html>.
+
+2013-03-08 Gary V. Vaughan <gary@gnu.org>
+
+ regex: rename remaining __attribute calls to __attribute__.
+ 2012-02-25 changed definition of __attribute, but left some uses
+ unchanged, preventing compilation of regex module on most non-gcc
+ environments.
+ * lib/regcomp.c (re_set_fastmap, seek_collating_symbol_entry)
+ (lookup_collation_sequence_value, build_range_exp)
+ (build_collating_symbol): Set attributes with newly renamed
+ __attribute__ decorator.
+ * lib/regex_internal.c (re_string_peek_byte_case)
+ (re_node_set_compare, re_node_set_contains): Likewise.
+ * lib/regexec.c (acquire_init_state_context): Likewise.
+
+2013-03-06 Bruno Haible <bruno@clisp.org>
+
+ execute: Revert last change, but use a different condition.
+ * lib/execute.c (nonintr_close, nonintr_open): Reintroduce, but only
+ on Windows.
+
+2013-03-05 Eric Blake <eblake@redhat.com>
+
+ execute: drop dead code
+ * lib/execute.c (nonintr_close, nonintr_open): Delete.
+
+2013-03-04 Paul Eggert <eggert@cs.ucla.edu>
+
+ non-recursive-gnulib-prefix-hack: port coreutils 8.21 to HP NonStop
+ * m4/non-recursive-gnulib-prefix-hack.m4
+ (gl_NON_RECURSIVE_GNULIB_PREFIX_HACK): Don't mess with ALLOCA.
+ Problem reported for HP NonStop + coreutils 8.21 by Joachim Schmitz in
+ <http://bugs.gnu.org/10305#237>.
+
+2013-03-04 Eric Blake <eblake@redhat.com>
+
+ test-getsockopt: avoid compiler warning
+ * tests/test-getsockopt.c (includes): Ensure close is declared.
+
+2013-03-02 Bruno Haible <bruno@clisp.org>
+
+ sys_types: Avoid autoconf warning about gl_SYS_TYPES_H.
+ * m4/sys_types_h.m4 (gl_SYS_TYPES_H): Define through AC_DEFUN_ONCE.
+
+2013-03-02 Bruno Haible <bruno@clisp.org>
+
+ gettext: Update to version 0.18.2.
+ * m4/intl.m4, m4/po.m4: Update from gettext-0.18.2. In particular:
+ 2012-12-07 Stefano Lattarini <stefano.lattarini@gmailcom>
+ * intl.m4, po.m4: Bump requirement in AC_PREREQ to 2.60.
+
+2013-02-25 Paul Eggert <eggert@cs.ucla.edu>
+
+ regex: merge patches from libc
+
+ 2013-02-26 Siddhesh Poyarekar <siddhesh@redhat.com>
+ * lib/regex_internal.h (__attribute__): Rename from __attribute.
+ All uses changed.
+ (bitset_not, bitset_merge, bitset_mask, re_string_char_size_at)
+ (re_string_wchar_at, re_string_elem_size_at):
+ Mark function as possibly unused.
+
+ 2013-02-12 Andreas Schwab <schwab@suse.de> [BZ #11561]
+ * lib/regcomp.c (parse_bracket_exp) [_LIBC]: When looking up collating
+ elements compare against the byte sequence of it, not its name.
+
+2013-02-21 Paul Eggert <eggert@cs.ucla.edu>
+
+ putenv: port better to native Windows
+ * lib/putenv.c [(_WIN32 || __WIN32__) && ! __CYGWIN__]:
+ Define WIN32_LEAN_AND_MEAN and include <windows.h>.
+ (_unsetenv): Use _putenv if available.
+ (putenv): Temporarily set NAME=' ' rather than NAME='x' as that's
+ a bit less likely to cause damage.
+ (putenv) [(_WIN32 || __WIN32__) && ! __CYGWIN__]:
+ Fix the wrong value with SetEnvironmentVariable.
+ (putenv) [!HAVE__PUTENV]: Simplify and match the HAVE__PUTENV
+ code better.
+
+2013-02-20 Paul Eggert <eggert@cs.ucla.edu>
+
+ regex: ignore old-style-definition warnings
+ * lib/regex.c: Add pragma to ignore these warnings.
+ Problem reported for GNU tar by Pavel Raiskup.
+
+2013-02-19 Paul Eggert <eggert@cs.ucla.edu>
+
+ getcwd: support coreutils better
+ Like strtod, getcwd incorrectly referred to HAVE_RAW_DECL_GETCWD,
+ but this might not be correct in coreutils, which disables
+ the raw decl checks. Problem reported by Nagendra in
+ <http://bugs.gnu.org/10305#192>.
+ * lib/getcwd.c (__getcwd): Do not depend on HAVE_RAW_DECL_GETCWD.
+ * m4/getcwd-path-max.m4 (gl_FUNC_GETCWD_PATH_MAX):
+ Test the getcwd function, not any macro, since getcwd.c wants the
+ function.
+ * m4/getcwd.m4 (gl_FUNC_GETCWD):
+ Don't define HAVE_MINIMALLY_WORKING_GETCWD if the code doesn't
+ compile, as might happen if there's a macro but no function.
+
+ strtod: support coreutils better
+ * lib/strtod.c (underlying_strtod): Just invoke the underlying strtod.
+ HAVE_RAW_DECL_STRTOD might not be correct in coreutils, which
+ disables the raw decl checks. This assumes there is an underlying
+ strtod, but that's a safe assumption these days.
+ (HAVE_RAW_DECL_STRTOD): Remove; no longer used.
+
+ mountlist: port to HP NonStop
+ Reported by Joachim Schmitz in
+ <http://lists.gnu.org/archive/html/bug-gnulib/2013-02/msg00084.html>.
+ * lib/mountlist.c (hasmntopt) [!HAVE_HASMNTOPT]: New function.
+ (MNT_IGNORE) [MNTOPT_IGNORE]: Use it.
+
+2013-02-18 Paul Eggert <eggert@cs.ucla.edu>
+
+ extern-inline: avoid compilation error with HP-UX cc
+ Reported by Richard Lloyd in
+ <http://lists.gnu.org/archive/html/bug-texinfo/2013-02/msg00030.html>.
+ * m4/extern-inline.m4 (_GL_INLINE, _GL_EXTERN_INLINE):
+ Suppress extern inline with HP-UX cc. This should be safe,
+ though it may hurt performance. Perhaps someone with some HP-UX
+ experience can come up with a higher-performance fix.
+
+2013-02-14 Paul Eggert <eggert@cs.ucla.edu>
+
+ putenv: fix heap corruption with mixed putenv/_putenv
+ Problem reported by Michael Goffioul in
+ <http://lists.gnu.org/archive/html/bug-gnulib/2013-02/msg00061.html>.
+ * lib/putenv.c (putenv) [HAVE__PUTENV]:
+ Rely on _putenv to allocate the new environment.
+ * m4/putenv.m4 (gl_PREREQ_PUTENV): New macro.
+ * modules/putenv (configure.ac): Use it.
+
+2013-02-11 Paul Eggert <eggert@cs.ucla.edu>
+
+ unsetenv etc.: port to Solaris 11 + GNU Emacs
+ * lib/canonicalize-lgpl.c, lib/getaddrinfo.c, lib/getdelim.c:
+ * lib/glob.c, lib/random_r.c, lib/setenv.c, lib/tsearch.c:
+ * lib/unsetenv.c (_GL_ARG_NONNULL): Define before including <config.h>.
+ GNU Emacs's <config.h> includes <stdlib.h> (which is not a great
+ idea but is too painful to fix right now), and without this gnulib
+ change <stdlib.h> was defining _GL_ARG_NONNULL incorrectly when
+ compiling unsetenv.c on Solaris 11. Fix the problem for
+ unsetenv.c, and fix other similar occurrences.
+
+2013-02-09 Paul Eggert <eggert@cs.ucla.edu>
+
+ secure_getenv: fix C++ declaration typo
+ * lib/stdlib.in.h (secure_getenv): Fix typo with return type
+ in _GL_CXXALIAS_SYS macro. Reported by John W. Eaton in
+ <http://lists.gnu.org/archive/html/bug-gnulib/2013-02/msg00057.html>.
+
+2013-02-08 Paul Eggert <eggert@cs.ucla.edu>
+
+ careadlinkat: stop exporting careadlinkatcwd
+ Only Emacs used it directly, and Emacs no longer needs it.
+ * NEWS: Document this simplification.
+ * lib/areadlink.c (careadlinkatcwd): Move here from careadlinkat.c,
+ and make it static. Include <stdlib.h>, for abort, and unistd.h,
+ for readlink.
+ * lib/careadlinkat.c (careadlinkatcwd): Move to areadlink.c.
+ Don't include stdlib.h; no longer needed.
+ * lib/careadlinkat.h (careadlinkatcwd): Remove decl.
+ * lib/relocwrapper.c: Adjust comment to match new dependencies.
+ * modules/areadlink (Depends-on): Add readlink.
+ (Maintainer): Add self.
+ * modules/careadlinkat (Depends-on): Remove readlink.
+
+ extensions: port better to HP-UX
+ This is merged from git Autoconf.
+ * m4/extensions.m4 (AC_USE_SYSTEM_EXTENSIONS):
+ On hosts that need _XOPEN_SOURCE, define it when configuring, too,
+ so that it's compatible with the value used when compiling.
+
+ openpty: fix bug where HAVE_OPENPTY is mistakenly 1
+ Problem reported by Mats Erik Andersson in
+ <http://lists.gnu.org/archive/html/bug-gnulib/2013-02/msg00051.html>.
+ * m4/pty.m4 (gl_FUNC_OPENPTY): Define HAVE_OPENPTY when the
+ openpty function exists, not merely when we intend to replace it.
+ This corrects the 2013-01-31 patch, which mistakenly defined
+ HAVE_OPENPTY even on hosts that lacked it.
+
+2013-02-07 Paul Eggert <eggert@cs.ucla.edu>
+
+ secure_getenv: fix include typo
+ * lib/secure_getenv.c: Include config.h. Somehow I forgot!
+
+ secure_getenv: port better to FreeBSD and Solaris
+ * lib/secure_getenv.c [!HAVE___SECURE_GETENV]:
+ Include unistd.h if HAVE_ISSETUGID, otherwise define a dummy issetugid.
+ (secure_getenv) [!HAVE___SECURE_GETENV]: Use getenv if not issetugid.
+ This works better on BSDish platforms.
+ * m4/secure_getenv.m4 (gl_PREREQ_SECURE_GETENV):
+ Test for issetugid if __secure_getenv is missing.
+
+2013-02-06 Paul Eggert <eggert@cs.ucla.edu>
+
+ extensions: port better to MINIX 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
+ MINIX, for MINIX 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 [BZ #15078]
+ * 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):
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>
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.
* 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>
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