diff --git a/asdf.asd b/asdf.asd index a96c5d20053a127cc43dbc9d9cdc9d1a82f1e5b1..745085b8371a3f1faccf37432019ac965f601407 100644 --- a/asdf.asd +++ b/asdf.asd @@ -74,7 +74,7 @@ :licence "MIT" :description "Another System Definition Facility" :long-description "ASDF builds Common Lisp software organized into defined systems." - :version "3.0.1.6" ;; to be automatically updated by make bump-version + :version "3.0.1.7" ;; to be automatically updated by make bump-version :depends-on () #+asdf3 :encoding #+asdf3 :utf-8 ;; For most purposes, asdf itself specially counts as a builtin system. diff --git a/header.lisp b/header.lisp index 6d011e8d2036df3c42a54a302a24cdbc6a432b38..04e6ee90af0cd08046e61ade24777f76f9b7010f 100644 --- a/header.lisp +++ b/header.lisp @@ -1,5 +1,5 @@ ;;; -*- mode: Common-Lisp; Base: 10 ; Syntax: ANSI-Common-Lisp -*- -;;; This is ASDF 3.0.1.6: Another System Definition Facility. +;;; This is ASDF 3.0.1.7: Another System Definition Facility. ;;; ;;; Feedback, bug reports, and patches are all welcome: ;;; please mail to <asdf-devel@common-lisp.net>. diff --git a/uiop/lisp-build.lisp b/uiop/lisp-build.lisp index 641843df4b4524ff280b179fb417dfde1e6797e7..dbc13e613a6c8b0c8ecc9ed2550909db72af5a0a 100644 --- a/uiop/lisp-build.lisp +++ b/uiop/lisp-build.lisp @@ -570,7 +570,7 @@ possibly in a different process. Otherwise just run the BODY." (defun* (compile-file*) (input-file &rest keys &key compile-check output-file warnings-file - #+clisp lib-file #+(or ecl mkcl) object-file + #+clisp lib-file #+(or ecl mkcl) object-file #+sbcl emit-cfasl &allow-other-keys) "This function provides a portable wrapper around COMPILE-FILE. It ensures that the OUTPUT-FILE value is only returned and @@ -611,12 +611,23 @@ it will filter them appropriately." (or object-file (compile-file-pathname output-file :fasl-p nil))) (tmp-file (tmpize-pathname output-file)) + #+sbcl + (cfasl-file (etypecase emit-cfasl + (null nil) + ((eql t) (make-pathname :type "cfasl" :defaults output-file)) + (string (parse-namestring emit-cfasl)) + (pathname emit-cfasl))) + #+sbcl + (tmp-cfasl (when cfasl-file (make-pathname :type "cfasl" :defaults tmp-file))) #+clisp (tmp-lib (make-pathname :type "lib" :defaults tmp-file))) (multiple-value-bind (output-truename warnings-p failure-p) (with-saved-deferred-warnings (warnings-file) (with-muffled-compiler-conditions () - (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 + #+sbcl (if emit-cfasl (list* :emit-cfasl tmp-cfasl keywords) keywords) + #-sbcl keywords) #+ecl (apply 'compile-file input-file :output-file (if object-file (list* object-file :system-p t keywords) @@ -641,11 +652,14 @@ it will filter them appropriately." (delete-file-if-exists output-file) (when output-truename #+clisp (when lib-file (rename-file-overwriting-target tmp-lib lib-file)) + #+sbcl (when cfasl-file (rename-file-overwriting-target tmp-cfasl cfasl-file)) (rename-file-overwriting-target output-truename output-file) (setf output-truename (truename output-file))) #+clisp (delete-file-if-exists tmp-lib)) (t ;; error or failed check (delete-file-if-exists output-truename) + #+clisp (delete-file-if-exists tmp-lib) + #+sbcl (delete-file-if-exists tmp-cfasl) (setf output-truename nil))) (values output-truename warnings-p failure-p)))) diff --git a/uiop/stream.lisp b/uiop/stream.lisp index 8e4727abbc60a197f94bcb11e5eddba101bba397..8cb16ca211d072905d8ed481e4b422ba885e65a2 100644 --- a/uiop/stream.lisp +++ b/uiop/stream.lisp @@ -94,7 +94,7 @@ hopefully, if done consistently, that won't affect program behavior too much.") and implementation-defined external-format's") (defun encoding-external-format (encoding) - (funcall *encoding-external-format-hook* encoding))) + (funcall *encoding-external-format-hook* (or encoding *default-encoding*)))) ;;; Safe syntax diff --git a/upgrade.lisp b/upgrade.lisp index d28aa8f5930908f2219d49135176f1615649f95b..5c53f9607c95e4a51e69e0023964daa2cba63407 100644 --- a/upgrade.lisp +++ b/upgrade.lisp @@ -52,7 +52,7 @@ You can compare this string with e.g.: (ASDF:VERSION-SATISFIES (ASDF:ASDF-VERSIO ;; "3.4.5.67" would be a development version in the official upstream of 3.4.5. ;; "3.4.5.0.8" would be your eighth local modification of official release 3.4.5 ;; "3.4.5.67.8" would be your eighth local modification of development version 3.4.5.67 - (asdf-version "3.0.1.6") + (asdf-version "3.0.1.7") (existing-version (asdf-version))) (setf *asdf-version* asdf-version) (when (and existing-version (not (equal asdf-version existing-version))) diff --git a/version.lisp-expr b/version.lisp-expr index 21342a4b6482665282a2d0a707f817f687d19e44..bc72624a5116b1bd68281d9631c13742f5cdff8d 100644 --- a/version.lisp-expr +++ b/version.lisp-expr @@ -1 +1 @@ -"3.0.1.6" +"3.0.1.7"