]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blame - sim/testsuite/local.mk
Update copyright year range in header of all files managed by GDB
[thirdparty/binutils-gdb.git] / sim / testsuite / local.mk
CommitLineData
6c57b87f 1## See sim/Makefile.am.
de8a2781 2##
1d506c26 3## Copyright (C) 1997-2024 Free Software Foundation, Inc.
de8a2781
MF
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/>.
6c57b87f 17
de8a2781 18## Tweak the site.exp so it works with plain `runtest` from user.
e1e1ae6e 19EXTRA_DEJAGNU_SITE_CONFIG = site-sim-config.exp
6c57b87f 20
5ec501b5
MF
21# Custom verbose test variables that automake doesn't provide (yet?).
22AM_V_RUNTEST = $(AM_V_RUNTEST_@AM_V@)
23AM_V_RUNTEST_ = $(AM_V_RUNTEST_@AM_DEFAULT_V@)
804de1fa 24AM_V_RUNTEST_0 = @echo " RUNTEST $(RUNTESTFLAGS) $*";
5ec501b5
MF
25AM_V_RUNTEST_1 =
26
e1e1ae6e
MF
27site-sim-config.exp: Makefile
28 $(AM_V_GEN)( \
7a259895 29 echo "set SIM_PRIMARY_TARGET \"$(SIM_PRIMARY_TARGET)\""; \
e1e1ae6e
MF
30 echo "set builddir \"$(builddir)\""; \
31 echo "set srcdir \"$(srcdir)/testsuite\""; \
8996c210 32 $(foreach V,$(SIM_TOOLCHAIN_VARS),echo "set $(V) \"$($(V))\"";) \
e1e1ae6e 33 ) > $@
6c57b87f 34
804de1fa
MF
35DO_RUNTEST = \
36 LC_ALL=C; export LC_ALL; \
37 EXPECT=${EXPECT} ; export EXPECT ; \
38 runtest=$(RUNTEST); \
39 $$runtest $(RUNTESTFLAGS)
40
41# Ignore dirs that only contain configuration settings.
42check/./config/%.exp: ; @true
e60091e4 43check/config/%.exp: ; @true
804de1fa 44check/./lib/%.exp: ; @true
e60091e4 45check/lib/%.exp: ; @true
804de1fa
MF
46
47check/%.exp:
48 $(AM_V_at)mkdir -p testsuite/$*
49 $(AM_V_RUNTEST)$(DO_RUNTEST) --objdir testsuite/$* --outdir testsuite/$* $*.exp
50
51check-DEJAGNU-parallel:
52 $(AM_V_at)( \
8f97b519
MF
53 set -- `cd $(srcdir)/testsuite && find . -name '*.exp' -printf '%P\n' | sed 's:[.]exp$$::'`; \
54 $(MAKE) -k `printf 'check/%s.exp ' $$@`; \
804de1fa 55 ret=$$?; \
8f97b519 56 set -- `printf 'testsuite/%s/ ' $$@`; \
804de1fa 57 $(SHELL) $(srcroot)/contrib/dg-extract-results.sh \
8f97b519 58 `find $$@ -maxdepth 1 -name testrun.sum 2>/dev/null | sort` > testrun.sum; \
804de1fa 59 $(SHELL) $(srcroot)/contrib/dg-extract-results.sh -L \
8f97b519 60 `find $$@ -maxdepth 1 -name testrun.log 2>/dev/null | sort` > testrun.log; \
804de1fa
MF
61 echo; \
62 $(SED) -n '/^.*===.*Summary.*===/,$$p' testrun.sum; \
63 exit $$ret)
64
65check-DEJAGNU-single:
66 $(AM_V_RUNTEST)$(DO_RUNTEST)
67
68# If running a single job, invoking runtest once is faster & has nicer output.
6c57b87f 69check-DEJAGNU: site.exp
804de1fa 70 $(AM_V_at)(set -e; \
6c57b87f
MF
71 EXPECT=${EXPECT} ; export EXPECT ; \
72 runtest=$(RUNTEST); \
73 if $(SHELL) -c "$$runtest --version" > /dev/null 2>&1; then \
804de1fa
MF
74 case "$(MAKEFLAGS)" in \
75 *-j*) $(MAKE) check-DEJAGNU-parallel;; \
76 *) $(MAKE) check-DEJAGNU-single;; \
77 esac; \
78 else \
79 echo "WARNING: could not find \`runtest'" 1>&2; :;\
80 fi)
6c57b87f
MF
81
82MOSTLYCLEANFILES += \
e1e1ae6e 83 site-sim-config.exp testrun.log testrun.sum
a389375f
MF
84
85include %D%/common/local.mk