Robert Dodier wrote:
> On 7/19/07, Raymond Toy <raymond.toy at ericsson.com> wrote:
>
>> > If we do create a defsystem file, can we set it up so that
>> > it doesn't ask any questions? Defsystem is the orgin of
>> > the "Should I compile while loading?" and other stuff
>> > like that, right? That drives me bonkers.
>>
>> How do you invoke mk:oos? I always do (mk:oos "foo" :compile) so it
>> compiles and loads. I don't think mk:oos will ask any other questions
>> unless some file can't be found or can't be written or some other error.
>
> From what I can tell, the questions appear if MK:LOAD-SYSTEM
> or MK:OOS "FOO" :LOAD is called, but not MK:COMPILE-SYSTEM
> or MK:OOS "FOO" :COMPILE. Of the packages in share which have
> defsystem files, sym and lapack use defsystem compile and affine
> uses defsystem load, so affine generates the questions
> while sym and lapack do not.
Ok. Looking at defsystem.lisp, there's *compile-during-load*, which
defaults to :query. We could set this to T, which means compile during
load. But I think (mk:oos "foo" :compile) is better. Or we change
*compile-during-load* to NIL, so we really just load without compiling
(I think). Or change those places which do (mk:oos "foo" :load) to use
:compile or to use (mk:oos "foo" :load :compile-during-load nil)
>
> I will change affine to call defsystem compile.
> From what you wrote above, I guess you are already planning
> to have linearalgebra use defsystem compile, too, so that's good.
Since it's not my module, I will let someone else make that decision.
:-) But if he wants to use defsystem, I'll help make it work. I think
using defsystem for this kind of stuff is a good idea since we already
have it, and it's a nice way to document how things are built.
Ray