Ignore:
Timestamp:
07/27/11 06:44:50 (10 years ago)
Author:
Mark Evenson
Message:

Upgrade to asdf-2.017.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/abcl/doc/asdf/asdf.texinfo

    r13311 r13417  
    432432
    433433
    434 @section Configuring ASDF to find your systems -- old style
     434@section Configuring ASDF to find your systems --- old style
    435435
    436436The old way to configure ASDF to find your systems is by
     
    499499ASDF knows how to follow such @emph{symlinks}
    500500to the actual file location when resolving the paths of system components
    501 (on Windows, you can use Windows shortcuts instead of POSIX symlinks).
     501(on Windows, you can use Windows shortcuts instead of POSIX symlinks;
     502if you try aliases under MacOS, we are curious to hear about your experience).
    502503
    503504For example, if @code{#p"/home/me/cl/systems/"} (note the trailing slash)
     
    18991900before it searches in the source registry above.
    19001901
    1901 @xref{Configuring ASDF,,Configuring ASDF to find your systems -- old style}.
     1902@xref{Configuring ASDF,,Configuring ASDF to find your systems --- old style}.
    19021903
    19031904By default, @code{asdf:*central-registry*} will be empty.
     
    19381939
    19391940    ;; override the defaults for exclusion patterns
    1940     (:exclude PATTERN ...) |
     1941    (:exclude EXCLUSION-PATTERN ...) |
    19411942    ;; augment the defaults for exclusion patterns
    1942     (:also-exclude PATTERN ...) |
     1943    (:also-exclude EXCLUSION-PATTERN ...) |
    19431944    ;; Note that the scope of a an exclude pattern specification is
    19441945    ;; the rest of the current configuration expression or file.
     
    19541955
    19551956PATHNAME-DESIGNATOR :=
    1956     NULL | ;; Special: skip this entry.
    1957     ABSOLUTE-COMPONENT-DESIGNATOR |
    1958     (ABSOLUTE-COMPONENT-DESIGNATOR RELATIVE-COMPONENT-DESIGNATOR ...)
    1959 
    1960 ABSOLUTE-COMPONENT-DESIGNATOR :=
    1961     STRING | ;; namestring (better be absolute or bust, directory assumed where applicable)
    1962     PATHNAME | ;; pathname (better be an absolute path, or bust)
    1963     :HOME | ;; designates the user-homedir-pathname ~/
    1964     :USER-CACHE | ;; designates the default location for the user cache
    1965     :SYSTEM-CACHE | ;; designates the default location for the system cache
    1966     :HERE  ;; designates the location of the configuration file
    1967            ;; (or *default-pathname-defaults*, if invoked interactively)
    1968 
    1969 RELATIVE-COMPONENT-DESIGNATOR :=
    1970     STRING | ;; namestring (directory assumed where applicable)
    1971     PATHNAME | ;; pathname
    1972     :IMPLEMENTATION | ;; a directory based on implementation, e.g. sbcl-1.0.45-linux-amd64
    1973     :IMPLEMENTATION-TYPE | ;; a directory based on lisp-implementation-type only, e.g. sbcl
    1974     :UID | ;; current UID -- not available on Windows
    1975     :USER ;; current USER name -- NOT IMPLEMENTED(!)
    1976 
    1977 PATTERN := a string without wildcards, that will be matched exactly
     1957    NIL | ;; Special: skip this entry.
     1958    ABSOLUTE-COMPONENT-DESIGNATOR ;; see pathname DSL
     1959
     1960EXCLUSION-PATTERN := a string without wildcards, that will be matched exactly
    19781961  against the name of a any subdirectory in the directory component
    19791962        of a path. e.g. @code{"_darcs"} will match @file{#p"/foo/bar/_darcs/src/bar.asd"}
    19801963@end example
    19811964
     1965Pathnames are designated using another DSL,
     1966shared with the output-translations configuration DSL below.
     1967The DSL is resolved by the function @code{asdf::resolve-location},
     1968to be documented and exported at some point in the future.
     1969
     1970@example
     1971ABSOLUTE-COMPONENT-DESIGNATOR :=
     1972    (ABSOLUTE-COMPONENT-DESIGNATOR RELATIVE-COMPONENT-DESIGNATOR ...) |
     1973    STRING | ;; namestring (better be absolute or bust, directory assumed where applicable).
     1974             ;; In output-translations, directory is assumed and **/*.*.* added if it's last.
     1975             ;; On MCL, a MacOSX-style POSIX namestring (for MacOS9 style, use #p"...");
     1976             ;; Note that none of the above applies to strings used in *central-registry*,
     1977             ;; which doesn't use this DSL: they are processed as normal namestrings.
     1978             ;; however, you can compute what you put in the *central-registry*
     1979             ;; based on the results of say (asdf::resolve-location "/Users/fare/cl/cl-foo/")
     1980    PATHNAME | ;; pathname (better be an absolute path, or bust)
     1981               ;; In output-translations, unless followed by relative components,
     1982               ;; it better have appropriate wildcards, as in **/*.*.*
     1983    :HOME | ;; designates the user-homedir-pathname ~/
     1984    :USER-CACHE | ;; designates the default location for the user cache
     1985    :HERE | ;; designates the location of the configuration file
     1986            ;; (or *default-pathname-defaults*, if invoked interactively)
     1987    :ROOT ;; magic, for output-translations source only: paths that are relative
     1988          ;; to the root of the source host and device
     1989    ;; Not valid anymore: :SYSTEM-CACHE (was a security hazard)
     1990
     1991RELATIVE-COMPONENT-DESIGNATOR :=
     1992    (RELATIVE-COMPONENT-DESIGNATOR RELATIVE-COMPONENT-DESIGNATOR ...) |
     1993    STRING | ;; relative directory pathname as interpreted by coerce-pathname.
     1994             ;; In output translations, if last component, **/*.*.* is added
     1995    PATHNAME | ;; pathname; unless last component, directory is assumed.
     1996    :IMPLEMENTATION | ;; directory based on implementation, e.g. sbcl-1.0.49-linux-x64
     1997    :IMPLEMENTATION-TYPE | ;; a directory based on lisp-implementation-type only, e.g. sbcl
     1998    :DEFAULT-DIRECTORY | ;; a relativized version of the default directory
     1999    :*/ | ;; any direct subdirectory (since ASDF 2.011.4)
     2000    :**/ | ;; any recursively inferior subdirectory (since ASDF 2.011.4)
     2001    :*.*.* | ;; any file (since ASDF 2.011.4)
     2002    ;; Not supported (anymore): :UID and :USERNAME
     2003@end example
     2004
    19822005For instance, as a simple case, my @file{~/.config/common-lisp/source-registry.conf},
    1983 which is the default place ASDF looks for this configuration,
    1984 once contained:
     2006which is the default place ASDF looks for this configuration, once contained:
    19852007@example
    19862008(:source-registry
     
    24542476
    24552477DIRECTORY-DESIGNATOR :=
     2478    NIL | ;; As source: skip this entry. As destination: same as source
    24562479    T | ;; as source matches anything, as destination leaves pathname unmapped.
    2457     ABSOLUTE-COMPONENT-DESIGNATOR |
    2458     (ABSOLUTE-COMPONENT-DESIGNATOR RELATIVE-COMPONENT-DESIGNATOR ...)
    2459 
    2460 ABSOLUTE-COMPONENT-DESIGNATOR :=
    2461     NULL | ;; As source: skip this entry. As destination: same as source
    2462     :ROOT | ;; magic: paths that are relative to the root of the source host and device
    2463     STRING | ;; namestring (directory is assumed, better be absolute or bust, ``/**/*.*'' added)
    2464     PATHNAME | ;; pathname (better be an absolute directory or bust)
    2465     :HOME | ;; designates the user-homedir-pathname ~/
    2466     :USER-CACHE | ;; designates the default location for the user cache
    2467     :SYSTEM-CACHE ;; designates the default location for the system cache
    2468 
    2469 RELATIVE-COMPONENT-DESIGNATOR :=
    2470     STRING | ;; namestring, directory is assumed. If the last component, /**/*.* is added
    2471     PATHNAME | ;; pathname; unless last component, directory is assumed.
    2472     :IMPLEMENTATION | ;; a directory based on implementation, e.g. sbcl-1.0.45-linux-amd64
    2473     :IMPLEMENTATION-TYPE | ;; a directory based on lisp-implementation-type only, e.g. sbcl
    2474     :*/ | ;; any direct subdirectory (since ASDF 2.011.4)
    2475     :**/ | ;; any recursively inferior subdirectory (since ASDF 2.011.4)
    2476     :*.*.* | ;; any file (since ASDF 2.011.4)
    2477     :UID | ;; current UID -- not available on Windows
    2478     :USER ;; current USER name -- NOT IMPLEMENTED(!)
     2480    ABSOLUTE-COMPONENT-DESIGNATOR ;; same as in the source-registry language
    24792481
    24802482TRANSLATION-FUNCTION :=
     
    31843186Or you can fix your implementation to not be quite that slow
    31853187when recursing through directories.
    3186 @underline{Update}: performance bug fixed the hard way in 2.010.
     3188@emph{Update}: performance bug fixed the hard way in 2.010.
    31873189
    31883190@item
Note: See TracChangeset for help on using the changeset viewer.