| ## automake - create Makefile.in from Makefile.am |
| ## Copyright (C) 1994-2014 Free Software Foundation, Inc. |
| |
| ## This program is free software; you can redistribute it and/or modify |
| ## it under the terms of the GNU General Public License as published by |
| ## the Free Software Foundation; either version 2, or (at your option) |
| ## any later version. |
| |
| ## This program is distributed in the hope that it will be useful, |
| ## but WITHOUT ANY WARRANTY; without even the implied warranty of |
| ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
| ## GNU General Public License for more details. |
| |
| ## You should have received a copy of the GNU General Public License |
| ## along with this program. If not, see <http://www.gnu.org/licenses/>. |
| |
| ## Name of tool to use. Default is the same as the package. |
| DEJATOOL = $(PACKAGE) |
| |
| ## Default flags to pass to dejagnu. The user can override this. |
| RUNTESTDEFAULTFLAGS = --tool $$tool --srcdir $$srcdir |
| |
| EXPECT = expect |
| RUNTEST = runtest |
| |
| |
| .PHONY: check-DEJAGNU |
| check-DEJAGNU: site.exp |
| ## Life is easiest with an absolute srcdir, so do that. |
| srcdir='$(srcdir)'; export srcdir; \ |
| EXPECT=$(EXPECT); export EXPECT; \ |
| ## If runtest can't be found, print a warning but don't die. It is |
| ## pointless to cause a failure if the tests cannot be run at all. |
| if $(SHELL) -c "$(RUNTEST) --version" > /dev/null 2>&1; then \ |
| exit_status=0; l='$(DEJATOOL)'; for tool in $$l; do \ |
| if $(RUNTEST) $(AM_RUNTESTFLAGS) $(RUNTESTDEFAULTFLAGS) $(RUNTESTFLAGS); \ |
| then :; else exit_status=1; fi; \ |
| done; \ |
| else echo "WARNING: could not find '$(RUNTEST)'" 1>&2; :;\ |
| fi; \ |
| exit $$exit_status |
| |
| |
| ## ------------------- ## |
| ## Building site.exp. ## |
| ## ------------------- ## |
| |
| ## Note that in the rule we don't directly generate site.exp to avoid |
| ## the possibility of a corrupted site.exp if make is interrupted. |
| ## Jim Meyering has some useful text on this topic. |
| site.exp: Makefile $(EXTRA_DEJAGNU_SITE_CONFIG) |
| @echo 'Making a new site.exp file ...' |
| @echo '## these variables are automatically generated by make ##' >site.tmp |
| @echo '# Do not edit here. If you wish to override these values' >>site.tmp |
| @echo '# edit the last section' >>site.tmp |
| @echo 'set srcdir "$(srcdir)"' >>site.tmp |
| @echo "set objdir `pwd`" >>site.tmp |
| ## Quote the *_alias variables because they might be empty. |
| ?BUILD? @echo 'set build_alias "$(build_alias)"' >>site.tmp |
| ?BUILD? @echo 'set build_triplet $(build_triplet)' >>site.tmp |
| ?HOST? @echo 'set host_alias "$(host_alias)"' >>site.tmp |
| ?HOST? @echo 'set host_triplet $(host_triplet)' >>site.tmp |
| ?TARGET? @echo 'set target_alias "$(target_alias)"' >>site.tmp |
| ?TARGET? @echo 'set target_triplet $(target_triplet)' >>site.tmp |
| ## Allow the package author to extend site.exp. |
| @list='$(EXTRA_DEJAGNU_SITE_CONFIG)'; for f in $$list; do \ |
| echo "## Begin content included from file $$f. Do not modify. ##" \ |
| && cat `test -f "$$f" || echo '$(srcdir)/'`$$f \ |
| && echo "## End content included from file $$f. ##" \ |
| || exit 1; \ |
| done >> site.tmp |
| @echo "## End of auto-generated content; you can edit from here. ##" >> site.tmp |
| @if test -f site.exp; then \ |
| sed -e '1,/^## End of auto-generated content.*##/d' site.exp >> site.tmp; \ |
| fi |
| @-rm -f site.bak |
| @test ! -f site.exp || mv site.exp site.bak |
| @mv site.tmp site.exp |
| |
| ## ---------- ## |
| ## Cleaning. ## |
| ## ---------- ## |
| |
| .PHONY distclean-am: distclean-DEJAGNU |
| |
| distclean-DEJAGNU: |
| ## Any other cleaning must be done by the user or by the test suite |
| ## itself. We can't predict what dejagnu or the test suite might |
| ## generate. |
| -rm -f site.exp site.bak |
| -l='$(DEJATOOL)'; for tool in $$l; do \ |
| rm -f $$tool.sum $$tool.log; \ |
| done |