[asdf-devel] always load/compile from sources.
Pascal J. Bourguignon
pjb at informatimago.com
Fri Mar 16 19:00:01 UTC 2012
Robert Goldman <rpgoldman at sift.info> writes:
> On 3/15/12 Mar 15 -9:05 PM, Pascal J. Bourguignon wrote:
>> Hi!
>>
>> I have a file swank-stuff.lisp that uses swank if available, with forms
>> such as:
>>
>> #+swank (in-package :swank)
>> #+swank …
>>
>> It contains also definitions that are alway available.
>>
>> If I define it as:
>>
>> (:file "swank-stuff" :depends-on ("other-stuff"))
>>
>> and compile it when I have swank, it produces a .fasl that contains a
>> toplevel (in-pacakge :swank). Therefore when I load the system in an
>> image without swank, it produces this error:
>>
>> ; Loading "com.informatimago.lse.unix-cli"
>> .
>> > Error: There is no package named "SWANK" .
>> > While executing: ccl::set-package, in process listener(1).
>>
>> I tried to define it as:
>>
>> (:file "swank-stuff"
>> :depends-on ("other-stuff")
>> :in-order-to ((asdf:load-op (asdf:compile-op "swank-stuff"))))
>>
>> but it still doesn't work. Is there a way to make it so that
>> swank-stuff is always loaded/compiled from source, instead of from the
>> .fasl file?
>
> Sorry, why should that definition fix the problem? I.e., what is it
> about compiling the file from source that ensures that swank will be
> loaded, when loading the FASL doesn't?
The #+swank in the source file.
> At any rate, there IS a way to ensure that swank-stuff is always loaded
> from lisp instead of from fasl --- it's been discussed in the
> developers' list in the past.
>
> I /thought/ this was a FAQ, or had been rolled into ASDF proper, but I
> don't see anything. That's regrettable, since this is something that I
> have seen (partially) implemented over and over.
Didn't see anything about it in the ASDF Manual.
--
__Pascal Bourguignon__ http://www.informatimago.com/
A bad day in () is better than a good day in {}.
More information about the asdf-devel
mailing list