testsuite: Add testcase for #17206
[ghc.git] / testsuite / Makefile
index f49015d..46182fc 100644 (file)
@@ -1,14 +1,50 @@
 TOP = .
+
+# If we're cleaning then we don't want to do all the GHC detection hardwork,
+# and we certainly don't want to fail if GHC etc can't be found!
+# However, we can't just put this conditional in boilerplate.mk, as
+# some of the tests have a "clean" makefile target that relies on GHC_PKG
+# being defined.
+ifneq "$(MAKECMDGOALS)" "clean"
+ifneq "$(MAKECMDGOALS)" "distclean"
+ifneq "$(MAKECMDGOALS)" "maintainer-clean"
+
 include $(TOP)/mk/boilerplate.mk
 
-CLEAN_FILES += mk/wordsize.mk
+.PHONY: all boot test verbose accept fast slow list_broken
+
+boot:
+       $(MAKE) -C $(TOP)/timeout all
+
+all:
+       $(MAKE) -C $(TOP)/tests all
+
+test:
+       $(MAKE) -C $(TOP)/tests test
+
+verbose:
+       $(MAKE) -C $(TOP)/tests verbose
+
+accept:
+       $(MAKE) -C $(TOP)/tests accept
+
+fast fasttest:
+       $(MAKE) -C $(TOP)/tests fast
+
+slow slowtest:
+       $(MAKE) -C $(TOP)/tests slow
 
-all ::
-       @echo "To run the tests, go into tests/ghc-regress and say \`make'."
-       @echo "More information about configuring and running the testsuite"
-       @echo "can be found in the file \`README' in this directory."
+list_broken:
+       $(MAKE) -C $(TOP)/tests list_broken
 
-boot ::
-       $(CPP) $(RAWCPP_FLAGS) -x c mk/wordsize.mk.in > mk/wordsize.mk
+endif
+endif
+endif
 
-include $(TOP)/mk/target.mk
+clean distclean maintainer-clean:
+       $(MAKE) -C $(TOP)/timeout $@
+       $(RM) -f mk/*.o
+       $(RM) -f mk/*.hi
+       $(RM) -f mk/ghcconfig*.mk
+       $(RM) -f mk/ghc-config mk/ghc-config.exe
+       $(RM) -f driver/*.pyc