On Wed, Feb 20, 2013 at 12:05 AM, Faré fahree@gmail.com wrote:
On Tue, Feb 19, 2013 at 11:27 PM, Dave Cooper david.cooper@genworks.com wrote:
When "saving a world" (i.e. "dumping" an image, e.g. "dumplisp" in
Allegro
CL), which has asdf (and quicklisp) loaded in it, what is the proper way
to
clear the output-translations and any other local path residue from
ending
up in the saved image?
If you're using ASDF3's program-op or the underlying dump-image, then you don't need do anything to clean up the output-translations: it's all handled for you using the *image-dump-hook*.
On ASDF2, I recommend using (asdf:clear-configuration) before you dump an image.
Holy Cow I started looking through ADSF3 (asdf 2.29) and it is starting to do everything under the sun!
Sorry I have just joined this list now, please stop me if I start discussing too much redundant stuff for which I should be reading the archives...
The new functionality like the ASDF/DRIVER compatibility layer, dumping images, and concatenated fasls look really useful and have potential to simplify things on our end a lot. So ASDF/DRIVER has superseded asdf-utils, right? The functions in "10.3 Miscellaneous Functions" of the documentation are the main functions now in ASDF/DRIVER? Or I suppose there are a lot more now -- and the main documentation for the moment are in the source code (understandable).
For dumping of images, I see for Allegro CL this maps to excl:dumplisp with only a couple of keyword arguments, which is fine for basic dumping of images when there's not a lot of need of fine control. As you may or may not know, Allegro CL has a couple other ways of making executable images: excl:generate-application and excl:build-lisp-image. For our distributions we sometimes have to call these functions instead of excl:dumplisp. When the ASDF3 dust has settled a bit and I understand the workings of ASDF3 a bit better, I hope I (or somebody -- maybe somebody from Franz?) will be able to extend the image-dumping support in ASDF to handle these Allegro CL functions as well. But, these functions take many (maybe dozens) of keyword arguments, so maybe it starts to go beyond what a reasonable portability layer like what ASDF is trying to achieve should be trying to provide... (actually excl:dumplisp takes many of the same keyword arguments as well... so I suppose the answer is that if one needs that find level of control, one had better go ahead and directly call the native version).
Anyway for the time being, if I am using ASDF3 with Allegro CL, and want to use excl:generate-application or excl:build-lisp-image, in order to clear the configuration, is the
(asdf:clear-configuration)
still going to work as in ASDF2?
That is, when a new user starts the image on a target machine, it should
be
forced to re-initialize the output-translations to the appropriate path
for
the new user (e.g. ~/.cache/common-lisp/... with respect to new user's
home
directory).
Indeed.
Regards,
—♯ƒ • François-René ÐVB Rideau •Reflection&Cybernethics• http://fare.tunes.org An insult may sometimes adequately fit the person who is insulted. However, it can only ever possibly tarnish but the person who insults.