]>
Commit | Line | Data |
---|---|---|
d4977ce3 AD |
1 | ## Makefile for Bison testsuite. |
2 | ||
3209eb1c | 3 | # Copyright (C) 2000-2015 Free Software Foundation, Inc. |
2a559307 AD |
4 | # |
5 | # This program is free software: you can redistribute it and/or modify | |
6 | # it under the terms of the GNU General Public License as published by | |
7 | # the Free Software Foundation, either version 3 of the License, or | |
8 | # (at your option) any later version. | |
9 | # | |
10 | # This program is distributed in the hope that it will be useful, | |
11 | # but WITHOUT ANY WARRANTY; without even the implied warranty of | |
12 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
13 | # GNU General Public License for more details. | |
14 | # | |
15 | # You should have received a copy of the GNU General Public License | |
16 | # along with this program. If not, see <http://www.gnu.org/licenses/>. | |
d4977ce3 | 17 | |
9bfbf75b | 18 | EXTRA_DIST += $(TESTSUITE_AT) tests/testsuite |
d4977ce3 AD |
19 | |
20 | DISTCLEANFILES += tests/atconfig $(check_SCRIPTS) | |
21 | MAINTAINERCLEANFILES += $(TESTSUITE) | |
22 | ||
23 | ## ------------ ## | |
24 | ## package.m4. ## | |
25 | ## ------------ ## | |
26 | ||
27 | $(top_srcdir)/tests/package.m4: $(top_srcdir)/configure | |
9bfbf75b AD |
28 | $(AM_V_GEN)rm -f $@ $@.tmp |
29 | $(AM_V_at){ \ | |
d4977ce3 AD |
30 | echo '# Signature of the current package.'; \ |
31 | echo 'm4_define([AT_PACKAGE_NAME], [$(PACKAGE_NAME)])'; \ | |
32 | echo 'm4_define([AT_PACKAGE_TARNAME], [$(PACKAGE_TARNAME)])'; \ | |
33 | echo 'm4_define([AT_PACKAGE_VERSION], [$(PACKAGE_VERSION)])'; \ | |
34 | echo 'm4_define([AT_PACKAGE_STRING], [$(PACKAGE_STRING)])'; \ | |
35 | echo 'm4_define([AT_PACKAGE_BUGREPORT], [$(PACKAGE_BUGREPORT)])'; \ | |
36 | } >$@.tmp | |
9bfbf75b | 37 | $(AM_V_at)mv $@.tmp $@ |
d4977ce3 | 38 | |
ff9684b7 AD |
39 | ## ------------------------- ## |
40 | ## Generate the test suite. ## | |
41 | ## ------------------------- ## | |
d4977ce3 | 42 | |
e9690142 | 43 | TESTSUITE_AT = \ |
9bfbf75b AD |
44 | tests/testsuite.at \ |
45 | \ | |
e9690142 JD |
46 | tests/actions.at \ |
47 | tests/c++.at \ | |
48 | tests/calc.at \ | |
49 | tests/conflicts.at \ | |
50 | tests/cxx-type.at \ | |
51 | tests/existing.at \ | |
52 | tests/glr-regression.at \ | |
53 | tests/headers.at \ | |
54 | tests/input.at \ | |
55 | tests/java.at \ | |
aa94def1 | 56 | tests/javapush.at \ |
e9690142 JD |
57 | tests/local.at \ |
58 | tests/named-refs.at \ | |
59 | tests/output.at \ | |
9bfbf75b | 60 | tests/package.m4 \ |
e9690142 JD |
61 | tests/push.at \ |
62 | tests/reduce.at \ | |
63 | tests/regression.at \ | |
64 | tests/sets.at \ | |
65 | tests/skeletons.at \ | |
66 | tests/synclines.at \ | |
6574576c AD |
67 | tests/torture.at \ |
68 | tests/types.at | |
d4977ce3 AD |
69 | |
70 | TESTSUITE = $(top_srcdir)/tests/testsuite | |
71 | ||
72 | AUTOTEST = $(AUTOM4TE) --language=autotest | |
56ddee7f | 73 | AUTOTESTFLAGS = -I $(top_srcdir)/tests |
9bfbf75b | 74 | $(TESTSUITE): $(TESTSUITE_AT) |
da83f838 AD |
75 | $(AM_V_GEN) \ |
76 | $(AUTOTEST) $(AUTOTESTFLAGS) $(srcdir)/tests/testsuite.at -o $@.tmp | |
bb1c50d8 | 77 | $(AM_V_at)$(PERL) -pi -e 's/\@tb\@/\t/g' $@.tmp |
9bfbf75b | 78 | $(AM_V_at)mv $@.tmp $@ |
d4977ce3 | 79 | |
ff9684b7 AD |
80 | |
81 | ## -------------------- ## | |
82 | ## Run the test suite. ## | |
83 | ## -------------------- ## | |
84 | ||
85 | # Move into tests/ so that testsuite.dir etc. be created there. | |
86 | RUN_TESTSUITE = $(TESTSUITE) -C tests $(TESTSUITEFLAGS) | |
87 | check_SCRIPTS = $(BISON) tests/atconfig tests/atlocal | |
afc44576 | 88 | RUN_TESTSUITE_deps = all $(TESTSUITE) $(check_SCRIPTS) |
ff9684b7 | 89 | |
d4977ce3 AD |
90 | clean-local: clean-local-tests |
91 | clean-local-tests: | |
2cd1af95 | 92 | test ! -f $(TESTSUITE) || $(TESTSUITE) -C tests --clean |
d4977ce3 | 93 | |
ff9684b7 | 94 | check-local: $(RUN_TESTSUITE_deps) |
a8873669 | 95 | $(RUN_TESTSUITE) |
d4977ce3 | 96 | |
d4977ce3 | 97 | # Run the test suite on the *installed* tree. |
ff9684b7 | 98 | installcheck-local: $(RUN_TESTSUITE_deps) |
24d84dd2 | 99 | $(RUN_TESTSUITE) AUTOTEST_PATH='$(bindir)' |
d4977ce3 AD |
100 | |
101 | # Be real mean with it. | |
102 | .PHONY: maintainer-check-g++ | |
ff9684b7 | 103 | maintainer-check-g++: $(RUN_TESTSUITE_deps) |
ac3f2e33 | 104 | $(RUN_TESTSUITE) --compile-c-with-cxx |
d4977ce3 AD |
105 | |
106 | .PHONY: maintainer-check-posix | |
ff9684b7 | 107 | maintainer-check-posix: $(RUN_TESTSUITE_deps) |
a8873669 | 108 | $(RUN_TESTSUITE) POSIXLY_CORRECT=1 _POSIX2_VERSION=200112 |
d4977ce3 AD |
109 | |
110 | .PHONY: maintainer-check-valgrind | |
ff9684b7 | 111 | maintainer-check-valgrind: $(RUN_TESTSUITE_deps) |
24d84dd2 AD |
112 | test -z '$(VALGRIND)' || \ |
113 | $(RUN_TESTSUITE) \ | |
3eb4f1a3 | 114 | PREBISON='$(VALGRIND_PREBISON)' PREPARSER='$(VALGRIND) -q' \ |
24d84dd2 | 115 | VALGRIND_OPTS='--leak-check=full --show-reachable=yes' |
d4977ce3 AD |
116 | |
117 | .PHONY: maintainer-check | |
118 | maintainer-check: maintainer-check-posix maintainer-check-valgrind maintainer-check-g++ | |
119 | ||
120 | .PHONY: maintainer-push-check | |
121 | maintainer-push-check: | |
24d84dd2 AD |
122 | $(MAKE) $(AM_MAKEFLAGS) maintainer-check \ |
123 | TESTSUITEFLAGS='BISON_USE_PUSH_FOR_PULL=1 $(TESTSUITEFLAGS)' | |
d4977ce3 AD |
124 | |
125 | .PHONY: maintainer-xml-check | |
126 | maintainer-xml-check: | |
24d84dd2 AD |
127 | $(MAKE) $(AM_MAKEFLAGS) maintainer-check \ |
128 | TESTSUITEFLAGS='BISON_TEST_XML=1 $(TESTSUITEFLAGS)' | |
60dcc936 AD |
129 | |
130 | .PHONY: maintainer-release-check | |
131 | maintainer-release-check: maintainer-check maintainer-push-check maintainer-xml-check |