maint.mk: forbid exit(-1)
[gnulib.git] / ChangeLog
index 2a798eb..2fa6fd5 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,301 @@
+2012-07-20  Eric Blake  <eblake@redhat.com>
+
+       maint.mk: forbid exit(-1)
+       * top/maint.mk (sc_prohibit_magic_number_exit): Detect negatives.
+
+2012-07-20  Paul Eggert  <eggert@cs.ucla.edu>
+
+       fsusage: port back to Solaris
+       * lib/fsusage.c (get_fs_usage): Fix busted logic causing compile-time
+       error (fsd not declared) on Solaris 10.  Reported privately by
+       Andrew Borodin.
+
+2012-07-19  Akim Demaille  <akim@lrde.epita.fr>
+
+       gnu-web-doc-update: fix error messages
+       * build-aux/gnu-web-doc-update: Don't pass $ME to die.
+
+       gnu-web-doc-update: check the requirements.
+       * build-aux/gnu-web-doc-update (find_tool): Import from bootstrap.
+       ($CVS, $CVSU, $GIT, $RSYNC, $XARGS): New.
+       * build-aux/bootstrap (find_tool): Comment change.
+
+2012-07-17  Akim Demaille  <akim@lrde.epita.fr>
+
+       maint.mk: minor simplication.
+       * top/maint.mk (_sc_excl): Use $(or...) instead of $(if...)
+       for default values.
+
+2012-07-15  Akim Demaille  <akim@lrde.epita.fr>
+
+       gitlog-to-changelog: VPATH build issues
+       If builddir is not a subdirectory of srcdir, running git from it will
+       fail.
+       * build-aux/gitlog-to-changelog (--srcdir): New option.
+
+2012-07-15  Bruno Haible  <bruno@clisp.org>
+
+       fpending: Assume AC_CHECK_DECLS_ONCE invocation, like in fpending.m4.
+       * lib/fpending.h: Assume HAVE_DECL___FPENDING is defined.
+       * cfg.mk (exclude_file_name_regexp--sc_prohibit_defined_have_decl_tests)
+       Remove exemption for fpending.h.
+       Suggested by Eric Blake.
+
+2012-07-15  Paul Eggert  <eggert@cs.ucla.edu>
+
+       pthread_sigmask: fix bug on FreeBSD 9
+       * lib/pthread_sigmask.c [PTHREAD_SIGMASK_INEFFECTIVE]:
+       Include string.h.
+       (pthread_sigmask) [PTHREAD_SIGMASK_INEFFECTIVE]:
+       When calling pthread_sigmask (1729, NEW, OLD), specify non-null NEW;
+       this avoids a bug on FreeBSD 9, where pthread_sigmask is effective
+       but pthread_sigmask (1729, NULL, NULL) returns zero.
+       See <http://bugs.gnu.org/11884>.
+       Avoid the need to call pthread_sigmask (1729, ...) in most cases,
+       by inspecting whether the main call changed the old mask.
+
+2012-07-15  Reuben Thomas  <rrt@sc3d.org>
+
+       README-release: make it more legible
+       * top/README-release: Improve typography slightly.
+
+2012-07-15  Jim Meyering  <meyering@redhat.com>
+
+       maint: require that each sc_... command start with "@"
+       * Makefile (sc_prohibit_sc_omitted_at): New rule so that
+       "make sc_maint" helps us avoid this nit.
+
+2012-07-15  Jim Meyering  <meyering@redhat.com>
+
+       maint.mk: add leading "@" to quiet new "make syntax-check" rule
+       * top/maint.mk (sc_prohibit_defined_have_decl_tests): Add "@".
+
+2012-07-13  Eric Blake  <eblake@redhat.com>
+
+       maint.mk: new syntax check for HAVE_DECL checks
+       * top/maint.mk (sc_prohibit_defined_have_decl_tests): New rule.
+       * cfg.mk
+       (exclude_file_name_regexp--sc_prohibit_defined_have_decl_tests):
+       Exempt some false positives.
+       Based on a report by Karel Zak.
+
+       argp: make HAVE_DECL usage consistent
+       * lib/argp-parse.c (__argp_parse): Check contents of HAVE_DECL
+       macros, not whether they are defined.
+       * m4/argp.m4 (gl_ARGP): Always define HAVE_DECL_* macros, per
+       convention with other declaration checks.
+       Reported by Karel Zak, with suggestions from Paul Eggert.
+
+       stat-time: relax license to LGPLv2+
+       * modules/stat-time (License): Relax, with consent of all authors.
+
+       strndup: fix m4 usage error
+       * m4/strndup.m4 (gl_FUNC_STRNDUP): HAVE_DECL_STRNDUP is always
+       defined, to either 0 or 1.
+       Reported by Karel Zak.
+
+2012-07-11  Jim Meyering  <meyering@redhat.com>
+
+       maint: enable the sc_avoid_if_before_free syntax-check rule
+       * cfg.mk (local-checks-to-skip): Enable sc_avoid_if_before_free.
+       (if_before_free_offenders_): Define.
+       (if_before_free_basename_re_): Define.
+       Exempt current files with useless if-before-free.
+
+2012-07-11  Paul Eggert  <eggert@cs.ucla.edu>
+
+       gettext: do not assume '#define ... defined ...' behavior
+       * lib/gettext.h (_LIBGETTEXT_HAVE_VARIABLE_SIZE_ARRAYS):
+       Do not use '#define FOO ... defined BAR ...', as the C standard says
+       it's not portable to expect that this works after macro expansion.
+       Problem reported for gzip by Steven M. Schweda in
+       <http://lists.gnu.org/archive/html/bug-gzip/2012-07/msg00000.html>.
+
+2012-07-10  Paul Eggert  <eggert@cs.ucla.edu>
+
+       getloadavg: clean out old Emacs and Autoconf cruft
+       See Glenn Morris in <http://bugs.gnu.org/11905>.
+       * lib/getloadavg.c: Include <config.h>, <stdbool.h> always.
+       Include <sys/param.h> if HAVE_SYS_PARAM_H, not if unix or __unix.
+       (LDAV_CVT): Remove no-longer-used LOAD_AVE_CVT hook.
+       * m4/getloadavg.m4 (gl_PREREQ_GETLOADAVG): Check for <sys/param.h>.
+
+2012-07-10  Akim Demaille  <akim@lrde.epita.fr>
+
+       bootstrap: let warn be like tests/init.sh's warn_
+       Reported by Jim Meyering.
+       * build-aux/bootstrap (warn): Remove, replaced by...
+       (warnf_, warn_): these.
+       Adjust callers.
+       Shorten messages that no longer fit in 80 columns.
+
+2012-07-09  Bruno Haible  <bruno@clisp.org>
+
+       getopt: Simplify after Emacs changed.
+       * m4/getopt.m4 (gl_FUNC_GETOPT_POSIX): Inline gl_GETOPT_IFELSE.
+       (gl_GETOPT_IFELSE): Remove macro.
+
+2012-07-09  Jim Meyering  <meyering@redhat.com>
+
+       maint.mk: add sc_vulnerable_makefile_CVE-2012-3386
+       * top/maint.mk (sc_vulnerable_makefile_CVE-2012-3386): New rule.
+
+       maint.mk: _sc_search_regexp, sc_vulnerable_makefile_CVE-2009-4029: fix
+       Bugs in both of those conspired to make the
+       sc_vulnerable_makefile_CVE-2009-4029 rule 99% useless.
+       _sc_search_regexp's handling of non-empty $in_files would filter
+       out any offending file names.  sc_vulnerable_makefile_CVE-2009-4029's
+       choice of in_files value meant there would be no match in most
+       projects, due to the presence of two or more Makefile.in files.
+       * top/maint.mk (_sc_search_regexp) [in_vc_files,in_files]: Clarify.
+       Fix a bug in how a non-empty $$in_files was processed:
+       (sc_vulnerable_makefile_CVE-2009-4029): Fix erroneous use of in_files:
+       in spite of the name, it's a regexp, not a list of file names.
+
+2012-07-09  Paul Eggert  <eggert@cs.ucla.edu>
+
+       getloadavg, getopt: fix commentary re configure.in
+       Autoconf is deprecating the name 'configure.in', so change it to
+       to the new name 'configure.ac' in a couple of places.
+       * lib/getloadavg.c: configure.in -> configure.ac, in comment.
+       * m4/getopt.m4 (gl_GETOPT_IFELSE, gl_GETOPT_SUBSTITUTE_HEADER)
+       (gl_PREREQ_GETOPT): Remove obsolete commentary re Emacs configure.in.
+       Emacs has renamed it to configure.ac, and it no longer refers
+       to these macros anyway.
+
+       timespec: mark functions with const attributes
+       * lib/timespec.h (timespec_add, timespec_sub, dtotimespec):
+       Mark with _GL_ATTRIBUTE_CONST.
+
+2012-07-07  Ludovic Courtès  <ludo@gnu.org>
+
+       canonicalize[-lgpl]: handle "guessing" values when cross-building
+       * m4/canonicalize.m4 (gl_FUNC_CANONICALIZE_FILENAME_MODE)
+       (gl_CANONICALIZE_LGPL): Check whether $gl_cv_func_realpath_works
+       matches "*yes" instead of just "yes".  Regression introduced in commit
+       e0bcf6626cde8dad4bfbdc4045c744f0cd8b9e24.
+
+2012-07-07  Ludovic Courtès  <ludo@gnu.org>
+           Bruno Haible  <bruno@clisp.org>
+
+       canonicalize: make the right guess when cross-compiling to GNU
+       * m4/canonicalize.m4 (gl_FUNC_REALPATH_WORKS): Match also "gnu*" to
+       determine whether cross-compiling to glibc systems, so as to
+       include GNU/Hurd.
+
+2012-07-06  Paul Eggert  <eggert@cs.ucla.edu>
+
+       timespec-sub: avoid duplicate include
+       * lib/timespec-sub.c: Do not include <config.h> twice.
+       Reported by Juanma Barranquero.
+
+2012-07-06  Akim Demaille  <akim@lrde.epita.fr>
+
+       bootstrap: use a more consistent error reporting scheme
+       * build-aux/bootstrap (warn, die): New.
+       Use them.
+
+2012-07-05  Paul Eggert  <eggert@cs.ucla.edu>
+
+       sys_time: allow too-wide tv_sec
+       * m4/sys_time_h.m4 (gl_HEADER_SYS_TIME_H_BODY): Allow struct
+       timeval even if tv_sec is wider than time_t.  This allows
+       OpenBSD 5.1 amd64 and fixes an Emacs porting glitch with utimens.c,
+       as without this patch gnulib replaces struct timeval
+       and OpenBSD futimes therefore has a type mismatch.
+       * doc/posix-headers/sys_time.texi: Mention this.
+
+       pthread: check for both pthread_create and pthread_join
+       * m4/pthread.m4 (gl_PTHREAD_CHECK): Revert previous change, but
+       alter the check so that it tests for both pthread_create and
+       pthread_join.  This should be more portable to hosts like OSF/1 5.1.
+       Suggested by Bruno Haible and Richard Yao in
+       <http://lists.gnu.org/archive/html/bug-gnulib/2012-07/msg00048.html>.
+
+       parse-datetime: doc tuneup
+       * doc/parse-datetime.texi: Index "leap seconds" and fix minor
+       spacing issues.
+
+2012-07-05  Akim Demaille  <akim@lrde.epita.fr>
+
+       do-release-commit-and-tag: fix the previous commit
+       * build-aux/do-release-commit-and-tag: Actually the test was right,
+       but the comment and the error message were misleading.
+       Fix comment, and improve error message.
+       Perform check first, so that NEWS is not modified uselessly.
+
+       do-release-commit-and-tag: fix typo
+       * build-aux/do-release-commit-and-tag: Be sure that NEWS does
+       _not_ start with a stub.
+
+2012-07-04  Paul Eggert  <eggert@cs.ucla.edu>
+
+       pthread: check for pthread_create, not pthread_join
+       * m4/pthread.m4 (gl_PTHREAD_CHECK): Check for pthread_create, not
+       pthread_join.  On FreeBSD 9, pthread_create is in libpthread but
+       pthread_join in libc.  I hope this removes the need for all the
+       OSF/1 5.1 pthread_join business.  Reported by Richard Yao in
+       <http://lists.gnu.org/archive/html/bug-gnulib/2012-07/msg00042.html>.
+
+2012-07-04  Jim Meyering  <meyering@redhat.com>
+
+       parse-datetime: fix failure to diagnose invalid input
+       date -d "$(printf '\xb0')" would print 00:00:00 with today's date
+       rather than diagnosing the invalid input.  Now it reports this:
+       date: invalid date '\260'
+       * lib/parse-datetime.y (to_uchar): Define.
+       (yylex): Don't sign-extend "other" bytes.
+       * m4/parse-datetime.m4: Require AC_C_INLINE for first use of "inline".
+       Thanks to Bruno Haible for the patch to this file.
+       * tests/test-parse-datetime.c (main): Add a test to trigger the bug.
+       Peter Evans reported the bug in GNU date: http://bugs.gnu.org/11843
+
+2012-07-03  Jim Meyering  <meyering@redhat.com>
+
+       bootstrap: do not require now-removed build-aux/missing
+       Now that build-aux/missing is, er, missing, bootstrap would
+       silently fail.
+       * build-aux/bootstrap (gnulib_extra_files): Remove $build_aux/missing
+       from the list, now that (since commit v0.0-7489-gd0f486f) the file is
+       no longer part of gnulib.
+       Diagnose the failure.
+
+2012-07-03  Paul Eggert  <eggert@cs.ucla.edu>
+
+       alloca: add support for HP NonStop TNS/E native
+       * lib/alloca.in.h (alloca): Support the new host.
+       From a suggestion by Joachim Schmitz in
+       <http://lists.gnu.org/archive/html/bug-gnulib/2012-06/msg00355.html>.
+
+2012-07-02  Pádraig Brady  <P@draigBrady.com>
+
+       fsusage: remove code not needed on non GNU/Linux systems.
+
+       * lib/fsusage.c [STAT_STATVFS || STAT_STATVFS64]:
+       Don't include headers no longer needed in this case.
+       * lib/fsusage.c [STAT_STATVFS &&
+       ! (__linux__ && (__GLIBC__||__UCLIBC__))]: Undefine
+       STAT_STATFS2_FRSIZE to exclude code not used in this case.
+
+2012-07-02  Paul Eggert  <eggert@cs.ucla.edu>
+
+       fsusage: include files needed for glibc 2.6 fallback
+       * lib/fsusage.c [STAT_STATVFS || STAT_STATVFS64]:
+       Include <sys/param.h>, <sys/mount.h>, <sys/vfs.h>
+       as they are needed for the 2.6 < glibc/Linux < 2.6.36 fallback.
+       Problem reported by Ludovic Courtès in
+       <http://lists.gnu.org/archive/html/bug-gnulib/2012-07/msg00005.html>.
+
+       fsusage: avoid needless check on GNU/Linux
+       * m4/fsusage.m4 (gl_FILE_SYSTEM_USAGE): Omit STAT_STATFS3_OSF1 check
+       on GNU/Linux systems, since it can't possibly work.
+
+2012-07-01  Bruno Haible  <bruno@clisp.org>
+
+       log: Fix an autoconf >= 2.64 warning.
+       * modules/log (configure.ac): Require, not invoke, gl_FUNC_LOG.
+       Reported by Carlos O'Donell <carlos_odonell@mentor.com>.
+
 2012-06-28  Bruno Haible  <bruno@clisp.org>
 
        log10f: Fix possible configuration problem.