Commit 679fd396 authored by Francois-Rene Rideau's avatar Francois-Rene Rideau

1.638: don't use :unspecific for ABCL either.

Add janderson's pathname test script to our test suite.
parent fc24d396
......@@ -250,7 +250,7 @@
;; This parameter isn't actually user-visible
;; -- please use the exported function ASDF:ASDF-VERSION below.
;; the 1+ hair is to ensure that we don't do an inadvertent find and replace
(subseq "VERSION:1.637" (1+ (length "VERSION"))))
(subseq "VERSION:1.638" (1+ (length "VERSION"))))
(defun asdf-version ()
"Exported interface to the version of ASDF currently installed. A string.
......@@ -495,7 +495,7 @@ starting the separation from the end, e.g. when called with arguments
(setf end start))))))
(defun split-name-type (filename)
(let ((unspecific #-clisp :unspecific #+clisp nil))
(let ((unspecific #-(or clisp armedbear) :unspecific #+(or clisp armedbear) nil))
(destructuring-bind (name &optional (type unspecific))
(split-string filename :max 2 :separator ".")
(if (equal name "")
......@@ -1083,7 +1083,7 @@ to `~a` which is not a directory.~@:>"
;; NOTE that the host and device slots will be taken from the defaults,
;; but that should only matter if you either (a) use absolute pathnames, or
;; (b) later merge relative pathnames with CL:MERGE-PATHNAMES instead of
;; ASDF:MERGE-PATHNAMES*
;; ASDF-UTILITIES:MERGE-PATHNAMES*
(etypecase name
(pathname
name)
......
This diff is collapsed.
......@@ -2,25 +2,35 @@
(load (make-pathname :name "script-support" :defaults *load-pathname*))
(cond ((probe-file *asdf-lisp*)
(ensure-directories-exist *asdf-fasl*)
(multiple-value-bind (result warnings-p errors-p)
;; style warnings shouldn't abort the compilation [2010/02/03:rpg]
(handler-bind ((style-warning
#'(lambda (w)
(princ w *error-output*)
(muffle-warning w))))
(compile-file *asdf-lisp*
:output-file *asdf-fasl*))
(declare (ignore result))
(cond (warnings-p
(cond
((not (probe-file *asdf-lisp*))
(leave-lisp "Testsuite failed: unable to find ASDF source" 3))
((and (probe-file *asdf-fasl*)
(> (file-write-date *asdf-fasl*) (file-write-date *asdf-lisp*)))
(leave-lisp "Reusing previously-compiled ASDF" 0))
(t
(let ((tmp (make-pathname :name "asdf-tmp" :defaults *asdf-fasl*)))
(ensure-directories-exist *asdf-fasl*)
(multiple-value-bind (result warnings-p errors-p)
;; style warnings shouldn't abort the compilation [2010/02/03:rpg]
(handler-bind ((style-warning
#'(lambda (w)
(princ w *error-output*)
(muffle-warning w))))
(compile-file *asdf-lisp* :output-file tmp))
(declare (ignore result))
(cond
(warnings-p
;;; ECL gives warnings that it shouldn't!
#+ecl (leave-lisp "ASDF compiled with warnings. Please fix ECL." 0)
#-ecl
(leave-lisp "Testsuite failed: ASDF compiled with warnings" 1))
(errors-p
(leave-lisp "Testsuite failed: ASDF compiled with ERRORS" 2))
(t
(leave-lisp "ASDF compiled cleanly" 0)))))
(t
(leave-lisp "Testsuite failed: unable to find ASDF source" 3)))
#+ecl (leave-lisp "ASDF compiled with warnings. Please fix ECL." 0)
#-ecl
(leave-lisp "Testsuite failed: ASDF compiled with warnings" 1))
(errors-p
(leave-lisp "Testsuite failed: ASDF compiled with ERRORS" 2))
(t
#+clisp ;; But for a bug in CLISP 2.48, we should use :if-exists :overwrite and be atomic
(posix:copy-file tmp *asdf-fasl* :method :rename)
#-clisp
(rename-file tmp *asdf-fasl*
#+clozure :if-exists #+clozure :rename-and-delete)
(leave-lisp "ASDF compiled cleanly" 0)))))))
......@@ -101,7 +101,7 @@ if [ -z $1 ] ; then
lisp="sbcl"
fi
command=
command= flags= nodebug= eval=
case "$lisp" in
sbcl)
command=sbcl
......@@ -144,18 +144,17 @@ case "$lisp" in
gclcvs)
export GCL_ANSI=t
command=gclcvs
flags="-q"
flags="-batch"
eval="-eval" ;;
abcl)
command=abcl
eval="--eval" ;;
*)
echo "Unsupported lisp: $1" >&2
echo "Please add support to run-tests.sh" >&2
exit 42 ;;
esac
if [ -z "$command" ] ; then
echo "lisp implementation not recognized: $1" >&2
exit 43
fi
if ! type "$command" ; then
echo "lisp implementation not found: $command" >&2
exit 43
......
......@@ -23,7 +23,10 @@
;; http://www.cliki.net/cl-launch
(defun leave-lisp (message return)
(when message
(format *error-output* message))
(format *error-output* message)
(terpri *error-output*))
(finish-output *error-output*)
(finish-output *standard-output*)
#+allegro
(excl:exit return)
#+clisp
......@@ -60,6 +63,7 @@ is bound, write a message and exit on an error. If
(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)
(leave-lisp "~&Script failed~%" 1))))))
(funcall thunk)
......
......@@ -2,7 +2,6 @@
(load "script-support")
(load-asdf)
(quit-on-error
(load-asdf)
(load "../wild-modules")
(setf asdf:*central-registry* '(*default-pathname-defaults*))
(asdf:operate 'asdf:load-op 'wild-module))
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment