diff --git a/Makefile b/Makefile
index 32d98d53186e0dab7c0b1fd6e3c925db5de2bc91..d2f11b0e98053a59c918e72ceb29fcccc44d58f5 100644
--- a/Makefile
+++ b/Makefile
@@ -1,14 +1,19 @@
 system	 	:= "asdf"
 #user 		:= $(shell basename `echo "$home"`)
-user := "frideau"
-webhome_private := $(user)@common-lisp.net:/project/asdf/public_html/
+ifeq (${user},)
+userat :=
+else
+userat := ${user}@
+endif
+webhome_private := ${userat}common-lisp.net:/project/asdf/public_html/
 webhome_public	:= "http://common-lisp.net/project/asdf/"
 clnet_home      := "/project/asdf/public_html/"
 gpg		:= /home/fare/bin/dpkg-gpg
 sourceDirectory := $(shell pwd)
 
-lisps ?= ccl clisp sbcl ecl allegro abcl scl
+lisps ?= ccl clisp sbcl ecl abcl allegro scl
 ## not tested by me: allegromodern cmucl lispworks
+## will pass tests but not return proper exit value: xcl 0.0.0.291
 ## FAIL: gclcvs (condition handling)
 ## maybe supported by asdf, not supported yet by our tests: cormancl mcl genera
 
@@ -26,7 +31,7 @@ archive:
 archive-copy: archive
 	git checkout release
 	bin/rsync-cp tmp/asdf*.tar.gz $(webhome_private)/archives
-	bin/link-tarball $(clnet_home) $(user)
+	bin/link-tarball $(clnet_home) ${user}
 	bin/rsync-cp tmp/asdf.lisp $(webhome_private)
 	${MAKE} push
 
@@ -79,11 +84,13 @@ do-test:
 
 test: do-test test-forward-references
 
-test-all: test-forward-references test-upgrade
+do-test-all:
 	@for lisp in ${lisps} ; do \
 		make do-test lisp=$$lisp || exit 1 ; \
 	done
 
+test-all: test-forward-references test-upgrade do-test-all
+
 debian-package: mrproper
 	RELEASE="$$(git tag -l '2.0[0-9][0-9]' | tail -n 1)" ; \
 	git-buildpackage --git-debian-branch=release --git-upstream-branch=$$RELEASE --git-tag --git-retag --git-ignore-branch -sgpg -p${gpg}
@@ -107,9 +114,13 @@ fix-local-git-tags:
 fix-remote-git-tags:
 	for i in ${WRONGFUL_TAGS} ; do git push $${REMOTE:-cl.net} :refs/tags/$$i ; done
 
+TODO:
+	exit 2
+
+release: TODO test-all test-on-other-machines-too debian-changelog debian-package send-mail-to-mailing-lists
 
 .PHONY: install archive archive-copy push website clean mrproper \
-	upgrade-test test-forward-references test do-test test-all \
-	debian-package \
+	upgrade-test test-forward-references test do-test test-all do-test-all \
+	debian-package release \
 	replace-sbcl-asdf replace-ccl-asdf \
 	fix-local-git-tags fix-remote-git-tags
