1cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source Project## Process this file with automake to create Makefile.in.
2cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source Project
3cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source Project## Makefile for Bison testsuite.
4cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source Project
505436638acc7c010349a69c3395f1a57c642dc62Ying Wang## Copyright (C) 2000-2012 Free Software Foundation, Inc.
605436638acc7c010349a69c3395f1a57c642dc62Ying Wang
705436638acc7c010349a69c3395f1a57c642dc62Ying Wang# This program is free software: you can redistribute it and/or modify
805436638acc7c010349a69c3395f1a57c642dc62Ying Wang# it under the terms of the GNU General Public License as published by
905436638acc7c010349a69c3395f1a57c642dc62Ying Wang# the Free Software Foundation, either version 3 of the License, or
1005436638acc7c010349a69c3395f1a57c642dc62Ying Wang# (at your option) any later version.
1105436638acc7c010349a69c3395f1a57c642dc62Ying Wang#
1205436638acc7c010349a69c3395f1a57c642dc62Ying Wang# This program is distributed in the hope that it will be useful,
1305436638acc7c010349a69c3395f1a57c642dc62Ying Wang# but WITHOUT ANY WARRANTY; without even the implied warranty of
1405436638acc7c010349a69c3395f1a57c642dc62Ying Wang# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
1505436638acc7c010349a69c3395f1a57c642dc62Ying Wang# GNU General Public License for more details.
1605436638acc7c010349a69c3395f1a57c642dc62Ying Wang#
1705436638acc7c010349a69c3395f1a57c642dc62Ying Wang# You should have received a copy of the GNU General Public License
1805436638acc7c010349a69c3395f1a57c642dc62Ying Wang# along with this program.  If not, see <http://www.gnu.org/licenses/>.
19cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source Project
20cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source ProjectEXTRA_DIST = $(TESTSUITE_AT) testsuite package.m4
21cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source Project
22cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source ProjectDISTCLEANFILES       = atconfig $(check_SCRIPTS)
23cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source ProjectMAINTAINERCLEANFILES = Makefile.in $(TESTSUITE)
24cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source Project
25cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source Project## ------------ ##
26cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source Project## package.m4.  ##
27cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source Project## ------------ ##
28cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source Project
2905436638acc7c010349a69c3395f1a57c642dc62Ying Wang$(srcdir)/package.m4: $(top_srcdir)/configure
3005436638acc7c010349a69c3395f1a57c642dc62Ying Wang	$(AM_V_GEN) { \
31cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source Project	  echo '# Signature of the current package.'; \
32cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source Project	  echo 'm4_define([AT_PACKAGE_NAME],      [$(PACKAGE_NAME)])'; \
33cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source Project	  echo 'm4_define([AT_PACKAGE_TARNAME],   [$(PACKAGE_TARNAME)])'; \
34cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source Project	  echo 'm4_define([AT_PACKAGE_VERSION],   [$(PACKAGE_VERSION)])'; \
35cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source Project	  echo 'm4_define([AT_PACKAGE_STRING],    [$(PACKAGE_STRING)])'; \
36cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source Project	  echo 'm4_define([AT_PACKAGE_BUGREPORT], [$(PACKAGE_BUGREPORT)])'; \
3705436638acc7c010349a69c3395f1a57c642dc62Ying Wang	} >$@.tmp
3805436638acc7c010349a69c3395f1a57c642dc62Ying Wang	$(AM_V_at) mv $@.tmp $@
39cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source Project
40cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source Project## ------------ ##
41cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source Project## Test suite.  ##
42cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source Project## ------------ ##
43cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source Project
44cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source ProjectTESTSUITE_AT = \
45cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source Project	local.at \
46cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source Project	testsuite.at \
4705436638acc7c010349a69c3395f1a57c642dc62Ying Wang	input.at named-refs.at \
4805436638acc7c010349a69c3395f1a57c642dc62Ying Wang	output.at skeletons.at sets.at reduce.at \
49cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source Project	synclines.at headers.at actions.at conflicts.at \
50cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source Project	calc.at \
51cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source Project        torture.at existing.at regression.at \
52cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source Project        c++.at \
5305436638acc7c010349a69c3395f1a57c642dc62Ying Wang        java.at \
5405436638acc7c010349a69c3395f1a57c642dc62Ying Wang	cxx-type.at glr-regression.at \
5505436638acc7c010349a69c3395f1a57c642dc62Ying Wang	push.at
56cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source Project
57cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source ProjectTESTSUITE = $(srcdir)/testsuite
58cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source Project
59cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source ProjectAUTOTEST = $(AUTOM4TE) --language=autotest
6005436638acc7c010349a69c3395f1a57c642dc62Ying Wang$(TESTSUITE): $(srcdir)/package.m4 $(TESTSUITE_AT)
6105436638acc7c010349a69c3395f1a57c642dc62Ying Wang	$(AM_V_GEN) $(AUTOTEST) -I $(srcdir) testsuite.at -o $@.tmp
6205436638acc7c010349a69c3395f1a57c642dc62Ying Wang	$(AM_V_at) mv $@.tmp $@
63cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source Project
64cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source Projectatconfig: $(top_builddir)/config.status
65cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source Project	cd $(top_builddir) && ./config.status tests/$@
66cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source Project
67cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source Projectclean-local:
68cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source Project	test ! -f $(TESTSUITE) || $(SHELL) $(TESTSUITE) --clean
69cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source Project
70cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source Projectcheck-local: atconfig atlocal $(TESTSUITE)
71cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source Project	$(SHELL) $(TESTSUITE) $(TESTSUITEFLAGS)
72cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source Project
73cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source Projectcheck_SCRIPTS = bison
74cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source Project
75cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source Project# Run the test suite on the *installed* tree.
7605436638acc7c010349a69c3395f1a57c642dc62Ying Wanginstallcheck-local: atconfig atlocal $(TESTSUITE)
7705436638acc7c010349a69c3395f1a57c642dc62Ying Wang	$(TESTSUITE) AUTOTEST_PATH="$(bindir)" $(TESTSUITEFLAGS)
78cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source Project
79cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source Project# Be real mean with it.
80cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source Project.PHONY: maintainer-check-g++
8105436638acc7c010349a69c3395f1a57c642dc62Ying Wangmaintainer-check-g++: atconfig atlocal $(TESTSUITE)
8205436638acc7c010349a69c3395f1a57c642dc62Ying Wang	$(TESTSUITE) $(TESTSUITEFLAGS) --compile-c-with-cxx
83cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source Project
84cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source Project.PHONY: maintainer-check-posix
8505436638acc7c010349a69c3395f1a57c642dc62Ying Wangmaintainer-check-posix: atconfig atlocal $(TESTSUITE)
8605436638acc7c010349a69c3395f1a57c642dc62Ying Wang	$(TESTSUITE) $(TESTSUITEFLAGS) POSIXLY_CORRECT=1 _POSIX2_VERSION=200112
87cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source Project
88cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source Project.PHONY: maintainer-check-valgrind
8905436638acc7c010349a69c3395f1a57c642dc62Ying Wangmaintainer-check-valgrind: atconfig atlocal $(TESTSUITE)
9005436638acc7c010349a69c3395f1a57c642dc62Ying Wang	test -z '$(VALGRIND)' ||					\
9105436638acc7c010349a69c3395f1a57c642dc62Ying Wang	  $(TESTSUITE) $(TESTSUITEFLAGS)				\
9205436638acc7c010349a69c3395f1a57c642dc62Ying Wang	  PREBISON='$(VALGRIND_PREBISON)' PREPARSER='$(VALGRIND) -q'	\
9305436638acc7c010349a69c3395f1a57c642dc62Ying Wang	  VALGRIND_OPTS='--leak-check=full --show-reachable=yes'
94cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source Project
95cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source Project.PHONY: maintainer-check
96cea198a11f15a2eb071d98491ca9a8bc8cebfbc4The Android Open Source Projectmaintainer-check: maintainer-check-posix maintainer-check-valgrind maintainer-check-g++
9705436638acc7c010349a69c3395f1a57c642dc62Ying Wang
9805436638acc7c010349a69c3395f1a57c642dc62Ying Wang.PHONY: maintainer-push-check
9905436638acc7c010349a69c3395f1a57c642dc62Ying Wangmaintainer-push-check:
10005436638acc7c010349a69c3395f1a57c642dc62Ying Wang	BISON_USE_PUSH_FOR_PULL=1 $(MAKE) $(AM_MAKEFLAGS) maintainer-check
10105436638acc7c010349a69c3395f1a57c642dc62Ying Wang
10205436638acc7c010349a69c3395f1a57c642dc62Ying Wang.PHONY: maintainer-xml-check
10305436638acc7c010349a69c3395f1a57c642dc62Ying Wangmaintainer-xml-check:
10405436638acc7c010349a69c3395f1a57c642dc62Ying Wang	BISON_TEST_XML=1 $(MAKE) $(AM_MAKEFLAGS) maintainer-check
10505436638acc7c010349a69c3395f1a57c642dc62Ying Wang
10605436638acc7c010349a69c3395f1a57c642dc62Ying Wang.PHONY: maintainer-release-check
10705436638acc7c010349a69c3395f1a57c642dc62Ying Wangmaintainer-release-check: maintainer-check maintainer-push-check maintainer-xml-check
108