mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-12-14 12:53:34 +08:00
e60091e4d3
Now that we run `check/foo.exp` instead of `check/./foo.exp`, update the config/ & lib/ exceptions to cover both paths. Bug: https://sourceware.org/PR29596
85 lines
2.8 KiB
Makefile
85 lines
2.8 KiB
Makefile
## See sim/Makefile.am.
|
|
##
|
|
## Copyright (C) 1997-2022 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 3 of the License, 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/>.
|
|
|
|
## Tweak the site.exp so it works with plain `runtest` from user.
|
|
EXTRA_DEJAGNU_SITE_CONFIG = site-sim-config.exp
|
|
|
|
# Custom verbose test variables that automake doesn't provide (yet?).
|
|
AM_V_RUNTEST = $(AM_V_RUNTEST_@AM_V@)
|
|
AM_V_RUNTEST_ = $(AM_V_RUNTEST_@AM_DEFAULT_V@)
|
|
AM_V_RUNTEST_0 = @echo " RUNTEST $(RUNTESTFLAGS) $*";
|
|
AM_V_RUNTEST_1 =
|
|
|
|
site-sim-config.exp: Makefile
|
|
$(AM_V_GEN)( \
|
|
echo "set SIM_PRIMARY_TARGET \"$(SIM_PRIMARY_TARGET)\""; \
|
|
echo "set builddir \"$(builddir)\""; \
|
|
echo "set srcdir \"$(srcdir)/testsuite\""; \
|
|
$(foreach V,$(SIM_TOOLCHAIN_VARS),echo "set $(V) \"$($(V))\"";) \
|
|
) > $@
|
|
|
|
DO_RUNTEST = \
|
|
LC_ALL=C; export LC_ALL; \
|
|
EXPECT=${EXPECT} ; export EXPECT ; \
|
|
runtest=$(RUNTEST); \
|
|
$$runtest $(RUNTESTFLAGS)
|
|
|
|
# Ignore dirs that only contain configuration settings.
|
|
check/./config/%.exp: ; @true
|
|
check/config/%.exp: ; @true
|
|
check/./lib/%.exp: ; @true
|
|
check/lib/%.exp: ; @true
|
|
|
|
check/%.exp:
|
|
$(AM_V_at)mkdir -p testsuite/$*
|
|
$(AM_V_RUNTEST)$(DO_RUNTEST) --objdir testsuite/$* --outdir testsuite/$* $*.exp
|
|
|
|
check-DEJAGNU-parallel:
|
|
$(AM_V_at)( \
|
|
$(MAKE) -k \
|
|
`cd $(srcdir)/testsuite && find . -name '*.exp' -printf 'check/%P '`; \
|
|
ret=$$?; \
|
|
$(SHELL) $(srcroot)/contrib/dg-extract-results.sh \
|
|
`find testsuite/ -maxdepth 4 -name testrun.sum | sort` > testrun.sum; \
|
|
$(SHELL) $(srcroot)/contrib/dg-extract-results.sh -L \
|
|
`find testsuite/ -maxdepth 4 -name testrun.log | sort` > testrun.log; \
|
|
echo; \
|
|
$(SED) -n '/^.*===.*Summary.*===/,$$p' testrun.sum; \
|
|
exit $$ret)
|
|
|
|
check-DEJAGNU-single:
|
|
$(AM_V_RUNTEST)$(DO_RUNTEST)
|
|
|
|
# If running a single job, invoking runtest once is faster & has nicer output.
|
|
check-DEJAGNU: site.exp
|
|
$(AM_V_at)(set -e; \
|
|
EXPECT=${EXPECT} ; export EXPECT ; \
|
|
runtest=$(RUNTEST); \
|
|
if $(SHELL) -c "$$runtest --version" > /dev/null 2>&1; then \
|
|
case "$(MAKEFLAGS)" in \
|
|
*-j*) $(MAKE) check-DEJAGNU-parallel;; \
|
|
*) $(MAKE) check-DEJAGNU-single;; \
|
|
esac; \
|
|
else \
|
|
echo "WARNING: could not find \`runtest'" 1>&2; :;\
|
|
fi)
|
|
|
|
MOSTLYCLEANFILES += \
|
|
site-sim-config.exp testrun.log testrun.sum
|
|
|
|
include %D%/common/local.mk
|