Skip to content
Snippets Groups Projects
Commit 61fe9640 authored by Francois-Rene Rideau's avatar Francois-Rene Rideau
Browse files

Tweak punt parameter in header. Tweak upgrade test.

parent 4f2329c8
No related branches found
No related tags found
No related merge requests found
...@@ -54,7 +54,7 @@ ...@@ -54,7 +54,7 @@
(declaim (optimize (speed 1) (safety 3) (debug 3))) (declaim (optimize (speed 1) (safety 3) (debug 3)))
(setf ext:*gc-verbose* nil)) (setf ext:*gc-verbose* nil))
#+(or abcl clisp clozure cmu ecl xcl) #+(or abcl clisp clozure cmu ecl xcl) ;; punt on hard package upgrade on those implementations
(eval-when (:load-toplevel :compile-toplevel :execute) (eval-when (:load-toplevel :compile-toplevel :execute)
(unless (member :asdf3 *features*) (unless (member :asdf3 *features*)
(let* ((existing-version (let* ((existing-version
...@@ -71,7 +71,7 @@ ...@@ -71,7 +71,7 @@
(existing-version-number (and existing-version (read-from-string existing-major-minor))) (existing-version-number (and existing-version (read-from-string existing-major-minor)))
(away (format nil "~A-~A" :asdf existing-version))) (away (format nil "~A-~A" :asdf existing-version)))
(when (and existing-version (when (and existing-version
(< existing-version-number #+abcl 2.25 #+cmu 2.018 #-(or abcl cmu) 2.27)) (< existing-version-number 2.27))
(rename-package :asdf away) (rename-package :asdf away)
(when *load-verbose* (when *load-verbose*
(format t "~&; Renamed old ~A package away to ~A~%" :asdf away)))))) (format t "~&; Renamed old ~A package away to ~A~%" :asdf away))))))
......
...@@ -290,7 +290,7 @@ upgrade_methods () { ...@@ -290,7 +290,7 @@ upgrade_methods () {
cat <<EOF cat <<EOF
'load-asdf-lisp'load-asdf-lisp-clean 'load-asdf-lisp'load-asdf-lisp-clean
'load-asdf-lisp'load-asdf-system 'load-asdf-lisp'load-asdf-system
'load-asdf-lisp'compile-load-asdf 'load-asdf-lisp'compile-load-asdf-upgrade
'load-asdf-lisp'load-asdf-fasl 'load-asdf-lisp'load-asdf-fasl
()'load-asdf-fasl ()'load-asdf-fasl
'load-asdf-lisp-and-test-uiop'load-asdf-fasl 'load-asdf-lisp-and-test-uiop'load-asdf-fasl
......
...@@ -20,7 +20,8 @@ Some constraints: ...@@ -20,7 +20,8 @@ Some constraints:
#:hash-table->alist #:hash-table->alist
#:load-asdf #:maybe-compile-asdf #:load-asdf #:maybe-compile-asdf
#:load-asdf-lisp #:compile-asdf #:load-asdf-fasl #:load-asdf-lisp #:compile-asdf #:load-asdf-fasl
#:compile-load-asdf #:load-asdf-system #:clean-load-asdf-system #:compile-load-asdf #:compile-load-asdf-upgrade
#:load-asdf-system #:clean-load-asdf-system
#:register-directory #:load-test-system #:register-directory #:load-test-system
#:with-test #:test-asdf #:debug-asdf #:with-test #:test-asdf #:debug-asdf
#:assert-compare #:assert-compare
...@@ -388,7 +389,7 @@ is bound, write a message and exit on an error. If ...@@ -388,7 +389,7 @@ is bound, write a message and exit on an error. If
(defmacro with-asdf-conditions ((&optional verbose) &body body) (defmacro with-asdf-conditions ((&optional verbose) &body body)
`(call-with-asdf-conditions #'(lambda () ,@body) ,verbose)) `(call-with-asdf-conditions #'(lambda () ,@body) ,verbose))
(defun compile-asdf (&optional tag verbose) (defun compile-asdf (&optional tag verbose upgradep)
(let* ((alisp (asdf-lisp tag)) (let* ((alisp (asdf-lisp tag))
(afasl (asdf-fasl tag)) (afasl (asdf-fasl tag))
(tmp (make-pathname :name "asdf-tmp" :defaults afasl))) (tmp (make-pathname :name "asdf-tmp" :defaults afasl)))
...@@ -401,7 +402,7 @@ is bound, write a message and exit on an error. If ...@@ -401,7 +402,7 @@ is bound, write a message and exit on an error. If
(good (key) (good (key)
(when (probe-file afasl) (delete-file afasl)) (when (probe-file afasl) (delete-file afasl))
(rename-file tmp afasl) (rename-file tmp afasl)
key)) compile-asdf key))
(cond (cond
((null result) ((null result)
(bad :no-output)) (bad :no-output))
...@@ -416,6 +417,7 @@ is bound, write a message and exit on an error. If ...@@ -416,6 +417,7 @@ is bound, write a message and exit on an error. If
;; ECL 11.1.1 has spurious warnings, same with XCL 0.0.0.291. ;; ECL 11.1.1 has spurious warnings, same with XCL 0.0.0.291.
;; SCL has no warning but still raises the warningp flag since 2.20.15 (?) ;; SCL has no warning but still raises the warningp flag since 2.20.15 (?)
#+(or clisp cmu ecl scl xcl) (good :expected-style-warnings) #+(or clisp cmu ecl scl xcl) (good :expected-style-warnings)
(and upgradep (good :unexpected-style-warnings))
(bad :unexpected-style-warnings))) (bad :unexpected-style-warnings)))
(t (good :success))))))) (t (good :success)))))))
...@@ -453,16 +455,20 @@ is bound, write a message and exit on an error. If ...@@ -453,16 +455,20 @@ is bound, write a message and exit on an error. If
(:success (:success
(leave-test "ASDF compiled cleanly" 0))))) (leave-test "ASDF compiled cleanly" 0)))))
(defun compile-load-asdf (&optional tag) (defun compile-load-asdf (&optional tag upgradep)
;; emulate the way asdf upgrades itself: load source, compile, load fasl. ;; emulate the way asdf upgrades itself: load source, compile, load fasl.
(load-asdf-lisp tag) (load-asdf-lisp tag)
(let ((results (compile-asdf tag))) (let ((results (compile-asdf tag nil upgradep)))
(ecase results (ecase results
((:no-output :unexpected-full-warnings :unexpected-style-warnings) ((:no-output :unexpected-full-warnings :unexpected-style-warnings)
(warn "ASDF compiled with ~S" results) (warn "ASDF compiled with ~S" results)
(leave-test "failed to compile ASDF" 1)) (unless (and upgradep (eq results :unexpected-style-warnings))
((:expected-full-warnings :expected-style-warnings :success) (leave-test "failed to compile ASDF" 1)))
(load-asdf-fasl tag))))) ((:expected-full-warnings :expected-style-warnings :success)))
(load-asdf-fasl tag)))
(defun compile-load-asdf-upgrade (&optional tag)
(compile-load-asdf tag t))
;;; Now, functions to compile and load ASDF. ;;; Now, functions to compile and load ASDF.
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment