]> git.saurik.com Git - bison.git/blobdiff - Makefile.am
build: generalize etc/prefix-gnulib-mk
[bison.git] / Makefile.am
index cbcb6da0e78507c1184937fca0c089418ad5c1ad..097a634930f49a8004906c18e0f57b08a97d95e9 100644 (file)
@@ -1,42 +1,86 @@
 ## Process this file with automake to produce Makefile.in -*-Makefile-*-
-## Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007 Free Software
-## Foundation, Inc.
 
-## This program is free software; you can redistribute it and/or modify
+## 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 2 of the License, or
+## 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, write to the Free Software
-## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
-## 02110-1301  USA
+## along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 ACLOCAL_AMFLAGS = -I m4
 
-SUBDIRS = build-aux po runtime-po lib data src doc examples tests etc
+SUBDIRS = po runtime-po .
+if BISON_CXX_WORKS
+SUBDIRS += examples/calc++
+endif
 
 # Files installed for use by Automake.
 aclocaldir = @aclocaldir@
 aclocal_DATA = m4/bison-i18n.m4
 
-EXTRA_DIST = GNUmakefile Makefile.cfg Makefile.maint \
-  OChangeLog PACKAGING \
-  djgpp/Makefile.maint djgpp/README.in djgpp/config.bat \
-  djgpp/config.sed djgpp/config.site djgpp/config_h.sed \
-  djgpp/subpipe.c djgpp/subpipe.h djgpp/djunpack.bat \
-  djgpp/fnchange.lst djgpp/testsuite.sed
+EXTRA_DIST = .prev-version .version \
+  cfg.mk ChangeLog-1998 ChangeLog-2012 PACKAGING
+
+# Initialization before completion by local.mk's.
+AM_CFLAGS = $(WARN_CFLAGS)
+AM_CPPFLAGS =
+BUILT_SOURCES =
+DISTCLEANFILES =
+MOSTLYCLEANFILES =
+SUFFIXES =
+noinst_LIBRARIES =
+MOSTLYCLEANDIRS =
+
+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
 
+# 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: maintainer-check
-maintainer-check:
-       cd tests && $(MAKE) $(AM_MAKEFLAGS) $@
+.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
 
-.PHONY: maintainer-push-check
-maintainer-push-check:
-       cd tests && $(MAKE) $(AM_MAKEFLAGS) $@
+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