diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index dd4cedaa961572b6a4cd6c81f0608d0c425a6278..4fad900a9c055e8b52623f388da2ed0fc60193aa 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+Wed Sep 10 14:05:08 1997  Jim Wilson  <wilson@cygnus.com>
+
+	* Makefile.in (testsuite/site.exp): New target.
+	(check-gcc, check-g++): Depend on testsuite/site.exp.
+	Don't stop for failure.
+
 Wed Sep 10 10:51:21 1997  Jeffrey A Law  (law@cygnus.com)
 
 	* expr.c (emit_block_move): Always return a value.
diff --git a/gcc/Makefile.in b/gcc/Makefile.in
index b8ed15f24be1da5fe50788806f9b2a8f4a80eec3..105e121d9886e143491c2a611c9681fea1363cbc 100644
--- a/gcc/Makefile.in
+++ b/gcc/Makefile.in
@@ -2430,7 +2430,7 @@ CHECK_TARGETS = check-gcc check-g++
 
 check: $(CHECK_TARGETS)
 
-check-g++: site.exp
+testsuite/site.exp: site.exp
 	if [ -d testsuite ]; then \
 	  true; \
 	else \
@@ -2438,7 +2438,9 @@ check-g++: site.exp
 	fi
 	rm -rf testsuite/site.exp
 	cp site.exp testsuite/site.exp
-	rootme=`pwd`; export rootme; \
+
+check-g++: testsuite/site.exp
+	-rootme=`pwd`; export rootme; \
 	srcdir=`cd ${srcdir}; pwd` ; export srcdir ; \
 	cd testsuite; \
 	EXPECT=${EXPECT} ; export EXPECT ; \
@@ -2447,15 +2449,8 @@ check-g++: site.exp
 	    export TCL_LIBRARY ; fi ; \
 	$(RUNTEST) --tool g++ $(RUNTESTFLAGS)
 
-check-gcc: site.exp
-	if [ -d testsuite ]; then \
-	  true; \
-	else \
-	  mkdir testsuite; \
-	fi
-	rm -rf testsuite/site.exp
-	cp site.exp testsuite/site.exp
-	rootme=`pwd`; export rootme; \
+check-gcc: testsuite/site.exp
+	-rootme=`pwd`; export rootme; \
 	srcdir=`cd ${srcdir}; pwd` ; export srcdir ; \
 	cd testsuite; \
 	EXPECT=${EXPECT} ; export EXPECT ; \