[asdf-devel] configuration question

Faré fahree at gmail.com
Thu Sep 2 16:01:45 UTC 2010


On 2 September 2010 02:11, Daniel Herring <dherring at tentpost.com> wrote:
> I think ASDF2 makes these steps easier.
> - make sure LibCL's ASDF is loaded (ASDF's upgrading handles old
>   implementations, and blocks a downgrade?)
ASDF doesn't block downgrades.
If you are confident that your implementation comes with ASDF2,
you can just (require :asdf) then (asdf:load-system :asdf).

> However, I'm having some difficulty with the config.d file.  So far, the
> syntax is fine; its the naming that I can't get right.  When a new version
> of LibCL is installed, I don't want to auto-uninstall the old version...
> So my thought was to create files like the following.
>
> 50-libcl-2009-10-27.conf # old config
> 50-libcl-2010-10-27.conf # new, preferred config
>
> Unfortunately, string< will load the old file first; thus the old
> libraries will be found first...  Can you think of a natural naming scheme
> such that the new libraries will be found?
>
That's an interesting problem. We could have an extension to asdf that
handles sorting in reverse order, but here's a proposal that doesn't
require such:

(let ((time (get-universal-time)))
  (format nil "50-libcl-~36,4,'0R-~{~5*~4,'0D-~2:*~2,'0D-~2:*~2,'0D~5*~}.conf"
(- #36RZZZZ (floor time #.(* 24 60 60))) (multiple-value-list
(decode-universal-time time))))

Of course, now you have the Y6498 bug.

[ François-René ÐVB Rideau | Reflection&Cybernethics | http://fare.tunes.org ]
The rule is, jam to-morrow and jam yesterday, but never jam today.
                — Lewis Carroll




More information about the asdf-devel mailing list