[asdf-devel] Merging asdf-bundle into asdf
fahree at gmail.com
Mon Dec 3 03:41:16 UTC 2012
I haven't heard any objection to my plan of merging asdf-bundle into
asdf, but I have not any actively supporting mention either — just the
fact that it will moderately enhance the lives of Quicklisp, ECL and
MKCL maintainers. I'm leaving you a few more days to send me feedback
before I actually do it.
In the meantime, I added a precompiled-system feature to asdf-bundle.
You can distribute a library as fasl-only, by first (1) compiling it
with fasl-op on your build image:
(asdf:operate 'asdf::fasl-op :my-library)
Then copying the output file (first (asdf:output-files (make-instance
'asdf::fasl-op) (asdf:find-system :my-library))
to some destination of your choice.
(2) in your user's image, have a .asd that looks like that, or better,
evaluate the form as part of your initialization, without the need for
(defsystem :my-library :class :precompiled-system :fasl
The fasl argument can be a logical pathname or an expression that will
be evaluated later.
This way, user libraries can use defsystem :depends-on and find the
library whether its source is present or whether a .fasl was made
—♯ƒ • François-René ÐVB Rideau •Reflection&Cybernethics• http://fare.tunes.org
We are always in anarchy. But we pay a hefty price maintaining the illusion
that we aren't, and another one being misled by the illusion.
On Thu, Nov 29, 2012 at 9:50 PM, Faré <fahree at gmail.com> wrote:
> On Thu, Nov 29, 2012 at 11:18 AM, Juan Jose Garcia-Ripoll
> <juanjose.garciaripoll at gmail.com> wrote:
>> On Thu, Nov 29, 2012 at 2:41 PM, Faré <fahree at gmail.com> wrote:
>>> Now, do we want to distribute asdf-bundle.lisp as a separate system
>>> Do we want to distribute it as part of asdf.asd the way we used to do
>>> Do we want to just add its contents to asdf.lisp, a growth of a bit over
>>> 10% in size,
>>> for additional functionality on many platforms and much less headaches on
>> ECL will pledge to whatever means of distribution you choose. Just keep me
> After carefully considering the headache for users of Quicklisp and ECL,
> and the fact that asdf-bundle now supports load-fasl-op
> for all actively maintained implementations,
> except ABCL which has its own thing,
> I've decided that it's probably best to fold asdf-bundle into ASDF.
> (Note that I haven't tested the SCL, LispWorks or MKCL ports, and
> that the LispWorks port I just threw together probably needs some love).
> The only objection I can imagine is file size,
> but somehow, I fear we're past the point of being able to complain.
> I fully assume the creeping featuritis since ASDF 1.
> wc stats are as follows:
> 4534 19011 200127 asdf.lisp
> 597 2138 21861 asdf-bundle.lisp
> 5131 21149 221988 total
> So the increase is a bit under 11% increase in character file size.
> I'll give a few days for people to issue objections,
> and if none is raised, I'll go ahead with the merge some time next week,
> after hopefully testing on more implementations.
> Hopefully, I will add some tests to the ASDF test suite.
More information about the asdf-devel