diff --git a/TODO b/TODO index 9961aa737aa8b7ddd1080596dbc40f8848ac628b..b87b774d04b995ab60fbe93660045677d8fee212 100644 --- a/TODO +++ b/TODO @@ -1,3 +1,4 @@ +* 2.6.134: fix u (abcl, ccl, clisp, cmucl) * Learn to use cl-grid-test, to make sure ASDF changes don't break stuff, and that breakage gets fixed quickly. * Test stassats's thing: diff --git a/asdf.asd b/asdf.asd index 4c9d4a618170f8898805c52c28b379a03ffc646b..59d359c64206134f3f30cf6e87abd5b88096e0c0 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.134" ;; to be automatically updated by make bump-version + :version "2.26.135" ;; 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)))) diff --git a/bundle.lisp b/bundle.lisp index cc3639b9adeabab08d81ba767dd49b6eacd4c3c2..cc4348524023b6be0e7464fe17989e37ae170074 100644 --- a/bundle.lisp +++ b/bundle.lisp @@ -455,21 +455,18 @@ (let* ((object-files (input-files o c)) (output (output-files o c)) (bundle (first output)) - (kind (bundle-type o)) - (init-name (c::compute-init-name bundle :kind kind))) - (apply #'c::builder kind (first output) - :init-name init-name - :lisp-files (append object-files (bundle-op-lisp-files o)) - (append (bundle-op-build-args o) - (when (and (typep o 'monolithic-bundle-op) - (monolithic-op-prologue-code o)) - `(:prologue-code ,(monolithic-op-prologue-code o))) - (when (typep o 'program-op) - `(:epilogue-code - (restore-image :entry-point ,(component-entry-point c)))) - (when (and (typep o 'monolithic-bundle-op) - (monolithic-op-epilogue-code o)) - `(:epilogue-code ,(monolithic-op-epilogue-code o))))))) + (kind (bundle-type o))) + (create-image + bundle (append object-files (bundle-op-lisp-files o)) + :kind kind + :entry-point (component-entry-point c) + :prologue-code + (when (typep o 'monolithic-bundle-op) + (monolithic-op-prologue-code o)) + :epilogue-code + (when (typep o 'monolithic-bundle-op) + (monolithic-op-epilogue-code o)) + :build-args (bundle-op-build-args o)))) #+mkcl (progn diff --git a/header.lisp b/header.lisp index ac7316435ff5b8a324efb94f9be186c7c1443a84..5fd35d9e2ad9c20c697fec4b85a98b9f9fcb148e 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.134: Another System Definition Facility. +;;; This is ASDF 2.26.135: Another System Definition Facility. ;;; ;;; Feedback, bug reports, and patches are all welcome: ;;; please mail to . diff --git a/image.lisp b/image.lisp index 9eb79349ab3296a7044563b669381be7718a66c3..2ac9af46f520c41a8c8824b1708db924ef878e0c 100644 --- a/image.lisp +++ b/image.lisp @@ -202,8 +202,8 @@ This is designed to abstract away the implementation specific quit forms." (defun* command-line-arguments (&optional (arguments (raw-command-line-arguments))) "Extract user arguments from command-line invocation of current process. -Assume the calling conventions of an XCVB-generated script -if we are not called from a directly executable image dumped by XCVB." +Assume the calling conventions of a generated script that uses -- +if we are not called from a directly executable image." #+abcl arguments #-abcl (let* (#-(or sbcl allegro) @@ -292,22 +292,27 @@ if we are not called from a directly executable image dumped by XCVB." #+ecl (defun create-image (destination object-files - &key kind output-name - (prelude () preludep) (entry-point () entry-point-p)) + &key kind output-name prologue-code epilogue-code + (prelude () preludep) (entry-point () entry-point-p) build-args) ;; Is it meaningful to run these in the current environment? ;; only if we also track the object files that constitute the "current" image, ;; and otherwise simulate dump-image, including quitting at the end. ;; (standard-eval-thunk *image-postlude*) (call-image-dump-hook) - (check-type kind (member :program :shared-library)) - (c::builder - kind (pathname destination) - :lisp-files object-files - :init-name (c::compute-init-name (or output-name destination) :kind kind) - :epilogue-code - (when (eq kind :program) - `(restore-image ;; default behavior would be (si::top-level) - ,@(when preludep `(:prelude ',prelude)) - ,@(when entry-point-p `(:entry-point ',entry-point)))))) + (check-type kind (member :binary :dll :lib :static-library :program :object :fasl :program)) + (apply 'c::builder + kind (pathname destination) + :lisp-files object-files + :init-name (c::compute-init-name (or output-name destination) :kind kind) + :prologue-code prologue-code + :epilogue-code + `(progn + ,epilogue-code + ,@(when (eq kind :program) + `((setf *image-dumped-p* :executable) + (restore-image ;; default behavior would be (si::top-level) + ,@(when preludep `(:prelude ',prelude)) + ,@(when entry-point-p `(:entry-point ',entry-point)))))) + build-args)) ;;; Some universal image restore hooks diff --git a/upgrade.lisp b/upgrade.lisp index cc4060ca6381c5bdfc5554a39213cab753b05588..ea90fd3806f8f54f43088a86896af8478a8c0e9d 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.134") + (asdf-version "2.26.135") (existing-asdf (find-class (find-symbol* :component :asdf nil) nil)) (existing-version *asdf-version*) (already-there (equal asdf-version existing-version)) diff --git a/version.lisp-expr b/version.lisp-expr index 8c8928fe74aa1f980c0e2869697f0e20a35b90cc..96abedb0cd450ea8f9fb82b5f6494538e591c1e7 100644 --- a/version.lisp-expr +++ b/version.lisp-expr @@ -1 +1 @@ -"2.26.134" +"2.26.135"