1 | ASDF-JAR |
---|
2 | ======== |
---|
3 | |
---|
4 | ASDF-JAR provides a system for packaging ASDF systems into jar |
---|
5 | archives for ABCL. Given a running ABCL image with loadable ASDF |
---|
6 | systems the code in this package will recursively package all the |
---|
7 | required source and fasls in a jar archive . |
---|
8 | |
---|
9 | To install ASDF systems, [Quicklisp]() is probably the best |
---|
10 | contemporary solution, although a version of ASDF-INSTALL is also |
---|
11 | packaged in ABCL contribs. |
---|
12 | |
---|
13 | [Quicklisp]: http://www.quicklisp.org |
---|
14 | |
---|
15 | Once the requisite ASDF systems have been installed, ensure that this |
---|
16 | contrib is loaded via |
---|
17 | |
---|
18 | CL-USER) (require :abcl-contrib) |
---|
19 | CL-USER> (require :asdf-jar) |
---|
20 | |
---|
21 | Then, to say package the Perl regular expression system ("CL-PPCRE"), |
---|
22 | one uses the ASDF-JAR:PACKAGE as follows: |
---|
23 | |
---|
24 | CL-USER> (asdf-jar:package :cl-ppcre) |
---|
25 | ; Loading #P"/home/evenson/quicklisp/dists/quicklisp/software/cl-ppcre-2.0.3/cl-ppcre.asd" ... |
---|
26 | ; Loaded #P"/home/evenson/quicklisp/dists/quicklisp/software/cl-ppcre-2.0.3/cl-ppcre.asd" (0.029 seconds) |
---|
27 | Packaging ASDF definition of #<ASDF:SYSTEM "cl-ppcre"> |
---|
28 | as /var/tmp/cl-ppcre-all-2.0.3.jar. |
---|
29 | Packaging contents in /var/tmp/cl-ppcre-all-2.0.3.jar |
---|
30 | with recursive dependencies. |
---|
31 | #P"/var/tmp/cl-ppcre-all-2.0.3.jar" |
---|
32 | |
---|
33 | The resulting jar contains all source and fasls required to run the |
---|
34 | ASDF system including any transitive ASDF dependencies. Each asdf |
---|
35 | system is packaged under its own top level directory within the jar |
---|
36 | archive. The jar archive itself is numbered with the version of the |
---|
37 | system that was specified in the packaging. |
---|
38 | |
---|
39 | To load the system from the jar one needs to add the ASDF file |
---|
40 | locations to the ASDF *CENTRAL-REGISTRY*. If one wishes to load the |
---|
41 | fasls from the jar alone, one needs to tell ASDF not to override its |
---|
42 | output translation rules. The function ASDF-JAR:ADD-TO-JAR does both |
---|
43 | of these options serving as the basis for customized load strategies |
---|
44 | tailored to end-user deployment needs. So, after |
---|
45 | |
---|
46 | CL-USER> (asdf-jar:add-to-asdf "/var/tmp/cl-ppcre-all-2.0.3.jar") |
---|
47 | |
---|
48 | a subsequent |
---|
49 | |
---|
50 | CL-USER> (asdf:load-system :cl-ppcre) |
---|
51 | |
---|
52 | should load the ASDF system from the jar. |
---|
53 | |
---|
54 | Setting CL:*LOAD-VERBOSE* will allow one to verify that the subsequent |
---|
55 | load is indeed coming from the jar. |
---|
56 | |
---|
57 | # Colophon |
---|
58 | |
---|
59 | Mark Evenson |
---|
60 | Created: 20-JUN-2011 |
---|
61 | Modified: 20-JUN-2011 |
---|
62 | <> abcl:documents <release#asdf-jar> . |
---|