diff --git a/Makefile b/Makefile index 18e6c3b3c0204c8679ccc5457b31a15efa9e3537..bdbcaa9f7106c15b1c9a208ec1ec7457901274e5 100644 --- a/Makefile +++ b/Makefile @@ -12,12 +12,10 @@ lisps ?= ${ASDF_TEST_LISPS} else lisps ?= ccl clisp sbcl ecl ecl_bytecodes cmucl abcl scl allegro lispworks allegromodern gcl xcl endif +## grep for #+/#- features in the test/ directory to see plenty of disabled tests on some platforms ## NOT SUPPORTED BY OUR AUTOMATED TESTS: ## cormancl genera lispworks-personal-edition mkcl rmcl ## Some are manually tested once in a while. -## FAIL: gcl -- most implementation bugs are now fixed, but some remain. See TODO. -## FAIL: xcl -- implementation bugs require lots of papering over during tests. See TODO. -## grep for #+/#- features in the test/ directory to see plenty of disabled tests. ifdef ASDF_TEST_SYSTEMS s ?= ${ASDF_TEST_SYSTEMS} endif @@ -42,8 +40,6 @@ SBCL ?= sbcl SCL ?= scl XCL ?= xcl -# website, tag, install - header_lisp := header.lisp driver_lisp := uiop/package.lisp uiop/common-lisp.lisp uiop/utility.lisp uiop/os.lisp uiop/pathname.lisp uiop/filesystem.lisp uiop/stream.lisp uiop/image.lisp uiop/run-program.lisp uiop/lisp-build.lisp uiop/configuration.lisp uiop/backward-driver.lisp uiop/driver.lisp defsystem_lisp := upgrade.lisp component.lisp system.lisp cache.lisp find-system.lisp find-component.lisp operation.lisp action.lisp lisp-action.lisp plan.lisp operate.lisp output-translations.lisp source-registry.lisp backward-internals.lisp parse-defsystem.lisp bundle.lisp concatenate-source.lisp backward-interface.lisp package-system.lisp interface.lisp user.lisp footer.lisp @@ -156,9 +152,32 @@ test-all-upgrade-no-stop: @for lisp in ${lisps} ; do ${MAKE} test-upgrade l=$$lisp ; done ; : test-all-no-upgrade-no-stop: doc test-load-systems test-all-clean-load test-all-lisp-no-stop - -test-all-no-stop: test-all-no-upgrade-no-stop test-all-upgrade-no-stop - + make check-all-test-results + +test-all-no-stop: doc test-load-systems test-all-clean-load test-all-lisp-no-stop test-all-upgrade-no-stop + make check-all-results + +check-all-test-results: + @A="`grep -L '49 passing and 0 failing' build/results/*-test.text`" ; \ + if [ -n "$$A" ] ; then \ + echo "Unexpected test failures on these implementations:" ; \ + echo "$$A" ; \ + exit 1 ; \ + fi + +check-all-upgrade-results: + @A="$$(for i in build/results/*-upgrade.text ; do \ + case $$i in */cmucl-*|*/gcl-*|*/xcl-*) ;; *) \ + if [ 'Script succeeded' != "$$(tail -1 < $$i)" ] ; \ + then echo $$i ; fi ; esac ; done)" ; \ + if [ -n "$$A" ] ; then \ + echo "Unexpected upgrade failures on these implementations:" ; \ + echo "$$A" ; \ + exit 1 ; \ + fi + +check-all-results: + @r=0 ; make check-all-test-results || r=1 ; make check-all-upgrade-results || r=1 ; exit $r extract: extract-all-tagged-asdf extract-all-tagged-asdf: build/asdf.lisp diff --git a/test/run-tests.sh b/test/run-tests.sh index 3f6125fd2509755440547fe609636b7b1ac594ac..450abd45f03e57f86fc8ebb98a0e992fee8a29e3 100755 --- a/test/run-tests.sh +++ b/test/run-tests.sh @@ -397,7 +397,7 @@ valid_upgrade_test_p () { # Skip many ECL tests, for various ASDF issues ecl*:1.*|ecl*:2.0[01]*|ecl*:2.20:*) : ;; # GCL 2.7.0 from late November 2013 is required, with ASDF 3.1.1 - gcl:1.*|gcl:2.*|gcl:3.0*) : ;; + gcl:REQUIRE:*|gcl:1.*|gcl:2.*|gcl:3.0*) : ;; # MKCL is only supported starting with 2.24, so skip earlier versions mkcl:1.*|mkcl:2.0[01]*|mkcl:2.2[0-3]:*) : ;; # XCL support starts with ASDF 2.014.2