Changeset 14873 for trunk/abcl/doc


Ignore:
Timestamp:
09/26/16 21:26:36 (21 months ago)
Author:
mevenson
Message:

asdf: update to 3.1.7.26

File:
1 edited

Legend:

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

    r14856 r14873  
    6666@titlepage
    6767@title ASDF: Another System Definition Facility
    68 @subtitle Manual for Version 3.1.7.9
     68@subtitle Manual for Version 3.1.7.26
    6969@c The following two commands start the copyright page.
    7070@page
     
    8383@top ASDF: Another System Definition Facility
    8484@ifnottex
    85 Manual for Version 3.1.7.1
     85Manual for Version 3.1.7.10
    8686@end ifnottex
    8787
     
    42344234@section Shell-friendly syntax for configuration
    42354235
    4236 When considering environment variable @code{ASDF_OUTPUT_TRANSLATIONS}
    4237 ASDF will skip to the next configuration if it's an empty string.
    4238 It will @code{READ} the string as an SEXP in the DSL
    4239 if it begins with a paren @code{(}
    4240 and it will be interpreted as a list of directories.
    4241 Directories should come by pairs, indicating a mapping directive.
     4236When processing the environment variable
     4237@code{ASDF_OUTPUT_TRANSLATIONS}:
     4238@itemize
     4239@item ASDF will skip to the next configuration if it's an empty string.
     4240@item ASDF will @code{READ} the string as an SEXP in the DSL, if it
     4241begins with a parenthesis @code{(}.
     4242@item Otherwise ASDF will interpret the value as a list of directories
     4243(see below).
     4244@end itemize
     4245
     4246In the directory list format,
     4247directories should come in pairs, each pair indicating a mapping directive.
    42424248Entries are separated
    4243 by a @code{:} (colon) on Unix platforms (including cygwin),
     4249by a @code{:} (colon) on Unix platforms (including Mac and cygwin), and
    42444250by a @code{;} (semicolon) on other platforms (mainly, Windows).
    42454251
    42464252The magic empty entry,
    42474253if it comes in what would otherwise be the first entry in a pair,
    4248 indicates the splicing of inherited configuration.
    4249 If it comes as the second entry in a pair,
    4250 it indicates that the directory specified first is to be left untranslated
     4254indicates the splicing of inherited configuration;
     4255the next entry (if any) then starts a new pair.
     4256If the second entry in a pair is empty,
     4257it indicates that the directory in the first entry is to be left untranslated
    42514258(which has the same effect as if the directory had been repeated).
    4252 Thus @code{"/foo:/bar::/baz:"} means that
    4253 things under directory @file{/foo/}
    4254 are translated to be under @file{/bar/},
    4255 then include the inherited configuration,
    4256 then specify that things under directory @file{/baz/} are not translated.
     4259
     4260For example, @code{"/foo:/bar::/baz:"} means:
     4261specify that outputs for things under directory @file{/foo/}
     4262are translated to be under @file{/bar/};
     4263then include the inherited configuration;
     4264then specify that outputs for things under directory @file{/baz/} are not translated.
     4265
    42574266
    42584267@node Semantics of Output Translations, Output Caching Results, Output Shell-friendly syntax for configuration, Controlling where ASDF saves compiled files
     
    47094718@end defun
    47104719
    4711 @defun register-preloaded-system name @Arest{} keys
     4720@defun register-preloaded-system name @Arest{} keys @Akey{} version @AallowOtherKeys{}
    47124721A system with name @var{name},
    47134722created by @code{make-instance} with extra keys @var{keys}
    47144723(e.g. @code{:version}),
    47154724is registered as @emph{preloaded}.
    4716 That is, its code has already been loaded into the current image,
     4725If @var{version} is @code{t} (default), then the version is copied from the defined system
     4726of the same name (if registered) or else is @code{nil}
     4727(this automatic copy of version is only available starting since ASDF 3.1.8).
     4728
     4729A preloaded system is considered as having already been loaded into the current image,
    47174730and if at some point some other system @code{:depends-on} it yet no source code is found,
    47184731it is considered as already provided,
     
    47234736and want to register systems so that dependencies will work uniformly
    47244737whether you're using your software from source or from fasl.
     4738
     4739Note that if the system was already defined or loaded from source code,
     4740its build information will remain active until you call @code{clear-system} on it,
     4741at which point a system without build information will be registered in its place.
    47254742@end defun
    47264743
    47274744@defun register-immutable-system name @Arest{} keys
    4728 A system with name @var{name},
    4729 created by @code{make-instance} with extra keys @var{keys}
    4730 (e.g. @code{:version}),
    4731 is registered as @emph{immutable}.
    4732 That is, its code has already been loaded into the current image,
    4733 and if at some point some other system @code{:depends-on} it,
    4734 it is considered as already provided, and
    4735 no attempt will be made to search for an updated version from the source-registry
    4736 or any other method.
    4737 There will be no search for an @file{.asd} file, and no @code{missing-component} error.
    4738 
    4739 This function (available since ASDF 3.1.5) is particularly useful if
    4740 you distribute a large body of code as a precompiled image,
     4745A system with name @var{name} is registered as preloaded,
     4746and additionally is marked as @emph{immutable}:
     4747that is, attempts to compile or load it will be succeed
     4748without actually reading, creating or loading any file,
     4749as if the system was passed as a @code{force-not} argument
     4750to all calls to @code{plan} or @code{operate}.
     4751There will be no search for an updated @file{.asd} file
     4752to override the loaded version,
     4753whether from the source-register or any other method.
     4754
     4755If a @var{version} keyword argument is specified as @code{t} or left unspecified,
     4756then the version is copied from the defined system
     4757of the same name (if registered) or else is @code{nil}.
     4758This automatic copy of version is available starting
     4759since immutable systems have been available in ASDF 3.1.5.
     4760
     4761This function, available since ASDF 3.1.5, is particularly useful
     4762if you distribute a large body of code as a precompiled image,
    47414763and want to allow users to extend the image with further extension systems,
    4742 but without making thousands of filesystem requests looking for inexistent (or worse, out of date) source code
     4764but without making thousands of filesystem requests looking for inexistent
     4765(or worse, out of date) source code
    47434766for all the systems that came bundled with the image but aren't
    47444767distributed as source code to regular users.
Note: See TracChangeset for help on using the changeset viewer.