diff --git a/asdf-ecl.lisp b/asdf-ecl.lisp
index 1d8e43befe24e18766d55777a9c8a3d8275bb16b..2124b533d6cfd1b09a56515875dcbd2d7c089989 100644
--- a/asdf-ecl.lisp
+++ b/asdf-ecl.lisp
@@ -320,7 +320,7 @@
 (defclass compiled-file (component) ())
 (defmethod component-relative-pathname ((component compiled-file))
   (compile-file-pathname
-   (merge-component-name-type
+   (coerce-pathname
     (or (slot-value component 'relative-pathname)
         (component-name component))
     :type "fas")))
diff --git a/asdf.asd b/asdf.asd
index ea655bdb95bcfd3e25b6762f14929e6f3f28ab76..2bb6267d768f7e5cfb948fa57066a812f026e420 100644
--- a/asdf.asd
+++ b/asdf.asd
@@ -3,7 +3,7 @@
 ;;;                                                                  ;;;
 ;;; Free Software available under an MIT-style license.              ;;;
 ;;;                                                                  ;;;
-;;; Copyright (c) 2001-2010 Daniel Barlow and contributors           ;;;
+;;; Copyright (c) 2001-2011 Daniel Barlow and contributors           ;;;
 ;;;                                                                  ;;;
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 
@@ -12,7 +12,7 @@
   :licence "MIT"
   :description "Another System Definition Facility"
   :long-description "ASDF builds Common Lisp software organized into defined systems."
-  :version "2.014.1" ;; to be automatically updated by bin/bump-revision
+  :version "2.014.2" ;; to be automatically updated by bin/bump-revision
   :depends-on ()
   :components
   ((:file "asdf")
diff --git a/asdf.lisp b/asdf.lisp
index 73978d236190929cd9c0afd3b76116a3c761c040..e282e8db56b391c671366061e99114e6b18a29b2 100755
--- a/asdf.lisp
+++ b/asdf.lisp
@@ -1,5 +1,5 @@
 ;;; -*- mode: common-lisp; Base: 10 ; Syntax: ANSI-Common-Lisp -*-
-;;; This is ASDF 2.014.1: Another System Definition Facility.
+;;; This is ASDF 2.014.2: Another System Definition Facility.
 ;;;
 ;;; Feedback, bug reports, and patches are all welcome:
 ;;; please mail to <asdf-devel@common-lisp.net>.
@@ -19,7 +19,7 @@
 ;;;  http://www.opensource.org/licenses/mit-license.html on or about
 ;;;  Monday; July 13, 2009)
 ;;;
-;;; Copyright (c) 2001-2010 Daniel Barlow and contributors
+;;; Copyright (c) 2001-2011 Daniel Barlow and contributors
 ;;;
 ;;; Permission is hereby granted, free of charge, to any person obtaining
 ;;; a copy of this software and associated documentation files (the
@@ -99,7 +99,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.014.1")
+         (asdf-version "2.014.2")
          (existing-asdf (fboundp 'find-system))
          (existing-version *asdf-version*)
          (already-there (equal asdf-version existing-version)))
@@ -361,7 +361,7 @@
 (defun asdf-version ()
   "Exported interface to the version of ASDF currently installed. A string.
 You can compare this string with e.g.:
-(ASDF:VERSION-SATISFIES (ASDF:ASDF-VERSION) \"2.013\")."
+(ASDF:VERSION-SATISFIES (ASDF:ASDF-VERSION) \"2.345\")."
   *asdf-version*)
 
 (defvar *resolve-symlinks* t
@@ -403,8 +403,9 @@ Note that ASDF ALWAYS raises an error if it fails to create an output file when
        `(defmacro ,def* (name formals &rest rest)
           `(progn
              #+(or ecl gcl) (fmakunbound ',name)
-             ,(when (and #+ecl (symbolp name))
-                `(declaim (notinline ,name))) ; fails for setf functions on ecl
+             #-gcl ; gcl 2.7.0 notinline functions lose secondary return values :-(
+             ,(when (and #+ecl (symbolp name)) ; fails for setf functions on ecl
+                `(declaim (notinline ,name)))
              (,',def ,name ,formals ,@rest)))))
   (defdef defgeneric* defgeneric)
   (defdef defun* defun))
@@ -528,7 +529,7 @@ and NIL NAME, TYPE and VERSION components"
 (defun* last-char (s)
   (and (stringp s) (plusp (length s)) (char s (1- (length s)))))
 
-	  
+
 (defun* asdf-message (format-string &rest format-args)
   (declare (dynamic-extent format-args))
   (apply #'format *verbose-out* format-string format-args))
@@ -622,7 +623,7 @@ pathnames."
 
 (defun* getenv (x)
   (declare (ignorable x))
-  #+(or abcl clisp) (ext:getenv x)
+  #+(or abcl clisp xcl) (ext:getenv x)
   #+allegro (sys:getenv x)
   #+clozure (ccl:getenv x)
   #+(or cmu scl) (cdr (assoc x ext:*environment-list* :test #'string=))
@@ -635,7 +636,7 @@ pathnames."
             (unless (ccl:%null-ptr-p value)
               (ccl:%get-cstring value))))
   #+sbcl (sb-ext:posix-getenv x)
-  #-(or abcl allegro clisp clozure cmu ecl gcl genera lispworks mcl sbcl scl)
+  #-(or abcl allegro clisp clozure cmu ecl gcl genera lispworks mcl sbcl scl xcl)
   (error "getenv not available on your implementation"))
 
 (defun* directory-pathname-p (pathname)
@@ -967,12 +968,12 @@ processed in order by OPERATE."))
 (when *upgraded-p*
    (when (find-class 'module nil)
      (eval
-      `(defmethod update-instance-for-redefined-class :after
+      '(defmethod update-instance-for-redefined-class :after
            ((m module) added deleted plist &key)
          (declare (ignorable deleted plist))
          (when (or *asdf-verbose* *load-verbose*)
            (asdf-message (compatfmt "~&~@<; ~@;Updating ~A for ASDF ~A~@:>~%")
-			 m ,(asdf-version)))
+			 m (asdf-version)))
          (when (member 'components-by-name added)
            (compute-module-components-by-name m))
          (when (typep m 'system)
@@ -1572,12 +1573,14 @@ Host, device and version components are taken from DEFAULTS."
               (values filename type))
              (t
               (split-name-type filename)))
-         (make-pathname :directory `(,relative ,@path) :name name :type type
+         (make-pathname :directory (cons relative path) :name name :type type
+                        #-xcl #-xcl ;; 0.0.0.291 has a bug, behaves like merge-pathnames.
                         :defaults (or defaults *default-pathname-defaults*)))))))
 
 (defun* merge-component-name-type (name &key type defaults)
   ;; For backwards compatibility only, for people using internals.
-  ;; Will be removed in a future release, e.g. 2.014.
+  ;; Will be removed in a future release, e.g. 2.016.
+  (warn "Please don't use ASDF::MERGE-COMPONENT-NAME-TYPE. Use ASDF:COERCE-PATHNAME.")
   (coerce-pathname name :type type :defaults defaults))
 
 (defmethod component-relative-pathname ((component component))
@@ -2591,7 +2594,10 @@ output to *VERBOSE-OUT*.  Returns the shell's exit code."
       (list  "-c" command)
       :input nil :output *verbose-out*))
 
-    #-(or abcl allegro clisp clozure cmu ecl gcl lispworks sbcl scl)
+    #+xcl
+    (ext:run-shell-command command)
+
+    #-(or abcl allegro clisp clozure cmu ecl gcl lispworks sbcl scl xcl)
     (error "RUN-SHELL-COMMAND not implemented for this Lisp")))
 
 ;;;; ---------------------------------------------------------------------------
@@ -2644,7 +2650,7 @@ located."
     (:ccl :clozure)
     (:corman :cormanlisp)
     (:lw :lispworks)
-    :clisp :cmu :ecl :gcl :sbcl :scl :symbolics))
+    :clisp :cmu :ecl :gcl :sbcl :scl :symbolics :xcl))
 
 (defparameter *os-features*
   '((:win :windows :mswindows :win32 :mingw32) ;; shorten things on windows
@@ -3142,7 +3148,7 @@ directive.")
 (defparameter *output-translations-directory* (coerce-pathname "asdf-output-translations.conf.d/"))
 
 (defun* user-output-translations-pathname ()
-  (in-user-configuration-directory *output-translations-file* ))
+  (in-user-configuration-directory *output-translations-file*))
 (defun* system-output-translations-pathname ()
   (in-system-configuration-directory *output-translations-file*))
 (defun* user-output-translations-directory-pathname ()
@@ -3519,28 +3525,30 @@ with a different configuration, so the configuration would be re-read then."
 
 (defun subdirectories (directory)
   (let* ((directory (ensure-directory-pathname directory))
-         #-(or cormanlisp genera)
+         #-(or cormanlisp genera xcl)
          (wild (merge-pathnames*
-                #-(or abcl allegro cmu lispworks scl)
+                #-(or abcl allegro cmu lispworks scl xcl)
                 *wild-directory*
-                #+(or abcl allegro cmu lispworks scl) "*.*"
+                #+(or abcl allegro cmu lispworks scl xcl) "*.*"
                 directory))
          (dirs
-          #-(or cormanlisp genera)
+          #-(or cormanlisp genera xcl)
           (ignore-errors
             (directory* wild . #.(or #+clozure '(:directories t :files nil)
                                      #+mcl '(:directories t))))
           #+cormanlisp (cl::directory-subdirs directory)
-          #+genera (fs:directory-list directory))
-         #+(or abcl allegro cmu genera lispworks scl)
-         (dirs (remove-if-not #+abcl #'extensions:probe-directory
-                              #+allegro #'excl:probe-directory
-                              #+lispworks #'lw:file-directory-p
-                              #+genera #'(lambda (x) (getf (cdr x) :directory))
-                              #-(or abcl allegro genera lispworks) #'directory-pathname-p
-                              dirs))
-         #+genera
-         (dirs (mapcar #'(lambda (x) (ensure-directory-pathname (first x))) dirs)))
+          #+genera (fs:directory-list directory)
+          #+xcl (system:list-directory directory))
+         #+(or abcl allegro cmu genera lispworks scl xcl)
+         (dirs (loop :for x :in dirs
+                 :for d = #+(or abcl xcl) (extensions:probe-directory x)
+                          #+allegro (excl:probe-directory x)
+                          #+(or cmu scl) (directory-pathname-p x)
+                          #+genera (getf (cdr x) :directory)
+                          #+lispworks (lw:file-directory-p x)
+                 :when d :collect #+(or abcl allegro xcl) d
+                                  #+genera (ensure-directory-pathname (first x))
+                                  #+(or cmu lispworks scl) x)))
     dirs))
 
 (defun collect-sub*directories (directory collectp recursep collector)
diff --git a/bin/link-tarball b/bin/link-tarball
index b764dedd200b2fad432a6cd63870c379dfd25c4c..cbf2c255acc0176407491698bf556c5fe64d9727 100755
--- a/bin/link-tarball
+++ b/bin/link-tarball
@@ -1,20 +1,25 @@
 #!/bin/sh
 
-if [ -z $1 ]; then
+if [ -n $1 ]; then
+  clnet_home="$1"
+else
   echo "Remote directory must be specified."
-  exit 1
+  exit 2
 fi
-if [ -z $2 ]; then
-  echo "Remote username must be specified."
-  exit 1
+if [ -n "$2" ]; then
+  user="${2}@"
+else
+  echo "Remote username not specified"
+  echo "Assuming remote user is same as local"
+  echo "and/or you configured your .ssh/config with:"
+  echo "Host common-lisp.net"
+  echo "   User = foo"
 fi
-clnet_home="$1"
-user=$2
 
 tarball=`ls tmp/asdf*.tar.gz`
 tarball=`basename $tarball`
 latest="asdf.tar.gz"
 
 echo "Link $tarball to $latest"
-ssh $user@common-lisp.net "rm -f $clnet_home$latest; \
+ssh ${user}common-lisp.net "rm -f $clnet_home$latest; \
   ln -s $clnet_home/archives/$tarball $clnet_home$latest"
diff --git a/doc/Makefile b/doc/Makefile
index 7057093c6f8eaac12b988822cde4c0db7611b7c6..f1f68bd0ecefb61fb08f3da6c4f9fc5046fd4b18 100644
--- a/doc/Makefile
+++ b/doc/Makefile
@@ -1,5 +1,10 @@
-user=frideau
-website:=${user}@common-lisp.net:/project/asdf/public_html/
+#user=frideau
+ifeq (${user},)
+userat :=
+else
+userat := ${user}@
+endif
+website:=${userat}common-lisp.net:/project/asdf/public_html/
 output = asdf.html asdf asdf.pdf asdf.info
 webfiles = index.html .htaccess style.css cclan.png lisp-logo120x80.png favicon.ico ${output}
 intermediate = asdf.cps asdf.log asdf.vr asdf.aux asdf.fn asdf.toc asdf.vrs \
diff --git a/test/asdf-pathname-test.script b/test/asdf-pathname-test.script
index 50dd95ada02e282b05fe62489c365dc256d05b11..abc8a08511ac3ee9b7132a832ece203a10560d3a 100644
--- a/test/asdf-pathname-test.script
+++ b/test/asdf-pathname-test.script
@@ -1,5 +1,5 @@
 ;;; -*- Lisp -*-
-(load "script-support")
+(load "script-support.lisp")
 (load-asdf)
 
 ;;; test asdf pathname specifications
diff --git a/test/compile-asdf.lisp b/test/compile-asdf.lisp
index 08ea80377d62dead1f4c08264c5cbcf583c5b126..5227c26595c9a2f790ac2baaed3065aa9bc0cfd4 100644
--- a/test/compile-asdf.lisp
+++ b/test/compile-asdf.lisp
@@ -33,7 +33,7 @@
        (cond
          (errors-p
           (leave-lisp "Testsuite failed: ASDF compiled with ERRORS" 2))
-         #-ecl ;; ECL 11.1.1 has spurious warnings
+         #-(or ecl xcl) ;; ECL 11.1.1 has spurious warnings, same with XCL 0.0.0.291
          (warnings-p
           (leave-lisp "Testsuite failed: ASDF compiled with warnings" 1))
          (t
diff --git a/test/run-shell-command-test.script b/test/run-shell-command-test.script
index b0fd2901ad6d93a82b471d253b8a63aeda12b3e2..ac19348f75011afcb725c5b40283df4724dcace9 100644
--- a/test/run-shell-command-test.script
+++ b/test/run-shell-command-test.script
@@ -1,14 +1,11 @@
 ;;; -*- Lisp -*-
-(load "script-support")
+(load "script-support.lisp")
 (load-asdf)
 
 ;;; test asdf run-shell-command function
 ;;; Stas Boukarev found (and fixed) a bug where on clisp asdf:run-shell-command might not return
 ;;; the right value.  This attempts to test for that.
-(unless (some #'(lambda (x) (member x *features*))
-              '(:win :windows :mswindows :win32 :mingw32))
-  (quit-on-error
-   (assert (eql 1 (asdf:run-shell-command "false")))
+(quit-on-error
+ (unless (or #+asdf-windows t)
+   (assert (eql #-xcl 1 #+xcl 256 (asdf:run-shell-command "false")))
    (assert (eql 0 (asdf:run-shell-command "true")))))
-
-
diff --git a/test/run-tests.sh b/test/run-tests.sh
index 544654ca7103717471406ce37689d8ae1c809918..c0839c32a6cd891304002d06e99d4150905d8d59 100755
--- a/test/run-tests.sh
+++ b/test/run-tests.sh
@@ -158,6 +158,10 @@ case "$lisp" in
     flags="-noinit"
     nodebug="-batch"
     eval="-eval" ;;
+  xcl)
+    command="${XCL:-xcl}"
+    flags="--no-userinit --no-siteinit"
+    eval="--eval" ;;
   *)
     echo "Unsupported lisp: $1" >&2
     echo "Please add support to run-tests.sh" >&2
diff --git a/test/script-support.lisp b/test/script-support.lisp
index 0e1440885ae5325f06673bb22d9b229efffae5f2..01fff230e1851ef8a74f07380a6620522a6d7b0c 100644
--- a/test/script-support.lisp
+++ b/test/script-support.lisp
@@ -31,7 +31,8 @@
                     #+gcl :gcl
                     #+lispworks :lispworks
                     #+sbcl :sbcl
-                    #+scl :scl))))
+                    #+scl :scl
+                    #+xcl :xcl))))
      (merge-pathnames
       (make-pathname :directory `(:relative "tmp" "fasls" ,impl)
                      :defaults *asdf-directory*)
@@ -43,8 +44,7 @@
 #+allegro
 (setf excl:*warn-on-nested-reader-conditionals* nil)
 
-;;; code adapted from cl-launch (any errors in transcription are mine!)
-;; http://www.cliki.net/cl-launch
+;;; code adapted from cl-launch http://www.cliki.net/cl-launch
 (defun leave-lisp (message return)
   (fresh-line *error-output*)
   (when message
@@ -70,6 +70,11 @@
   (sb-ext:quit :unix-status return)
   #+abcl
   (ext:quit :status return)
+  #+xcl
+  (progn
+    (unless (zerop return)
+      (format *error-output* "~&XCL won't let me exit with error return code ~D~%" return))
+    (ext:quit))
   (error "Don't know how to quit Lisp; wanting to use exit code ~a" return))
 
 
@@ -82,16 +87,16 @@ is bound, write a message and exit on an error.  If
 *asdf-test-debug* is true, enter the debugger."
   (handler-bind
       ((error (lambda (c)
-                (format *error-output* "~a" c)
+                (format *error-output* "~&~a~&" c)
                 (cond
                   ((ignore-errors (funcall (find-symbol "GETENV" :asdf) "DEBUG_ASDF_TEST"))
                    (break))
                   (t
-                   (format *error-output* "ABORTING:~% ~S~%" c)
+                   (format *error-output* "~&ABORTING:~% ~S~%" c)
                    #+sbcl (sb-debug:backtrace 69)
                    #+clozure (ccl:print-call-history :count 69 :start-frame-number 1)
                    #+clisp (system::print-backtrace)
-                   (format *error-output* "ABORTING:~% ~S~%" c)
+                   (format *error-output* "~&ABORTING:~% ~S~%" c)
                    (leave-lisp "~&Script failed~%" 1))))))
     (funcall thunk)
     (leave-lisp "~&Script succeeded~%" 0)))
diff --git a/test/test-compile-file-failure.script b/test/test-compile-file-failure.script
index 7e470c67a972d564921e8b0f6f82006a08440b01..91a744154befa99c75bbbf0ed7ef06aeaf09a28d 100644
--- a/test/test-compile-file-failure.script
+++ b/test/test-compile-file-failure.script
@@ -1,6 +1,6 @@
 ;;; -*- Lisp -*-
 
-(load "script-support")
+(load "script-support.lisp")
 (load-asdf)
 
 (quit-on-error
diff --git a/test/test-configuration.script b/test/test-configuration.script
index b8a8b2bfbb7334b68c045458f4cc096c751a5594..374ec558452e4616ab48f2e580175609a4c9966a 100644
--- a/test/test-configuration.script
+++ b/test/test-configuration.script
@@ -1,15 +1,13 @@
 ;;; -*- Lisp -*-
-(load "script-support")
+(load "script-support.lisp")
 (load-asdf)
 (in-package :asdf)
 
 (defparameter *test-directory*
-  (merge-pathnames*
-    (make-pathname :directory '(:relative "tmp"))
-    cl-user::*asdf-directory*))
+  (merge-pathnames* (coerce-pathname "tmp/") cl-user::*asdf-directory*))
 
 (defun under-test-directory (designator &optional (defaults *test-directory*))
-  (namestring (merge-pathnames* (merge-component-name-type designator) defaults)))
+  (namestring (merge-pathnames* (coerce-pathname designator) defaults)))
 
 (defun create-conf-files (&optional (path *test-directory*))
   (let ((v `(("conf.d/conf1.conf"
@@ -115,6 +113,9 @@
 (assert (find-system :foo8 nil))
 (assert (not (find-system :foo9 nil)))
 
+(format t "~&A: ~S~%B: ~S~%"
+        (namestring (system-relative-pathname :foo3 "bar/baz.lisp"))
+        (under-test-directory "dir2/bar/baz.lisp"))
 (assert
  (equal (namestring (system-relative-pathname :foo3 "bar/baz.lisp"))
         (under-test-directory "dir2/bar/baz.lisp")))
diff --git a/test/test-force.script b/test/test-force.script
index ee35beaad8dfbbf1de00dd70acebf2fb83cb9bf2..f77a24871409ae85e92422d3e4b5a5b8fb284bc0 100644
--- a/test/test-force.script
+++ b/test/test-force.script
@@ -1,5 +1,5 @@
 ;;; -*- Lisp -*-
-(load "script-support")
+(load "script-support.lisp")
 (load-asdf)
 
 (quit-on-error
diff --git a/test/test-missing-lisp-file.script b/test/test-missing-lisp-file.script
index 18f0e851ed7b1f4028710751fed910828cc1df84..ea4e48f9ff7592253dc037673867eee80a85deaf 100644
--- a/test/test-missing-lisp-file.script
+++ b/test/test-missing-lisp-file.script
@@ -6,7 +6,7 @@
 ;;; fasl when the source file is lost.
 ;;;---------------------------------------------------------------------------
 
-(load "script-support")
+(load "script-support.lisp")
 (load-asdf)
 
 (quit-on-error
diff --git a/test/test-module-depend.script b/test/test-module-depend.script
index ff6296a6bae2c17f4eabf2d9d52d570234f7cd3c..582d8408c5cff323534338158eded8fee6fcfb5f 100644
--- a/test/test-module-depend.script
+++ b/test/test-module-depend.script
@@ -1,5 +1,5 @@
 ;;; -*- Lisp -*-
-(load "script-support")
+(load "script-support.lisp")
 (load-asdf)
 
 (quit-on-error
diff --git a/test/test-module-excessive-depend.script b/test/test-module-excessive-depend.script
index 21827890f38cb217d109d2e46ec556191c1c9534..6affaa9fe7beef1e21402bd7f3cf8a8c10790d02 100644
--- a/test/test-module-excessive-depend.script
+++ b/test/test-module-excessive-depend.script
@@ -1,5 +1,5 @@
 ;;; -*- Lisp -*-
-(load "script-support")
+(load "script-support.lisp")
 (load-asdf)
 
 ;;;---------------------------------------------------------------------------
diff --git a/test/test-module-pathnames.script b/test/test-module-pathnames.script
index 44ccabeb13ae5116a82dc12881583b281939e052..8517e40f2ab2b60ada5d04e48dbec0f65aed4aed 100644
--- a/test/test-module-pathnames.script
+++ b/test/test-module-pathnames.script
@@ -1,5 +1,5 @@
 ;;; -*- Lisp -*-
-(load "script-support")
+(load "script-support.lisp")
 (load-asdf)
 
 (quit-on-error
diff --git a/test/test-nested-components.script b/test/test-nested-components.script
index beaaf7b5dc3352257fd2ee56fdb5ecc06066f87f..67976903d896250bd6c542c5d199ce44d30102a0 100644
--- a/test/test-nested-components.script
+++ b/test/test-nested-components.script
@@ -2,7 +2,7 @@
 
 ;;; check that added nesting via modules doesn't confuse ASDF
 
-(load "script-support")
+(load "script-support.lisp")
 (load-asdf)
 (in-package #:common-lisp-user)
 
diff --git a/test/test-package.script b/test/test-package.script
index 861fbc1a6d6160ef1e406d17857c9132be89a36b..0e9c55e0d6da67d0e43fc13a41d0b1766d48d170 100644
--- a/test/test-package.script
+++ b/test/test-package.script
@@ -1,6 +1,6 @@
 ;;; -*- Lisp -*-
 (in-package :cl-user)
-(load "script-support")
+(load "script-support.lisp")
 (load-asdf)
 (quit-on-error 
  (defun module () 1)
diff --git a/test/test-redundant-recompile.script b/test/test-redundant-recompile.script
index 9f16fcba8f258a7e3bd324bd385de6ee3aa25a09..e2038eaffeff86283f8c207797f43df031de2b9b 100644
--- a/test/test-redundant-recompile.script
+++ b/test/test-redundant-recompile.script
@@ -1,5 +1,5 @@
 ;;; -*- Lisp -*-
-(load "script-support")
+(load "script-support.lisp")
 (load-asdf)
 
 (quit-on-error
diff --git a/test/test-retry-loading-component-1.script b/test/test-retry-loading-component-1.script
index d0d0e228b2021b1c5424c6e0853107d745121cf1..0e2c9ca38c12d3a0a05db606d0de18bb9d912a5a 100644
--- a/test/test-retry-loading-component-1.script
+++ b/test/test-retry-loading-component-1.script
@@ -2,7 +2,7 @@
 
 ;;; test asdf:try-recompiling restart
 
-(load "script-support")
+(load "script-support.lisp")
 (load-asdf)
 ;(trace asdf::find-component)
 ;(trace asdf:run-shell-command asdf:oos asdf:perform asdf:operate)
diff --git a/test/test-samedir-modules.script b/test/test-samedir-modules.script
index bd6ce84ee0fc855846194dedfe6e748498703891..07202716989afecb87b46951bae56e69a6661515 100644
--- a/test/test-samedir-modules.script
+++ b/test/test-samedir-modules.script
@@ -1,5 +1,5 @@
 ;;; -*- Lisp -*-
-(load "script-support")
+(load "script-support.lisp")
 (load-asdf)
 
 (quit-on-error
diff --git a/test/test-static-and-serial.script b/test/test-static-and-serial.script
index 4915cf5e4b6d30a78d477ffdca8b98f3d3f011d9..e01662a2e57c8213fdf341cf0b2b6a81ddc6fd6f 100644
--- a/test/test-static-and-serial.script
+++ b/test/test-static-and-serial.script
@@ -1,5 +1,5 @@
 ;;; -*- Lisp -*-
-(load "script-support")
+(load "script-support.lisp")
 (load-asdf)
 (quit-on-error
  (setf asdf:*central-registry* '(*default-pathname-defaults*))
diff --git a/test/test-sysdef-asdf.script b/test/test-sysdef-asdf.script
index 53560b4e143d3a349cf6b8f603edaa678068115d..b2411888cb01a93f9ed1689e1804262a9583f06b 100644
--- a/test/test-sysdef-asdf.script
+++ b/test/test-sysdef-asdf.script
@@ -1,5 +1,5 @@
 ;;; -*- Lisp -*-
-(load "script-support")
+(load "script-support.lisp")
 (load-asdf)
 
 (quit-on-error
diff --git a/test/test-system-pathnames.script b/test/test-system-pathnames.script
index 9d2355fa57246cd85bdd537f18df75429af64d64..141f713f1de8b04e29acc43e8cbf70a0e0e33384 100644
--- a/test/test-system-pathnames.script
+++ b/test/test-system-pathnames.script
@@ -1,5 +1,5 @@
 ;;; -*- Lisp -*-
-(load "script-support")
+(load "script-support.lisp")
 (load-asdf)
 
 (quit-on-error
diff --git a/test/test-touch-system-1.script b/test/test-touch-system-1.script
index 9480c292374c4b09b458fabd1ab3b688d5f2c5ba..3785ee9e803667e96de7114ecd60b5fb8a5160b1 100644
--- a/test/test-touch-system-1.script
+++ b/test/test-touch-system-1.script
@@ -3,7 +3,7 @@
 ;;; test system def reloading if touched
 ;;; system that can be found using *system-definition-search-functions*
 
-(load "script-support")
+(load "script-support.lisp")
 (load-asdf)
 (quit-on-error
  (flet ((system-load-time (name)
diff --git a/test/test-touch-system-2.script b/test/test-touch-system-2.script
index 04b9019551e67765d3194b893ad4c9b30aca67b5..a922afcc443ace478d6a5793182a2564b8393eae 100644
--- a/test/test-touch-system-2.script
+++ b/test/test-touch-system-2.script
@@ -3,7 +3,7 @@
 ;;; test system def reloading if touched
 ;;; system that canNOT be found using *system-definition-search-functions*
 
-(load "script-support")
+(load "script-support.lisp")
 (load-asdf)
 (quit-on-error
  (flet ((system-load-time (name)
diff --git a/test/test-try-recompiling-1.script b/test/test-try-recompiling-1.script
index ac1ad293ce1ad454e470021f4e8196e2c7d98f3c..f5f2ec3e45b15e1bc63d87bebf99437defc83df8 100644
--- a/test/test-try-recompiling-1.script
+++ b/test/test-try-recompiling-1.script
@@ -2,7 +2,7 @@
 
 ;;; test asdf:try-recompiling restart
 
-(load "script-support")
+(load "script-support.lisp")
 (load-asdf)
 (defvar *caught-error* nil)
 
diff --git a/test/test-urls-1.script b/test/test-urls-1.script
index 42e810e9430cd6740e6ecb8d6844dc992e1cbaaa..a630e74381532d141071517a684b15203fc7797c 100644
--- a/test/test-urls-1.script
+++ b/test/test-urls-1.script
@@ -1,5 +1,5 @@
 ;;; -*- Lisp -*-
-(load "script-support")
+(load "script-support.lisp")
 (load-asdf)
 #+scl
 (require :http-library)
diff --git a/test/test-urls-2.script b/test/test-urls-2.script
index 691f384427a8cdc209e3d99171639a59cafdb847..ad99143bda7e7539ef0eb91b13ae7142824c1166 100644
--- a/test/test-urls-2.script
+++ b/test/test-urls-2.script
@@ -1,5 +1,5 @@
 ;;; -*- Lisp -*-
-(load "script-support")
+(load "script-support.lisp")
 (load-asdf)
 #+scl
 (require :http-library)
diff --git a/test/test-utilities.script b/test/test-utilities.script
index 4469be9550921168f7e1472109d0b17afb2b6c16..55d98297365eae4c483271902a4e665dc6ed9bdc 100644
--- a/test/test-utilities.script
+++ b/test/test-utilities.script
@@ -1,5 +1,5 @@
 ;;; -*- Lisp -*-
-(load "script-support")
+(load "script-support.lisp")
 (load-asdf)
 (in-package :asdf)
 (cl-user::quit-on-error
diff --git a/test/test-version.script b/test/test-version.script
index d1d11488556382742c87edbedb0252775c9ddad2..c0b8216c9cb6b61e9085b0ccf6b5ee46372550fb 100644
--- a/test/test-version.script
+++ b/test/test-version.script
@@ -1,5 +1,5 @@
 ;;; -*- Lisp -*-
-(load "script-support")
+(load "script-support.lisp")
 (load-asdf)
 (setf asdf:*central-registry* '(*default-pathname-defaults*))
 
diff --git a/test/test1.script b/test/test1.script
index bc23f8b46743344b1c3d456f0480f701cd3e73cc..599367b5a3f20980db0667d1d8788f005478364c 100644
--- a/test/test1.script
+++ b/test/test1.script
@@ -1,5 +1,5 @@
 ;;; -*- Lisp -*-
-(load "script-support")
+(load "script-support.lisp")
 (load-asdf)
 
 (quit-on-error
diff --git a/test/test2.script b/test/test2.script
index 4fcfb09360d70eda16e6af05e4ae8bfd929ea3ab..c20c7fe01c89086622564e62f451830e6aeddfd5 100644
--- a/test/test2.script
+++ b/test/test2.script
@@ -1,5 +1,5 @@
 ;;; -*- Lisp -*-
-(load "script-support")
+(load "script-support.lisp")
 (load-asdf)
 (quit-on-error
  (format t "test2 1~%")
diff --git a/test/test3.script b/test/test3.script
index ad9cad5c2d2287c0b95bbcf69ae83e6ab22db57b..880ecf77b90baa0d7f4c2c87260e3be5ad395a9d 100644
--- a/test/test3.script
+++ b/test/test3.script
@@ -1,6 +1,6 @@
 ;;; -*- Lisp -*-
 #+(or f1 f2) (error "This test cannot run if :f1 or :f2 are on *features*")
-(load "script-support")
+(load "script-support.lisp")
 (load-asdf)
 (in-package :asdf)
 (cl-user::quit-on-error
diff --git a/test/test4.script b/test/test4.script
index 4488347f9671ef8b38029388d3a69f551e3010f9..07e381acfa159c28e65f2248a48fa781f54cb7a7 100644
--- a/test/test4.script
+++ b/test/test4.script
@@ -1,6 +1,6 @@
 ;;; -*- Lisp -*-
 ;;; -*- Lisp -*-
-(load "script-support")
+(load "script-support.lisp")
 (load-asdf)
 (in-package :asdf)
 (cl-user::quit-on-error
diff --git a/test/test8.script b/test/test8.script
index 50f00f949755c8b2e5c289607b6862954ac17cdc..d16609dc164a8e88cc8641f6317d1ce3148e4d49 100644
--- a/test/test8.script
+++ b/test/test8.script
@@ -2,7 +2,7 @@
 
 ;;; make sure we get a missing-component error
 
-(load "script-support")
+(load "script-support.lisp")
 (load-asdf)
 (in-package #:common-lisp-user)
 
diff --git a/test/test9.script b/test/test9.script
index 35b3cc78b19dc42863ea792696ef5e6df100b6f9..71f7d36f7ca6a8734a603e7b0e73ee7bf5eb2bf5 100644
--- a/test/test9.script
+++ b/test/test9.script
@@ -2,7 +2,7 @@
 
 ;;; make sure we get a missing-component-of-version error
 
-(load "script-support")
+(load "script-support.lisp")
 (load-asdf)
 (in-package #:common-lisp-user)
 
diff --git a/test/wild-module.script b/test/wild-module.script
index 40a3a7811051f2df1bdc81d3887d084e7f4b432e..41e35efacd96e5a54408f1be60a7fec723f385bc 100644
--- a/test/wild-module.script
+++ b/test/wild-module.script
@@ -1,7 +1,7 @@
 ;;; -*- Lisp -*-
-(load "script-support")
+(load "script-support.lisp")
 (load-asdf)
 (quit-on-error
- (load "../wild-modules")
+ (load "../wild-modules.lisp")
  (setf asdf:*central-registry* '(*default-pathname-defaults*))
  (asdf:operate 'asdf:load-op 'wild-module))