My own asdf problem (exactly one of ...)
Christophe Rhodes <[email protected]>
| Newsgroups | gmane.lisp.cclan.general |
|---|---|
| Message-ID | <[email protected]> |
Hi,
I ran into what I fear is a wall today. I am working on CLX, and was
attempting to move sbcl implementations of system-independent routines
into their own file, so that where before there was just
"dependent.lisp", there would be "sbcl-dependent.lisp" to be used if
the implementation is sbcl, and "dependent.lisp" otherwise. The
problem arose when trying to describe this to ASDF. It's easy enough
to say "don't use sbcl-dependent if :SBCL isn't on *FEATURES*":
(:module dependent
(:file "sbcl-dependent"
:if-component-dep-fails :try-next
:in-order-to ((compile-op (feature :sbcl))))
...)
but the description "don't use dependent.lisp if :SBCL *is* on
*FEATURES*" eluded me. The best I could come up with was
(:file "dependent"
:perform (compile-op :around (o c)
(unless (member :sbcl *features*)
(call-next-method)))
:output-files (compile-op :around (o c)
(unless (member :sbcl *features*)
(call-next-method))))
which did not fill me with joy. Is there a better way in current
ASDF? Do other defsystems let you express this in a more consise way?
Cheers,
Christophe
--
http://www-jcsu.jesus.cam.ac.uk/~csr21/ +44 1223 510 299/+44 7729 383 757
(set-pprint-dispatch 'number (lambda (s o) (declare (special b)) (format s b)))
(defvar b "~&Just another Lisp hacker~%") (pprint #36rJesusCollegeCambridge)
-------------------------------------------------------
This SF.Net email sponsored by: Free pre-built ASP.NET sites including
Data Reports, E-commerce, Portals, and Forums are available now.
Download today and enter to win an XBOX or Visual Studio .NET.
http://aspnet.click-url.com/go/psa00100006ave/direct;at.asp_061203_01/01