On Fri, 16 Apr 2004, David Steuber wrote:
> I've seen this documentation:
> ;; This isn't really a target Lisp feature at all, but controls
> ;; whether the build process produces an after-xc.core file. This
> ;; can be useful for shortening the edit/compile/debug cycle when
> ;; you modify SBCL's own source code, as in slam.sh. Otherwise
> ;; you don't need it.
> ; :sb-after-xc-core
> But I am not quite clear on something. Is this feature supposed to
> allow me to reduce build times when I update from CVS? If so, it
> doesn't seem to do that. If not, I guess I should just take it out
> of my customize-target-features.lisp file.
Hopefully someone will hit me with a stick if a get something wrong...
"If you're lucky."
The after-xc-core is a way to shortcut the build-procedure by saving a
host-lisp core after the cross-compiler has been built. It can by utilized
by building with slam.sh instead of make.sh: only those target files (and
those later in build-order.lisp-expr) that have changed will be rebuilt,
the cross-compiler is not rebuilt at all.
To use it you must build with the same host lisp that saved the
after-xc-core, and hope that things that need to be built for the
cross-compiler have not changed.
If all this holds true, it can provide a hefty speedup, but I would not
personally recommed it for just rebuilding from the CVS -- I believe it's
essentially intended to be used by lazy sbcl hackers who know/think/hope
that whatever they have changed doesn't require a full build.
In the same vein loading src/cold/chill.lisp into a live sbcl will allow
loading some bits and pieces of sbcl codebase into the thusly chilled
sbcl, allowing experimentation without even slamming -- but neither this
will work for all of the codebase.