Also, make script re-loadable in a debug session.
:licence "MIT"
:description "Another System Definition Facility"
: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 ()
:components ((:module "build" :components ((:file "asdf"))))
: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 -*-
-;;; 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:
;;; please mail to <asdf-devel@common-lisp.net>.
On ECL or MKCL, it creates both the linkable object and loadable fasl files.
On implementations that erroneously do not recognize standard keyword arguments,
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
- `(: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))
- (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
(object-file
(unless (use-ecl-byte-compiler-p)
(or object-file
(compile-file-pathname output-file :fasl-p nil)))
(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)
(with-saved-deferred-warnings (warnings-file)
(or #-(or ecl mkcl) (apply 'compile-file input-file :output-file tmp-file keywords)
#+ecl (apply 'compile-file input-file :output-file
(if object-file
(list* object-file :system-p t keywords)
- (list* output-file keywords)))
+ (list* tmp-file keywords)))
#+mkcl (apply 'compile-file input-file
:output-file object-file :fasl-p nil keywords)))
(cond
;;; -*- Lisp -*-
(in-package :asdf-test)
-(load-asdf)
+
;;(setf *unspecific-pathname-type* nil)
echo "Testing: $i" >&2
test_count=`expr "$test_count" + 1`
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
test_pass=`expr "$test_pass" + 1`
else
echo "or more interactively (and maybe with rlwrap or in emacs), start with:" >&2
echo "(cd test ; $cmd )" >&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
echo >&2
echo >&2
;;; -*- Lisp -*-
-(load-asdf)
+
(defun call-in-base-2 (thunk)
(let ((*read-base* 2))
;;; -*- Lisp -*-
-(load-asdf)
+
;;(trace source-file-type)
;;; -*- Lisp -*-
-(load-asdf)
+
(in-package :asdf-test)
;;;---------------------------------------------------------------------------
;;; -*- Lisp -*-
-(load-asdf)
+
(progn
#-gcl<2.7
;;; -*- Lisp -*-
-(load-asdf)
+
(def-test-system :test-concatenate-source
:depends-on (:file3-only)
;;; -*- Lisp -*-
-(load-asdf)
+
(in-package :asdf)
(use-package :asdf-test)
;;; -*- Lisp -*-
-(load-asdf)
+
(defparameter *lambda-string* nil)
;;; -*- Lisp -*-
-(load-asdf)
+
(asdf:operate 'asdf:load-op 'test-force)
;;; -*- Lisp -*-
-(load-asdf)
+
#-gcl<2.7
(setf (logical-pathname-translations "ASDF")
;;;---------------------------------------------------------------------------
-(load-asdf)
+
(def-test-system test-missing-lisp-file
;;; -*- Lisp -*-
-(load-asdf)
+
(asdf:load-system 'test-module-depend)
;;; -*- Lisp -*-
-(load-asdf)
+
;;;---------------------------------------------------------------------------
;;; Here's what we are trying to test. Let us say we have a system X that
;;; -*- Lisp -*-
-(load-asdf)
+
(progn
(asdf:load-system 'test-module-pathnames)
;;; -*- Lisp -*-
-(load-asdf)
+
(in-package :asdf)
(use-package :asdf-test)
;;; check that added nesting via modules doesn't confuse ASDF
-(load-asdf)
+
(progn
(setf asdf:*central-registry* nil)
;;; -*- Lisp -*-
-(load-asdf)
+
(in-package :cl-user)
(asdf-test::with-test ()
(defun module () 1)
;;; -*- Lisp -*-
-(load-asdf)
+
(progn
+++ /dev/null
-;;; -*- Lisp -*-
-(asdf:defsystem test-redundant-recompile
- :components ((:file "file2" :in-order-to ((compile-op (load-op "file1"))
- (load-op (load-op "file1"))))
- (:file "file1")))
-
-#|
-;;;This test system definition attempts to replicate the excess dependencies
-;;;that seem to give rise to launchpad bug 590517
-;;;(https://bugs.launchpad.net/asdf/+bug/590517)
-
-1) from clean, check that all fasl files build and that some function
- defined in the second file is present
-
-2) load again. Check to make sure that nothing is recompiled.
-|#
;;; -*- Lisp -*-
+#|
+;;;This test system definition attempts to replicate the excess dependencies
+;;;that seem to give rise to launchpad bug 590517
+;;;(https://bugs.launchpad.net/asdf/+bug/590517)
-(load-asdf)
+1) from clean, check that all fasl files build and that some function
+ defined in the second file is present
-(asdf:operate 'asdf:load-op 'test-redundant-recompile)
+2) load again. Check to make sure that nothing is recompiled.
+|#
+
+(def-test-system test-redundant-recompile
+ :components ((:file "file2" :in-order-to ((compile-op (load-op "file1"))
+ (load-op (load-op "file1"))))
+ (:file "file1")))
+
+
+(load-system 'test-redundant-recompile)
;; test that it compiled
(defparameter file1 (test-fasl "file1"))
(defparameter file2 (test-fasl "file2"))
;;; test asdf:try-recompiling restart
-(load-asdf)
+
(defvar *caught-error* nil)
(progn
(DBG "trlc1 1")
;;; -*- Lisp -*-
-(load-asdf)
+
;;; TODO: write tests for run-program/ instead -- and/or
;;; import those from the original xcvb-driver-test
;;; -*- Lisp -*-
-(load-asdf)
+
(DBG "loading test-samedir-modules")
(asdf:operate 'asdf:load-op 'test-samedir-modules)
;;; -*- Lisp -*-
-(load-asdf)
+
;;(trace asdf::source-file-type asdf::source-file-explicit-type)
don't cause full rebuilds all the time...
|#
-(load-asdf)
+
(in-package :asdf-test)
;;; -*- Lisp -*-
-(load-asdf)
+
(progn
(asdf:initialize-source-registry '(:source-registry :ignore-inherited-configuration))
;;; -*- Lisp -*-
-(load-asdf)
+
(progn
(asdf:load-system 'test-system-pathnames)
;;; test system def reloading if touched
;;; system that can be found using *system-definition-search-functions*
-(load-asdf)
+
(defun system-load-time (name)
(if-let (data (asdf::system-registered-p name))
;;; system that canNOT be found using *system-definition-search-functions*
-(load-asdf)
+
(progn
(flet ((system-load-time (name)
(let ((data (asdf::system-registered-p name)))
;;; test asdf:try-recompiling restart
-(load-asdf)
+
(defparameter *caught-error* nil)
(delete-file-if-exists (test-fasl "try-recompiling-1"))
;;; -*- Lisp -*-
-(load-asdf)
+
#+scl
(require :http-library)
;;; -*- Lisp -*-
-(load-asdf)
+
#+scl
(require :http-library)
;;; -*- Lisp -*-
-(load-asdf)
+
(in-package :asdf)
(use-package :asdf-test)
;;; -*- Lisp -*-
-(load-asdf)
+
(progn
(def-test-system :versioned-system-1
;;; -*- Lisp -*-
-(load-asdf)
+
;;;---------------------------------------------------------------------------
;;; Check to see if a weakly-depended-on system, which is present in the
;;;---------------------------------------------------------------------------
-(load-asdf)
+
(asdf:load-system 'test-weakly-depends-on-unpresent)
;; test that it compiled
;;; -*- Lisp -*-
-(load-asdf)
+
#+gcl (trace load compile-file asdf:perform asdf::perform-plan)
(progn
;;; -*- Lisp -*-
-(load-asdf)
+
(touch-file (test-source "test1.asd") :offset -3600) ;; touch test1.asd an hour ago.
(defparameter *date* (file-write-date (test-source "test1.asd")))
;;; -*- Lisp -*-
-(load-asdf)
+
(DBG "test2: loading test2b1")
(asdf:load-system 'test2b1)
;;; -*- Lisp -*-
-(load-asdf)
+
(defparameter *fasl1* (test-fasl "file1.lisp"))
(defparameter *fasl2* (test-fasl "file2.lisp"))
;;; make sure we get a missing-component error
-(load-asdf)
+
(in-package :asdf-test)
(progn
;;; make sure we get a missing-component-of-version error
-(load-asdf)
+
(progn
(handler-case
;;; -*- Lisp -*-
-(load-asdf)
+
(progn
(load (asdf::subpathname *asdf-directory* "contrib/wild-modules.lisp"))
(def-test-system :wild-module
;; "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.129")
+ (asdf-version "2.26.130")
(existing-asdf (find-class (find-symbol* :component :asdf nil) nil))
(existing-version *asdf-version*)
(already-there (equal asdf-version existing-version))