summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile.am11
-rw-r--r--configure.ac3
-rw-r--r--examples/calc++/.gitignore2
-rw-r--r--examples/calc++/local.mk (renamed from examples/calc++/Makefile.am)80
-rwxr-xr-xexamples/calc++/test2
-rw-r--r--examples/local.mk2
-rw-r--r--src/local.mk5
-rw-r--r--tests/local.mk2
8 files changed, 52 insertions, 55 deletions
diff --git a/Makefile.am b/Makefile.am
index 097a6349..6220276f 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -18,9 +18,6 @@
ACLOCAL_AMFLAGS = -I m4
SUBDIRS = po runtime-po .
-if BISON_CXX_WORKS
-SUBDIRS += examples/calc++
-endif
# Files installed for use by Automake.
aclocaldir = @aclocaldir@
@@ -29,9 +26,15 @@ aclocal_DATA = m4/bison-i18n.m4
EXTRA_DIST = .prev-version .version \
cfg.mk ChangeLog-1998 ChangeLog-2012 PACKAGING
+## Running the bison from this tarball. To generate our own parser,
+## but also to run the tests.
+BISON = $(top_builddir)/tests/bison
+BISON_IN = $(top_srcdir)/tests/bison.in
+
# Initialization before completion by local.mk's.
AM_CFLAGS = $(WARN_CFLAGS)
-AM_CPPFLAGS =
+# Find builddir/src/scan-code.c etc.
+AM_CPPFLAGS = -I. -Ilib -I$(top_srcdir) -I$(top_srcdir)/lib
BUILT_SOURCES =
DISTCLEANFILES =
MOSTLYCLEANFILES =
diff --git a/configure.ac b/configure.ac
index 80c2e99c..c51d2dd5 100644
--- a/configure.ac
+++ b/configure.ac
@@ -45,7 +45,7 @@ AC_CONFIG_MACRO_DIR([m4])
# releases, we want to be able run make dist without being required to
# add a bogus NEWS entry. In that case, the version string
# automatically contains a dash, which we also let disable gnits.
-AM_INIT_AUTOMAKE([1.11.1 dist-xz silent-rules]
+AM_INIT_AUTOMAKE([1.11.1 dist-xz nostdinc silent-rules]
m4_bmatch(m4_defn([AC_PACKAGE_VERSION]), [[-_]],
[gnu], [gnits]))
AM_SILENT_RULES([yes])
@@ -181,6 +181,5 @@ do
done
AC_CONFIG_FILES([Makefile
po/Makefile.in
- examples/calc++/Makefile
doc/yacc.1])
AC_OUTPUT
diff --git a/examples/calc++/.gitignore b/examples/calc++/.gitignore
index 2050491f..6dc7e2f3 100644
--- a/examples/calc++/.gitignore
+++ b/examples/calc++/.gitignore
@@ -7,7 +7,5 @@
/*.tmp
/*.yy
/.deps
-/Makefile
-/Makefile.in
/calc++
/calc++.exe
diff --git a/examples/calc++/Makefile.am b/examples/calc++/local.mk
index 9120d754..affb9c30 100644
--- a/examples/calc++/Makefile.am
+++ b/examples/calc++/local.mk
@@ -15,16 +15,6 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
-## ------------------------------------- ##
-## Running the bison from this tarball. ##
-## ------------------------------------- ##
-
-BISON = $(top_builddir)/tests/bison
-BISON_IN = $(top_srcdir)/tests/bison.in
-
-$(BISON): $(BISON_IN)
- $(AM_V_GEN)cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) tests/bison
-
## ------------ ##
## Extracting. ##
## ------------ ##
@@ -32,46 +22,45 @@ $(BISON): $(BISON_IN)
doc = $(top_srcdir)/doc/bison.texinfo
extexi = $(top_srcdir)/examples/extexi
# Extract in src.
-$(srcdir)/calc.stamp: $(doc) $(extexi)
+$(top_srcdir)/examples/calc++/calc.stamp: $(doc) $(extexi)
$(AM_V_GEN)rm -f $@ $@.tmp
$(AM_V_at)touch $@.tmp
- $(AM_V_at)cd $(srcdir) && \
+ $(AM_V_at)cd $(top_srcdir)/examples/calc++ && \
$(AWK) -f ../extexi -v VERSION="$(VERSION)" \
../../doc/bison.texinfo -- calc++-parser.yy \
calc++-scanner.ll calc++.cc calc++-driver.hh calc++-driver.cc
$(AM_V_at)mv $@.tmp $@
-$(calc_extracted): $(srcdir)/calc.stamp
+$(calc_extracted): $(top_srcdir)/examples/calc++/calc.stamp
## ------------------- ##
## Parser generation. ##
## ------------------- ##
-DEFAULT_INCLUDES = -I. -I$(srcdir)
-BUILT_SOURCES = $(calc_extracted) $(calc_sources_generated)
-CLEANFILES = $(srcdir)/*.output *.tmp
-MAINTAINERCLEANFILES = $(srcdir)/*.stamp $(BUILT_SOURCES)
+BUILT_SOURCES += $(calc_extracted) $(calc_sources_generated)
+CLEANFILES += $(top_srcdir)/examples/calc++/*.output *.tmp
+MAINTAINERCLEANFILES += $(top_srcdir)/examples/calc++/*.stamp $(calc___SOURCES)
# Compile the parser and save cycles.
# This code comes from "Handling Tools that Produce Many Outputs",
# from the Automake documentation.
-EXTRA_DIST = \
- $(srcdir)/calc++-parser.stamp \
- $(srcdir)/calc++-parser.yy \
- $(srcdir)/calc.stamp
+EXTRA_DIST += \
+ examples/calc++/calc++-parser.stamp \
+ examples/calc++/calc++-parser.yy \
+ examples/calc++/calc.stamp
# Don't depend on $(BISON) otherwise we would rebuild these files
# in srcdir, including during distcheck, which is forbidden.
-$(srcdir)/calc++-parser.stamp: $(srcdir)/calc++-parser.yy $(BISON_IN)
+$(top_srcdir)/examples/calc++/calc++-parser.stamp: $(top_srcdir)/examples/calc++/calc++-parser.yy $(BISON_IN)
$(AM_V_GEN)rm -f calc++-parser.tmp
$(AM_V_at)touch calc++-parser.tmp
- $(AM_V_at)$(BISON) -d -ra -o $(srcdir)/calc++-parser.cc \
- $(srcdir)/calc++-parser.yy
+ $(AM_V_at)$(BISON) -d -ra -o $(top_srcdir)/examples/calc++/calc++-parser.cc \
+ $(top_srcdir)/examples/calc++/calc++-parser.yy
$(AM_V_at)mv -f calc++-parser.tmp $@
-$(calc_sources_generated): $(srcdir)/calc++-parser.stamp
+$(calc_sources_generated): $(top_srcdir)/examples/calc++/calc++-parser.stamp
$(AM_V_GEN)if test -f $@; then :; else \
- rm -f $(srcdir)/calc++-parser.stamp && \
- $(MAKE) $(AM_MAKEFLAGS) $(srcdir)/calc++-parser.stamp; \
+ rm -f $(top_srcdir)/examples/calc++/calc++-parser.stamp && \
+ $(MAKE) $(AM_MAKEFLAGS) $(top_srcdir)/examples/calc++/calc++-parser.stamp; \
fi
@@ -79,16 +68,27 @@ $(calc_sources_generated): $(srcdir)/calc++-parser.stamp
## Building & testing calc++. ##
## --------------------------- ##
-check_PROGRAMS = calc++
-
-calc_sources_extracted = $(srcdir)/calc++-scanner.ll $(srcdir)/calc++.cc \
- $(srcdir)/calc++-driver.hh $(srcdir)/calc++-driver.cc
-calc_extracted = $(calc_sources_extracted) $(srcdir)/calc++-parser.yy
-calc_sources_generated = \
- $(srcdir)/stack.hh $(srcdir)/position.hh $(srcdir)/location.hh \
- $(srcdir)/calc++-parser.hh $(srcdir)/calc++-parser.cc
-
-calc___SOURCES = $(calc_sources_extracted) $(calc_sources_generated)
-
-TESTS = test
-EXTRA_DIST += $(TESTS)
+calc_sources_extracted = \
+ examples/calc++/calc++-scanner.ll \
+ examples/calc++/calc++.cc \
+ examples/calc++/calc++-driver.hh \
+ examples/calc++/calc++-driver.cc
+calc_extracted = \
+ $(calc_sources_extracted) \
+ examples/calc++/calc++-parser.yy
+calc_sources_generated = \
+ examples/calc++/stack.hh \
+ examples/calc++/position.hh \
+ examples/calc++/location.hh \
+ examples/calc++/calc++-parser.hh \
+ examples/calc++/calc++-parser.cc
+
+if BISON_CXX_WORKS
+check_PROGRAMS = examples/calc++/calc++
+examples_calc___calc___SOURCES = \
+ $(calc_sources_extracted) \
+ $(calc_sources_generated)
+examples_calc___calc___CPPFLAGS = -I$(top_srcdir)/examples/calc++
+TESTS = examples/calc++/test
+endif
+EXTRA_DIST += examples/calc++/test
diff --git a/examples/calc++/test b/examples/calc++/test
index 27012239..150f161c 100755
--- a/examples/calc++/test
+++ b/examples/calc++/test
@@ -37,7 +37,7 @@ run ()
shift
local out_exp=$1
shift
- ./calc++ "$@" input >out_eff
+ ./examples/calc++/calc++ "$@" input >out_eff
local sta_eff=$?
local out_eff=`cat out_eff`
if test $sta_eff -eq $sta_exp; then
diff --git a/examples/local.mk b/examples/local.mk
index 64afdbb8..6da395df 100644
--- a/examples/local.mk
+++ b/examples/local.mk
@@ -14,3 +14,5 @@
## along with this program. If not, see <http://www.gnu.org/licenses/>.
dist_noinst_SCRIPTS = examples/extexi
+
+include examples/calc++/local.mk
diff --git a/src/local.mk b/src/local.mk
index 36c0ac7d..69592780 100644
--- a/src/local.mk
+++ b/src/local.mk
@@ -15,15 +15,10 @@
AUTOMAKE_OPTIONS = subdir-objects
-AM_CPPFLAGS += -I$(top_srcdir)/lib
-# Find builddir/src/scan-code.c etc.
-AM_CPPFLAGS += -I$(top_builddir)
-
LDADD = lib/libbison.a $(LIBINTL)
# Use our own Bison to build the parser. Of course, you ought to
# keep a sane version of Bison nearby...
-BISON = tests/bison
YACC = $(BISON) -y
AM_YFLAGS = -dv --warnings=all,error --report=all
diff --git a/tests/local.mk b/tests/local.mk
index 18734f37..5bb587d6 100644
--- a/tests/local.mk
+++ b/tests/local.mk
@@ -83,7 +83,7 @@ check-local: tests/atconfig tests/atlocal $(TESTSUITE)
# Move into tests/ so that testsuite.dir etc. be created there.
$(RUN_TESTSUITE)
-check_SCRIPTS = tests/bison
+check_SCRIPTS = $(BISON)
# Run the test suite on the *installed* tree.
installcheck-local: