]>
Commit | Line | Data |
---|---|---|
1 | ## Process this file with automake to create Makefile.in. | |
2 | ||
3 | ## Makefile for Bison testsuite. | |
4 | ||
5 | ## Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 Free Software | |
6 | ## Foundation, Inc. | |
7 | ||
8 | # This program is free software: you can redistribute it and/or modify | |
9 | # it under the terms of the GNU General Public License as published by | |
10 | # the Free Software Foundation, either version 3 of the License, or | |
11 | # (at your option) any later version. | |
12 | # | |
13 | # This program is distributed in the hope that it will be useful, | |
14 | # but WITHOUT ANY WARRANTY; without even the implied warranty of | |
15 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
16 | # GNU General Public License for more details. | |
17 | # | |
18 | # You should have received a copy of the GNU General Public License | |
19 | # along with this program. If not, see <http://www.gnu.org/licenses/>. | |
20 | ||
21 | EXTRA_DIST = $(TESTSUITE_AT) testsuite package.m4 | |
22 | ||
23 | DISTCLEANFILES = atconfig $(check_SCRIPTS) | |
24 | MAINTAINERCLEANFILES = Makefile.in $(TESTSUITE) | |
25 | ||
26 | ## ------------ ## | |
27 | ## package.m4. ## | |
28 | ## ------------ ## | |
29 | ||
30 | $(srcdir)/package.m4: $(top_srcdir)/configure.ac | |
31 | { \ | |
32 | echo '# Signature of the current package.'; \ | |
33 | echo 'm4_define([AT_PACKAGE_NAME], [$(PACKAGE_NAME)])'; \ | |
34 | echo 'm4_define([AT_PACKAGE_TARNAME], [$(PACKAGE_TARNAME)])'; \ | |
35 | echo 'm4_define([AT_PACKAGE_VERSION], [$(PACKAGE_VERSION)])'; \ | |
36 | echo 'm4_define([AT_PACKAGE_STRING], [$(PACKAGE_STRING)])'; \ | |
37 | echo 'm4_define([AT_PACKAGE_BUGREPORT], [$(PACKAGE_BUGREPORT)])'; \ | |
38 | } >$(srcdir)/package.m4 | |
39 | ||
40 | ## ------------ ## | |
41 | ## Test suite. ## | |
42 | ## ------------ ## | |
43 | ||
44 | TESTSUITE_AT = \ | |
45 | local.at \ | |
46 | testsuite.at \ | |
47 | input.at \ | |
48 | output.at sets.at reduce.at skeletons.at \ | |
49 | synclines.at headers.at actions.at conflicts.at \ | |
50 | calc.at \ | |
51 | torture.at existing.at regression.at \ | |
52 | c++.at \ | |
53 | java.at \ | |
54 | cxx-type.at glr-regression.at \ | |
55 | push.at | |
56 | ||
57 | TESTSUITE = $(srcdir)/testsuite | |
58 | ||
59 | AUTOTEST = $(AUTOM4TE) --language=autotest | |
60 | $(TESTSUITE): package.m4 $(TESTSUITE_AT) | |
61 | $(AUTOTEST) -I $(srcdir) testsuite.at -o $@.tmp | |
62 | mv $@.tmp $@ | |
63 | ||
64 | atconfig: $(top_builddir)/config.status | |
65 | cd $(top_builddir) && ./config.status tests/$@ | |
66 | ||
67 | clean-local: | |
68 | test ! -f $(TESTSUITE) || $(SHELL) $(TESTSUITE) --clean | |
69 | ||
70 | check-local: atconfig atlocal $(TESTSUITE) | |
71 | $(SHELL) $(TESTSUITE) $(TESTSUITEFLAGS) | |
72 | ||
73 | check_SCRIPTS = bison | |
74 | ||
75 | # Run the test suite on the *installed* tree. | |
76 | installcheck-local: | |
77 | $(SHELL) $(TESTSUITE) AUTOTEST_PATH="$(bindir)" $(TESTSUITEFLAGS) | |
78 | ||
79 | # Be real mean with it. | |
80 | .PHONY: maintainer-check-g++ | |
81 | maintainer-check-g++: $(TESTSUITE) | |
82 | $(TESTSUITE) CC='$(CXX)' | |
83 | ||
84 | .PHONY: maintainer-check-posix | |
85 | maintainer-check-posix: $(TESTSUITE) | |
86 | $(TESTSUITE) POSIXLY_CORRECT=1 _POSIX2_VERSION=200112 | |
87 | ||
88 | .PHONY: maintainer-check-valgrind | |
89 | maintainer-check-valgrind: $(TESTSUITE) | |
90 | test -z '$(VALGRIND)' || \ | |
91 | VALGRIND_OPTS='--leak-check=full --show-reachable=yes' \ | |
92 | $(TESTSUITE) PREBISON='$(VALGRIND) -q' PREPARSER='$(VALGRIND) -q' | |
93 | ||
94 | .PHONY: maintainer-check | |
95 | maintainer-check: maintainer-check-posix maintainer-check-valgrind maintainer-check-g++ | |
96 | ||
97 | .PHONY: maintainer-push-check | |
98 | maintainer-push-check: | |
99 | BISON_USE_PUSH_FOR_PULL=1 $(MAKE) $(AM_MAKEFLAGS) maintainer-check | |
100 | ||
101 | .PHONY: maintainer-xml-check | |
102 | maintainer-xml-check: | |
103 | BISON_TEST_XML=1 $(MAKE) $(AM_MAKEFLAGS) maintainer-check |