"asf" == Andreas Fuchs asf@boinkor.net writes:
asf> Today, rpgoldman@real-time.com wrote: >> I have been able to build the clim-clx-user system (which loads >> clim) using the defsystem that comes in system.lisp for mcclim. So >> it seems like the package problem I just reported is somehow in >> mcclim.asd, but not in system.lisp. >> >> If I find out any more, I'll report.
asf> Oh. I should have been more explicit about that in the INSTALL.ASDF, asf> then.
No, entirely my fault. I had looked at the installation instructions some time ago, and assumed (incorrectly) that I knew what to do. I'm not sure I would have recalled that ACL needs (require :CLX), anyway. The only other graphics toolkit I use is garnet and I hacked in the require there myself :-)
asf> On ACL6.2, you need to (require :clx) (as step 2 says) before you asf> (asdf:oos 'asdf:load-op :mcclim). Unfortunately, CLX doesn't come with asf> an ASDF system on ACL.
asf> Perhaps we should make a clx-compat system that pulls in CLX the asf> traditional way (but is visible to ASDF for dependencies), like so:
asf> (asdf:defsystem :mcclim-clx-compat)
asf> (defmethod asdf:perform ((o asdf:load-op) (c (eql (asdf:find-system :mcclim-clx-compat)))) asf> #+acl (require :clx))
asf> This could also help with the (require "carbon") requirement for the asf> beagle backend. What do you think?
Doesn't this still have the problem that ASDF has no way of determining which back-end you want, so that for example, one can try to load one of the applications and end up with no back-end at all?
Would it be possible to make a :clim-with-backend system that would have a load-op method that would simply ask the user what backend s/he would prefer (and presumably offer a reasonable default by platform)? Then we could have the clim applications require :clim-with-backend, rather than just :clim.
I confess that I have not the foggiest idea what this half-baked idea would do to ASDF's dependency tracing.
Best, R