Skip to content
Snippets Groups Projects
Commit edddef57 authored by Daniel Barlow's avatar Daniel Barlow
Browse files

make SBCL require hook a lot quieter, by muffling style-warnings when loading...

make SBCL require hook a lot quieter, by muffling style-warnings when loading files and turning off asdf verbosity
parent a5b8dfde
No related branches found
No related tags found
No related merge requests found
$Id: README,v 1.33 2003/05/28 20:00:42 kevinrosenberg Exp $ -*- Text -*-
$Id: README,v 1.34 2003/06/03 22:16:28 dan_b Exp $ -*- Text -*-
asdf: another system definition facility
......@@ -716,9 +716,32 @@ propagate only something like ":force :recursively". ''
Ideally what we actually want is some kind of criterion that says
to which systems (and which operations) a :force switch will propagate.
(defgeneric operation-propagates-force-p (operation component))
The problem is perhaps that 'force' is a pretty meaningless concept.
How obvious is it that "load :force t" should force _compilation_?
But we don't really have the right dependency setup for the user to
compile :force t and expect it to work (files will not be loaded after
compilation, so the compile environment for subsequent files will be
emptier than it needs to be)
make-sub-operation would call this
What does the user actually want to do when he forces? Usually, for
me, update for use with a new version of the lisp compiler. Perhaps
for recovery when he suspects that something has gone wrong. Or else
when he's changed compilation options or configuration in some way
that's not reflected in the dependency graph.
Other possible interface: have a 'revert' function akin to 'make clean'
(asdf:revert 'asdf:compile-op 'araneida)
would delete any files produced by 'compile-op 'araneida. Of course, it
wouldn't be able to do much about stuff in the image itself.
How would this work?
traverse
There's a difference between a module's dependencies (peers) and its
components (children). Perhaps there's a similar difference in
operations? For example, (load "use") depends-on (load "macros") is a
peer, whereas (load "use") depends-on (compile "use") is more of a
`subservient' relationship.
\ No newline at end of file
;;; This is asdf: Another System Definition Facility. $Revision: 1.74 $
;;; This is asdf: Another System Definition Facility. $Revision: 1.75 $
;;;
;;; Feedback, bug reports, and patches are all welcome: please mail to
;;; <cclan-list@lists.sf.net>. But note first that the canonical
......@@ -94,7 +94,7 @@
(in-package #:asdf)
(defvar *asdf-revision* (let* ((v "$Revision: 1.74 $")
(defvar *asdf-revision* (let* ((v "$Revision: 1.75 $")
(colon (or (position #\: v) -1))
(dot (position #\. v)))
(and v colon dot
......@@ -1046,10 +1046,12 @@ output to *verbose-out*. Returns the shell's exit code."
#+(and sbcl sbcl-hooks-require)
(progn
(defun module-provide-asdf (name)
(let ((system (asdf:find-system name nil)))
(when system
(asdf:operate 'asdf:load-op name)
t)))
(handler-bind ((style-warning #'muffle-warning))
(let* ((*verbose-out* (make-broadcast-stream))
(system (asdf:find-system name nil)))
(when system
(asdf:operate 'asdf:load-op name)
t))))
(pushnew
'(merge-pathnames "systems/"
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment