Commit f6832b7a authored by Francois-Rene Rideau's avatar Francois-Rene Rideau
Browse files

2.26.130: fix compile-file* for ecl_bytecodes

Also, make script re-loadable in a debug session.
parent 16223e47
...@@ -15,7 +15,7 @@ ...@@ -15,7 +15,7 @@
:licence "MIT" :licence "MIT"
:description "Another System Definition Facility" :description "Another System Definition Facility"
:long-description "ASDF builds Common Lisp software organized into defined systems." :long-description "ASDF builds Common Lisp software organized into defined systems."
:version "2.26.129" ;; to be automatically updated by make bump-version :version "2.26.130" ;; to be automatically updated by make bump-version
:depends-on () :depends-on ()
:components ((:module "build" :components ((:file "asdf")))) :components ((:module "build" :components ((:file "asdf"))))
:in-order-to (#+asdf2.27 (compile-op (monolithic-load-concatenated-source-op asdf/defsystem)))) :in-order-to (#+asdf2.27 (compile-op (monolithic-load-concatenated-source-op asdf/defsystem))))
......
;; -*- mode: Common-Lisp; Base: 10 ; Syntax: ANSI-Common-Lisp ; coding: utf-8 -*- ;; -*- mode: Common-Lisp; Base: 10 ; Syntax: ANSI-Common-Lisp ; coding: utf-8 -*-
;;; This is ASDF 2.26.129: Another System Definition Facility. ;;; This is ASDF 2.26.130: Another System Definition Facility.
;;; ;;;
;;; Feedback, bug reports, and patches are all welcome: ;;; Feedback, bug reports, and patches are all welcome:
;;; please mail to <asdf-devel@common-lisp.net>. ;;; please mail to <asdf-devel@common-lisp.net>.
......
...@@ -448,10 +448,16 @@ If WARNINGS-FILE is defined, deferred warnings are saved to that file. ...@@ -448,10 +448,16 @@ If WARNINGS-FILE is defined, deferred warnings are saved to that file.
On ECL or MKCL, it creates both the linkable object and loadable fasl files. On ECL or MKCL, it creates both the linkable object and loadable fasl files.
On implementations that erroneously do not recognize standard keyword arguments, On implementations that erroneously do not recognize standard keyword arguments,
it will filter them appropriately." it will filter them appropriately."
#+ecl (when (and object-file (equal (compile-file-type) (pathname object-file)))
(format t "Whoa, some funky ASDF upgrade switched ~S calling convention for ~S and ~S~%"
'compile-file* output-file object-file)
(rotatef output-file object-file))
(let* ((keywords (remove-plist-keys (let* ((keywords (remove-plist-keys
`(:compile-check :warnings-file #+(or ecl mkcl) :object-file `(:compile-check :warnings-file #+(or ecl mkcl) :object-file :output-file
#+gcl<2.7 ,@'(:external-format :print :verbose)) keys)) #+gcl<2.7 ,@'(:external-format :print :verbose)) keys))
(output-file (apply 'compile-file-pathname* input-file :output-file output-file keywords)) (output-file
(or output-file
(apply 'compile-file-pathname* input-file :output-file output-file keywords)))
#+ecl #+ecl
(object-file (object-file
(unless (use-ecl-byte-compiler-p) (unless (use-ecl-byte-compiler-p)
...@@ -462,17 +468,13 @@ it will filter them appropriately." ...@@ -462,17 +468,13 @@ it will filter them appropriately."
(or object-file (or object-file
(compile-file-pathname output-file :fasl-p nil))) (compile-file-pathname output-file :fasl-p nil)))
(tmp-file (tmpize-pathname output-file))) (tmp-file (tmpize-pathname output-file)))
#+ecl (when (and object-file (equal (compile-file-type) (pathname object-file)))
(format t "Whoa, funky upgrade API switching happening in ~S with ~S ~S~%"
'compile-file* output-file object-file)
(rotatef output-file object-file))
(multiple-value-bind (output-truename warnings-p failure-p) (multiple-value-bind (output-truename warnings-p failure-p)
(with-saved-deferred-warnings (warnings-file) (with-saved-deferred-warnings (warnings-file)
(or #-(or ecl mkcl) (apply 'compile-file input-file :output-file tmp-file keywords) (or #-(or ecl mkcl) (apply 'compile-file input-file :output-file tmp-file keywords)
#+ecl (apply 'compile-file input-file :output-file #+ecl (apply 'compile-file input-file :output-file
(if object-file (if object-file
(list* object-file :system-p t keywords) (list* object-file :system-p t keywords)
(list* output-file keywords))) (list* tmp-file keywords)))
#+mkcl (apply 'compile-file input-file #+mkcl (apply 'compile-file input-file
:output-file object-file :fasl-p nil keywords))) :output-file object-file :fasl-p nil keywords)))
(cond (cond
......
;;; -*- Lisp -*- ;;; -*- Lisp -*-
(in-package :asdf-test) (in-package :asdf-test)
(load-asdf)
;;(setf *unspecific-pathname-type* nil) ;;(setf *unspecific-pathname-type* nil)
......
...@@ -90,7 +90,7 @@ do_tests() { ...@@ -90,7 +90,7 @@ do_tests() {
echo "Testing: $i" >&2 echo "Testing: $i" >&2
test_count=`expr "$test_count" + 1` test_count=`expr "$test_count" + 1`
rm -f ~/.cache/common-lisp/"`pwd`"/* || true rm -f ~/.cache/common-lisp/"`pwd`"/* || true
if DO $cmd $debugp $eval "(load \"script-support.lisp\")" $eval "(asdf-test::with-test () (load \"$i\"))" ; then if DO $cmd $debugp $eval "(load \"script-support.lisp\")" $eval "(asdf-test::load-asdf)" $eval "(asdf-test::with-test () (load \"$i\"))" ; then
echo "Using $command, $i passed" >&2 echo "Using $command, $i passed" >&2
test_pass=`expr "$test_pass" + 1` test_pass=`expr "$test_pass" + 1`
else else
...@@ -102,7 +102,7 @@ do_tests() { ...@@ -102,7 +102,7 @@ do_tests() {
echo "or more interactively (and maybe with rlwrap or in emacs), start with:" >&2 echo "or more interactively (and maybe with rlwrap or in emacs), start with:" >&2
echo "(cd test ; $cmd )" >&2 echo "(cd test ; $cmd )" >&2
echo "then copy/paste:" >&2 echo "then copy/paste:" >&2
echo "'(#.(load \"script-support.lisp\") #.(asdf-test::da) #.(asdf-test::with-test () (load \"$i\")))" >&2 echo "'(#.(load \"script-support.lisp\") #.(asdf-test::da) #.(load-asdf) #.(load \"$i\"))" >&2
fi fi
echo >&2 echo >&2
echo >&2 echo >&2
......
;;; -*- Lisp -*- ;;; -*- Lisp -*-
(load-asdf)
(defun call-in-base-2 (thunk) (defun call-in-base-2 (thunk)
(let ((*read-base* 2)) (let ((*read-base* 2))
......
;;; -*- Lisp -*- ;;; -*- Lisp -*-
(load-asdf)
;;(trace source-file-type) ;;(trace source-file-type)
......
;;; -*- Lisp -*- ;;; -*- Lisp -*-
(load-asdf)
(in-package :asdf-test) (in-package :asdf-test)
;;;--------------------------------------------------------------------------- ;;;---------------------------------------------------------------------------
......
;;; -*- Lisp -*- ;;; -*- Lisp -*-
(load-asdf)
(progn (progn
#-gcl<2.7 #-gcl<2.7
......
;;; -*- Lisp -*- ;;; -*- Lisp -*-
(load-asdf)
(def-test-system :test-concatenate-source (def-test-system :test-concatenate-source
:depends-on (:file3-only) :depends-on (:file3-only)
......
;;; -*- Lisp -*- ;;; -*- Lisp -*-
(load-asdf)
(in-package :asdf) (in-package :asdf)
(use-package :asdf-test) (use-package :asdf-test)
......
;;; -*- Lisp -*- ;;; -*- Lisp -*-
(load-asdf)
(defparameter *lambda-string* nil) (defparameter *lambda-string* nil)
......
;;; -*- Lisp -*- ;;; -*- Lisp -*-
(load-asdf)
(asdf:operate 'asdf:load-op 'test-force) (asdf:operate 'asdf:load-op 'test-force)
......
;;; -*- Lisp -*- ;;; -*- Lisp -*-
(load-asdf)
#-gcl<2.7 #-gcl<2.7
(setf (logical-pathname-translations "ASDF") (setf (logical-pathname-translations "ASDF")
......
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
;;;--------------------------------------------------------------------------- ;;;---------------------------------------------------------------------------
(load-asdf)
(def-test-system test-missing-lisp-file (def-test-system test-missing-lisp-file
......
;;; -*- Lisp -*- ;;; -*- Lisp -*-
(load-asdf)
(asdf:load-system 'test-module-depend) (asdf:load-system 'test-module-depend)
......
;;; -*- Lisp -*- ;;; -*- Lisp -*-
(load-asdf)
;;;--------------------------------------------------------------------------- ;;;---------------------------------------------------------------------------
;;; Here's what we are trying to test. Let us say we have a system X that ;;; Here's what we are trying to test. Let us say we have a system X that
......
;;; -*- Lisp -*- ;;; -*- Lisp -*-
(load-asdf)
(progn (progn
(asdf:load-system 'test-module-pathnames) (asdf:load-system 'test-module-pathnames)
......
;;; -*- Lisp -*- ;;; -*- Lisp -*-
(load-asdf)
(in-package :asdf) (in-package :asdf)
(use-package :asdf-test) (use-package :asdf-test)
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
;;; check that added nesting via modules doesn't confuse ASDF ;;; check that added nesting via modules doesn't confuse ASDF
(load-asdf)
(progn (progn
(setf asdf:*central-registry* nil) (setf asdf:*central-registry* nil)
......
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