]> git.saurik.com Git - bison.git/commitdiff
maint: automate annual package-wide copyright-year update.
authorJoel E. Denny <jdenny@clemson.edu>
Thu, 30 Jul 2009 21:12:10 +0000 (17:12 -0400)
committerJoel E. Denny <jdenny@clemson.edu>
Wed, 5 Aug 2009 00:22:30 +0000 (20:22 -0400)
* .x-update-copyright: New.
* Makefile.am (EXTRA_DIST): Remove maint.mk.
* bootstrap.conf (gnulib_modules): Add maintainer-makefile and
update-copyright.  Remove gnumakefile, which is implied by
maintainer-makefile.
* cfg.mk (bootstrap-tools): Copy from old maint.mk.
* gnulib: Update.
* maint.mk: Remove, now copied from gnulib.
* examples/extexi: Add missing "(C)" in copyright statement so
update-copyright can recognize it.
* src/LR0.h: Likewise.
* src/print.h: Likewise.
* src/print_graph.h: Likewise.
* src/named-ref.c: Likewise.
* src/named-ref.h: Likewise.
* src/gram.c: Add missing comma in copyright statement.
* src/gram.h: Likewise.
(cherry picked from commit dbbb64f09180b8749e3a91d3559e13b933cd15c8)

Conflicts:

Makefile.am
gnulib
maint.mk
src/gram.h

23 files changed:
.cvsignore
.gitignore
.x-update-copyright [new file with mode: 0644]
ChangeLog
Makefile.am
bootstrap.conf
build-aux/.cvsignore
build-aux/.gitignore
cfg.mk
examples/extexi
gnulib
lib/.cvsignore
lib/.gitignore
m4/.cvsignore
m4/.gitignore
maint.mk [deleted file]
src/LR0.h
src/gram.c
src/gram.h
src/named-ref.c
src/named-ref.h
src/print.h
src/print_graph.h

index 704acea7382a851dc2339ec398cd6f3d78842c76..20ef6773571b6cb09f00609c36bccecc83bec915 100644 (file)
@@ -26,6 +26,7 @@ conftest*
 gnulib
 javacomp.sh
 javaexec.sh
 gnulib
 javacomp.sh
 javaexec.sh
+maint.mk
 patches
 releases
 stamp-h*
 patches
 releases
 stamp-h*
index be0a7b79b66a1c8f498646f64f1d4d20593cf4b6..185cefcd9d47896400c2cd1848f2035c4385c2e3 100644 (file)
@@ -26,6 +26,7 @@
 /gnulib
 /javacomp.sh
 /javaexec.sh
 /gnulib
 /javacomp.sh
 /javaexec.sh
+/maint.mk
 /patches
 /releases
 /stamp-h*
 /patches
 /releases
 /stamp-h*
diff --git a/.x-update-copyright b/.x-update-copyright
new file mode 100644 (file)
index 0000000..f24f8e1
--- /dev/null
@@ -0,0 +1,4 @@
+^doc/fdl\.texi$
+^doc/gpl-3\.0\.texi$
+^doc/yacc\.1\.in$
+^src/parse-gram\.h$
index 878e5404e5011658361eff52131c2ba5ade25a8a..402a9bfe94feaa3cf83d745695304b73769e02ef 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,22 @@
+2009-08-04  Joel E. Denny  <jdenny@clemson.edu>
+
+       maint: automate annual package-wide copyright-year update.
+       * .x-update-copyright: New.
+       * Makefile.am (EXTRA_DIST): Remove maint.mk.
+       * bootstrap.conf (gnulib_modules): Add maintainer-makefile and
+       update-copyright.  Remove gnumakefile, which is implied by
+       maintainer-makefile.
+       * cfg.mk (bootstrap-tools): Copy from old maint.mk.
+       * gnulib: Update.
+       * maint.mk: Remove, now copied from gnulib.
+       * examples/extexi: Add missing "(C)" in copyright statement so
+       update-copyright can recognize it.
+       * src/LR0.h: Likewise.
+       * src/print.h: Likewise.
+       * src/print_graph.h: Likewise.
+       * src/gram.c: Add missing comma in copyright statement.
+       * src/gram.h: Likewise.
+
 2009-08-04  Joel E. Denny  <jdenny@clemson.edu>
 
        Fix "make distcheck".
 2009-08-04  Joel E. Denny  <jdenny@clemson.edu>
 
        Fix "make distcheck".
index e1c85061d04e6f20b5e024722246f0e8d43eed04..68d6d8b68c22492954c4204553cec34bedf9a52f 100644 (file)
@@ -27,7 +27,7 @@ aclocaldir = @aclocaldir@
 aclocal_DATA = m4/bison-i18n.m4
 
 EXTRA_DIST = .prev-version .version \
 aclocal_DATA = m4/bison-i18n.m4
 
 EXTRA_DIST = .prev-version .version \
-  cfg.mk maint.mk \
+  cfg.mk \
   OChangeLog PACKAGING
 
 # Initialization before completion by local.mk's.
   OChangeLog PACKAGING
 
 # Initialization before completion by local.mk's.
index c7596c178994b2e6138791909345254a5e4e2362..ee7b8733b404f906aede51f7d56aca7e97339cbf 100644 (file)
 # gnulib modules used by this package.
 gnulib_modules='
   announce-gen argmatch config-h c-strcase configmake dirname error
 # gnulib modules used by this package.
 gnulib_modules='
   announce-gen argmatch config-h c-strcase configmake dirname error
-  extensions fopen-safer gendocs getopt gettext git-version-gen
-  gnumakefile hash inttypes javacomp-script javaexec-script malloc
+  extensions fopen-safer gendocs getopt gettext git-version-gen hash
+  inttypes javacomp-script javaexec-script maintainer-makefile malloc
   mbswidth obstack quote quotearg stdbool stpcpy strerror strtoul
   mbswidth obstack quote quotearg stdbool stpcpy strerror strtoul
-  strverscmp unistd unistd-safer unlocked-io unsetenv verify warnings
-  xalloc xalloc-die xstrndup
+  strverscmp unistd unistd-safer unlocked-io update-copyright unsetenv
+  verify warnings xalloc xalloc-die xstrndup
 '
 
 # Additional xgettext options to use.  Use "\\\newline" to break lines.
 '
 
 # Additional xgettext options to use.  Use "\\\newline" to break lines.
index 9be35e46e9810eecb0d011d67e439d9ab9e59749..4d2d59c3a8fdda7a364f9cb5bd7a6441879023f2 100644 (file)
@@ -13,4 +13,7 @@ link-warning.h
 mdate-sh
 missing
 texinfo.tex
 mdate-sh
 missing
 texinfo.tex
+update-copyright
+useless-if-before-free
+vc-list-files
 ylwrap
 ylwrap
index f4ac34df293f243842ba852ff937f07218c250b0..da299ba1f4b86dac66789eeefd26222e424c1f45 100644 (file)
@@ -13,4 +13,7 @@
 /mdate-sh
 /missing
 /texinfo.tex
 /mdate-sh
 /missing
 /texinfo.tex
+/update-copyright
+/useless-if-before-free
+/vc-list-files
 /ylwrap
 /ylwrap
diff --git a/cfg.mk b/cfg.mk
index bee0fcbe880fc5b5371897163b58f2c42ec51ad5..2b6041accd8b957608ae8d6e90f43a26d2e0b343 100644 (file)
--- a/cfg.mk
+++ b/cfg.mk
@@ -1,5 +1,5 @@
 # Customize maint.mk                           -*- makefile -*-
 # Customize maint.mk                           -*- makefile -*-
