On Sun, 2012-05-06 at 17:08 -0400, Faré wrote:
> > I only want to put a system into "manual" mode, and make sure that
> > find-system never overrides that no matter what. How about adding an
> > optional third parameter to load-sysdef that sets a "definitivep" flag
> > in the system, which makes find-system to never search it on the
> > file-system any more ?
> >
> As I explained in my previous mail,
> it would more be something like what follows (wholly untested),
> where in your code you'd
> (1) call the register function initially
> (2) use load-slime-override-sysdef instead of load-sysdef in your code.
> 
> (in-package :asdf)
> 
> (defvar *slime-override-systems* (make-hash-table :test 'equal))
> 
> (defun sysdef-slime-override (name)
>   (values (gethash (coerce-name system) *slime-override-systems*)))
> 
> (defun register-slime-override ()
>   (setf asdf:*system-definition-search-functions*
>         (cons 'sysdef-slime-override
>               (remove 'sysdef-slime-override
> *system-definition-search-functions*))))
> 
> (defun load-slime-override-sysdef (name pathname)
>   (let ((name (coerce-name name)))
>     (setf (gethash name *slime-override-systems*) pathname)
>     (load-sysdef name pathname)))

Yes, but I'd like to push this as Slime contrib and there's no guarantee
that this will work in any case

-- 
Stelian Ionescu a.k.a. fe[nl]ix
Quidquid latine dictum sit, altum videtur.
http://common-lisp.net/project/iolib

Attachment: signature.asc
Description: This is a digitally signed message part

_______________________________________________
asdf-devel mailing list
[email protected]
http://lists.common-lisp.net/cgi-bin/mailman/listinfo/asdf-devel

Reply via email to