On Sat, Mar 13, 2010 at 5:08 PM, Juan Jose Garcia-Ripoll <span dir="ltr"><<a href="mailto:juanjose.garciaripoll@googlemail.com">juanjose.garciaripoll@googlemail.com</a>></span> wrote:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
Thanks again for your help. Using the latest changes in ASDF ECL is now capable of building and shipping its own versions of CLX and other tools in a way that can then be linked to other FASL, programs or shared libraries using the ASDF extensions we already had.<br>
</blockquote></div><br clear="all">I was just thinking how to extend this functionality to user-defined systems and hit another problem. The goal is to take an ASDF system and prepare a bundle that contains a PREBUILT-SYSTEM file (*.asd), a library file (*.a or *.lib) and a FASL (*.fas) This set of files can then be distributed elsewhere.<br>
<br>The problem is that the prebuilt system definition must contain the location of these other files,<br><br>(DEFSYSTEM "user-file"<br> :CLASS ASDF::PREBUILT-SYSTEM<br> :LIB "user-file.a"<br> :COMPONENTS ((:COMPILED-FILE "serve-event")))<br>
<br>Currently this works for ECL's contributed extensions because we hardcode logical pathnames, as "SYS:user-file.a"<br><br>However in general these files would be stored together with the *.asd file so their full pathnames could be resolved based on the former. How can I do that without getting the pathnames get overwritten by ASDF?<br>
<br>Changing output-translations is not an option, because this would have global effects.<br><br>Juanjo<br><br>-- <br>Instituto de Física Fundamental, CSIC<br>c/ Serrano, 113b, Madrid 28006 (Spain) <br><a href="http://juanjose.garciaripoll.googlepages.com">http://juanjose.garciaripoll.googlepages.com</a><br>