diff --git a/Makefile b/Makefile index e03ea608237291b6937b0023fda3eb07871768ef..4f0b416c8e457d648c2e406b7ce9273496993299 100644 --- a/Makefile +++ b/Makefile @@ -34,7 +34,12 @@ XCL ?= xcl # website, tag, install -default: test +driver_lisp := header.lisp package.lisp compatibility.lisp utility.lisp pathname.lisp stream.lisp os.lisp image.lisp run-program.lisp lisp-build.lisp configuration.lisp driver.lisp +asdf_lisp := upgrade.lisp component.lisp system.lisp find-system.lisp find-component.lisp operation.lisp action.lisp lisp-action.lisp plan.lisp operate.lisp output-translations.lisp source-registry.lisp backward-internals.lisp defsystem.lisp bundle.lisp concatenate-source.lisp backward-interface.lisp interface.lisp footer.lisp + +build/asdf.lisp: $(wildcard *.lisp) + mkdir -p build + cat $(driver_lisp) $(asdf_lisp) > $@ install: archive-copy @@ -51,13 +56,6 @@ archive-copy: archive build/asdf.lisp ${MAKE} push git checkout master -driver_lisp := header.lisp package.lisp compatibility.lisp utility.lisp pathname.lisp stream.lisp os.lisp image.lisp run-program.lisp lisp-build.lisp configuration.lisp driver.lisp -asdf_lisp := upgrade.lisp component.lisp system.lisp find-system.lisp find-component.lisp operation.lisp action.lisp lisp-action.lisp plan.lisp operate.lisp output-translations.lisp source-registry.lisp backward-internals.lisp defsystem.lisp bundle.lisp concatenate-source.lisp backward-interface.lisp interface.lisp footer.lisp - -build/asdf.lisp: $(wildcard *.lisp) - mkdir -p build - cat $(driver_lisp) $(asdf_lisp) > $@ - wc: @wc $(driver_lisp) | sort -n ; echo ; \ wc $(asdf_lisp) | sort -n ; \ diff --git a/asdf.asd b/asdf.asd index ba607e8f8698796191723eb50f5ef364e90b9c46..7a453216cf78690edda73093684cedcc871f5a3d 100644 --- 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.96" ;; to be automatically updated by bin/bump-revision + :version "2.26.97" ;; 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)))) diff --git a/bin/bump-version b/bin/bump-version index d3902c6baa0ae1770648b09f02f9ae61594b7897..f79f21c0491016c9f647f6a5bf214c499a586a96 100755 --- a/bin/bump-version +++ b/bin/bump-version @@ -14,9 +14,9 @@ (format t "Upgrading to the latest ASDF... ~%") (upgrade-asdf) (format t "Now loading some dependencies... ~%") -(load-systems :cl-ppcre :xcvb-utils) +(load-systems :cl-ppcre :fare-utils) -(in-package :xcvb-utils) +(in-package :fare-utils) (format t "And the debug utilities... ~%") (asdf-debug) diff --git a/header.lisp b/header.lisp index c50e369b400c8738ecb86cc21e05e6f3f39c1f96..7f6c07b8dfc9ead4405d975f5990004c368bf80e 100644 --- a/header.lisp +++ b/header.lisp @@ -1,5 +1,5 @@ ;; -*- mode: Common-Lisp; Base: 10 ; Syntax: ANSI-Common-Lisp ; coding: utf-8 -*- -;;; This is ASDF 2.26.96: Another System Definition Facility. +;;; This is ASDF 2.26.97: Another System Definition Facility. ;;; ;;; Feedback, bug reports, and patches are all welcome: ;;; please mail to . diff --git a/lisp-build.lisp b/lisp-build.lisp index fd90b0163823f29631c43a552463fdf01d12b989..071a8b1cc474986c8ba4729186adab1086170a12 100644 --- a/lisp-build.lisp +++ b/lisp-build.lisp @@ -178,7 +178,8 @@ for processing later (possibly in a different process)." (call-function (or hook 'funcall) function)) (defun* compile-file* (input-file &rest keys &key compile-check output-file &allow-other-keys) - (let* ((keywords (remove-keys '(:compile-check #+gcl<2.7 :external-format) keys)) + (let* ((keywords (remove-keys + `(:compile-check #+gcl<2.7 ,@'(:external-format :print :verbose)) keys)) (output-file (apply 'compile-file-pathname* input-file :output-file output-file keywords)) (tmp-file (tmpize-pathname output-file)) (status :error)) diff --git a/os.lisp b/os.lisp index 6b2c037c2563b0ee83a8b286a41599ad48df415d..d3e80e0152524e17021af0c02e2b3c381e9770d9 100644 --- a/os.lisp +++ b/os.lisp @@ -279,7 +279,10 @@ then returning the non-empty string value of the variable" (or *temporary-directory* (default-temporary-directory))) (defun setup-temporary-directory () - (setf *temporary-directory* (default-temporary-directory))) + (setf *temporary-directory* (default-temporary-directory)) + ;; basic lack fixed after gcl 2.7.0-61, but ending / required still on 2.7.0-64.1 + #+gcl (setf system::*tmp-dir* *temporary-directory*)) + (defun* call-with-temporary-file (thunk &key diff --git a/package.lisp b/package.lisp index 7b8c3338aac98811bc50d4175f4e4e3fb115ca91..f8b0839a6fd408a497bf8dd0ed2f639bc4a84342 100644 --- a/package.lisp +++ b/package.lisp @@ -585,7 +585,7 @@ or when loading the package is optional." (remove "asdf" excl::*autoload-package-name-alist* :test 'equalp :key 'car)) ; We need that BEFORE any mention of package ASDF. (unless (member :asdf2.27 *features*) - #+clisp + #+(or clisp xcl) (progn (when (find-package :asdf) (delete-package* :asdf t)) diff --git a/pathname.lisp b/pathname.lisp index 2f9dd94699154ecf9065bd4faf8e25cff7416270..9b062848f33aa84746b7e179740adcfc2b45e6de 100644 --- a/pathname.lisp +++ b/pathname.lisp @@ -261,8 +261,14 @@ actually-existing directory." ;;; Probing the filesystem (defun* nil-pathname (&optional (defaults *default-pathname-defaults*)) - (make-pathname* :directory nil :name nil :type nil :version nil :device nil :host nil - :defaults defaults)) ;; The defaults shouldn't matter + ;; 19.2.2.2.1 says a NIL host can mean a default host; + ;; see also "valid physical pathname host" in the CLHS glossary, that suggests + ;; strings and lists of strings or :unspecific + ;; But CMUCL decides to die on NIL. + (make-pathname* :directory nil :name nil :type nil :version nil :device nil + :host (or #+cmu lisp::*unix-host*) + ;; the default shouldn't matter, but we really want something physical + :defaults defaults)) (defmacro with-pathname-defaults ((&optional defaults) &body body) `(let ((*default-pathname-defaults* ,(or defaults (nil-pathname)))) ,@body)) diff --git a/stream.lisp b/stream.lisp index af143acfffbfb0ad927755db1a94ef288602fed2..3a75d5dcd0618f8ebd1e318a55ae493eb20809af 100644 --- a/stream.lisp +++ b/stream.lisp @@ -25,11 +25,15 @@ (defvar *default-stream-element-type* (or #+(or abcl cmu cormanlisp scl xcl) 'character :default) "default element-type for open (depends on the current CL implementation)") -(defvar *stderr* #-clozure *error-output* #+clozure ccl::*stderr* +(defvar *stderr* *error-output* "the original error output stream at startup") (defun setup-stderr () - (setf *stderr* #-clozure *error-output* #+clozure ccl::*stderr*)) + (setf *stderr* + #+allegro excl::*stderr* + #+clozure ccl::*stderr* + #-(or allegro clozure) *error-output*)) +(setup-stderr) ;;; Safe syntax diff --git a/test/run-tests.sh b/test/run-tests.sh index d8969012a1474292077dfb20e7306c0da17270c9..6167d3b4fe4c3ab35123ba6ede6c54fdc224eacb 100755 --- a/test/run-tests.sh +++ b/test/run-tests.sh @@ -291,7 +291,7 @@ clean_up () { } test_clean_load () { case $lisp in - gcl) return 0 ;; # GCL 2.6 is hopeless + gcl|cmucl) return 0 ;; # These are hopeless esac nop=build/results/${lisp}-nop.text load=build/results/${lisp}-load.text diff --git a/test/script-support.lisp b/test/script-support.lisp index d4f278368713f732e77d309c63738bebe36889d1..0423cb328ae9041350c8c09f6ebc0320bd09f482 100644 --- a/test/script-support.lisp +++ b/test/script-support.lisp @@ -243,6 +243,7 @@ is bound, write a message and exit on an error. If (apply (asym :oos) (asym :load-op) :asdf keys))) (defun call-with-asdf-conditions (thunk &optional verbose) + (declare (ignorable verbose)) (handler-bind (#+sbcl ((or sb-c::simple-compiler-note sb-kernel:redefinition-warning) #'muffle-warning) diff --git a/upgrade.lisp b/upgrade.lisp index b58fed57a78b0d3eb613f3e1f30ce25a861828c6..40ac0d3a05f000e75c652519dcff24e203a384e5 100644 --- a/upgrade.lisp +++ b/upgrade.lisp @@ -35,7 +35,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.96") + (asdf-version "2.26.97") (existing-asdf (find-class (find-symbol* :component :asdf nil) nil)) (existing-version *asdf-version*) (already-there (equal asdf-version existing-version))) diff --git a/utility.lisp b/utility.lisp index 78f9b6630f00a619a12e36e747232e33f53b5549..4a2621c37072a170023e2c5877009d4886f24b00 100644 --- a/utility.lisp +++ b/utility.lisp @@ -293,7 +293,7 @@ with later being determined by a lexicographical comparison of minor numbers." #+(or cmu scl) 'conditions::format-control #+(or gcl lispworks) 'conditions::format-string #+sbcl 'sb-kernel:format-control - #-(or abcl allegro clisp clozure cmu gcl lispworks sbcl scl) nil + #-(or abcl allegro clisp clozure cmu ecl gcl lispworks sbcl scl) nil "Name of the slot for FORMAT-CONTROL in simple-condition") (defun* match-condition-p (x condition) diff --git a/version.lisp-expr b/version.lisp-expr index 2b5fa4d8747d40cef1f2b0eadbae530595088779..061b942edbbf04112e535ef4d4136e32880dae25 100644 --- a/version.lisp-expr +++ b/version.lisp-expr @@ -1 +1 @@ -"2.26.96" +"2.26.97"