[armedbear-devel] packaging external libs with abcl
Mark Evenson
evenson at panix.com
Mon Sep 21 09:51:18 UTC 2009
On 9/21/09 12:59 AM, Matthew D. Swank wrote:
> On Fri, 11 Sep 2009 16:25:07 +0200
> Alessio Stalla<alessiostalla at gmail.com> wrote:
>
>> On Fri, Sep 11, 2009 at 3:20 PM, Matthew D. Swank<akopa at charter.net>
>> wrote:
>>> I've been messing with running abcl on the google appengine, and I
>>> was wondering what was the best way to package libraries,
>>> especially the results of loading an asdf system and its
>>> dependencies?
>>
>> This has been somewhat discussed in the thread "[OT] best way to
>> structure and deploy a project" which I started. What I ended up doing
>> is to use ANT to build my system, both the Java part (natively) and
>> the Lisp part, by making it invoke ABCL with --load
>> compile-system.lisp, where compile-system.lisp is (push such-and-such
>> asdf:*central-registry*) (asdf:oos 'asdf:compile-op :the-system). ANT
>> packages it all in a jar, with a directory structure such as, e.g.,
>>
>> system-name/
>> bin/ --classes, .lisp, fasls
>> lib/ --lisp libraries
>>
>> This is similar to what ABCL itself does (in fact, my ant file is
>> basically a trimmed down version of abcl's), except abcl has no
>> library dependencies.
>> Now, afaik asdf can only load from files, so the jar contains a main
>> class written in Java that detects if it's been launched from a jar,
>> and if it is, it extracts the jar in a temporary directory and uses
>> asdf to load the system from there. This of course cannot work on
>> AppEngine; maybe the patch to load from jars addresses this issue as
>> well?
>>
> I must have miss read the doc, I don't even have r/o
> access to the file system. I'm not sure how I'd bootstrap an abcl
> application on the google app engine.
I think one has to package everything inside 'abcl.jar', placing your
code in the 'org.armedbear.lisp' directory. This should be what
*LISP-HOME* gets set to. I have yet to get enough time to figure out
how to deploy to Google App Engine (GAE) myself: it's on a long TODO
list which got pushed further down with having to figure out how to use
the Eclipse plugin to deploy to GAE.
--
"A screaming comes across the sky. It has happened before, but there
is nothing to compare to it now."
More information about the armedbear-devel
mailing list