2.26.81: Fix tests for LispWorks, including a fix to run-program/.
authorFrancois-Rene Rideau <tunes@google.com>
Sat, 12 Jan 2013 05:22:32 +0000 (00:22 -0500)
committerFrancois-Rene Rideau <tunes@google.com>
Sat, 12 Jan 2013 05:22:32 +0000 (00:22 -0500)
asdf.asd
header.lisp
run-program.lisp
test/script-support.lisp
upgrade.lisp

index b612f84..6beb555 100644 (file)
--- a/asdf.asd
+++ b/asdf.asd
@@ -15,7 +15,7 @@
   :licence "MIT"
   :description "Another System Definition Facility"
   :long-description "ASDF builds Common Lisp software organized into defined systems."
-  :version "2.26.80" ;; to be automatically updated by bin/bump-revision
+  :version "2.26.81" ;; to be automatically updated by bin/bump-revision
   :depends-on ()
   :components ((:module "build" :components ((:file "asdf"))))
   :in-order-to (#+asdf2.27 (compile-op (monolithic-load-concatenated-source-op generate-asdf))))
index 4c21f0d..daae007 100644 (file)
@@ -1,5 +1,5 @@
 ;; -*- mode: Common-Lisp; Base: 10 ; Syntax: ANSI-Common-Lisp ; coding: utf-8 -*-
-;;; This is ASDF 2.26.80: Another System Definition Facility.
+;;; This is ASDF 2.26.81: Another System Definition Facility.
 ;;;
 ;;; Feedback, bug reports, and patches are all welcome:
 ;;; please mail to <asdf-devel@common-lisp.net>.
index 85e5e27..6d861a1 100644 (file)
@@ -272,19 +272,20 @@ Use ELEMENT-TYPE and EXTERNAL-FORMAT for the stream passed to the OUTPUT process
                        #+sbcl (sb-ext:process-output process))))
                (values process stream)))
            #+(or allegro clisp clozure cmu ecl (and lispworks os-unix) sbcl scl)
-           (process-result (process)
+           (process-result (process pipe)
+             (declare (ignorable pipe))
              ;; 1- wait
              #+(and clozure os-unix) (ccl::external-process-wait process)
              #+(or cmu scl) (ext:process-wait process)
              #+(and ecl os-unix) (ext:external-process-wait process)
              #+sbcl (sb-ext:process-wait process)
              ;; 2- extract result
-             #+allegro (sys:reap-os-subprocess :pid process :wait t)
+             #+allegro (if pipe (sys:reap-os-subprocess :pid process :wait t) process)
              #+clisp process
              #+clozure (nth-value 1 (ccl:external-process-status process))
              #+(or cmu scl) (ext:process-exit-code process)
              #+ecl (nth-value 1 (ext:external-process-status process))
-             #+lispworks (system:pid-exit-status process :wait t)
+             #+lispworks (if pipe (system:pid-exit-status process :wait t) process)
              #+sbcl (sb-ext:process-exit-code process))
            (check-result (exit-code process)
              #+clisp
@@ -304,12 +305,12 @@ Use ELEMENT-TYPE and EXTERNAL-FORMAT for the stream passed to the OUTPUT process
                      (unwind-protect
                           (slurp-input-stream output stream)
                        (when stream (close stream))
-                       (check-result (process-result process) process))
+                       (check-result (process-result process pipe) process))
                      (unwind-protect
                           (check-result
                            #+(or allegro lispworks) ; when not capturing, returns the exit code!
                            process
-                           #-(or allegro lispworks) (process-result process)
+                           #-(or allegro lispworks) (process-result process pipe)
                            process))))))
            (system-command (command)
              (etypecase command
@@ -324,7 +325,7 @@ Use ELEMENT-TYPE and EXTERNAL-FORMAT for the stream passed to the OUTPUT process
              #+allegro
              (excl:run-shell-command command :input interactive :output interactive :wait t)
              #+(or clisp clozure cmu (and lispworks os-unix) sbcl scl)
-             (process-result (run-program command :pipe nil :interactive interactive))
+             (process-result (run-program command :pipe nil :interactive interactive) nil)
              #+ecl (ext:system command)
              #+cormanlisp (win32:system command)
              #+gcl (lisp:system command)
index dbccd99..2a1a379 100644 (file)
@@ -55,6 +55,7 @@
                     #+xcl :xcl))))
      (merge-pathnames
       (make-pathname :directory `(#-gcl :relative "fasls" ,impl)
+                     :name "asdf" ;; otherwise LispWorks borks, because it fills in :UNSPECIFIC rather than NIL.
                      :defaults *asdf-directory*)
       *asdf-lisp*))))
 
index 981a751..14c2746 100644 (file)
@@ -31,7 +31,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.80")
+         (asdf-version "2.26.81")
          (existing-asdf (find-class (find-symbol* :component :asdf nil) nil))
          (existing-version *asdf-version*)
          (already-there (equal asdf-version existing-version)))