Skip to content
GitLab
Explore
Sign in
Register
Primary navigation
Search or go to…
Project
A
asdf
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Container Registry
Model registry
Operate
Environments
Monitor
Incidents
Service Desk
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Terms and privacy
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Hugo Ishimaru
asdf
Commits
58097df5
Commit
58097df5
authored
18 years ago
by
Gary King
Browse files
Options
Downloads
Patches
Plain Diff
ASDF now sends output to *standard-output* (thanks to Richard M. Kreuter).
parent
65621197
No related branches found
Branches containing commit
No related tags found
Tags containing commit
No related merge requests found
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
asdf.lisp
+3
-3
3 additions, 3 deletions
asdf.lisp
asdf.texinfo
+27
-1
27 additions, 1 deletion
asdf.texinfo
with
30 additions
and
4 deletions
asdf.lisp
+
3
−
3
View file @
58097df5
;;; This is asdf: Another System Definition Facility. $Revision: 1.10
2
$
;;; This is asdf: Another System Definition Facility. $Revision: 1.10
3
$
;;;
;;; Feedback, bug reports, and patches are all welcome: please mail to
;;; <cclan-list@lists.sf.net>. But note first that the canonical
...
...
@@ -112,7 +112,7 @@
(
in-package
#:asdf
)
(
defvar
*asdf-revision*
(
let*
((
v
"$Revision: 1.10
2
$"
)
(
defvar
*asdf-revision*
(
let*
((
v
"$Revision: 1.10
3
$"
)
(
colon
(
or
(
position
#\:
v
)
-1
))
(
dot
(
position
#\.
v
)))
(
and
v
colon
dot
...
...
@@ -872,7 +872,7 @@ system."))
(
let*
((
op
(
apply
#'
make-instance
operation-class
:original-initargs
args
args
))
(
*verbose-out*
(
if
verbose
*
trace
-output*
(
make-broadcast-stream
)))
(
*verbose-out*
(
if
verbose
*
standard
-output*
(
make-broadcast-stream
)))
(
system
(
if
(
typep
system
'component
)
system
(
find-system
system
))))
(
unless
(
version-satisfies
system
version
)
(
error
'missing-component
:requires
system
:version
version
))
...
...
This diff is collapsed.
Click to expand it.
asdf.texinfo
+
27
−
1
View file @
58097df5
...
...
@@ -188,6 +188,11 @@ evaluating the following form in your Lisp implementation:
(asdf:operate 'asdf:load-op '@var
{
foo
}
)
@end example
Output from asdf and asdf extensions are supposed to be sent to the CL
stream @code
{
*standard-output*
}
, and so rebinding that stream around
calls to @code
{
asdf:operate
}
should redirect all output from asdf
operations.
That's all you need to know to use asdf to load systems written by
others. The rest of this manual deals with writing system
definitions for Lisp software you write yourself.
...
...
@@ -204,6 +209,7 @@ software.
* The defsystem form::
* A more involved example::
* The defsystem grammar::
* Other code in .asd files::
@end menu
@node The defsystem form, A more involved example, Defining systems with defsystem, Defining systems with defsystem
...
...
@@ -316,7 +322,7 @@ them to -- a @code{:before} method on perform @code{((op compile-op) (c
have been processed, but before the component in question has been
compiled.
@node The defsystem grammar, , A more involved example, Defining systems with defsystem
@node The defsystem grammar,
Other code in .asd files
, A more involved example, Defining systems with defsystem
@comment node-name, next, previous, up
@section The defsystem grammar
...
...
@@ -409,6 +415,23 @@ unbound (so that a developer can evaluate a @code{defsystem} form from
within an editor without clobbering its source location)
@end itemize
@node Other code in .asd files, , The defsystem grammar, Defining systems with defsystem
@section Other code in .asd files
Files containing defsystem forms are regular Lisp files that are
executed by @code
{
load
}
. Consequently, you can put whatever Lisp code
you like into these files (e.g., code that examines the compile-time
environment and adds appropriate features to @code
{
*features*
}
).
However, some conventions should be followed, so that users can
control certain details of execution of the Lisp in .asd files:
@itemize
@item
Any informative output (other than warnings and errors, which are the
condition system's to dispose of) should be sent to the standard CL
stream @code
{
*standard-output*
}
, so that users can easily control the
disposition of output from asdf operations.
@end itemize
@node The object model of asdf, Error handling, Defining systems with defsystem, Top
...
...
@@ -594,6 +617,9 @@ where to put its files, because the user is allowed to override
@end itemize
Operations that print output should send that output to the standard
CL stream @code
{
*standard-output*
}
, as the Lisp compiler and loader do.
@node Components, , Operations, The object model of asdf
@comment node-name, next, previous, up
@section Components
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment