Fixes and refactoring of asdf/bundle and uiop/image for ECL.
Testing the latest cl-launch with ECL showed massive bitrot in the bundle support for ECL. * Make better use of ASDF3's class hierarchy in redefining asdf/bundle, by removing and adding the mixins: goodbye bundle-compile-op and monolithic-, hello link-op and gather-op. Also, reinstate bundle-system as a class to hold prologue and epilogue (but do we need these, now with portable ASDF3 image support?) * rename binary-op to deliver-asd-op, same for monolithic- * Introduce image-op as a superclass of program-op, for dumping an executable image with the regular top-level. * Redo the way operation flags are or aren't propagated: gather-op explicitly does not pass the flags, so toplevel options are for the toplevel build only -- though they belong to the system, not the operation. Therefore get rid of no-ld-flags-op -- if there are flags to pass, they should be passed explicitly in gather-op; or more likely, they might be slots in the system, or the plan, or special variables for the current session. OPERATE tries harder to preserve the original-initargs, which are not clobbered by asdf/bundle's initialize-instance anymore. * Punt for command-line-arguments on LispWorks, so the user has a slight chance of setting them.
Showing
- bin/install-asdf-as-module 1 addition, 1 deletionbin/install-asdf-as-module
- bundle.lisp 113 additions, 114 deletionsbundle.lisp
- interface.lisp 2 additions, 2 deletionsinterface.lisp
- operate.lisp 4 additions, 1 deletionoperate.lisp
- test/hello.lisp 3 additions, 1 deletiontest/hello.lisp
- test/test-bundle.script 0 additions, 1 deletiontest/test-bundle.script
- test/test-operation-classes.script 19 additions, 18 deletionstest/test-operation-classes.script
- uiop/image.lisp 22 additions, 11 deletionsuiop/image.lisp
Loading
Please register or sign in to comment