[PATCH 2/2] sim: testsuite: merge into toplevel automake

Mike Frysinger vapier@gentoo.org
Mon Jan 18 17:54:58 GMT 2021


This allows us to delete all our custom test logic.

sim/:
	* configure.ac (AC_CONFIG_FILES): Delete testsuite/Makefile.
	* Makefile.am: Include testsuite/local.mk.
	* aclocal.m4, configure, Makefile.in: Regenerated.

sim/common/:
	* Make-common.in (check): Delete body.

sim/testsuite/:
	* Makefile.in: Delete.
	* lib/sim-defs.exp (sim): Update default path.
	* local.mk: New file based on Makefile.in.
---
 sim/Makefile.am                |   2 +
 sim/Makefile.in                |  72 +++++++++----
 sim/aclocal.m4                 |  21 +---
 sim/common/Make-common.in      |   1 -
 sim/configure                  |   3 +-
 sim/configure.ac               |   2 +-
 sim/testsuite/Makefile.in      | 181 ---------------------------------
 sim/testsuite/lib/sim-defs.exp |   2 +-
 sim/testsuite/local.mk         |  46 +++++++++
 9 files changed, 104 insertions(+), 226 deletions(-)
 delete mode 100644 sim/testsuite/Makefile.in
 create mode 100644 sim/testsuite/local.mk

diff --git a/sim/Makefile.am b/sim/Makefile.am
index 150209c565c8..5e4b0a3df88c 100644
--- a/sim/Makefile.am
+++ b/sim/Makefile.am
@@ -34,3 +34,5 @@ MOSTLYCLEANFILES = core
 nltvals:
 	$(SHELL) $(abs_srcdir)/common/gennltvals.sh --cpp "$(CPP)" --output nltvals.def --srcroot $(srcroot)
 	$(SHELL) $(srcroot)/move-if-change nltvals.def $(abs_srcdir)/common/nltvals.def
+
+include testsuite/local.mk
diff --git a/sim/common/Make-common.in b/sim/common/Make-common.in
index 8740a4a079e7..11330357491a 100644
--- a/sim/common/Make-common.in
+++ b/sim/common/Make-common.in
@@ -480,7 +480,6 @@ installdirs:
 	$(SHELL) $(srcdir)/../../mkinstalldirs $(DESTDIR)$(libdir)
 
 check:
-	cd ../testsuite && $(MAKE) check RUNTESTFLAGS="$(RUNTESTFLAGS)"
 
 info:
 clean-info:
diff --git a/sim/configure.ac b/sim/configure.ac
index 178abf41827e..c447dc02cb54 100644
--- a/sim/configure.ac
+++ b/sim/configure.ac
@@ -56,5 +56,5 @@ if test "${enable_sim}" != no; then
   fi
 fi
 
-AC_CONFIG_FILES([Makefile testsuite/Makefile])
+AC_CONFIG_FILES([Makefile])
 AC_OUTPUT
diff --git a/sim/testsuite/lib/sim-defs.exp b/sim/testsuite/lib/sim-defs.exp
index 43a07050f508..0157f9bb2834 100644
--- a/sim/testsuite/lib/sim-defs.exp
+++ b/sim/testsuite/lib/sim-defs.exp
@@ -106,7 +106,7 @@ proc sim_run { prog sim_opts prog_opts redir options } {
 	# These global variables come from generated site.exp.
 	global objdir
 	global arch
-	set sim "$objdir/../$arch/run"
+	set sim "$objdir/$arch/run"
     }
 
     if [is_remote host] {
diff --git a/sim/testsuite/local.mk b/sim/testsuite/local.mk
new file mode 100644
index 000000000000..f27581ba2db6
--- /dev/null
+++ b/sim/testsuite/local.mk
@@ -0,0 +1,46 @@
+## See sim/Makefile.am.
+#
+# Copyright (C) 1997-2021 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/>.
+
+# We don't need dejagnu's tool-filtering logic as all tests under testsuite/
+# are for the sim.
+DEJATOOL = ""
+EXPECT = expect
+RUNTEST = runtest
+RUNTESTFLAGS =
+
+check-DEJAGNU: site.exp
+	if [ -d testsuite ]; then \
+	  true; \
+	else \
+	  mkdir testsuite; \
+	fi
+	rm -f testsuite/site.exp
+	cp site.exp testsuite/site.exp
+	rootme=`pwd`; export rootme; \
+	srcdir=`cd ${srcdir}; pwd` ; export srcdir ; \
+	LC_ALL=C; export LC_ALL; \
+	EXPECT=${EXPECT} ; export EXPECT ; \
+	runtest=$(RUNTEST); \
+	cd testsuite; \
+	if $(SHELL) -c "$$runtest --version" > /dev/null 2>&1; then \
+	  $$runtest --tool $(DEJATOOL) --srcdir $${srcdir}/testsuite \
+		$(RUNTESTFLAGS); \
+	else echo "WARNING: could not find \`runtest'" 1>&2; :;\
+	fi
+
+MOSTLYCLEANFILES += \
+	site.exp site.bak %D%/site.exp %D%/testrun.log %D%/testrun.sum
-- 
2.28.0



More information about the Gdb-patches mailing list