diff --git a/Makefile b/Makefile index 94db918994ca9ce87459300d0bef0f344edb081c..62d5190145c60e92174da821ee9f3da486a42193 100644 --- a/Makefile +++ b/Makefile @@ -7,10 +7,9 @@ sourceDirectory := $(shell pwd) ifdef ASDF_TEST_LISPS lisps ?= ${ASDF_TEST_LISPS} else -lisps ?= ccl clisp sbcl ecl ecl-bytecodes cmucl abcl scl allegro lispworks allegromodern +lisps ?= ccl clisp sbcl ecl ecl_bytecodes cmucl abcl scl allegro lispworks allegromodern xcl endif -## MINOR FAIL: xcl (logical pathname issue in asdf-pathname-test.script) ## MAJOR FAIL: gclcvs -- COMPILER BUG! Upstream fixed it, but upstream fails to compile. ## NOT SUPPORTED BY OUR TESTS: cormancl genera lispworks-personal-edition mkcl rmcl. Manually tested once in a while. @@ -91,6 +90,7 @@ test-upgrade: use_clisp () { li="${CLISP} -norc -ansi --quiet --quiet" ; ev="-x" ; } ; \ use_sbcl () { li="${SBCL} --noinform --no-userinit" ; ev="--eval" ; } ; \ use_ecl () { li="${ECL} -norc" ; ev="-eval" ; } ; \ + use_ecl_bytecodes () { li="${ECL} -norc -eval (ext::install-bytecodes-compiler)" ; ev="-eval" ; } ; \ use_mkcl () { li="${MKCL} -norc" ; ev="-eval" ; } ; \ use_cmucl () { li="${CMUCL} -noinit" ; ev="-eval" ; } ; \ use_abcl () { li="${ABCL} --noinit --nosystem --noinform" ; ev="--eval" ; } ; \ @@ -115,12 +115,12 @@ test-upgrade: : Skip, because ccl broke old asdf ;; \ cmucl:1.*|cmucl:2.00*|cmucl:2.01[0-4]:*) \ : Skip, CMUCL has problems before 2.014.7 due to source-registry upgrade ;; \ - ecl:1.*|ecl:2.0[01]*|ecl:2.20:*) \ + ecl*:1.*|ecl*:2.0[01]*|ecl*:2.20:*) \ : Skip, because of various ASDF issues ;; \ mkcl:1.*|mkcl:2.0[01]*|mkcl:2.2[0-3]:*) \ : Skip, because MKCL is only supported starting with 2.24 ;; \ xcl:1.*|xcl:2.00*|xcl:2.01[0-4]:*) \ - : Skip, because it is slow and XCL comes with 2.014.2 ;; \ + : XCL support starts with ASDF 2.014.2 ;; \ *) (set -x ; \ case $$x in \ load-system) l="$$lo (asdf-test::load-asdf-system)" ;; \ @@ -157,7 +157,6 @@ test-all-upgrade: ${MAKE} test-upgrade lisp=$$lisp || exit 1 ; \ done - test-all: test-forward-references doc test-all-lisps # Note that the debian git at git://git.debian.org/git/pkg-common-lisp/cl-asdf.git is stale, diff --git a/asdf.asd b/asdf.asd index 4b2a795e9216082fae17ab92fd465322433fb41b..4f65ba3db049a771895914b1644573632f922dc4 100644 --- a/asdf.asd +++ b/asdf.asd @@ -14,7 +14,7 @@ :licence "MIT" :description "Another System Definition Facility" :long-description "ASDF builds Common Lisp software organized into defined systems." - :version "2.26.43" ;; to be automatically updated by bin/bump-revision + :version "2.26.44" ;; to be automatically updated by bin/bump-revision :depends-on () :components ((:file "asdf"))) diff --git a/asdf.lisp b/asdf.lisp index 7a03e53668a42c4ba9f762a6f4e2247aeeb67913..ff167d13cabb4061d18a78373e0381ccb0d152a9 100644 --- a/asdf.lisp +++ b/asdf.lisp @@ -1,5 +1,5 @@ ;; -*- mode: Common-Lisp; Base: 10 ; Syntax: ANSI-Common-Lisp ; coding: utf-8 -*- -;;; This is ASDF 2.26.43: Another System Definition Facility. +;;; This is ASDF 2.26.44: Another System Definition Facility. ;;; ;;; Feedback, bug reports, and patches are all welcome: ;;; please mail to <asdf-devel@common-lisp.net>. @@ -118,7 +118,7 @@ ;; "2.345.6" would be a development version in the official upstream ;; "2.345.0.7" would be your seventh local modification of official release 2.345 ;; "2.345.6.7" would be your seventh local modification of development version 2.345.6 - (asdf-version "2.26.43") + (asdf-version "2.26.44") (existing-asdf (find-class 'component nil)) (existing-version *asdf-version*) (already-there (equal asdf-version existing-version))) @@ -1233,7 +1233,10 @@ Returns two values: ((m module) added deleted plist &key) (declare (ignorable m added deleted plist)) (when (and (member 'children added) (member 'components deleted)) - (setf (slot-value m 'children) (getf plist 'components)) + (setf (slot-value m 'children) + ;; old ECLs provide an alist instead of a plist(!) + (if (or #+ecl (consp (first plist))) (or #+ecl (cdr (assoc 'components plist))) + (getf plist 'components))) (compute-children-by-name m)) (when (typep m 'system) (when (member 'source-file added) diff --git a/test/run-tests.sh b/test/run-tests.sh index 637969f49f69e4c0d483742439bbd03054764949..1bbeff918ccf256c436bf9349e3e00a507976889 100755 --- a/test/run-tests.sh +++ b/test/run-tests.sh @@ -139,7 +139,7 @@ case "$lisp" in command="${ECL:-ecl}" flags="-norc -load sys:cmp" eval="-eval" ;; - ecl-bytecodes) + ecl_bytecodes) command="${ECL:-ecl}" flags="-norc -eval (ext::install-bytecodes-compiler)" eval="-eval" ;; diff --git a/test/test-bundle.script b/test/test-bundle.script index 9c858ed0229fe91c903457249a5c70eff54fd469..2f935b1268dcf2e4ef90c2dafcaa6e733babe761 100644 --- a/test/test-bundle.script +++ b/test/test-bundle.script @@ -14,6 +14,7 @@ (when (find-package :test-package) (delete-package :test-package)) (asdf:defsystem :test-bundle-1 :components ((:file "file1") (:file "file3"))) (asdf:defsystem :test-bundle-2 :depends-on (:test-bundle-1) :components ((:file "file2"))) + #-(and ecl ecl-bytecmp) (let* ((op (make-instance 'asdf::fasl-op)) (bundle-1 (asdf:output-file op (find-system :test-bundle-1))) (bundle-2 (asdf:output-file op (find-system :test-bundle-2))))