I have split the change into two, as I normally do in the ECL source tree itself.<div><br></div><div>The first change only pertains asdf.lisp and it adds a slot, FLAGS, to COMPILE-OP. These are additional flags for COMPILE-FILE. It is used by ECL because we want to produce two files per source file: an object file and the FASL itself. These files can be separately used for building larger things (shared libraries, programs...) or for immediate loading.</div>
<div><br></div><div>The second set of changes is isolated in a single file, asdf-ecl.lisp, which is more complex. This file contains a number of extensions, which may or may not be adapted to other platforms (I believe it is possible, at least for some things). What it implements:</div>
<div><br></div><div> - COMPILED-FILE, a new component for distribution of pre-compiled files. I use it to build pre-packaged versions of RT, the compiler and other things that now can be included as dependencies.</div><div>
<br></div><div> - A number of operations for creating shared libraries, programs, etc. These operations use traverse in a funny way to find out the order in which files should be combined. I call them BUNDLEs because the result is a single binary file that combines many lisp sources, compiled. It has an important advantage for ECL, apart from distribution, for it takes less resources to load a single file.</div>
<div><br></div><div> - A function, MAKE-BUILD, which uses those operations hiding the details.</div><div><br></div><div> - A new operation, LOAD-FASL-OP, which uses those "bundles".</div><div><br></div><div> - A hook into REQUIRE using LOAD-FASL-OP.</div>
<div><br></div><div>What is implemented more or less follows this <a href="http://ecls.sourceforge.net/new-manual/ch16.html">http://ecls.sourceforge.net/new-manual/ch16.html</a></div><div>Comments are welcome.</div><div><br>
</div><div>Juanjo</div><div><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>

</div>