-# Copyright (C) 2008 Free Software Foundation, Inc.
+# Copyright (C) 2008-2009 Free Software Foundation, Inc.
 
 # This program is free software: you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
 
 # This program is free software: you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -40,3 +40,5 @@ local-checks-to-skip = changelog-check
 # The local directory containing the checked-out copy of gnulib used in
 # this release.  Used solely to get a date for the "announcement" target.
 gnulib_dir = $(srcdir)/../../gnulib
 # The local directory containing the checked-out copy of gnulib used in
 # this release.  Used solely to get a date for the "announcement" target.
 gnulib_dir = $(srcdir)/../../gnulib
+
+bootstrap-tools = autoconf,automake,flex,gnulib
index 39f1d4f947dff004e5eb2f5c101511e90aa40e09..15fb2787e6a6682de42a0a1083d0dd795958463b 100644 (file)
@@ -1,7 +1,8 @@
 # Extract all examples from the manual source.            -*- AWK -*-
 
 # This file is part of GNU Bison
 # Extract all examples from the manual source.            -*- AWK -*-
 
 # This file is part of GNU Bison
-# Copyright 1992, 2000, 2001, 2005, 2006 Free Software Foundation, Inc.
+# Copyright (C) 1992, 2000, 2001, 2005, 2006, 2009 Free Software
+# Foundation, Inc.
 #
 # This program is free software: you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
 #
 # This program is free software: you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
diff --git a/gnulib b/gnulib
index d162c752532b131d357bd1639147357e53cade0d..8bdaa78f311ff9e5e03ff37ee5f546af14913802 160000 (submodule)
--- a/gnulib
+++ b/gnulib
@@ -1 +1 @@
-Subproject commit d162c752532b131d357bd1639147357e53cade0d
+Subproject commit 8bdaa78f311ff9e5e03ff37ee5f546af14913802
index 8d2d4d2d71e870fc7d255f35c33519421630fbf7..a9d58230debfcb63eb8c56a4e903324abba97525 100644 (file)
@@ -4,6 +4,7 @@ Makefile.in
 argmatch.c
 argmatch.h
 basename.c
 argmatch.c
 argmatch.h
 basename.c
+bitrotate.h
 c-ctype.c
 c-ctype.h
 c-strcase.h
 c-ctype.c
 c-ctype.h
 c-strcase.h
@@ -30,6 +31,7 @@ getopt.in.h
 getopt1.c
 getopt_.h
 getopt_int.h
 getopt1.c
 getopt_.h
 getopt_int.h
+getpagesize.c
 gettext.h
 gnulib.mk
 hash.c
 gettext.h
 gnulib.mk
 hash.c
@@ -46,6 +48,7 @@ mbsinit.c
 mbswidth.c
 mbswidth.h
 memchr.c
 mbswidth.c
 mbswidth.h
 memchr.c
+memchr.valgrind
 obstack.c
 obstack.h
 pipe-safer.c
 obstack.c
 obstack.h
 pipe-safer.c
index 73d272e0d8573ff212cbdea0e0b530f9ddb967f0..d3f4a0ac4b81b25c2fa1dac97389bc92d9eaefa9 100644 (file)
@@ -7,6 +7,7 @@
 /argmatch.c
 /argmatch.h
 /basename.c
 /argmatch.c
 /argmatch.h
 /basename.c
+/bitrotate.h
 /c-ctype.c
 /c-ctype.h
 /c-strcase.h
 /c-ctype.c
 /c-ctype.h
 /c-strcase.h
@@ -33,6 +34,7 @@
 /getopt1.c
 /getopt_.h
 /getopt_int.h
 /getopt1.c
 /getopt_.h
 /getopt_int.h
+/getpagesize.c
 /gettext.h
 /gnulib.mk
 /hash.c
 /gettext.h
 /gnulib.mk
 /hash.c
@@ -49,6 +51,7 @@
 /mbswidth.c
 /mbswidth.h
 /memchr.c
 /mbswidth.c
 /mbswidth.h
 /memchr.c
+/memchr.valgrind
 /obstack.c
 /obstack.h
 /pipe-safer.c
 /obstack.c
 /obstack.h
 /pipe-safer.c
index 310e1efc355a5fa8016fb936fe360c9b41dce15f..eb2f1732990044a7f7fa99e7dc329c6c8bf8e4f1 100644 (file)
@@ -11,6 +11,7 @@ error.m4
 exitfail.m4
 extensions.m4
 getopt.m4
 exitfail.m4
 extensions.m4
 getopt.m4
+getpagesize.m4
 gettext.m4
 gnulib-cache.m4
 gnulib-common.m4
 gettext.m4
 gnulib-cache.m4
 gnulib-common.m4
@@ -40,6 +41,7 @@ mbsinit.m4
 mbstate_t.m4
 mbswidth.m4
 memchr.m4
 mbstate_t.m4
 mbswidth.m4
 memchr.m4
+mmap-anon.m4
 multiarch.m4
 nls.m4
 po.m4
 multiarch.m4
 nls.m4
 po.m4
index 0ca03ad3b4000b4eca1d5aef96f79bad769d78c2..16ced35a6069610ffb0dcdd4468d8ec151b37931 100644 (file)
@@ -11,6 +11,7 @@
 /exitfail.m4
 /extensions.m4
 /getopt.m4
 /exitfail.m4
 /extensions.m4
 /getopt.m4
+/getpagesize.m4
 /gettext.m4
 /gnulib-cache.m4
 /gnulib-common.m4
 /gettext.m4
 /gnulib-cache.m4
 /gnulib-common.m4
@@ -40,6 +41,7 @@
 /mbstate_t.m4
 /mbswidth.m4
 /memchr.m4
 /mbstate_t.m4
 /mbswidth.m4
 /memchr.m4
+/mmap-anon.m4
 /multiarch.m4
 /nls.m4
 /po.m4
 /multiarch.m4
 /nls.m4
 /po.m4
