maint: enable sc_prohibit_hash_pjw_without_use
[gnulib.git] / ChangeLog
index 5d88629..edba699 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,462 @@
+2012-01-17  Jim Meyering  <meyering@redhat.com>
+
+       maint: enable sc_prohibit_hash_pjw_without_use
+       * cfg.mk: Enable sc_prohibit_hash_pjw_without_use.
+       * top/maint.mk (sc_prohibit_hash_pjw_without_use): Adjust regexp
+       to match any use of \<hash_pjw\>, i.e., not necessarily with a
+       following " (".
+
+2012-01-17  Jim Meyering  <meyering@redhat.com>
+
+       maint: enable double-word-prohibiting rule
+       * cfg.mk (local-checks-to-skip): Enable sc_prohibit_doubled_word.
+       Exempt three files.
+
+2012-01-17  Jim Meyering  <meyering@redhat.com>
+
+       maint: remove empty lines at EOF, but excluding modules/*
+       Apply syntax rules at home as well as abroad.  Most changes
+       were induced by running this:
+         make srcdir=. _build-aux=build-aux -f top/maint.mk \
+           sc_prohibit_empty_lines_at_EOF | grep -v modules/ \
+           | xargs perl -pi -0777 -e 's/\n\n+$/\n/'
+       * cfg.mk (local-checks-to-skip): Enable sc_prohibit_empty_lines_at_EOF.
+       Exempt modules/* and two binary files.
+       Also exempt doc/INSTALL*, per request from Bruno Haible.
+       * doc/regexprops-generic.texi: *Add* a newline at EOF.  There was none.
+       * doc/Copyright/assign.translation.manual: Remove empty lines at EOF.
+       * doc/Copyright/request-assign.future: Likewise.
+       * doc/Copyright/request-disclaim.changes: Likewise.
+       * doc/INSTALL: Likewise.
+       * doc/INSTALL.ISO: Likewise.
+       * doc/INSTALL.UTF-8: Likewise.
+       * doc/acl-cygwin.txt: Likewise.
+       * doc/acl-resources.txt: Likewise.
+       * doc/fdl-1.2.texi: Likewise.
+       * doc/fdl-1.3.texi: Likewise.
+       * doc/fdl.texi: Likewise.
+       * lib/argp-pin.c: Likewise.
+       * lib/round.c: Likewise.
+       * lib/unicase/u16-totitle.c: Likewise.
+       * lib/unictype/block_test.c: Likewise.
+       * lib/uninorm/canonical-decomposition.c: Likewise.
+       * m4/README: Likewise.
+       * m4/relocatable-lib.m4: Likewise.
+       * tests/test-isnand-nolibm.c: Likewise.
+       * tests/test-isnand.c: Likewise.
+       * tests/uninorm/NormalizationTest.txt: Likewise.
+
+2012-01-17  Jim Meyering  <meyering@redhat.com>
+
+       maint: add framework to run syntax-check rules against gnulib sources
+       * cfg.mk: New file, to disable all currently-failing tests.
+       We'll enable them one by one, as they are made to pass.
+       * Makefile (sc_maint): New rule.
+
+2012-01-21  Bruno Haible  <bruno@clisp.org>
+
+       stdint: Add support for Android.
+       * lib/stdint.in.h: When included from Bionic <sys/types.h>, just
+       include the system's <stdint.h>.
+       Reported by Simon Josefsson <simon@josefsson.org>.
+
+2012-01-19  Jim Meyering  <meyering@redhat.com>
+
+       bootstrap: add bootstrap_post_import_hook
+       Bison does still need something like the gnulib_mk_hook whose
+       invocation I had to remove along with slurp in commit 767ccd40.
+       Technically, we could get along without it, but doing so would
+       have required living with a warning and a mandatory post-bootstrap
+       automake rerun.
+       * build-aux/bootstrap (gnulib_mk_hook): Remove definition, too.
+       (bootstrap_post_import_hook): New function.
+       Invoke it after gnulib-tool --import and before autoreconf.
+
+2012-01-18  Jim Meyering  <meyering@redhat.com>
+
+       gitlog-to-changelog: don't use "no_"-prefixed variable name
+       * build-aux/gitlog-to-changelog (main): Use getopt's "!" attribute
+       to enable both --cluster and --no-cluster.  Change variable name,
+       s/\$no_cluster/$cluster/, and reverse usage to match.
+
+       gitlog-to-changelog: use "||", not "or" in expressions
+       * build-aux/gitlog-to-changelog (main): Use "||", not "or" in
+       expressions.
+
+2012-01-17  Joel E. Denny  <joeldenny@joeldenny.org>
+
+       gitlog-to-changelog: new option --no-cluster
+       * build-aux/gitlog-to-changelog: New option --no-cluster, disables
+       clustering of adjacent commit messages.
+
+2012-01-17  Jim Meyering  <meyering@redhat.com>
+
+       maint: spell file systems with two words, not one
+       * m4/ls-mntd-fs.m4 (MOUNTED_INTERIX_STATVFS): Spell file systems with
+       two words, not one.
+
+2012-01-16  Jim Meyering  <meyering@redhat.com>
+
+       bootstrap: add a FIXME comment to ensure we eventually remove the hack
+       * build-aux/bootstrap (gnulib_tool_options): Add comment.
+
+2012-01-16  Eric Blake  <eblake@redhat.com>
+
+       bootstrap: cater to autoconf 2.59
+       * build-aux/bootstrap (AUTORECONF): Work even when --no-recursive
+       is not available.
+
+       bootstrap: properly check for libtool
+       * build-aux/bootstrap (libtoolize): Also run libtool when older
+       usage is detected.
+
+2012-01-15  Bruno Haible  <bruno@clisp.org>
+
+       Improve support for MSVC 9.
+       * lib/unistd.in.h: Include <io.h> when needed to avoid redefinition
+       clashes on MSVC.
+       * lib/fcntl.in.h: Likewise.
+       * lib/stdlib.in.h: Likewise.
+       * lib/sys_stat.in.h: Likewise.
+
+2011-01-15  Stefano Lattarini  <stefano.lattarini@gmail.com>
+
+       gnupload: we hold the master copy of this script now
+       For motivation and more information, see:
+       <http://lists.gnu.org/archive/html/bug-gnulib/2012-01/msg00222.html>
+       * build-aux/gnupload: Make it clear in the heading comments that the
+       master copy of this file is maintained by gnulib.  Since we are at
+       it, bump its copyright year and ...
+       ($scriptversion): ... the date in its version.
+       ($usage): Patches and bug reports should be sent to the gnulib list,
+       not the automake one.
+       * config/srclist.txt: Don't try to sync 'gnupload' from automake
+       anymore.
+
+2012-01-15  Bruno Haible  <bruno@clisp.org>
+
+       Fix module 'random'.
+       * m4/stdlib_h.m4 (gl_STDLIB_H): Test whether random, srandom,
+       initstate, setstate are declared.
+
+2012-01-14  Bruno Haible  <bruno@clisp.org>
+
+       Tests for module 'random'.
+       * modules/random-tests: New file.
+       * tests/test-random.c: New file, based on tests/test-random_r.c.
+
+       New module 'random'.
+       * lib/stdlib.in.h (random, srandom, initstate, setstate): New
+       declarations.
+       * lib/random.c: New file, based on glibc/stdlib/random.c.
+       * m4/random.m4: New file.
+       * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize GNULIB_RANDOM,
+       HAVE_RANDOM.
+       * modules/stdlib (Makefile.am): Substitute GNULIB_RANDOM, HAVE_RANDOM.
+       * modules/random: New file.
+       * config/srclist.txt: Add an entry for random.c.
+       * doc/posix-functions/random.texi: Mention the 'random' module.
+       * doc/posix-functions/initstate.texi: Likewise.
+       * doc/posix-functions/setstate.texi: Likewise.
+       * doc/posix-functions/srandom.texi: Likewise.
+
+2012-01-12  Bruno Haible  <bruno@clisp.org>
+
+       random_r: Use common idioms.
+       * lib/random_r.c: Include <stdlib.h> first.
+
+       random_r: Override incompatible API on AIX, OSF/1.
+       * lib/stdlib.in.h (random_r, srandom_r, initstate_r, setstate_r):
+       Override the system function if REPLACE_RANDOM_R is 1.
+       * m4/random_r.m4 (gl_FUNC_RANDOM_R): Require AC_CANONICAL_HOST. On AIX
+       and OSF/1, set REPLACE_RANDOM_R.
+       * m4/stdlib_h.m4 (gl_STDLIB_H_DEFAULTS): Initialize REPLACE_RANDOM_R.
+       * modules/stdlib (Makefile.am): Substitute REPLACE_RANDOM_R.
+       * modules/random_r (configure.ac): Test REPLACE_RANDOM_R.
+       * doc/glibc-functions/initstate_r.texi: Mention the AIX, OSF/1 problem.
+       * doc/glibc-functions/random_r.texi: Likewise.
+       * doc/glibc-functions/setstate_r.texi: Likewise.
+
+       random_r: Support for MSVC 9.
+       * lib/random_r.c: Include stdint.h, not inttypes.h.
+
+2012-01-12  Eric Blake  <eblake@redhat.com>
+
+       inet_ntop: guard extra work by IF_LINT
+       * lib/inet_ntop.c (inet_ntop6): Mark spurious initialization, for
+       better code generation when not checking for warnings.
+       Suggested by Paul Eggert and Jim Meyering.
+
+       strptime: fix regression on mingw
+       * lib/strptime.c (__strptime_internal) [!_LIBC && !HAVE_TM_GMTOFF]:
+       Fix regression.  Reported by Bruno Haible.
+
+2012-01-11  Reuben Thomas  <rrt@sc3d.org>
+           Bruno Haible  <bruno@clisp.org>
+
+       copy-file: add error-code-returning variant.
+       * lib/copy-file.h (GL_COPY_ERR_*): New enumeration items.
+       (qcopy_file_preserving): New declaration.
+       * lib/copy-file.c (qcopy_file_preserving): Renamed from
+       copy_file_preserving. Change return type to 'int'. Don't emit an error
+       message here.
+       (copy_file_preserving): New function.
+       * tests/test-copy-file.c: Include <stdlib.h>.
+       (main): Test qcopy_file_preserving if the environment variable
+       NO_STDERR_OUTPUT is set.
+       * tests/test-copy-file-1.sh: Invoke test-copy-file.sh a second time,
+       with NO_STDERR_OUTPUT
+       * tests/test-copy-file-2.sh: Likewise.
+
+2012-01-10  Bruno Haible  <bruno@clisp.org>
+
+       copy-file: Use 'quote' module consistently.
+       * lib/copy-file.c (copy_file_preserving): Use quote().
+
+       copy-file: Refactor.
+       * lib/copy-file.c: Include quote.h.
+       (copy_file_preserving): Call qcopy_acl instead of copy_acl. Emit error
+       message here.
+       * modules/copy-file (Depends-on): Add quote.
+
+       acl: Export qcopy_acl.
+       * lib/acl.h (qcopy_acl): New declaration.
+       * lib/copy-acl.c (qcopy_acl): Make non-static.
+
+       acl: Rename a local variable.
+       * lib/set-mode-acl.c (set_acl): Use same variable name as in copy_acl.
+
+       acl: Align return values of copy_acl and qcopy_acl.
+       * lib/copy-acl.c (copy_acl): Return the same value as qcopy_acl,
+       maybe < -1.
+
+2012-01-11  Eric Blake  <eblake@redhat.com>
+
+       strptime: silence gcc warnings
+       * lib/strptime.c (__strptime_internal) [!_NL_CURRENT],
+       [!_LIBC && !HAVE_TM_GMTOFF]: Avoid unused variables.
+       Reported by Daniel P. Berrange.
+
+       inet_ntop: silence gcc warning
+       * lib/inet_ntop.c (inet_ntop6): Initialize best.base.
+       Reported by Daniel P. Berrange.
+
+2012-01-11  Dmitry V. Levin  <ldv@altlinux.org>
+
+       getloadavg test: skip the test on GNU/Linux without /proc mounted
+       GNU libc implements getloadavg(3) on Linux by parsing /proc/loadavg
+       file.  When /proc is not mounted, it always fails with ENOENT.
+       * tests/test-getloadavg.c (main): Treat ENOENT return code from
+       getloadavg(3) the same way as ENOSYS and ENOTSUP.
+
+2012-01-10  Bruno Haible  <bruno@clisp.org>
+
+       regex: Avoid link error on MSVC 9.
+       * modules/regex (Depends-on): Add wctype.
+
+2012-01-10  Bruno Haible  <bruno@clisp.org>
+
+       doc: Mention --with-tests option.
+       * gnulib-tool (func_usage): Suggest --with-tests for --test etc.
+       * doc/gnulib.texi (Extra tests modules): Mention the need to pass
+       --with-tests.
+       Reported by Reuben Thomas.
+
+2012-01-10  Reuben Thomas  <rrt@sc3d.org>
+
+       users.txt: order package names lexicographically.
+       * users.txt: Order package names lexicographically.
+
+2012-01-10  Jim Meyering  <meyering@redhat.com>
+
+       maint.mk: fix description in comment
+       * top/maint.mk (require_exactly_one_NL_at_EOF_): Fix comment.
+
+       ignore-value: remove deprecated ignore_ptr function
+       * lib/ignore-value.h (ignore_ptr): Remove deprecated function.
+       * NEWS: Note this.
+
+2012-01-09  Jim Meyering  <meyering@redhat.com>
+
+       test-init.sh: avoid a subshell
+       * tests/test-init.sh: Remove protective subshell.
+       Suggested by Bernhard Voelker.  While a subshell is normally
+       required to protect against older shells (Solaris, FreeBSD) that
+       warn about a missing program before performing redirection, the
+       shell-selection tests performed by init.sh probably exclude any
+       offending shell.
+
+2012-01-08  Bruno Haible  <bruno@clisp.org>
+
+       setlocale tests: Avoid test failure on Solaris 11 2011-11.
+       * tests/test-setlocale2.sh: Use 'env' to set the LC_ALL environment
+       variable.
+
+2012-01-08  Bruno Haible  <bruno@clisp.org>
+
+       posix_spawn_file_actions_addopen: Work around Solaris 11 2011-11 bug.
+       * m4/spawn_h.m4 (gl_SPAWN_H_DEFAULTS): Initialize
+       REPLACE_POSIX_SPAWN_FILE_ACTIONS_ADDOPEN.
+       * m4/posix_spawn.m4 (gl_FUNC_POSIX_SPAWN_FILE_ACTIONS_ADDOPEN): New
+       macro.
+       * lib/spawn.in.h (posix_spawn_file_actions_addopen): Test
+       REPLACE_POSIX_SPAWN_FILE_ACTIONS_ADDOPEN, not REPLACE_POSIX_SPAWN.
+       * lib/spawn_faction_addopen.c: Add workaround implementation if
+       HAVE_WORKING_POSIX_SPAWN.
+       * modules/spawn (Makefile): Substitute
+       REPLACE_POSIX_SPAWN_FILE_ACTIONS_ADDOPEN.
+       * modules/posix_spawn_file_actions_addopen (configure.ac): Invoke
+       gl_FUNC_POSIX_SPAWN_FILE_ACTIONS_ADDOPEN. Test
+       REPLACE_POSIX_SPAWN_FILE_ACTIONS_ADDOPEN, not REPLACE_POSIX_SPAWN.
+       (Depends-on): Update conditions.
+       * doc/posix-functions/posix_spawn_file_actions_addopen.texi: Mention
+       the Solaris 11 bug.
+
+2012-01-08  Bruno Haible  <bruno@clisp.org>
+
+       posix_spawn_file_actions_adddup2: Work around Solaris 11 2011-11 bug.
+       * m4/spawn_h.m4 (gl_SPAWN_H_DEFAULTS): Initialize
+       REPLACE_POSIX_SPAWN_FILE_ACTIONS_ADDDUP2.
+       * m4/posix_spawn.m4 (gl_FUNC_POSIX_SPAWN_FILE_ACTIONS_ADDDUP2): New
+       macro.
+       * lib/spawn.in.h (posix_spawn_file_actions_adddup2): Test
+       REPLACE_POSIX_SPAWN_FILE_ACTIONS_ADDDUP2, not REPLACE_POSIX_SPAWN.
+       * lib/spawn_faction_adddup2.c: Add workaround implementation if
+       HAVE_WORKING_POSIX_SPAWN.
+       * modules/spawn (Makefile): Substitute
+       REPLACE_POSIX_SPAWN_FILE_ACTIONS_ADDDUP2.
+       * modules/posix_spawn_file_actions_adddup2 (configure.ac): Invoke
+       gl_FUNC_POSIX_SPAWN_FILE_ACTIONS_ADDDUP2. Test
+       REPLACE_POSIX_SPAWN_FILE_ACTIONS_ADDDUP2, not REPLACE_POSIX_SPAWN.
+       (Depends-on): Update conditions.
+       * doc/posix-functions/posix_spawn_file_actions_adddup2.texi: Mention
+       the Solaris 11 bug.
+
+2012-01-08  Bruno Haible  <bruno@clisp.org>
+
+       posix_spawn_file_actions_addclose: Work around Solaris 11 2011-11 bug.
+       * m4/spawn_h.m4 (gl_SPAWN_H_DEFAULTS): Initialize
+       REPLACE_POSIX_SPAWN_FILE_ACTIONS_ADDCLOSE.
+       * m4/posix_spawn.m4 (gl_POSIX_SPAWN_BODY): Define
+       HAVE_WORKING_POSIX_SPAWN.
+       (gl_FUNC_POSIX_SPAWN_FILE_ACTIONS_ADDCLOSE): New macro.
+       * lib/spawn.in.h (posix_spawn_file_actions_addclose): Test
+       REPLACE_POSIX_SPAWN_FILE_ACTIONS_ADDCLOSE, not REPLACE_POSIX_SPAWN.
+       * lib/spawn_faction_addclose.c: Add workaround implementation if
+       HAVE_WORKING_POSIX_SPAWN.
+       * modules/spawn (Makefile): Substitute
+       REPLACE_POSIX_SPAWN_FILE_ACTIONS_ADDCLOSE.
+       * modules/posix_spawn_file_actions_addclose (configure.ac): Invoke
+       gl_FUNC_POSIX_SPAWN_FILE_ACTIONS_ADDCLOSE. Test
+       REPLACE_POSIX_SPAWN_FILE_ACTIONS_ADDCLOSE, not REPLACE_POSIX_SPAWN.
+       (Depends-on): Update conditions.
+       * doc/posix-functions/posix_spawn_file_actions_addclose.texi: Mention
+       the Solaris 11 bug.
+
+2012-01-08  Bruno Haible  <bruno@clisp.org>
+
+       doc: Update for Solaris 11 2011-11.
+       * doc/*/*.texi: Mention Solaris 11 2011-11 where appropriate.
+       * m4/printf.m4: Update comments.
+
+2012-01-08  Bruno Haible  <bruno@clisp.org>
+
+       mktime: Avoid compilation error on Solaris 11.
+       * lib/mktime.c (WRAPV): Define to 0 on all non-glibc systems.
+
+2012-01-08  Bruno Haible  <bruno@clisp.org>
+
+       doc: Small fix.
+       * doc/posix-headers/nl_types.texi: Correct platforms list.
+
+2012-01-08  Simon Josefsson  <simon@josefsson.org>
+
+       Add lgpl-3.0 module.
+       * MODULES.html.sh (Support for building documentation): Add
+       lgpl-3.0.
+       * modules/lgpl-3.0: New file.
+
+2012-01-08  Jim Meyering  <meyering@redhat.com>
+
+       select.c: indent with spaces, not TABs
+       * lib/select.c (windows_poll_handle): Indent with spaces, not TABs.
+
+2012-01-07  Paolo Bonzini  <bonzini@gnu.org>
+
+       quotearg: do not use grave accent for left quote
+       * lib/quotearg.c (gettext_quote): Map "`" to "'" for
+       locale_quoting_style.
+       (quotearg_buffer_restyled): Fix example.
+       * tests/test-quotearg-simple.c (results_g): Adjust test vectors.
+
+2012-01-07  Paolo Bonzini  <bonzini@gnu.org>
+
+       quotearg: fall back to Unicode single quotes in UTF-8, GB-18030 locales
+       Most programs do not have translation catalogs for English and much
+       less separate catalogs for British and American English.  Drop the
+       suggestion to translators about these two, and provide it
+       automatically for Unicode locales.  Like most programs, even those
+       using American English, we use single quotation marks.  This conflicts
+       with the American typographic convention, but works better when you
+       cite the entire error message within double quotes.  It also tries not
+       to clash with established practice and with what non-gnulib programs
+       will usually do.
+       * lib/quotearg.c (gettext_quote): Hard-code U+2018 and U+2019 when
+       using an UTF-8 or GB-18030 locale.  The list of other locales with
+       quotes was provided by Bruno Haible.
+       (quotearg_buffer_restyled): Adjust instructions to translators.
+       * lib/quotearg.h (locale_quoting_style): Do not put an example in the
+       text, since this would be wrong when using Unicode.
+       * modules/quotearg: Depend on c-strcaseeq.
+
+2012-01-07  Paolo Bonzini  <bonzini@gnu.org>
+
+       quotearg: fix Wikipedia link
+       * lib/quotearg.c (quotearg_buffer_restyled): Fix link to Wikipedia.
+
+2012-01-07  Simon Josefsson  <simon@josefsson.org>
+
+       Fix for mingw with MSVC9.
+       * m4/ld-version-script.m4: Check that compiler rejects version
+       scripts with syntax errors.  Reported by Bruno Haible
+       <bruno@clisp.org>.
+
+2012-01-06  Bruno Haible  <bruno@clisp.org>
+
+       Talk about "native Windows API", not "Woe32".
+       * lib/accept4.c: Update comments to mention native Windows.
+       * lib/execute.c: Likewise.
+       * lib/fatal-signal.c: Likewise.
+       * lib/localcharset.c: Likewise.
+       * lib/nanosleep.c: Likewise.
+       * lib/nl_langinfo.c: Likewise.
+       * lib/pclose.c: Likewise.
+       * lib/pipe-filter-gi.c: Likewise.
+       * lib/pipe-filter-ii.c: Likewise.
+       * lib/pipe.c: Likewise.
+       * lib/pipe2.c: Likewise.
+       * lib/popen.c: Likewise.
+       * lib/progreloc.c: Likewise.
+       * lib/relocatable.c: Likewise.
+       * lib/sigaction.c: Likewise.
+       * lib/sigprocmask.c: Likewise.
+       * lib/spawn-pipe.h: Likewise.
+       * lib/spawn-pipe.c: Likewise.
+       * lib/spawni.c: Likewise.
+       * lib/stat-time.h: Likewise.
+       * lib/w32spawn.h: Likewise.
+       * tests/test-isatty.c: Likewise.
+       * lib/config.charset: More comments.
+       * doc/gnulib-intro.texi: Mention native Windows.
+       * doc/posix-functions/_Exit_C99.texi: Likewise.
+       * doc/posix-headers/fcntl.texi: Likewise.
+
+2012-01-06  Guillem Jover  <guillem@hadrons.org>  (tiny change)
+
+       argp: Avoid crash if translator uses % characters in a translation.
+       * lib/argp-parse.c (argp_version_parser): Use a "%s" format string.
+       Reported by Mats Erik Andersson <gnu@gisladisker.se>.
+
 2012-01-06  Paul Eggert  <eggert@cs.ucla.edu>
 
        doc: C11 and C++11 are now official