Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
branch: master

Fetching latest commit…

Octocat-spinner-32-eaf2f5

Cannot retrieve the latest commit at this time

Octocat-spinner-32 README
Octocat-spinner-32 madeira-port.asd
Octocat-spinner-32 madeira-port.lisp
Octocat-spinner-32 tests.lisp
README
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*.
Something went wrong with that request. Please try again.