diff --git a/maint.mk b/maint.mk
deleted file mode 100644 (file)
index b83e1dc..0000000
--- a/maint.mk
+++ /dev/null
@@ -1,883 +0,0 @@
-# -*-Makefile-*-
-# This Makefile fragment tries to be general-purpose enough to be
-# used by at least coreutils, idutils, CPPI, Bison, and Autoconf.
-
-## Copyright (C) 2001-2008 Free Software Foundation, Inc.
-##
-## This program is free software: you can redistribute it and/or modify
-## it under the terms of the GNU General Public License as published by
-## the Free Software Foundation, either version 3 of the License, or
-## (at your option) any later version.
-##
-## This program is distributed in the hope that it will be useful,
-## but WITHOUT ANY WARRANTY; without even the implied warranty of
-## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-## GNU General Public License for more details.
-##
-## You should have received a copy of the GNU General Public License
-## along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-# This is reported not to work with make-3.79.1
-# ME := $(word $(words $(MAKEFILE_LIST)),$(MAKEFILE_LIST))
-ME := maint.mk
-
-# Do not save the original name or timestamp in the .tar.gz file.
-# Use --rsyncable if available.
-gzip_rsyncable := \
-  $(shell gzip --help 2>/dev/null|grep rsyncable >/dev/null && echo --rsyncable)
-GZIP_ENV = '--no-name --best $(gzip_rsyncable)'
-
-GIT = git
-VC = $(GIT)
-VC-tag = git tag -s -m '$(VERSION)'
-
-VC_LIST = build-aux/vc-list-files
-
-VC_LIST_EXCEPT = \
-  $(VC_LIST) | if test -f .x-$@; then grep -vEf .x-$@; else grep -v ChangeLog; fi
-
-ifeq ($(origin prev_version_file), undefined)
-  prev_version_file = $(srcdir)/.prev-version
-endif
-
-PREV_VERSION := $(shell cat $(prev_version_file))
-VERSION_REGEXP = $(subst .,\.,$(VERSION))
-PREV_VERSION_REGEXP = $(subst .,\.,$(PREV_VERSION))
-
-ifeq ($(VC),$(GIT))
-this-vc-tag = v$(VERSION)
-this-vc-tag-regexp = v$(VERSION_REGEXP)
-else
-tag-package = $(shell echo "$(PACKAGE)" | tr '[:lower:]' '[:upper:]')
-tag-this-version = $(subst .,_,$(VERSION))
-this-vc-tag = $(tag-package)-$(tag-this-version)
-this-vc-tag-regexp = $(this-vc-tag)
-endif
-my_distdir = $(PACKAGE)-$(VERSION)
-
-# Old releases are stored here.
-release_archive_dir ?= ../release
-
-# Prevent programs like 'sort' from considering distinct strings to be equal.
-# Doing it here saves us from having to set LC_ALL elsewhere in this file.
-export LC_ALL = C
-
-
-
-## --------------- ##
-## Sanity checks.  ##
-## --------------- ##
-
-# Collect the names of rules starting with `sc_'.
-syntax-check-rules := $(shell sed -n 's/^\(sc_[a-zA-Z0-9_-]*\):.*/\1/p' \
-                        $(srcdir)/$(ME))
-.PHONY: $(syntax-check-rules)
-
-local-checks-available = \
-  po-check copyright-check m4-check author_mark_check \
-  patch-check strftime-check $(syntax-check-rules) \
-  makefile_path_separator_check \
-  makefile-check check-AUTHORS
-.PHONY: $(local-checks-available)
-
-local-check := $(filter-out $(local-checks-to-skip), $(local-checks-available))
-
-syntax-check: $(local-check)
-#      @grep -nE '#  *include <(limits|std(def|arg|bool))\.h>'         \
-#          $$(find -type f -name '*.[chly]') &&                        \
-#        { echo '$(ME): found conditional include' 1>&2;               \
-#          exit 1; } || :
-
-#      grep -nE '^#  *include <(string|stdlib)\.h>'                    \
-#          $(srcdir)/{lib,src}/*.[chy] &&                              \
-#        { echo '$(ME): FIXME' 1>&2;                                   \
-#          exit 1; } || :
-# FIXME: don't allow `#include .strings\.h' anywhere
-
-sc_avoid_if_before_free:
-       @$(srcdir)/build-aux/useless-if-before-free                     \
-               $(useless_free_options)                                 \
-           $$($(VC_LIST_EXCEPT)) &&                                    \
-         { echo '$(ME): found useless "if" before "free" above' 1>&2;  \
-           exit 1; } || :
-
-sc_cast_of_argument_to_free:
-       @grep -nE '\<free *\( *\(' $$($(VC_LIST_EXCEPT)) &&             \
-         { echo '$(ME): don'\''t cast free argument' 1>&2;             \
-           exit 1; } || :
-
-sc_cast_of_x_alloc_return_value:
-       @grep -nE '\*\) *x(m|c|re)alloc\>' $$($(VC_LIST_EXCEPT)) &&     \
-         { echo '$(ME): don'\''t cast x*alloc return value' 1>&2;      \
-           exit 1; } || :
-
-sc_cast_of_alloca_return_value:
-       @grep -nE '\*\) *alloca\>' $$($(VC_LIST_EXCEPT)) &&             \
-         { echo '$(ME): don'\''t cast alloca return value' 1>&2;       \
-           exit 1; } || :
-
-sc_space_tab:
-       @grep -n '[ ]   ' $$($(VC_LIST_EXCEPT)) &&                      \
-         { echo '$(ME): found SPACE-TAB sequence; remove the SPACE'    \
-               1>&2; exit 1; } || :
-
-# Don't use *scanf or the old ato* functions in `real' code.
-# They provide no error checking mechanism.
-# Instead, use strto* functions.
-sc_prohibit_atoi_atof:
-       @grep -nE '\<([fs]?scanf|ato([filq]|ll))\>' $$($(VC_LIST_EXCEPT)) && \
-         { echo '$(ME): do not use *scan''f, ato''f, ato''i, ato''l, ato''ll, ato''q, or ss''canf'     \
-               1>&2; exit 1; } || :
-
-# Use STREQ rather than comparing strcmp == 0, or != 0.
-sc_prohibit_strcmp:
-       @grep -nE '! *str''cmp *\(|\<str''cmp *\([^)]+\) *=='           \
-           $$($(VC_LIST_EXCEPT)) &&                                    \
-         { echo '$(ME): use STREQ in place of the above uses of str''cmp' \
-               1>&2; exit 1; } || :
-
-# Using EXIT_SUCCESS as the first argument to error is misleading,
-# since when that parameter is 0, error does not exit.  Use `0' instead.
-sc_error_exit_success:
-       @grep -nF 'error (EXIT_SUCCESS,'                                \
-           $$(find -type f -name '*.[chly]') &&                        \
-         { echo '$(ME): found error (EXIT_SUCCESS' 1>&2;               \
-           exit 1; } || :
-
-# `FATAL:' should be fully upper-cased in error messages
-# `WARNING:' should be fully upper-cased, or fully lower-cased
-sc_error_message_warn_fatal:
-       @grep -nEA2 '[^rp]error \(' $$($(VC_LIST_EXCEPT))               \
-           | grep -E '"Warning|"Fatal|"fatal' &&                       \
-         { echo '$(ME): use FATAL, WARNING or warning' 1>&2;           \
-           exit 1; } || :
-
-# Error messages should not start with a capital letter
-sc_error_message_uppercase:
-       @grep -nEA2 '[^rp]error \(' $$($(VC_LIST_EXCEPT))               \
-           | grep -E '"[A-Z]'                                          \
-           | grep -vE '"FATAL|"WARNING|"Java|"C#|PRIuMAX' &&           \
-         { echo '$(ME): found capitalized error message' 1>&2;         \
-           exit 1; } || :
-
-# Error messages should not end with a period
-sc_error_message_period:
-       @grep -nEA2 '[^rp]error \(' $$($(VC_LIST_EXCEPT))               \
-           | grep -E '[^."]\."' &&                                     \
-         { echo '$(ME): found error message ending in period' 1>&2;    \
-           exit 1; } || :
-
-sc_file_system:
-       @grep -ni 'file''system' $$($(VC_LIST_EXCEPT)) &&               \
-         { echo '$(ME): found use of "file''system";'                  \
-           'rewrite to use "file system"' 1>&2;                        \
-           exit 1; } || :
-
-# Don't use cpp tests of this symbol.  All code assumes config.h is included.
-sc_no_have_config_h:
-       @grep -n '^# *if.*HAVE''_CONFIG_H' $$($(VC_LIST_EXCEPT)) &&     \
-         { echo '$(ME): found use of HAVE''_CONFIG_H; remove'          \
-               1>&2; exit 1; } || :
-
-# Nearly all .c files must include <config.h>.
-sc_require_config_h:
-       @if $(VC_LIST_EXCEPT) | grep '\.c$$' > /dev/null; then          \
-         grep -L '^# *include <config\.h>'                             \
-               $$($(VC_LIST_EXCEPT) | grep '\.c$$')                    \
-             | grep . &&                                               \
-         { echo '$(ME): the above files do not include <config.h>'     \
-               1>&2; exit 1; } || :;                                   \
-       else :;                                                         \
-       fi
-
-# To use this "command" macro, you must first define two shell variables:
-# h: the header, enclosed in <> or ""
-# re: a regular expression that matches IFF something provided by $h is used.
-define _header_without_use
-  h_esc=`echo "$$h"|sed 's/\./\\./'`;                                  \
-  if $(VC_LIST_EXCEPT) | grep '\.c$$' > /dev/null; then                        \
-    files=$$(grep -l '^# *include '"$$h_esc"                           \
-            $$($(VC_LIST_EXCEPT) | grep '\.c$$')) &&                   \
-    grep -LE "$$re" $$files | grep . &&                                        \
-      { echo "$(ME): the above files include $$h but don't use it"     \
-       1>&2; exit 1; } || :;                                           \
-  else :;                                                              \
-  fi
-endef
-
-# Prohibit the inclusion of assert.h without an actual use of assert.
-sc_prohibit_assert_without_use:
-       @h='<assert.h>' re='\<assert *\(' $(_header_without_use)
-
-# Prohibit the inclusion of getopt.h without an actual use.
-sc_prohibit_getopt_without_use:
-       @h='<getopt.h>' re='\<getopt(_long)? *\(' $(_header_without_use)
-
-# Don't include quotearg.h unless you use one of its functions.
-sc_prohibit_quotearg_without_use:
-       @h='"quotearg.h"' re='\<quotearg(_[^ ]+)? *\(' $(_header_without_use)
-
-# Don't include quote.h unless you use one of its functions.
-sc_prohibit_quote_without_use:
-       @h='"quote.h"' re='\<quote(_n)? *\(' $(_header_without_use)
-
-# Don't include this header unless you use one of its functions.
-sc_prohibit_long_options_without_use:
-       @h='"long-options.h"' re='\<parse_long_options *\(' \
-         $(_header_without_use)
-
-# Don't include this header unless you use one of its functions.
-sc_prohibit_inttostr_without_use:
-       @h='"inttostr.h"' re='\<(off|[iu]max|uint)tostr *\(' \
-         $(_header_without_use)
-
-# Don't include this header unless you use one of its functions.
-sc_prohibit_error_without_use:
-       @h='"error.h"' \
-       re='\<error(_at_line|_print_progname|_one_per_line|_message_count)? *\('\
-         $(_header_without_use)
-
-sc_prohibit_safe_read_without_use:
-       @h='"safe-read.h"' re='(\<SAFE_READ_ERROR\>|\<safe_read *\()' \
-         $(_header_without_use)
-
-sc_prohibit_argmatch_without_use:
-       @h='"argmatch.h"' \
-       re='(\<(ARRAY_CARDINALITY|X?ARGMATCH(|_TO_ARGUMENT|_VERIFY))\>|\<argmatch(_exit_fn|_(in)?valid) *\()' \
-         $(_header_without_use)
-
-sc_prohibit_root_dev_ino_without_use:
-       @h='"root-dev-ino.h"' \
-       re='(\<ROOT_DEV_INO_(CHECK|WARN)\>|\<get_root_dev_ino *\()' \
-         $(_header_without_use)
-
-sc_obsolete_symbols:
-       @grep -nE '\<(HAVE''_FCNTL_H|O''_NDELAY)\>'                     \
-            $$($(VC_LIST_EXCEPT)) &&                                   \
-         { echo '$(ME): do not use HAVE''_FCNTL_H or O''_NDELAY'       \
-               1>&2; exit 1; } || :
-
-# FIXME: warn about definitions of EXIT_FAILURE, EXIT_SUCCESS, STREQ
-
-# Each nonempty line must start with a year number, or a TAB.
-sc_changelog:
-       @grep -n '^[^12 ]' $$(find . -maxdepth 2 -name ChangeLog) &&    \
-         { echo '$(ME): found unexpected prefix in a ChangeLog' 1>&2;  \
-           exit 1; } || :
-
-# Ensure that dd's definition of LONGEST_SYMBOL stays in sync
-# with the strings from the two affected variables.
-dd_c = $(srcdir)/src/dd.c
-sc_dd_max_sym_length:
-ifneq ($(wildcard $(dd_c)),)
-       @len=$$( (sed -n '/conversions\[\] =$$/,/^};/p' $(dd_c);\
-                sed -n '/flags\[\] =$$/,/^};/p' $(dd_c) )      \
-               |sed -n '/"/s/^[^"]*"\([^"]*\)".*/\1/p'         \
-             | wc --max-line-length);                          \
-       max=$$(sed -n '/^#define LONGEST_SYMBOL /s///p' $(dd_c) \
-             |tr -d '"' | wc --max-line-length);               \
-       if test "$$len" = "$$max"; then :; else                 \
-         echo 'dd.c: LONGEST_SYMBOL is not longest' 1>&2;      \
-         exit 1;                                               \
-       fi
-endif
-
-# Many m4 macros names once began with `jm_'.
-# On 2004-04-13, they were all changed to start with gl_ instead.
-# Make sure that none are inadvertently reintroduced.
-sc_prohibit_jm_in_m4:
-       @grep -nE 'jm_[A-Z]'                                            \
-               $$($(VC_LIST) m4 |grep '\.m4$$'; echo /dev/null) &&     \
-           { echo '$(ME): do not use jm_ in m4 macro names'            \
-             1>&2; exit 1; } || :
-
-# Ensure that each root-requiring test is run via the "check-root" rule.
-sc_root_tests:
-       @if test -d tests \
-             && grep check-root tests/Makefile.am>/dev/null 2>&1; then \
-       t1=sc-root.expected; t2=sc-root.actual;                         \
-       grep -nl '^require_root_$$'                                     \
-         $$($(VC_LIST) tests) |sed s,tests/,, |sort > $$t1;            \
-       sed -n '/^root_tests =[  ]*\\$$/,/[^\]$$/p'                     \
-         $(srcdir)/tests/Makefile.am                                   \
-           | sed 's/^  *//;/^root_tests =/d'                           \
-           | tr -s '\012\\' '  ' | fmt -1 | sort > $$t2;               \
-       diff -u $$t1 $$t2 || diff=1;                                    \
-       rm -f $$t1 $$t2;                                                \
-       test "$$diff"                                                   \
-         && { echo 'tests/Makefile.am: missing check-root action'>&2;  \
-              exit 1; } || :;                                          \
-       fi
-
-headers_with_interesting_macro_defs = \
-  exit.h       \
-  fcntl_.h     \
-  fnmatch_.h   \
-  intprops.h   \
-  inttypes_.h  \
-  lchown.h     \
-  openat.h     \
-  stat-macros.h        \
-  stdint_.h
-
-# Create a list of regular expressions matching the names
-# of macros that are guaranteed by parts of gnulib to be defined.
-.re-defmac:
-       @(cd $(srcdir)/lib;                                             \
-         for f in $(headers_with_interesting_macro_defs); do           \
-           test -f $$f &&                                              \
-             sed -n '/^# *define \([^_ (][^ (]*\)[ (].*/s//\1/p' $$f;  \
-          done;                                                        \
-        ) | sort -u                                                    \
-          | grep -Ev 'ATTRIBUTE_NORETURN|SIZE_MAX'                     \
-          | sed 's/^/^# *define /'                                     \
-         > $@-t
-       @mv $@-t $@
-
-# Don't define macros that we already get from gnulib header files.
-sc_always_defined_macros: .re-defmac
-       @if test -f $(srcdir)/src/system.h; then                        \
-         trap 'rc=$$?; rm -f .re-defmac; exit $$rc' 0 1 2 3 15;        \
-         grep -f .re-defmac $$($(VC_LIST))                             \
-           && { echo '$(ME): define the above via some gnulib .h file' \
-                 1>&2;  exit 1; } || :;                                \
-       fi
-
-# Create a list of regular expressions matching the names
-# of files included from system.h.  Exclude a couple.
-.re-list:
-       @sed -n '/^# *include /s///p' $(srcdir)/src/system.h \
-         | grep -Ev 'sys/(param|file)\.h' \
-         | sed 's/ .*//;;s/^["<]/^# *include [<"]/;s/\.h[">]$$/\\.h[">]/' \
-         > $@-t
-       @mv $@-t $@
-
-# Files in src/ should not include directly any of
-# the headers already included via system.h.
-sc_system_h_headers: .re-list
-       @if test -f $(srcdir)/src/system.h; then                        \
-         trap 'rc=$$?; rm -f .re-list; exit $$rc' 0 1 2 3 15;          \
-         grep -nE -f .re-list                                          \
-             $$($(VC_LIST) src |                                       \
-                grep -Ev '((copy|system)\.h|parse-gram\.c)$$')         \
-           && { echo '$(ME): the above are already included via system.h'\
-                 1>&2;  exit 1; } || :;                                \
-       fi
-
-# Ensure that each .c file containing a "main" function also
-# calls set_program_name.
-sc_program_name:
-       @if $(VC_LIST_EXCEPT) | grep '\.c$$' > /dev/null; then          \
-         files=$$(grep -l '^main *(' $$($(VC_LIST_EXCEPT) | grep '\.c$$')); \
-         grep -LE 'set_program_name *\(m?argv\[0\]\);' $$files         \
-             | grep . &&                                               \
-         { echo '$(ME): the above files do not call set_program_name'  \
-               1>&2; exit 1; } || :;                                   \
-       else :;                                                         \
-       fi
-
-# Require that the final line of each test-lib.sh-using test be this one:
-# (exit $fail); exit $fail
-# Note: this test requires GNU grep's --label= option.
-sc_require_test_exit_idiom:
-       @if test -f $(srcdir)/tests/test-lib.sh; then                   \
-         die=0;                                                        \
-         for i in $$(grep -l -F /../test-lib.sh $$($(VC_LIST) tests)); do \
-           tail -n1 $$i | grep '^(exit \$$fail); exit \$$fail$$' > /dev/null \
-             && : || { die=1; echo $$i; }                              \
-         done;                                                         \
-         test $$die = 1 &&                                             \
-           { echo 1>&2 '$(ME): the final line in each of the above is not:'; \
-             echo 1>&2 '(exit $$fail); exit $$fail';                   \
-             exit 1; } || :;                                           \
-       fi
-
-sc_sun_os_names:
-       @grep -nEi \
-           'solaris[^[:alnum:]]*2\.(7|8|9|[1-9][0-9])|sunos[^[:alnum:]][6-9]' \
-           $$($(VC_LIST_EXCEPT)) &&                                    \
-         { echo '$(ME): found misuse of Sun OS version numbers' 1>&2;  \
-           exit 1; } || :
-
-sc_the_the:
-       @grep -ni '\<the ''the\>' $$($(VC_LIST_EXCEPT)) &&              \
-         { echo '$(ME): found use of "the ''the";' 1>&2;               \
-           exit 1; } || :
-
-# Most functions in src/*.c should have static scope.
-# Any that don't must be marked with `extern', but `main'
-# and `usage' are exceptions.  They're always extern, but
-# don't need to be marked.
-#
-# The second nm|grep checks for file-scope variables with `extern' scope.
-sc_tight_scope: $(all_programs)
-       @t=exceptions-$$$$;                                             \
-       trap 's=$$?; rm -f $$t; exit $$s' 0 1 2 13 15;                  \
-       ( printf '^main$$\n^usage$$\n';                                 \
-         grep -h -A1 '^extern .*[^;]$$' $(SOURCES)                     \
-           | grep -vE '^(extern |--)' |sed 's/^/^/;s/ .*/$$/' ) > $$t; \
-       if nm -e *.$(OBJEXT)                                            \
-           | sed -n 's/.* T //p'                                       \
-           | grep -Ev -f $$t; then                                     \
-         echo 'the above functions should have static scope' 1>&2;     \
-         exit 1;                                                       \
-       fi;                                                             \
-       ( printf '^program_name$$\n';                                   \
-         sed -n 's/^extern .*[* ]\([a-zA-Z_][a-zA-Z_0-9]*\);$$/^\1$$/p' \
-           $$(ls $(SOURCES) | grep '\.h$$') /dev/null) > $$t;          \
-       if nm -e *.$(OBJEXT)                                            \
-           | sed -n 's/.* [BD] //p'                                    \
-           | grep -Ev -f $$t; then                                     \
-         echo 'the above variables should have static scope' 1>&2;     \
-         exit 1;                                                       \
-       fi
-
-sc_trailing_blank:
-       @grep -n '[      ]$$' $$($(VC_LIST_EXCEPT)) &&                  \
-         { echo '$(ME): found trailing blank(s)'                       \
-               1>&2; exit 1; } || :
-
-# Match lines like the following, but where there is only one space
-# between the options and the description:
-#   -D, --all-repeated[=delimit-method]  print all duplicate lines\n
-longopt_re = --[a-z][0-9A-Za-z-]*(\[?=[0-9A-Za-z-]*\]?)?
-sc_two_space_separator_in_usage:
-       @grep -nE '^   *(-[A-Za-z],)? $(longopt_re) [^ ].*\\$$'         \
-           $$($(VC_LIST_EXCEPT)) &&                                    \
-         { echo "$(ME): help2man requires at least two spaces between"; \
-           echo "$(ME): an option and its description"; \
-               1>&2; exit 1; } || :
-
-# Look for diagnostics that aren't marked for translation.
-# This won't find any for which error's format string is on a separate line.
-sc_unmarked_diagnostics:
-       @grep -nE                                                       \
-           '\<error \([^"]*"[^"]*[a-z]{3}' $$($(VC_LIST_EXCEPT))       \
-         | grep -v '_''(' &&                                           \
-         { echo '$(ME): found unmarked diagnostic(s)' 1>&2;            \
-           exit 1; } || :
-
-# Avoid useless parentheses like those in this example:
-# #if defined (SYMBOL) || defined (SYM2)
-sc_useless_cpp_parens:
-       @grep -n '^# *if .*defined *(' $$($(VC_LIST_EXCEPT)) &&         \
-         { echo '$(ME): found useless parentheses in cpp directive'    \
-               1>&2; exit 1; } || :
-
-# Require the latest GPL.
-sc_GPL_version:
-       @grep -n 'either ''version [^3]' $$($(VC_LIST_EXCEPT)) &&       \
-         { echo '$(ME): GPL vN, N!=3' 1>&2; exit 1; } || :
-
-# Perl-based tests used to exec perl from a #!/bin/sh script.
-# Now they all start with #!/usr/bin/perl and the portability
-# infrastructure is in tests/Makefile.am.  Make sure no old-style
-# script sneaks back in.
-sc_no_exec_perl_coreutils:
-       @if test -f $(srcdir)/tests/Coreutils.pm; then                  \
-         grep '^exec  *\$$PERL.*MCoreutils' $$($(VC_LIST) tests) &&    \
-           { echo 1>&2 '$(ME): found anachronistic Perl-based tests';  \
-             exit 1; } || :;                                           \
-       fi
-
-NEWS_hash = \
-  $$(sed -n '/^\*.* $(PREV_VERSION_REGEXP) ([0-9-]*)/,$$p' \
-     $(srcdir)/NEWS | md5sum -)
-
-# Ensure that we don't accidentally insert an entry into an old NEWS block.
-sc_immutable_NEWS:
-       @if test -f $(srcdir)/NEWS; then                                \
-         test "$(NEWS_hash)" = '$(old_NEWS_hash)' && : ||              \
-           { echo '$(ME): you have modified old NEWS' 1>&2; exit 1; }; \
-       fi
-
-# Each program that uses proper_name_utf8 must link with
-# one of the ICONV libraries.
-sc_proper_name_utf8_requires_ICONV:
-       @progs=$$(grep -l 'proper_name_utf8 ''("' $$($(VC_LIST_EXCEPT)));\
-       if test "x$$progs" != x; then                                   \
-         fail=0;                                                       \
-         for p in $$progs; do                                          \
-           dir=$$(dirname "$$p");                                      \
-           base=$$(basename "$$p" .c);                                 \
-           grep "$${base}_LDADD.*ICONV)" $$dir/Makefile.am > /dev/null \
-             || { fail=1; echo 1>&2 "$(ME): $$p uses proper_name_utf8"; }; \
-         done;                                                         \
-         test $$fail = 1 &&                                            \
-           { echo 1>&2 '$(ME): the above do not link with any ICONV library'; \
-             exit 1; } || :;                                           \
-       fi
-
-# Warn about "c0nst struct Foo const foo[]",
-# but not about "char const *const foo" or "#define const const".
-sc_redundant_const:
-       @grep -E '\bconst\b[[:space:][:alnum:]]{2,}\bconst\b'           \
-               $$($(VC_LIST_EXCEPT)) &&                                \
-           { echo 1>&2 '$(ME): redundant "const" in declarations';     \
-             exit 1; } || :
-
-sc_const_long_option:
-       @grep '^ *static.*struct option ' $$($(VC_LIST_EXCEPT))         \
-         | grep -Ev 'const struct option|struct option const' && {     \
-             echo 1>&2 '$(ME): add "const" to the above declarations'; \
-             exit 1; } || :
-
-# Update the hash stored above.  Do this after each release and
-# for any corrections to old entries.
-update-NEWS-hash: NEWS
-       perl -pi -e 's/^(old_NEWS_hash = ).*/$${1}'"$(NEWS_hash)/" \
-         $(srcdir)/cfg.mk
-
-epoch_date = 1970-01-01 00:00:00.000000000 +0000
-# Ensure that the c99-to-c89 patch applies cleanly.
-patch-check:
-       rm -rf src-c89 $@.1 $@.2
-       cp -a src src-c89
-       (cd src-c89; patch -p1 -V never --fuzz=0) < src/c99-to-c89.diff \
-         > $@.1 2>&1
-       if test "$(REGEN_PATCH)" = yes; then                    \
-         diff -upr src src-c89 | sed 's,src-c89/,src/,'        \
-           | grep -vE '^(Only in|File )'                       \
-           | perl -pe 's/^((?:\+\+\+|---) \S+\t).*/$${1}$(epoch_date)/;' \
-              -e 's/^ $$//'                                    \
-           > new-diff || : ; fi
-       grep -v '^patching file ' $@.1 > $@.2 || :
-       msg=ok; test -s $@.2 && msg='fuzzy patch' || : ;        \
-       rm -f src-c89/*.o || msg='rm failed';                   \
-       $(MAKE) -C src-c89 CFLAGS='-Wdeclaration-after-statement -Werror' \
-         || msg='compile failure with extra options';          \
-       test "$$msg" = ok && rm -rf src-c89 $@.1 $@.2 || echo "$$msg" 1>&2; \
-       test "$$msg" = ok
-
-# Ensure that date's --help output stays in sync with the info
-# documentation for GNU strftime.  The only exception is %N,
-# which date accepts but GNU strftime does not.
-extract_char = sed 's/^[^%][^%]*%\(.\).*/\1/'
-strftime-check:
-       if test -f $(srcdir)/src/date.c; then                           \
-         grep '^  %.  ' $(srcdir)/src/date.c | sort                    \
-           | $(extract_char) > $@-src;                                 \
-         { echo N;                                                     \
-           info libc date calendar format | grep '^    `%.'\'          \
-             | $(extract_char); } | sort > $@-info;                    \
-         diff -u $@-src $@-info || exit 1;                             \
-         rm -f $@-src $@-info;                                         \
-       fi
-
-check-AUTHORS:
-       $(MAKE) -C src $@
-
-# Ensure that we use only the standard $(VAR) notation,
-# not @...@ in Makefile.am, now that we can rely on automake
-# to emit a definition for each substituted variable.
-makefile-check:
-       @grep -nE '@[A-Z_0-9]+@' `find . -name Makefile.am` \
-         && { echo '$(ME): use $$(...), not @...@' 1>&2; exit 1; } || :
-
-news-date-check: NEWS
-       today=`date +%Y-%m-%d`;                                         \
-       if head NEWS | grep '^\*.* $(VERSION_REGEXP) ('$$today')'       \
-           >/dev/null; then                                            \
-         :;                                                            \
-       else                                                            \
-         echo "version or today's date is not in NEWS" 1>&2;           \
-         exit 1;                                                       \
-       fi
-
-changelog-check:
-       if head ChangeLog | grep 'Version $(VERSION_REGEXP)\.$$'        \
-           >/dev/null; then                                            \
-         :;                                                            \
-       else                                                            \
-         echo "$(VERSION) not in ChangeLog" 1>&2;                      \
-         exit 1;                                                       \
-       fi
-
-m4-check:
-       @grep -n 'AC_DEFUN([^[]' m4/*.m4 \
-         && { echo '$(ME): quote the first arg to AC_DEFUN' 1>&2; \
-              exit 1; } || :
-
-# Verify that all source files using _() are listed in po/POTFILES.in.
-po-check:
-       @if test -f po/POTFILES.in; then                                \
-         grep -E -v '^(#|$$)' po/POTFILES.in                           \
-           | grep -v '^src/false\.c$$' | sort > $@-1;                  \
-         files=;                                                       \
-         for file in $$($(VC_LIST_EXCEPT)) lib/*.[ch]; do              \
-           case $$file in                                              \
-             *.?|*.??) ;;                                              \
-             *) continue;;                                             \
-           esac;                                                       \
-           case $$file in                                              \
-           *.[ch])                                                     \
-             base=`expr " $$file" : ' \(.*\)\..'`;                     \
-             { test -f $$base.l || test -f $$base.y; } && continue;;   \
-           esac;                                                       \
-           files="$$files $$file";                                     \
-         done;                                                         \
-         grep -E -l '\b(N?_|gettext *)\([^)"]*("|$$)' $$files          \
-           | sort -u > $@-2;                                           \
-         diff -u $@-1 $@-2 || exit 1;                                  \
-         rm -f $@-1 $@-2;                                              \
-       fi
-
-# In a definition of #define AUTHORS "... and ..." where the RHS contains
-# the English word `and', the string must be marked with `N_ (...)' so that
-# gettext recognizes it as a string requiring translation.
-author_mark_check:
-       @grep -n '^# *define AUTHORS "[^"]* and ' src/*.c |grep -v ' N_ (' && \
-         { echo '$(ME): enclose the above strings in N_ (...)' 1>&2; \
-           exit 1; } || :
-
-# Sometimes it is useful to change the PATH environment variable
-# in Makefiles.  When doing so, it's better not to use the Unix-centric
-# path separator of `:', but rather the automake-provided `@PATH_SEPARATOR@'.
-# It'd be better to use `find -print0 ...|xargs -0 ...', but less portable,
-# and there probably aren't many projects with so many Makefile.am files
-# that we'd have to worry about limits on command line length.
-msg = '$(ME): Do not use `:'\'' above; use @PATH_SEPARATOR@ instead'
-makefile_path_separator_check:
-       @grep -n 'PATH=.*:' `find $(srcdir) -name Makefile.am` \
-         && { echo $(msg) 1>&2; exit 1; } || :
-
-# Check that `make alpha' will not fail at the end of the process.
-writable-files:
-       if test -d $(release_archive_dir); then :; else                 \
-         for file in $(distdir).tar.gz                                 \
-                     $(release_archive_dir)/$(distdir).tar.gz; do      \
-           test -e $$file || continue;                                 \
-           test -w $$file                                              \
-             || { echo ERROR: $$file is not writable; fail=1; };       \
-         done;                                                         \
-         test "$$fail" && exit 1 || : ;                                \
-       fi
-
-v_etc_file = lib/version-etc.c
-sample-test = tests/sample-test
-texi = doc/$(PACKAGE).texi
-# Make sure that the copyright date in $(v_etc_file) is up to date.
-# Do the same for the $(sample-test) and the main doc/.texi file.
-copyright-check:
-       @if test -f $(v_etc_file); then \
-         grep 'enum { COPYRIGHT_YEAR = '$$(date +%Y)' };' $(v_etc_file) \
-           >/dev/null \
-         || { echo 'out of date copyright in $(v_etc_file); update it' 1>&2; \
-              exit 1; }; \
-       fi
-       @if test -f $(sample-test); then \
-         grep '# Copyright (C) '$$(date +%Y)' Free' $(sample-test) \
-           >/dev/null \
-         || { echo 'out of date copyright in $(sample-test); update it' 1>&2; \
-              exit 1; }; \
-       fi
-       @if test -f $(texi); then \
-         grep 'Copyright @copyright{} .*'$$(date +%Y)' Free' $(texi) \
-           >/dev/null \
-         || { echo 'out of date copyright in $(texi); update it' 1>&2; \
-              exit 1; }; \
-       fi
-
-vc-diff-check:
-       $(VC) diff > vc-diffs || :
-       if test -s vc-diffs; then                               \
-         cat vc-diffs;                                         \
-         echo "Some files are locally modified:" 1>&2;         \
-         exit 1;                                               \
-       else                                                    \
-         rm vc-diffs;                                          \
-       fi
-
-cvs-check: vc-diff-check
-
-maintainer-distcheck:
-       $(MAKE) distcheck
-       $(MAKE) my-distcheck
-
-
-# Don't make a distribution if checks fail.
-# Also, make sure the NEWS file is up-to-date.
-vc-dist: $(local-check) cvs-check maintainer-distcheck
-       $(MAKE) dist
-
-# Use this to make sure we don't run these programs when building
-# from a virgin tgz file, below.
-null_AM_MAKEFLAGS = \
-  ACLOCAL=false \
-  AUTOCONF=false \
-  AUTOMAKE=false \
-  AUTOHEADER=false \
-  MAKEINFO=false
-
-built_programs = $$(cd src && MAKEFLAGS= $(MAKE) -s built_programs.list)
-
-warn_cflags = -Dlint -O -Werror -Wall -Wformat -Wshadow -Wpointer-arith
-bin=bin-$$$$
-
-write_loser = printf '\#!%s\necho $$0: bad path 1>&2; exit 1\n' '$(SHELL)'
-
-TMPDIR ?= /tmp
-t=$(TMPDIR)/$(PACKAGE)/test
-pfx=$(t)/i
-
-# Verify that a twisted use of --program-transform-name=PROGRAM works.
-define install-transform-check
-  rm -rf $(pfx);                                       \
-  $(MAKE) program_transform_name='s/.*/zyx/'           \
-      prefix=$(pfx) install                            \
-    && test "$$(echo $(pfx)/bin/*)" = "$(pfx)/bin/zyx" \
-    && test "$$(echo $(pfx)/share/man/man1/*)" =       \
-                    "$(pfx)/share/man/man1/zyx.1"
-endef
-
-# Install, then verify that all binaries and man pages are in place.
-# Note that neither the binary, ginstall, nor the ].1 man page is installed.
-define my-instcheck
-  $(MAKE) prefix=$(pfx) install                                \
-    && test ! -f $(pfx)/bin/ginstall                   \
-    && { fail=0;                                       \
-      for i in $(built_programs); do                   \
-        test "$$i" = ginstall && i=install;            \
-        for j in "$(pfx)/bin/$$i"                      \
-                 "$(pfx)/share/man/man1/$$i.1"; do     \
-          case $$j in *'[.1') continue;; esac;         \
-          test -f "$$j" && :                           \
-            || { echo "$$j not installed"; fail=1; };  \
-        done;                                          \
-      done;                                            \
-      test $$fail = 1 && exit 1 || :;                  \
-    }
-endef
-
-# Use -Wformat -Werror to detect format-string/arg-list mismatches.
-# Also, check for shadowing problems with -Wshadow, and for pointer
-# arithmetic problems with -Wpointer-arith.
-# These CFLAGS are pretty strict.  If you build this target, you probably
-# have to have a recent version of gcc and glibc headers.
-# The hard-linking for-loop below ensures that there is a bin/ directory
-# full of all of the programs under test (except the ones that are required
-# for basic Makefile rules), all symlinked to the just-built "false" program.
-# This is to ensure that if ever a test neglects to make PATH include
-# the build srcdir, these always-failing programs will run.
-# Otherwise, it is too easy to test the wrong programs.
-# Note that "false" itself is a symlink to true, so it too will malfunction.
-my-distcheck: $(DIST_ARCHIVES) $(local-check)
-       $(MAKE) syntax-check
-       $(MAKE) check
-       -rm -rf $(t)
-       mkdir -p $(t)
-       GZIP=$(GZIP_ENV) $(AMTAR) -C $(t) -zxf $(distdir).tar.gz
-       cd $(t)/$(distdir)                              \
-         && ./configure --disable-nls                  \
-         && $(MAKE) CFLAGS='$(warn_cflags)'            \
-             AM_MAKEFLAGS='$(null_AM_MAKEFLAGS)'       \
-         && $(MAKE) dvi                                \
-         && $(install-transform-check)                 \
-         && $(my-instcheck)                            \
-         && mkdir $(bin)                               \
-         && ($(write_loser)) > $(bin)/loser            \
-         && chmod a+x $(bin)/loser                     \
-         && for i in $(built_programs); do             \
-              case $$i in                              \
-                rm|expr|basename|echo|sort|ls|tr);;    \
-                cat|dirname|mv|wc);;                   \
-                *) ln $(bin)/loser $(bin)/$$i;;        \
-              esac;                                    \
-            done                                       \
-         && ln -sf ../src/true $(bin)/false            \
-         && PATH=`pwd`/$(bin):$$PATH $(MAKE) -C tests check \
-         && { test -d gnulib-tests                     \
-                && $(MAKE) -C gnulib-tests check       \
-                || :; }                                \
-         && rm -rf $(bin)                              \
-         && $(MAKE) distclean
-       (cd $(t) && mv $(distdir) $(distdir).old        \
-         && $(AMTAR) -zxf - ) < $(distdir).tar.gz
-       diff -ur $(t)/$(distdir).old $(t)/$(distdir)
-       if test -f $(srcdir)/src/c99-to-c89.diff; then                  \
-         cd $(t)/$(distdir)                                            \
-           && (cd src && patch -V never --fuzz=0 <c99-to-c89.diff)     \
-           && ./configure --disable-largefile                          \
-                CFLAGS='-Werror -ansi -Wno-long-long'                  \
-           && $(MAKE);                                                 \
-       fi
-       -rm -rf $(t)
-       @echo "========================"; \
-       echo "$(distdir).tar.gz is ready for distribution"; \
-       echo "========================"
-
-WGET = wget
-WGETFLAGS = -C off
-
-rel-check:
-       tarz=/tmp/rel-check-tarz-$$$$; \
-       md5_tmp=/tmp/rel-check-md5-$$$$; \
-       set -e; \
-       trap 'status=$$?; rm -f $$tarz $$md5_tmp; exit $$status' 0 1 2 3 15; \
-       $(WGET) $(WGETFLAGS) -q --output-document=$$tarz $(url); \
-       echo "$(md5)  -" > $$md5_tmp; \
-       md5sum -c $$md5_tmp < $$tarz
-
-rel-files = $(DIST_ARCHIVES)
-
-gnulib-version = $$(cd $(gnulib_dir) && git describe)
-
-announcement: NEWS ChangeLog $(rel-files)
-       @./build-aux/announce-gen                                       \
-           --release-type=$(RELEASE_TYPE)                              \
-           --package=$(PACKAGE)                                        \
-           --prev=$(PREV_VERSION)                                      \
-           --curr=$(VERSION)                                           \
-           --gpg-key-id=$(gpg_key_ID)                                  \
-           --news=NEWS                                                 \
-           --bootstrap-tools=autoconf,automake,flex,gnulib             \
-           --gnulib-version=$(gnulib-version)                          \
-           $(addprefix --url-dir=, $(url_dir_list))
-
-## ---------------- ##
-## Updating files.  ##
-## ---------------- ##
-
-ftp-gnu = ftp://ftp.gnu.org/gnu
-www-gnu = http://www.gnu.org
-
-# Use mv, if you don't have/want move-if-change.
-move_if_change ?= move-if-change
-
-emit_upload_commands:
-       @echo =====================================
-       @echo =====================================
-       @echo "$(srcdir)/build-aux/gnupload $(GNUPLOADFLAGS) \\"
-       @echo "    --to $(gnu_rel_host):$(PACKAGE) \\"
-       @echo "  $(rel-files)"
-       @echo '# send the /tmp/announcement e-mail'
-       @echo =====================================
-       @echo =====================================
-
-noteworthy = * Noteworthy changes in release ?.? (????-??-??) [?]
-define emit-commit-log
-  printf '%s\n' 'post-release administrivia' '' \
-    '* NEWS: Add header line for next release.' \
-    '* .prev-version: Record previous version.' \
-    '* cfg.mk (old_NEWS_hash): Auto-update.'
-endef
-
-.PHONY: alpha beta major
-alpha beta major: $(local-check) writable-files
-       test $@ = major                                         \
-         && { echo $(VERSION) | grep -E '^[0-9]+(\.[0-9]+)+$$' \
-              || { echo "invalid version string: $(VERSION)" 1>&2; exit 1;};}\
-         || :
-       $(MAKE) vc-dist
-       $(MAKE) news-date-check
-       $(MAKE) -s announcement RELEASE_TYPE=$@ > /tmp/announce-$(my_distdir)
-       if test -d $(release_archive_dir); then                 \
-         ln $(rel-files) $(release_archive_dir);               \
-         chmod a-w $(rel-files);                               \
-       fi
-       $(MAKE) -s emit_upload_commands RELEASE_TYPE=$@
-       echo $(VERSION) > $(prev_version_file)
-       $(MAKE) update-NEWS-hash
-       perl -pi -e '$$. == 3 and print "$(noteworthy)\n\n\n"' NEWS
-       $(emit-commit-log) > .ci-msg
-       $(VC) commit -F .ci-msg
index 7865e48e2321fb24d432710562e3094abd2c12c4..60e95afec6af01a8df2c9692227dc768b755b13d 100644 (file)
--- a/src/LR0.h
+++ b/src/LR0.h
@@ -1,5 +1,6 @@
 /* Generate the nondeterministic finite state machine for bison,
 /* Generate the nondeterministic finite state machine for bison,
-   Copyright 1984, 1986, 1989, 2000, 2001, 2002  Free Software Foundation, Inc.
+   Copyright (C) 1984, 1986, 1989, 2000, 2001, 2002, 2009 Free Software
+   Foundation, Inc.
 
    This file is part of Bison, the GNU Compiler Compiler.
 
 
    This file is part of Bison, the GNU Compiler Compiler.
 
index b2a0cb7a81db5bf7cb0ae5ca969fb14ff0a5d76a..cca5d520ab0042063daad6e964fc6573f4ac3453 100644 (file)
@@ -1,6 +1,6 @@
 /* Allocate input grammar variables for Bison.
 
 /* Allocate input grammar variables for Bison.
 
-   Copyright (C) 1984, 1986, 1989, 2001, 2002, 2003, 2005, 2006
+   Copyright (C) 1984, 1986, 1989, 2001, 2002, 2003, 2005, 2006,
    2007, 2008, 2009 Free Software Foundation, Inc.
 
    This file is part of Bison, the GNU Compiler Compiler.
    2007, 2008, 2009 Free Software Foundation, Inc.
 
    This file is part of Bison, the GNU Compiler Compiler.
index ffc9ca81b68f80d8d85dd49b57d75aa9395d2738..7dca7bdd344850f4dbc17d90da05d4e5ef427582 100644 (file)
@@ -1,7 +1,7 @@
 /* Data definitions for internal representation of Bison's input.
 
 /* Data definitions for internal representation of Bison's input.
 
-   Copyright (C) 1984, 1986, 1989, 1992, 2001, 2002, 2003, 2004, 2005, 2006
-   2007, 2008 Free Software Foundation, Inc.
+   Copyright (C) 1984, 1986, 1989, 1992, 2001, 2002, 2003, 2004, 2005,
+   2006, 2007, 2009 Free Software Foundation, Inc.
 
    This file is part of Bison, the GNU Compiler Compiler.
 
 
    This file is part of Bison, the GNU Compiler Compiler.
 
index 4388acba88706f8106190164ee2050881fc27d15..5f2fc904766c7fd8a964ce37c2459c94c2377d81 100644 (file)
@@ -1,6 +1,6 @@
 /* Named symbol references for Bison
 
 /* Named symbol references for Bison
 
-   Copyright 2009 Free Software Foundation, Inc.
+   Copyright (C) 2009 Free Software Foundation, Inc.
 
    This file is part of Bison, the GNU Compiler Compiler.
 
 
    This file is part of Bison, the GNU Compiler Compiler.
 
index 20e92e32759d4d6e98b9ea30294b2234315c1e83..82b24fd0e4b6cfe330e8dd59e47e5b09c28c6906 100644 (file)
@@ -1,6 +1,6 @@
 /* Named symbol references for Bison
 
 /* Named symbol references for Bison
 
-   Copyright 2009 Free Software Foundation, Inc.
+   Copyright (C) 2009 Free Software Foundation, Inc.
 
    This file is part of Bison, the GNU Compiler Compiler.
 
 
    This file is part of Bison, the GNU Compiler Compiler.
 
index b8f5869acabd3b3f54e0f747891c756ff6bc1a5d..19f0505783d6a4288e9e399e24e741faefa476c4 100644 (file)
@@ -1,5 +1,5 @@
 /* Print information on generated parser, for bison,
 /* Print information on generated parser, for bison,
-   Copyright 2000 Free Software Foundation, Inc.
+   Copyright (C) 2000, 2009 Free Software Foundation, Inc.
 
    This file is part of Bison, the GNU Compiler Compiler.
 
 
    This file is part of Bison, the GNU Compiler Compiler.
 
index 297e8c3717cfc9d85d940915382c5c5e15059cba..a2288cd396626d991e2e7adf1a6cb0b4ddeb3560 100644 (file)
@@ -1,6 +1,6 @@
 /* Output a graph of the generated parser, for Bison.
 
 /* Output a graph of the generated parser, for Bison.
 
-   Copyright 2000, 2006 Free Software Foundation, Inc.
+   Copyright (C) 2000, 2006, 2009 Free Software Foundation, Inc.
 
    This file is part of Bison, the GNU Compiler Compiler.
 
 
    This file is part of Bison, the GNU Compiler Compiler.