-#names of parser files
-PFILE = bison.simple
-PFILE1 = bison.hairy
+## Process this file with automake to produce Makefile.in.
-INCLUDES = -DXPFILE=\"$(datadir)/$(PFILE)\" \
- -DXPFILE1=\"$(datadir)/$(PFILE1)\"
+# Copyright (C) 2001-2012 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/>.
-bin_PROGRAMS = bison
+AUTOMAKE_OPTIONS = subdir-objects
+ACLOCAL_AMFLAGS = -I m4
-bison_SOURCES = LR0.c allocate.c closure.c conflicts.c derives.c \
- files.c getargs.c gram.c lalr.c lex.c main.c nullable.c output.c \
- print.c reader.c reduce.c symtab.c warshall.c version.c getopt.c \
- getopt1.c
+SUBDIRS = po runtime-po .
-EXTRA_bison_SOURCES = vmsgetargs.c
+# Files installed for use by Automake.
+aclocaldir = @aclocaldir@
+aclocal_DATA = m4/bison-i18n.m4
-bison_LDADD = @ALLOCA@
+EXTRA_DIST = .prev-version .version \
+ cfg.mk ChangeLog-1998 ChangeLog-2012 PACKAGING
-noinst_HEADERS = alloc.h files.h gram.h lex.h machine.h state.h \
- symtab.h system.h types.h getopt.h
+## Running the bison from this tarball. To generate our own parser,
+## but also to run the tests. Of course, you ought to keep a sane
+## version of Bison nearby...
+BISON = $(top_builddir)/tests/bison
+BISON_IN = $(top_srcdir)/tests/bison.in
+YACC = $(BISON) -y
+AM_YFLAGS = -d -v --warnings=all,error --report=all
-data_DATA = $(PFILE) $(PFILE1)
-info_TEXINFOS = bison.texinfo
-man_MANS = bison.1
+# Initialization before completion by local.mk's.
+AM_CFLAGS = $(WARN_CFLAGS)
+# Find builddir/src/scan-code.c etc.
+AM_CPPFLAGS = -I. -Ilib -I$(top_srcdir) -I$(top_srcdir)/lib
+BUILT_SOURCES =
+DISTCLEANFILES =
+EXTRA_DIST += $(dist_TESTS)
+MOSTLYCLEANDIRS =
+MOSTLYCLEANFILES =
+SUFFIXES =
+TESTS = $(dist_TESTS)
+check_PROGRAMS =
+dist_TESTS =
+noinst_LIBRARIES =
-EXTRA_DIST = $(PFILE) $(PFILE1) $(man_MANS) REFERENCES configure.bat \
- build.com bison.cld bison.rnh vmshlp.mar
+include build-aux/local.mk
+include data/local.mk
+include djgpp/local.mk
+include doc/local.mk
+include etc/local.mk
+include examples/local.mk
+include lib/local.mk
+include src/local.mk
+include tests/local.mk
-bison.simple: bison.s1 Makefile
- -rm -f bison.simple
- sed -e "/^#line/ s|bison|$(datadir)/bison|" -e "s/@bison_version@/$(VERSION)/" < $< > $@-tmp
- mv $@-tmp $@
+# See comments in build-aux/git-version-gen. However, we make .version depend
+# on configure so that .version and VERSION/PACKAGE_VERSION stay in sync in the
+# working copy (for example, when you run autoreconf && make). Allowing these
+# to fall out of sync appears to have little potential to improve Bison build
+# efficiency (even if we were to replace VERSION/PACKAGE_VERSION with .version
+# everywhere possible). On the other hand, it could be harmful. For example,
+# a developer might naively reference .version in a test case while the bison
+# executable still compiles with VERSION, and so the test case might fail or
+# pass incorrectly.
+BUILT_SOURCES += $(top_srcdir)/.version
+$(top_srcdir)/.version: configure
+ echo $(VERSION) > $@-t && mv $@-t $@
+dist-hook: gen-ChangeLog
+ echo $(VERSION) > $(distdir)/.tarball-version
+
+.PHONY: update-b4-copyright update-package-copyright-year
+update-b4-copyright:
+ find data -type f \
+ | grep -v -E '^data/bison.m4$$' \
+ | xargs $(build_aux)/$@
+ @echo 'warning: src/parse-gram.[hc] may need to be regenerated.'
+update-package-copyright-year:
+ $(build_aux)/$@ configure.ac
+
+gen_start_date = 2012-01-16
+.PHONY: gen-ChangeLog
+gen-ChangeLog:
+ $(AM_V_GEN)if test -d .git; then \
+ $(top_srcdir)/build-aux/gitlog-to-changelog \
+ --no-cluster \
+ --amend=$(srcdir)/build-aux/git-log-fix \
+ --since=$(gen_start_date) > $(distdir)/cl-t; \
+ rm -f $(distdir)/ChangeLog; \
+ mv $(distdir)/cl-t $(distdir)/ChangeLog; \
+ fi