From 6369aa949ccd77d8d5924bf50c0ecea2d5face5d Mon Sep 17 00:00:00 2001 From: "Robert P. Goldman" <rpgoldman@real-time.com> Date: Thu, 21 Oct 2010 13:19:48 -0500 Subject: [PATCH] Multiple improvements to the DEFSYSTEM grammar page. * Added :defsystem-depends-on * Tried to tease apart system-options, module-options and general options. * Fixed a couple of typos. * Added a FIXME. --- doc/asdf.texinfo | 33 +++++++++++++++++++++++++-------- 1 file changed, 25 insertions(+), 8 deletions(-) diff --git a/doc/asdf.texinfo b/doc/asdf.texinfo index 1dcf3ced..8f5fd17d 100644 --- a/doc/asdf.texinfo +++ b/doc/asdf.texinfo @@ -795,26 +795,34 @@ For more details on what these methods do, @pxref{Operations} in @comment node-name, next, previous, up @section The defsystem grammar -@c This discussion does not distinguish the options that are only -@c appropriate for modules (see the discussion in the object model part of -@c the manual). We should fix this. [2010/10/15:rpg] +@c FIXME: @var typesetting not consistently used here. We should either expand +@c its use to everywhere, or we should kill it everywhere. + @example -system-definition := ( defsystem system-designator @var{option}* ) +system-definition := ( defsystem system-designator @var{system-option}* ) + +system-option := :defsystem-depends-on system-list + | module-option + | option + +module-option := :components component-list + | :serial [ t | nil ] + | :if-component-dep-fails component-dep-fail-option -option := :components component-list +option := | :pathname pathname-specifier - | :default-component-class + | :default-component-class class-name | :perform method-form | :explain method-form | :output-files method-form | :operation-done-p method-form | :depends-on ( @var{dependency-def}* ) - | :serial [ t | nil ] | :in-order-to ( @var{dependency}+ ) - | :if-component-dep-fails component-dep-fail-option +system-list := ( @var{simple-component-name}* ) + component-list := ( @var{component-def}* ) component-def := ( component-type simple-component-name @var{option}* ) @@ -859,6 +867,14 @@ the current package. So a component type @code{my-component-type}, in the current package @code{my-system-asd} can be specified as @code{:my-component-type}, or @code{my-component-type}. +@subsection Defsystem depends on + +The @code{:defsystem-depends-on} option to @code{defsystem} allows the +programmer to specify another ASDF-defined system or set of systems that +must be loaded @emph{before} the system definition is processed. +Typically this is used to load an ASDF extension that is used in the +system definition. + @subsection Pathname specifiers @cindex pathname specifiers @@ -1903,6 +1919,7 @@ list of paths, where @section Search Algorithm +@vindex *default-source-registry-exclusions* In case that isn't clear, the semantics of the configuration is that when searching for a system of a given name, -- GitLab