• Francois-Rene Rideau's avatar
    Fixes and refactoring of asdf/bundle and uiop/image for ECL. · c52a4f83
    Francois-Rene Rideau authored
    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.
    c52a4f83
operate.lisp 9.89 KB