+TESTSUITE = $(srcdir)/testsuite
+
+AUTOTEST = $(AUTOM4TE) --language=autotest
+$(TESTSUITE): $(srcdir)/package.m4 $(TESTSUITE_AT)
+ $(AM_V_GEN) $(AUTOTEST) -I $(srcdir) testsuite.at -o $@.tmp
+ $(AM_V_at) mv $@.tmp $@
+
+atconfig: $(top_builddir)/config.status
+ cd $(top_builddir) && ./config.status tests/$@
+
+clean-local:
+ test ! -f $(TESTSUITE) || $(SHELL) $(TESTSUITE) --clean
+
+check-local: atconfig atlocal $(TESTSUITE)
+ $(SHELL) $(TESTSUITE) $(TESTSUITEFLAGS)
+
+check_SCRIPTS = bison
+
+# Run the test suite on the *installed* tree.
+installcheck-local: atconfig atlocal $(TESTSUITE)
+ $(TESTSUITE) AUTOTEST_PATH="$(bindir)" $(TESTSUITEFLAGS)
+
+# Be real mean with it.
+.PHONY: maintainer-check-g++
+maintainer-check-g++: atconfig atlocal $(TESTSUITE)
+ $(TESTSUITE) $(TESTSUITEFLAGS) --compile-c-with-cxx
+
+.PHONY: maintainer-check-posix
+maintainer-check-posix: atconfig atlocal $(TESTSUITE)
+ $(TESTSUITE) $(TESTSUITEFLAGS) POSIXLY_CORRECT=1 _POSIX2_VERSION=200112
+
+.PHONY: maintainer-check-valgrind
+maintainer-check-valgrind: atconfig atlocal $(TESTSUITE)
+ test -z '$(VALGRIND)' || \
+ $(TESTSUITE) $(TESTSUITEFLAGS) \
+ PREBISON='$(VALGRIND_PREBISON)' PREPARSER='$(VALGRIND) -q' \
+ VALGRIND_OPTS='--leak-check=full --show-reachable=yes'
+
+.PHONY: maintainer-check
+maintainer-check: maintainer-check-posix maintainer-check-valgrind maintainer-check-g++
+
+.PHONY: maintainer-push-check
+maintainer-push-check:
+ BISON_USE_PUSH_FOR_PULL=1 $(MAKE) $(AM_MAKEFLAGS) maintainer-check
+
+.PHONY: maintainer-xml-check
+maintainer-xml-check:
+ BISON_TEST_XML=1 $(MAKE) $(AM_MAKEFLAGS) maintainer-check
+
+.PHONY: maintainer-release-check
+maintainer-release-check: maintainer-check maintainer-push-check maintainer-xml-check