As you probably are aware, an apparent workaround for this apparent bug is to make a toplevel "container" system, whose only contents is a :depends-on which contains the actual desired system (or list of systems). It seems that if the toplevel system has no actual file components, then it will not appear in the (asdf:component-depends-on 'asdf/bundle:monllithic-fasl-op ...) at all, and subsequently the systems appear in the correct order --- so the generated monofasl will be usable.
In fact that's why I didn't see the bug initially, because gendl.asd normally is just such a container system and has no source components (last night I purposely "broke" it for testing by inclusion of a "source/try.lisp" at the toplevel -- if you clone the repository now, that source directory will not be there, and the monofasl for :gendl will work).
I hope this is useful information.
On Fri, Mar 15, 2013 at 7:06 PM, Dave Cooper david.cooper@genworks.comwrote:
Try this:
git clone git://github.com/genworks/gendl.git
put it in your quicklisp/local-projects/
(ql:register-local-projects)
(ql:quickload :gendl)
(ql:operate 'asdf/bundle:monolithic-fasl-op :gendl)
(first (asdf:output-files 'asdf/bundle:monolithic-fasl-op :gendl))
Copy the yielded pathname string to use in next step.
[in a fresh Lisp] (load <the --all-systems fasl from step 7>)
[back in first Lisp]:
(asdf:component-depends-on 'asdf/bundle:monolithic-fasl-op :gendl)
Read it and weep. system :gendl comes _first_ in the list. I feel it
should come _last_.
I tried to look into the asdf code behind this operation but am afraid it is currently far over my head.
-- My Best,
Dave Cooper, Genworks Support david.cooper@genworks.com, dave.genworks.com(skype) USA: 248-327-3253(o), 1-248-330-2979(mobile) UK: 0191 645 1699