On 28 Jun 2011, at 17:49, Zach Beane wrote: > Faré <fah...@gmail.com> writes: > >>> I am looking for a portable way to specify configuration for a library >>> before/during loading with ASDF2. It would be sufficient if the user >>> could specify an ALIST (or something similar) somewhere and I could read/ >>> use it when the library is loaded. Does ASDF2 have a "standard" >>> mechanism for library config files (eg where they are, how to handle them >>> etc), or should I use something else? I thought of using *features*, but >>> I need actual values instead of merely checking for the presence of >>> symbols. >>> >> ASDF (1 or 2) does not handle C libraries. Extensions to ASDF do. > > The question is not about C libraries, but how to express and manage > configuration options that must be initialized before the library is > built. > > I think the answer for ASDF is "there is no way to express or manage any > library configuration decisions." > > Hunchentoot also has this issue regarding building with SSL, and manages > it by checking for :hunchentoot-no-ssl in cl:*features*. For a > non-boolean option, that's not a workable approach.
One could use a global variable that stores one's own configuration option, for example as a plist or alist. This would have to be in the common-lisp-user package, and theoretically clashes with other such variables. However, this is not substantially worse than potential clashes of keyword symbols in *features*. Just use a name that is unlikely to be used by others (for example, by using the ASDF/package name with an -OPTIONS suffix, or some such). boundp is your friend to check whether the variable is actually defined, which could either yield a warning, or assume default options. Pascal -- Pascal Costanza The views expressed in this email are my own, and not those of my employer. _______________________________________________ pro mailing list pro@common-lisp.net http://lists.common-lisp.net/cgi-bin/mailman/listinfo/pro