-
Notifications
You must be signed in to change notification settings - Fork 4
/
README
43 lines (32 loc) · 1.38 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
MADEIRA-PORT
Indended to be used mainly as :DEFSYSTEM-DEPENDS-ON dependency in ASDF
systems, but can also be useful outside ASDF systems.
The provided component class :MADEIRA-PORT makes it easy to specify
implementation (or feature) dependent files as part of an ASDF system
definition:
(:MADEIRA-PORT <name> :WHEN <feature-expression>)
Specifies that the file is to be compiled and loaded only when the
feature expression evaluates to true under FEATURE-EVAL for the
current implementation.
(:MADEIRA-PORT <name> :UNLESS <feature-expression>)
Specifies that the file is to be compiled and loaded only when the
feature expression evaluates to false under FEATURE-EVAL for the
current implementation.
Example:
(defsystem :foo
:serial t
:defsystem-depends-on (:madeira-port)
:components
((:file "package")
(:module "ports"
:components
((:madeira-port "sbcl" :when :sbcl)
(:madeira-port "ccl" :when :ccl)
(:madeira-port "ansi" :unless (:or :sbcl :ccl))))
(:file "foo")))
Also provides FEATURE-EVAL mentioned above, which supports extended
feature syntax, allowing expression such as
(:FIND-FUNCTION #:EXIT :SB-EXT)
Finally, exposes FEATURE-EVAL via EXTEND-FEATURE-SYNTAX, which copies
the current readtable, adds extended versions of #+ and #- read macros
to it, and assigns it to *READTABLE*.