[asdf-devel] ASDF:LOAD-SYSTEM always recompiles some files
Benjamin Benninghofen
Benjamin.Benninghofen at eads.com
Tue Jul 13 07:25:40 UTC 2010
Robert Goldman wrote:
>I believe that your problem may come from introducing the intermediate
>:modules. You may find that collecting the results of
>
>(asdf::traverse (make-instance 'asdf:load-op) (find-system :foo))
>
>Try rewriting your defsystem more along these lines:
>
>(ASDF:DEFSYSTEM :FOO :COMPONENTS
> ((:FILE "foo"))
> (:FILE "bar" :depends-on ("foo")))
>
>
However the intermediate :modules are correct and in any case when
the compiler is invoked when no source changed is a bug of ASDF ?
>I will try to investigate this further (esp if you post a ticket to
>launchpad), but can't get to it for a while, so suggest you work around
>by revising the defsystem.
>
>BTW, why is your system definition not in foo.asd?
>
>
In my last mail you also see a commented out SCT:DEFSYSTEM form. That
SCT:DEFSYSTEM
form can be used in Genera and SCT:DEFSYSTEM furthermore is a macro
developed by
myself to be used in other Lisp systems (Allegro, CLISP). The
ASDF:DEFSYSTEM form
indeed is the macro expansion of the SCT:DEFSYSTEM form.
In order to have a straightforward implementation of the SCT:DEFSYSTEM
macro, the
structure of modules and files from the SCT:DEFSYSTEM is preserved. This
explains
where the intermediate modules come from.
All my Lisp programs were written under OpenGenera and there it is
customary to
have the system definition in a file "sysdcl.lisp". I just want to copy
the Lisp
source files from the Symbolics to another computer and execute
(SCT:MAKE '(:FOO))
in the other Lisp in order to Load (and Compile if needed) the software
there.
--
Benjamin Benninghofen
More information about the asdf-devel
mailing list