autoupdate
[gnulib.git] / ChangeLog
index 09e63fb..d99d387 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,365 @@
+2009-11-21  Bruno Haible  <bruno@clisp.org>
+
+       diffseq: reduce scope of variable 'best'.
+       * lib/diffseq.h (diag) [USE_HEURISTIC]: Reduce scope of 'best'
+       variable, earlier used for two different purposes.
+
+2009-11-21  Jim Meyering  <meyering@redhat.com>
+
+       diffseq: remove useless assignment to "best"
+       * lib/diffseq.h (diag) [USE_HEURISTIC]: Remove useless "best = 0"
+       assignment.  At that point "best" is already guaranteed to be zero.
+
+2009-11-20  Eric Blake  <ebb9@byu.net>
+
+       build: mention ftp redirector in release announcements
+       * top/maint.mk (gnu_rel_host, url_dir_list): Provide defaults for
+       values that used to come from cfg.mk; mention FTP redirect URL.
+       * build-aux/announce-gen: Mention the mirror list.
+       Suggested by Karl Berry.
+
+       nanosleep: improve port to mingw
+       * lib/nanosleep.c (rpl_nanosleep): Reject invalid arguments.
+       * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): Incorporate LIBSOCKET into
+       LIB_NANOSLEEP, but only when needed.
+       * modules/select (Link): Document LIBSOCKET.
+       * m4/select.m4 (gl_FUNC_SELECT): Ensure LIBSOCKET is defined early
+       enough.
+
+       nanosleep: work around cygwin bug
+       * lib/nanosleep.c (rpl_nanosleep) [HAVE_BUG_BIG_NANOSLEEP]:
+       Fix logic bug when nanosleep fails.  Work around cygwin 1.5.x
+       bug.
+       (getnow): Delete, not needed.
+       * m4/nanosleep.m4 (gl_FUNC_NANOSLEEP): No longer require
+       LIB_CLOCK_GETTIME.
+       * modules/nanosleep (Depends-on): Add intprops and verify.  Drop
+       clock-time, gettime.
+       * doc/posix-functions/nanosleep.texi (nanosleep): Document the
+       bug.
+       * modules/nanosleep-tests: New test.
+       * tests/test-nanosleep.c: New file.
+
+       sleep: work around cygwin bug
+       * lib/sleep.c (rpl_sleep): Work around the bug.
+       * m4/sleep.m4 (gl_FUNC_SLEEP): Detect the bug.
+       (gl_PREREQ_SLEEP): Delete unused macro.
+       * modules/sleep (Depends-on): Add verify.
+       * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add default.
+       * modules/unistd (Makefile.am): Substitute witness.
+       * lib/unistd.in.h (sleep): Update prototype.
+       * doc/posix-functions/sleep.texi (sleep): Document the bug.
+       * tests/test-sleep.c (main) [HAVE_DECL_ALARM]: Test it.
+       * modules/sleep-tests (Depends-on): Check for alarm.
+
+2009-11-20  Jim Meyering  <meyering@redhat.com>
+
+       maint.mk: improve sc_prohibit_magic_number_exit
+       * top/maint.mk (sc_prohibit_magic_number_exit): Tighten regexp
+       so it does not match uses like System.exit(1).
+       Add comments showing how to correct all offenders.
+
+2009-11-19  Eric Blake  <ebb9@byu.net>
+
+       xalloc-die-tests: add missing library
+       * modules/xalloc-die-tests (Makefile.am): Add LDADD line.
+
+       test-xvasprintf: silence compiler warnings
+       * tests/test-xvasprintf.c (test_xvasprintf, test_xasprintf): Mask
+       empty string from gcc.
+
+2009-11-19  Jim Meyering  <meyering@redhat.com>
+
+       xfreopen: new module, from coreutils
+       * modules/xfreopen: New module.
+       * lib/xfreopen.c: New file.
+       * lib/xfreopen.h: New file.
+       * MODULES.html.sh (File stream based Input/Output"): Add it.
+
+2009-11-19  Eric Blake  <ebb9@byu.net>
+
+       manywarnings: depend on warnings
+       * modules/manywarnings (Depends-on): Add warnings.
+
+       build: avoid compiler warnings
+       * lib/select.c (rpl_select): Delete unused variable.
+       * lib/setsockopt.c (rpl_setsockopt): Avoid incompatible pointer.
+
+2009-11-18  Eric Blake  <ebb9@byu.net>
+
+       tests: avoid false negative with --with-packager
+       * tests/test-version-etc.sh: Discard packager information.
+       * tests/test-argp-version-etc-1.sh: Likewise.
+       Reported by Mike Frysinger.
+
+       utimens: fix regression on Solaris
+       * m4/utimens.m4 (gl_UTIMENS): Check for BSD bug.
+       * lib/utimens.c (fdutimens): Revert 2009-11-08 change; Solaris 10
+       can only change fd timestamps via futimesat.  Instead, use an
+       additional witness macro to avoid BSD bug.
+       Reported by Jim Meyering.
+
+2009-11-17  Eric Blake  <ebb9@byu.net>
+
+       usleep: use it to simplify tests
+       * modules/stat-time-tests (Depends-on): Add usleep.
+       (configure.ac): Drop usleep check.
+       * modules/chown-tests (Depends-on, configure.ac): Likewise.
+       * modules/lchown-tests (Depends-on, configure.ac): Likewise.
+       * modules/fdutimensat-tests (Depends-on, configure.ac): Likewise.
+       * modules/futimens-tests (Depends-on, configure.ac): Likewise.
+       * modules/openat-tests (Depends-on, configure.ac): Likewise.
+       * modules/utimens-tests (Depends-on, configure.ac): Likewise.
+       * modules/utimensat-tests (Depends-on, configure.ac): Likewise.
+       * modules/pipe-filter-gi-tests (Depends-on, configure.ac):
+       Likewise.
+       * tests/test-chown.h (nap): Rely on nicer usleep semantics.
+       * tests/test-lchown.h (nap): Likewise.
+       * tests/test-pipe-filter-gi2-main.c (small_nap): Likewise.
+       * tests/test-stat-time.c (nap): Likewise.
+       * tests/test-utimens-common.h (nap): Update comments.
+
+       usleep: new module
+       * modules/usleep: New file.
+       * m4/usleep.m4 (gl_FUNC_USLEEP): Likewise.
+       * lib/usleep.c (usleep): Likewise.
+       * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add defaults.
+       * modules/unistd (Makefile.am): Substitute witnesses.
+       * lib/unistd.in.h (usleep): Add declaration.
+       * doc/pastposix-functions/usleep.texi (usleep): Document this.
+       * MODULES.html.sh (Date and time): Likewise.
+       * modules/usleep-tests (Depends-on): New test.
+       * tests/test-usleep.c: New file.
+
+       chown: work around OpenBSD bug
+       * lib/chown.c (rpl_chown): Work around the bug.
+       * lib/lchown.c (rpl_lchown): Attempt to do likewise.
+       * m4/chown.m4 (gl_FUNC_CHOWN): Test for ctime bug.
+       * m4/lchown.m4 (gl_FUNC_LCHOWN): Check for lchmod.
+       * modules/chown (Depends-on): Add stdbool.
+       * modules/lchown (Depends-on): Likewise.
+       * doc/posix-functions/chown.texi (chown): Document the bug.
+       * doc/posix-functions/lchown.texi (lchown): Likewise.
+       * tests/test-lchown.h (test_chown): Relax test.
+
+       mkstemp: avoid conflict with C++ keyword template
+       * lib/mkdtemp.c (mkdtemp): Change spelling of template.
+       * lib/mkostemp.c (mkostemp): Likewise.
+       * lib/mkostemps.c (mkostemps): Likewise.
+       * lib/mkstemp.c (mkstemp): Likewise.
+       * lib/mkstemps.c (mkstemps): Likewise.
+
+       xalloc-die-tests: optimize
+       * tests/test-xalloc-die.sh: Reduce number of processes.
+
+2009-11-17  Simon Josefsson  <simon@josefsson.org>
+
+       * gnulib-tool: Support LGPLv3+ licenses in module files.  Tiny
+       patch from ludo@gnu.org (Ludovic Courtès).
+
+2009-11-17  Jim Meyering  <meyering@redhat.com>
+
+       version-etc: use proper license string
+       * modules/version-etc (License): Use LGPL, not LGPLv3+.
+       * modules/version-etc-fsf: Likewise.
+
+2009-11-17  Simon Josefsson  <simon@josefsson.org>
+
+       * tests/test-xalloc-die.sh: Add license.  Check that nothing is
+       printed to stdout.  Deal with EOL differences.
+
+2009-11-17  Eric Blake  <ebb9@byu.net>
+
+       unsetenv: work around Solaris bug
+       * m4/setenv.m4 (gl_FUNC_UNSETENV): Check for bug.
+       * lib/unsetenv.c (rpl_unsetenv): Work around it.
+       Reported by Jim Meyering.
+
+       vasnprintf: avoid compiler warnings
+       * lib/vasnprintf.c (VASNPRINTF): Avoid shadowing our own local
+       variables.
+       * lib/printf-args.c (PRINTF_FETCHARGS): Avoid type mismatch.
+
+2009-11-17  Simon Josefsson  <simon@josefsson.org>
+
+       * modules/xalloc-die-tests (Makefile.am): Drop XFAIL_TESTS
+       settings since xalloc-die is no longer the self test,
+       xalloc-die.sh is.
+
+2009-11-17  Jim Meyering  <meyering@redhat.com>
+
+       test-xalloc-die.sh: make the code agree with the commit log
+       * tests/test-xalloc-die.sh: Put "." at the front of $PATH, not
+       at the end, just in case you happen to have a test-xalloc-die
+       program in some other PATH directory.
+
+       test-xalloc-die.sh: fix a portability bug
+       * tests/test-xalloc-die.sh: Do not invoke via ./test-xalloc-die.
+       Instead, set PATH to start with "." and invoke via "test-xalloc-die".
+       Otherwise, argv[0] (as often seen in diagnostics) would be too
+       system-dependent, sometimes with, and sometimes without the leading "./".
+
+       version-etc-fsf: relax license to LGPLv3+
+       * modules/version-etc-fsf (License): Relax license.
+
+2009-11-16  Eric Blake  <ebb9@byu.net>
+
+       xalloc-die-tests: avoid printing null pointer
+       * modules/xalloc-die-tests (Files, Makefile.am): Wrap execution in
+       shell script.
+       * tests/test-xalloc-die.c (program_name): Declare.
+       * tests/test-xalloc-die.sh (tmpfiles): New file.
+
+       setenv, unsetenv: work around various bugs
+       * lib/setenv.c (setenv) [!HAVE_SETENV]: Resync from glibc.
+       (setenv) [HAVE_SETENV]: Work around bugs.
+       * lib/unsetenv.c (unsetenv) [HAVE_UNSETENV]: Work around bugs.
+       * m4/setenv.m4 (gl_FUNC_SETENV_SEPARATE, gl_FUNC_UNSETENV): Check
+       for bugs.
+       (gl_FUNC_SETENV): Write in terms of gl_FUNC_SETENV_SEPARATE.
+       * m4/environ.m4 (gl_ENVIRON): Avoid expand-before-require.
+       * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Update defaults.
+       * modules/stdlib (Makefile.am): Update substitutions.
+       * lib/stdlib.in.h (setenv, unsetenv): Update prototypes.
+       * doc/posix-functions/setenv.texi (setenv): Document the bugs.
+       * doc/posix-functions/unsetenv.texi (unsetenv): Likewise.
+       * modules/setenv-tests: New test.
+       * modules/unsetenv-tests: Likewise.
+       * tests/test-setenv.c: New file.
+       * tests/test-unsetenv.c: Likewise.
+
+2009-11-16  Jim Meyering  <meyering@redhat.com>
+
+       version-etc: relax license to LGPLv3+
+       * modules/version-etc (License): Relax license.
+
+       better AC_REQUIRE expanded-before-required-warning avoidance
+       * m4/chown.m4 (gl_FUNC_CHOWN, gl_FUNC_CHOWN_FOLLOWS_SYMLINK): Define
+       with AC_DEFUN_ONCE, rather than AC_DEFUN, to avoid AC_REQUIRE warnings.
+       Suggested by Eric Blake.  This change also reverts commit 1b712ba8,
+       which is no longer needed.
+
+2009-11-16  Eric Blake  <ebb9@byu.net>
+
+       test-freading: clean up temporary file
+       * tests/test-freading.c (main): Remove file on success, and use
+       ASSERT more liberally.
+       Reported by Jim Meyering.
+
+2009-11-16  Jim Meyering  <meyering@redhat.com>
+
+       avoid new AC_REQUIRE expanded-before-required warnings
+       * modules/chown (configure.ac): Require gl_FUNC_CHOWN, rather than
+       merely using it.
+       * modules/euidaccess (configure.ac): Likewise for gl_FUNC_EUIDACCESS.
+       * modules/faccessat (configure.ac): Likewise for gl_FUNC_FACCESSAT.
+
+2009-11-15  Simon Josefsson  <simon@josefsson.org>
+
+       * tests/test-xalloc-die.c: New file.
+       * modules/xalloc-die-tests: New file.
+       * gnulib-tool (func_emit_tests_Makefile_am): Also initialize
+       XFAIL_TESTS so it can be appended by modules.
+
+2009-11-15  Simon Josefsson  <simon@josefsson.org>
+
+       * lib/gc-pbkdf2-sha1.c: Remove comments from RFC 2898.  Reported
+       by Vladimir 'phcoder' Serbinenko <phcoder@gmail.com>.
+
+2009-11-14  Eric Blake  <ebb9@byu.net>
+
+       fnmatch: avoid compiler warning
+       * lib/fnmatch_loop.c (NEW_PATTERN): Coerce addition to unsigned,
+       to silence compiler warning about mismatch signedness in ?:.
+       Reported by Robert Millan.
+
+       intprops: add double-inclusion guard
+       * lib/intprops.h: Allow idempotent includes.
+       Suggested by Bruce Korb.
+
+       openat: detect Solaris fchownat bug
+       * lib/fchownat.c (rpl_fchownat): Work around Solaris bug.  Avoid
+       penalizing glibc chownat when only lchownat is broken.
+       * m4/openat.m4 (gl_FUNC_FCHOWNAT): Replace fchownat if there are
+       trailing slash bugs.
+       * doc/posix-functions/fchownat.texi (fchownat): Document the bug.
+       * modules/openat-tests (Files): Include more files.
+       (Depends-on): Add mgetgroups, sleep, stat-time.
+       (configure.ac): Add additional checks.
+       (Makefile.am): Build new test.
+       * tests/test-fchownat.c: New file.
+
+       lchown: detect Solaris and FreeBSD bug
+       * lib/lchown.c (rpl_lchown): Work around bug.
+       * m4/lchown.m4 (gl_FUNC_LCHOWN): Check for trailing slash bugs.
+       * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add witness.
+       * modules/unistd (Makefile.am): Populate it.
+       * lib/unistd.in.h (lchown): Update declaration.
+       * doc/posix-functions/lchown.texi (lchown): Document the bug.
+       * modules/lchown-tests: New file.
+       * tests/test-lchown.h (test_lchown): Likewise.
+       * tests/test-lchown.c (main): Likewise.
+
+       chown: detect Solaris and FreeBSD bug
+       * lib/chown.c (rpl_chown): Work around bug.
+       * m4/chown.m4 (gl_FUNC_CHOWN): Check for trailing slash bugs.
+       (gl_PREREQ_CHOWN): Delete.
+       * m4/unistd_h.m4 (gl_UNISTD_H_DEFAULTS): Add witness.
+       * modules/unistd (Makefile.am): Populate it.
+       * lib/unistd.in.h (chown): Update declaration.
+       * lib/lchown.c (chown): Update client.
+       * modules/lchown (Depends-on): Add lstat.
+       * doc/posix-functions/chown.texi (chown): Document the bug.
+       * doc/posix-functions/getgroups.texi (getgroups): Document
+       getgroups pitfall.
+       * modules/chown-tests: New file.
+       * tests/test-chown.h (test_chown): Likewise.
+       * tests/test-chown.c (main): Likewise.
+
+2009-11-14  Robert Millan  <rmh.grub@aybabtu.com>  (tiny change)
+
+       gnulib-tool: correctly detect absence of m4 directories
+       * gnulib-tool: Avoid extra newline on data passed to wc -l.
+
+2009-11-14  Jim Meyering  <meyering@redhat.com>
+
+       maint.mk: Prohibit inclusion of "xalloc.h" without use.
+       * top/maint.mk (sc_prohibit_close_stream_without_use): New rule.
+
+2009-11-14  John W. Eaton  <jwe@gnu.org>
+
+       strftime.h: wrap funtion declaration in extern "C" block
+       * lib/strftime.h (nstrftime) [__cplusplus]: Wrap declaration.
+
 2009-11-13  Eric Blake  <ebb9@byu.net>
 
+       getgroups: avoid compiler warning
+       * lib/getgroups.c (rpl_getgroups): Delete shadowed variable.
+
+       getgroups: work around FreeBSD bug
+       * lib/getgroups.c (rpl_getgroups): Work around the bug.
+       * m4/getgroups.m4 (gl_FUNC_GETGROUPS): Detect the bug.
+       * doc/posix-functions/getgroups.texi (getgroups): Document it.
+       * tests/test-getgroups.c (main): Fix buffer overrun.
+
+       getgroups: avoid compilation failure
+       * lib/getgroups.c (includes): Include <stdint.h> for SIZE_MAX.
+       * modules/getgroups (Depends-on): Add stdint.
+
+2009-11-13  Jim Meyering  <meyering@redhat.com>
+
+       test-getgroups: avoid compilation failure
+       * tests/test-getgroups.c: Include <stdint.h> for use of SIZE_MAX.
+
+2009-11-13  Eric Blake  <ebb9@byu.net>
+
+       mgetgroups: new module, taken from coreutils
+       * modules/mgetgroups: New file.
+       * lib/mgetgroups.h: Likewise.
+       * lib/mgetgroups.c (mgetgroups): Likewise.
+       * m4/mgetgroups.m4 (gl_MGETGROUPS): Likewise.
+       * MODULES.html.sh (Users and groups): Mention it.
+
        getgroups: don't expose GETGROUPS_T to user
        * lib/getgroups.c (rpl_getgroups): Change signature.  Copy array
        an element at a time if GETGROUPS_T is wrong size.