[asdf-devel] creating a distribution using asdf

Sam Steingold sds at gnu.org
Thu Dec 30 00:18:10 UTC 2010


Dear Faré,

> * Faré <snuerr at tznvy.pbz> [2010-12-29 03:59:39 +0100]:
>
> (defun all-steps-for-system (system)
>   (asdf::traverse (make-instance 'asdf:load-op :force t)
> (asdf:find-system system)))
>
> (defun all-files-for-system (system)
>   (loop :for (operation . component) :in (all-steps-for-system system)
>      :for output-files = (asdf:output-files operation component)
>      :append output-files))

this is a good start: I can take all files in the list up to the file
which I actually need.
however, this might include files which I don't need.
e.g., supposed my system includes file A,B,C and B&C depend on A but not
on each other.
Your function all-files-for-system will produce
     A.fas
     B.fas
     C.fas
or 
     A.fas
     C.fas
     B.fas
if I want to distribute B and everything it needs (i.e., A+B),
I will distribute A+B in the first case and A+C+B in the second one.
So, is there a way to get the list of compiled files which are needed to
compile just one file?
e.g., can I pass a file as the argument to all-files-for-system?
(obviously, it will not work for the above code, but maybe there is some
other incantation?)

thanks!
-- 
Sam Steingold (http://sds.podval.org/) on Ubuntu 10.04 (lucid)
http://truepeace.org http://camera.org http://dhimmi.com http://ffii.org
http://mideasttruth.com http://memri.org http://thereligionofpeace.com
Growing Old is Inevitable; Growing Up is Optional.




More information about the asdf-devel mailing list