I admit I had never looked at how ACBL-JAR works before. I see it's there:
http://trac.common-lisp.net/armedbear/browser/trunk/abcl/contrib/asdf-jar/asdf-jar.lisp

IIUC, the gist is that you somehow traverse the system to gather what files to zip,
and the tricky issue is that since the output-translations function will be different
in the build environment and the deployment environment, you have to build a map
of build-time pathnames in the filesystem to deploy-time pathnames in the jar file.
Because ASDF 1 or 2 didn't have a good way to do that, ABCL currently does it
in a clunky way that doesn't account for ASDF extensions.
Doing it correctly is possible using exported functionality of ASDF3,
but requires intercepting (with-asdf-cache (:override t) ...) and
*output-translation-functions* to build a reverse translation table
around a call to (traverse 'load-op system).

Your second email suggests you're looking into combining fasls as an alternative to building a jar. Sounds great. Regarding how to build a system that loads the concatenated fasl,
see in asdf/bundle.lisp the (largely untested, stolen from asdf-ecl.lisp)
   defmethod perform ((o binary-op) (s system))
Or search the same file for "Example use:"

—♯ƒ • François-René ÐVB Rideau •Reflection&Cybernethics• http://fare.tunes.org
Justice is not concerned with the results of the various transactions
but only with whether the transactions themselves are fair.
        — F.A. Hayek, "Law, Legislation and Liberty", I.6.j


On Sun, Mar 31, 2013 at 3:39 PM, Erik Huelsmann <ehuels@gmail.com> wrote:
Hi,


Some time ago Mark Evenson created ASDF-JAR on ABCL. It has some issues packaging ASD files which uses #. syntax to read e.g. version files (version.lisp-sexp) such as bordeaux-threads does.

We know ECL started hooking into the ASDF/BUNDLE machinery for ASDF to overcome problems like these. Could you help me/us out and explain how we can plug ABCL into the same machinery? From what I've seen, it's most efficient if the resulting code be committed to ASDF. That's fine by me. At this point, I'd just be happy with an explanation on how to do the hooking up: the new ASDF/BUNDLE functionality doesn't seem to be documented in the manual yet.


Thanks for any help you may be able to provide!


Bye,


Erik.