update from texinfo
[gnulib.git] / ChangeLog
index a9cac6d..d117e75 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,432 @@
+2014-01-23  Eric Blake  <eblake@redhat.com>
+
+       pthread: work around winpthread header pollution on mingw
+       * lib/time.in.h: Move pthread workarounds...
+       * lib/pthread.in.h: ...here.
+       * m4/pthread.m4 (gl_PTHREAD_CHECK): Also build pthread.h when we
+       detect macro pollution on mingw.
+       * doc/posix-headers/pthread.texi (pthread.h): Document the problems.
+
+2014-01-22  Paul Eggert  <eggert@cs.ucla.edu>
+
+       qacl: check for fchmod
+       * m4/acl.m4 (gl_FUNC_ACL): Check for fchmod, since acl-internal.h
+       and qset-acl.c both use HAVE_FCHMOD.
+
+2014-01-20  Paul Eggert  <eggert@cs.ucla.edu>
+
+       fdopen-tests: port to Tru64
+       * tests/test-fdopen.c (main): Don't invoke fdopen on a file
+       descriptor that is not open, as POSIX doesn't specify the
+       resulting behavior and the test does not work on Tru64.
+       Problem reported by Steven M. Schweda in:
+       http://lists.gnu.org/archive/html/bug-gnulib/2014-01/msg00079.html
+
+       stdalign: port to HP-UX compilers
+       * lib/stdalign.in.h (_Alignas): Use __attribute__ (__aligned__ (x))
+       if __HP_cc or __HP_aCC are nonzero.
+
+2014-01-16  Paul Eggert  <eggert@cs.ucla.edu>
+
+       strtoimax: port to platforms lacking 'long long'
+       VMS's pre-C99 compiler lacks 'long long', so 'configure' doesn't
+       check whether strtoll is declared, which causes the C file to
+       wrongly report an error.  Problem reported by Steven M. Schweda in:
+       http://lists.gnu.org/archive/html/bug-diffutils/2014-01/msg00003.html
+       * lib/strtoimax.c (strtoull):
+       Declare only if HAVE_UNSIGNED_LONG_LONG_INT.
+       (strtoll): Declare only if HAVE_LONG_LONG_INT.
+
+2014-01-16  Daniel Albers  <daniel@lbe.rs>  (tiny change)
+
+       relocatable-perl: fix texi syntax
+       * doc/relocatable-maint.texi: Escape braces.
+
+2014-01-09  Reuben Thomas  <rrt@sc3d.org>
+
+       relocatable-perl: like relocatable-script, but for Perl scripts
+       * build-aux/relocatable.pl.in: Add.
+       * doc/relocatable-maint.texi: Add documentation.
+       * modules/relocatable-perl: Add.
+
+2014-01-07  Paul Eggert  <eggert@cs.ucla.edu>
+
+       tests: fix export bug in previous patch
+       Problem reported by Jim Meyering.
+       * tests/init.sh (re_shell): New var, which is exported instead of
+       re_shell_.
+
+       tests: simplify porting to Solaris 10 /bin/sh
+       Some test cases in 'grep' need a shell that groks '$(';
+       export re_shell_ for their benefit.  Problem reported for 'grep'
+       by Dagobert Michelsen in <http://bugs.gnu.org/16380>.
+       * tests/init.sh (re_shell_): Export if it's used.
+
+2014-01-06  Eric Blake  <eblake@redhat.com>
+
+       md5, sha1, sha256, sha512: support older autoconf
+       * m4/00gnulib.m4 (m4_divert_push): Wrap diversion stack
+       for autoconf < 2.63b.
+
+       include_next: port to autoconf 2.63
+       * m4/gnulib-common.m4 (AS_VAR_COPY): Define if missing.
+
+2014-01-04  Jim Meyering  <meyering@fb.com>
+
+       maint: add a gnulib-local rule to keep non-ascii out of .texi files
+       * cfg.mk (sc_keep_gnulib_texi_files_mostly_ascii): New rule,
+       so that "make sc_maint" will ding anyone who puts non-ascii
+       in any of gnulib's .texi files.
+
+2014-01-03  Jim Meyering  <meyering@fb.com>
+
+       freadable, fwritable, fwriting: declare with the "pure" attribute
+       * lib/freadable.h (freadable): Declare with the "pure" attribute.
+       * lib/fwritable.h (fwritable): Likewise.
+       * lib/fwriting.h (fwriting): Likewise.
+       Suggested by Bruno Haible.
+
+       maint.mk: adapt openat.h-include-without-use test
+       * top/maint.mk (sc_prohibit_openat_without_use): Also check for
+       FCHMODAT_INLINE, FCHOWNAT_INLINE and STATAT_INLINE, to avoid
+       failing on gnulib's own lib/{chmod,chown,stat}at.c files.
+       With this change, running "make sc_maint" in gnulib's top-level
+       directory now passes for me.
+
+2014-01-03  Paul Eggert  <eggert@cs.ucla.edu>
+
+       doc: use ASCII in .texi files where UTF-8 isn't needed
+       * doc/posix-functions/crypt.texi, doc/posix-functions/encrypt.texi:
+       * doc/posix-functions/setkey.texi, doc/regex.texi:
+       Use ASCII input, not UTF-8.
+
+2014-01-02  Jim Meyering  <meyering@fb.com>
+
+       freading: declare with the "pure" attribute
+       * lib/freading.h (freading): Declare with the "pure" attribute.
+
+       manywarnings: remove -Wmudflap
+       * m4/manywarnings.m4 (gl_MANYWARN_ALL_GCC): Remove -Wmudflap, since
+       it is no longer supported in gcc-4.9-to-be.
+
+2014-01-01  Paul Eggert  <eggert@cs.ucla.edu>
+
+       relocatable-script: remove unused code
+       Problem reported by Reuben Thomas in:
+       http://lists.gnu.org/archive/html/bug-gnulib/2013-12/msg00117.html
+       * build-aux/relocatable.sh.in (func_tmpdir): Remove unused function.
+
+2014-01-01  Jim Meyering  <meyering@fb.com>
+
+       maint: fix public-submodule-commit to work with newer git
+       * top/maint.mk (public-submodule-commit): Remove excess quoting.
+       We were over-quoting the test arguments, and somewhere prior to
+       version 1.8.5.2.229, git stopped removing those excess quotes,
+       which made the test fail, since the unexpanded strings would
+       always differ; using GIT_TRACE=1 confirmed that the git merge-base
+       command wasn't even being run.
+
+2014-01-01  Paul Eggert  <eggert@cs.ucla.edu>
+
+       doc: update main copyright year
+       * doc/gnulib.texi: Update copyright date.
+
+2014-01-01  Eric Blake  <eblake@redhat.com>
+
+       version-etc: new year
+       * lib/version-etc.c (COPYRIGHT_YEAR): Bump to 2014.
+       * all files: run 'make update-copyright'
+
+2013-12-24  Eric Blake  <eblake@redhat.com>
+
+       passfd: give nicer error for recvfd at eof
+       * lib/passfd.c (recvfd): Fake ENOTCONN if other end closes early.
+       * tests/test-passfd.c (main): Enhance test to cover this.
+
+2013-12-17  Paul Eggert  <eggert@cs.ucla.edu>
+
+       gettimeofday: port recent C++ fix to Emacs
+       Without this further patch, Emacs won't build due to
+       the portcheck failing.  Also, this simplifies the patch a bit.
+       * lib/time.in.h (localtime, gmtime): Don't replace unless
+       GNULIB_GETTIMEOFDAY.  Treat them more like mktime.
+       * lib/time.in.h (localtime, gmtime):
+       * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME):
+       * m4/time_h.m4 (gl_HEADER_TIME_H_DEFAULTS):
+       * modules/time (time.h):
+       Don't worry about about the possibility of localtime and gmtime
+       being absent; they're present in all C libraries we know about.
+       * m4/time_h.m4 (gl_HEADER_TIME_H_DEFAULTS):
+       Don't assume sys_time is present and has been initialized.
+       Instead, use a hack that should work even if it hasn't been.
+       Don't use a portcheck for gmtime or localtime; this supports
+       the hack.
+       * modules/time (time.h): Substitute GNULIB_GETTIMEOFDAY.
+
+2013-12-17  John W. Eaton  <jwe@gnu.org>
+
+       gettimeofday: fix C++ crosscompilation
+
+       Never replace gmtime and localtime by macros when compiling with
+       C++, this prevents <ctime> from being included.
+
+       * m4/gettimeofday.m4 (gl_GETTIMEOFDAY_REPLACE_LOCALTIME): Do not
+       define gmtime and localtime as preprocessor macros.  Instead
+       define some HAVE_GMTIME, HAVE_LOCALTIME, REPLACE_GMTIME, and
+       REPLACE_LOCALTIME substitutions.
+       * lib/time.in.h: Declare gmtime and localtime when needed.
+       * m4/time_h.m4 (gl_HEADER_TIME_H_DEFAULTS): AC_SUBST HAVE_GMTIME,
+       HAVE_LOCALTIME, REPLACE_GMTIME, and REPLACE_LOCALTIME.
+       * modules/time: Depend on gettimeofday, and substitute the above
+       variables in time.h.
+
+2013-12-17  Paul Eggert  <eggert@cs.ucla.edu>
+
+       qacl: port to Windows better
+       See Eli Zaretskii in
+       <http://lists.gnu.org/archive/html/emacs-devel/2013-12/msg00593.html>.
+       * lib/file-has-acl.c (acl_access_nontrivial):
+       Return -1 and set errno if !HAVE_ACL_FIRST_ENTRY &&
+       !HAVE_ACL_TO_SHORT_TEXT && !HAVE_ACL_FREE_TEXT.
+
+2013-12-12  Alexander V. Lukyanov  <lav@netis.ru>
+
+       md5, sha1, sha256, sha512: fix (trivial) compile error in c++ mode.
+       * lib/gl_openssl.h: Cast void pointers to a specific type.
+
+2013-12-07  Pádraig Brady <P@draigBrady.com>
+
+       open-tests: fix build failure with -Werror=old-style-declaration
+       * tests/test-open.h: Reorder the inline to avoid the issue.
+
+2013-12-07  Pádraig Brady <P@draigBrady.com>
+
+       md5, sha1, sha256, sha512: fix link error with partial libcrypto
+       * m4/gl-openssl.m4 (gl_CRYPTO_CHECK): Only clear LIB_CRYPTO at
+       init time, so that if early checks find crypto routines,
+       while the last does not, then @LIB_CRYPTO@ is replaced correctly,
+       avoiding link failures.
+
+2013-12-07  Paul Eggert  <eggert@cs.ucla.edu>
+
+       md5, sha1, sha256, sha512: add gl_SET_CRYPTO_CHECK_DEFAULT
+       This provides a new way to specify the default for
+       gl_CRYPTO_CHECK, one that is reflected in the --help message.
+       Emacs uses this, as well as the old way.
+       This attempts to implement a suggestion by Pádraig Brady in
+       <http://lists.gnu.org/archive/html/coreutils/2013-12/msg00080.html>.
+       * m4/gl-openssl.m4(gl_SET_CRYPTO_CHECK_DEFAULT): New macro.
+       (gl_CRYPTO_CHECK): Use it.  Mention the default in --help output.
+
+       md5, sha1, sha256, sha512: add 'auto', and a way to specify default
+       * m4/gl-openssl.m4 (gl_CRYPTO_CHECK):
+       Add support for a new option, --with-openssl=auto, which causes
+       the library to be used if available and silently ignored if not.
+       Add support to allow allow configure.ac to specify its own
+       default, by setting with_openssl_default before invoking gl_INIT.
+
+2013-12-05  Paul Eggert  <eggert@cs.ucla.edu>
+
+       open-tests: port to glibc with _FORTIFY_SOURCE and -O1
+       Problem reported by Daiki Ueno in:
+       http://lists.gnu.org/archive/html/bug-gnulib/2013-06/msg00052.html
+       * tests/test-open.h (__always_inline):
+       New macro, if not already defined.
+       (test_open): Use it.
+
+2013-12-04  Eric Blake  <eblake@redhat.com>
+
+       include_next: minimize code duplication
+       * modules/include_next (Depends-on): Add absolute-header.
+       * m4/include_next.m4 (gl_NEXT_HEADERS_INTERNAL): Reuse
+       gl_ABSOLUTE_HEADER_ONE instead of open-coding it.
+
+2013-12-04  Pádraig Brady <P@draigBrady.com>
+
+       getcwd: fix compile error in configure check
+       * m4/getcwd-abort-bug.m4 (gl_FUNC_GETCWD_ABORT_BUG): Include errno.h
+
+2013-12-04  Pádraig Brady <P@draigBrady.com>
+
+       regex: suppress core dumps from detection code
+       * m4/regex.m4 (gl_REGEX): Catch the SIGABRT and convert to SIGTERM
+       to suppress core dumps that may well occur on glibc systems.
+       These core dumps might not be cleaned up automatically, or could
+       trigger some system core dump handling logic.
+
+2013-12-03  Pádraig Brady <P@draigBrady.com>
+
+       md5, sha1, sha256, sha512: support mandating use of openssl
+       * m4/gl-openssl.m4 (gl_crypto_check): Adjust the --with-openssl
+       description, to list the now 3 separate options.  also don't
+       mention the default=no, since this is implicit given the option
+       is described as --with-openssl rather than --without-openssl.
+       If projects change the default they're free to document that.
+       with --with-openssl[=yes] we now error out when the specified
+       hash algorithm is not available in libcrypto.
+
+2013-12-03  Ivailo  <xakepa10@gmail.com>
+
+       test-xvasprintf: (trivial) fix to disable some -Wformat-security diags
+       * tests/test-xvasprintf.c: Disable -Wformat-zero-length and
+       -Wformat-nonliteral checks, as these edge cases are part of the test.
+
+2013-12-03  Eric Blake  <eblake@redhat.com>
+
+       regex: avoid glibc deadlock during configure
+       * m4/regex.m4 (gl_REGEX): Avoid recursive malloc deadlock when
+       glibc bug 15078 in turn triggers bug 16159.
+       Reported by Michal Privoznik.
+
+2013-12-02  Pádraig Brady <P@draigBrady.com>
+
+       md5, sha1, sha256, sha512: use openssl routines if available.
+       --with-openssl the libcrypto md5, sha1, sha224, sha256, sha384, sha256
+       routines will be used if available, requiring apps to link @LIB_CRYPTO@
+       * lib/gl_openssl.h: Provide wrappers for specified openssl hash.
+       * m4/gl-openssl.m4 (gl_CRYPTO_CHECK): New function to lookup libcrypto
+       in the standard system location.
+       * m4/sha1.m4: Call gl_CRYPTO_CHECK() for SHA1.
+       * m4/sha256.m4: Likewise with SHA256.
+       * m4/sha512.m4: Likewise with SHA512.
+       * m4/md5.m4: Likewise with MD5.
+       * m4/gc.m4: Ensure @LIB_CRYPTO@ set for tests.
+       * lib/sha1.h: Include wrappers if HAVE_OPENSSL_SHA1.
+       * lib/sha256.h: Likewise with SHA256.
+       * lib/sha512.h: Likewise with SHA512.
+       * lib/md5.h: Likewise with MD5.
+       * lib/sha1.c: Exlude functionality if HAVE_OPENSSL_SHA1.
+       * lib/sha256.c: Likewise with SHA256.
+       * lib/sha512.c: Likewise with SHA512.
+       * lib/md5.c: Likewise with MD5.
+       * modules/crypto/sha1 (Link:): Add the new optional lib.
+       (Depends-on:): Add dependency on extern-inline.
+       * modules/crypto/sha256: Likewise.
+       * modules/crypto/sha512: Likewise.
+       * modules/crypto/md5: Likewise.
+       * modules/crypto/sha1-tests: Reference the lib here too.
+       * modules/crypto/md5-tests: Likewise.
+       * modules/crypto/gc-des-tests: Likewise.
+       * modules/crypto/gc-hmac-md5-tests: Likewise.
+       * modules/crypto/gc-hmac-sha1-tests: Likewise.
+       * modules/crypto/gc-hmac-sha256-tests: Likewise.
+       * modules/crypto/gc-hmac-sha512-tests: Likewise.
+       * modules/crypto/gc-md5-tests: Likewise.
+       * modules/crypto/gc-pbkdf2-sha1-tests: Likewise.
+       * modules/crypto/gc-sha1-tests: Likewise.
+       * modules/crypto/gc-tests: Likewise.
+       * modules/crypto/hmac-md5-tests: Likewise.
+       * modules/crypto/hmac-sha1-tests: Likewise.
+       * modules/crypto/hmac-sha256-tests: Likewise.
+       * modules/crypto/hmac-sha512-tests: Likewise.
+
+2013-11-29  RV1971  <rv1971@web.de>
+
+       base64: (trivial) fix compilation regression on some compilers
+       * lib/base64.c: Don't return the void function,
+       instead split to a separate return statement.
+
+2013-11-28  Paul Eggert  <eggert@cs.ucla.edu>
+
+       ignore-value: revert previous code change
+       * lib/ignore-value.h (ignore_value): Use __extension__ and
+       __typeof__ only for GCC 3.4 and later.  Reported by Eric Blake in
+       <http://lists.gnu.org/archive/html/bug-gnulib/2013-11/msg00102.html>.
+       Change the comment to try to explain this better.
+
+2013-11-27  Pádraig Brady <P@draigBrady.com>
+
+       selinux-h: improve stub types and add more stub functions
+
+       * lib/se-selinux.in.h: Change security_context_t to a typedef
+       rather than a define, as it's a pointer type and so is better
+       as a typedef to avoid issues declaring multiple variables
+       with the comma operator.  Also add stub for string_to_security_class().
+       * lib/se-context.in.h: Add stub functions for
+       context_{type,range,role,user}_get().
+
+2013-11-27  Paul Eggert  <eggert@cs.ucla.edu>
+
+       ignore-value: prefer GCC version back through 2.0
+       The code didn't match the comments, so I did a bit of software
+       archaeology.  GCC 2.0 seems to support __extension__ and
+       __typeof__, so fix both code and comments to use 2.0.
+       * lib/ignore-value.h (ignore_value): Use __extension__ and
+       __typeof__ for GCC 2.0 through 3.3, too.
+
+2013-11-25  Mats Erik Andersson  <gnu@gisladisker.se>
+
+       pty: Activate the signature wrapper of forkpty.
+       The intended preprocessor macro HAVE_FORKPTY is
+       never defined, yet `lib/forkpty.c' depends on it.
+
+       * m4/pty.m4 (gl_FUNC_FORKPTY): At completed analysis,
+       apply AC_DEFINE_UNQUOTED to HAVE_FORKPTY with value
+       $HAVE_FORKPTY for access to wrapper in `lib/forkpty.c'.
+
+2013-11-18  Jim Meyering  <meyering@fb.com>
+       and Paul Eggert  <eggert@cs.ucla.edu>
+
+       quotearg: don't attempt to store 1 << 31 into an "int"
+       * lib/quotearg.c (quotearg_buffer_restyled): Building coreutils with
+       gcc's new -fsanitize=undefined and running its tests triggered some
+       new test failures due to undefined behavior, all with this diagnostic:
+         lib/quotearg.c:629:62: runtime error: left shift of 1 by 31 places \
+           cannot be represented in type int
+       Rather than shifting "1" left to form a mask, shift the bits right and
+       simply use "1" as the mask.
+
+2013-11-21  Paul Eggert  <eggert@cs.ucla.edu>
+
+       error: depend on stdio
+       Problem reported by Nikos Mavrogiannopoulos in
+       <http://lists.gnu.org/archive/html/bug-gnulib/2013-11/msg00084.html>
+       * modules/error (Depends-on): Add stdio.
+
+2013-11-18  Ben Pfaff  <blp@cs.stanford.edu>
+
+       * doc/relocatable-maint.texi (Supporting Relocation): Improve
+       wording.
+       Reported by Reuben Thomas <rrt@sc3d.org>.
+
+2013-11-13  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * lib/getgroups.c (posix_getgroups, getgroups) [__APPLE__]:
+       New function and macro, to work around _DARWIN_C_SOURCE problem.
+       Reported by Jack Howarth in <http://bugs.gnu.org/14463>.
+
+2013-11-11  Pádraig Brady <P@draigBrady.com>
+
+       base64: provide a fast path for encoding well sized buffers
+       Avoid conditionals in the base64 encoding loop,
+       which was seen to give 60% better throughput.
+       * lib/base64.c (base64_encode_fast): A new function to be called
+       when we don't want to NUL terminate, and we have enough space
+       in the output to encode the given input.
+       (base64_encode): Call the _fast() version when appropriate.
+       Also remove a redundant mask with 0x3F on the first encoded byte.
+
+2013-11-08  Paul Eggert  <eggert@cs.ucla.edu>
+
+       extern-inline: port better to OS X 10.9
+       * m4/extern-inline.m4: Omit serial number; this file doesn't use them.
+       (gl_EXTERN_INLINE): Do not suppress the use of extern inline on
+       OS X 10.9, except for g++ where the bug is still present.
+       See <http://trac.macports.org/ticket/41033>.
+
+2013-11-08  Eric Blake  <eblake@redhat.com>
+
+       fpending: fix regression on DragonFly BSD
+       * m4/fpending.m4 (gl_FUNC_FPENDING): Check for declaration.
+       * lib/fpending.h (__fpending): Don't declare twice.
+       Reported by GW in
+       <https://lists.gnu.org/archive/html/bug-m4/2013-11/msg00000.html>
+
+2013-11-05  Jim Meyering  <meyering@fb.com>
+
+       hash: relax license to LGPLv2+, for libguestfs
+       * modules/hash (License): Change from GPL to LGPLv2+.
+
 2013-11-03  Paul Eggert  <eggert@cs.ucla.edu>
 
        intprops: port to Oracle Studio c99
        coding: utf-8
        End:
 
-       Copyright (C) 1997-2013 Free Software Foundation, Inc.
+       Copyright (C) 1997-2014 Free Software Foundation, Inc.
 
        Copying and distribution of this file, with or without
        modification, are permitted provided the copyright notice