[asdf-devel] How to specify to ASDF to load system from current directory?

Dave Cooper david.cooper at genworks.com
Wed Nov 6 15:54:40 UTC 2013


Hi Mirko,

I think you can do:

     (pushnew "~/.../lisp-development/" ql:*local-project-directories*
:test #'equalp)
      (ql:register-local-projects)


This involves quicklisp though, and I'm not sure what the pure asdf answer
is.

Regards,

 Dave




On Wed, Nov 6, 2013 at 10:47 AM, Mirko Vukovic <mirko.vukovic at gmail.com>wrote:

> Hello,
>
> this is on recently upgraded SBCL1.1.13 and ASDF 3.0.2
>
> I have a system sitting in ~/quicklisp/local-dists and a development
> version sitting in ~/.../lisp-development/
>
> I would like ASDF to open the latter one.  I use asdf:load-system.
>
> I cd to the development directory and start slime there.
> (asdf:load-system ...) still tries to fetch the version in the
> quicklisp directory.
>
> I tried setting the (:directory :here) entry in source-registry.conf but
> that led to an error in
> asdf/configuration:resolve-absolute-location:
>
> NIL fell through ETYPECASE expression.
> Wanted one of ((EQL :USER-CACHE) (EQL :HERE) (EQL :HOME)
>                (EQL :ROOT) CONS STRING PATHNAME).
>
>
> I could fix that error by setting the *here-directory* to
> *default-pathname-defaults*:
> (progn
>   (asdf/configuration:clear-configuration)
>   (let ((asdf/configuration:*here-directory* *default-pathname-defaults*))
>     (print asdf/configuration:*here-directory*)
>     (asdf/configuration:resolve-absolute-location :here)
>     (asdf:load-system :my-utils :verbose t)))
>
> Now resolve-absolute-location returns the correct directory,
> asdf:system-source-directory
> still returns the version in the quicklisp directory.
>
> I did trace a bit deeper, but I am not sure that I am on the correct path.
>
> These are the contents of my configuration file:
> (:source-registry
>  (:directory :here)
>   :inherit-configuration)
>
> Without the last directive, I get an error:
> Unable to display error condition: unbound condition slot:
> UIOP/CONFIGURATION::FORM
>    [Condition of type INVALID-SOURCE-REGISTRY]
> ...
> Backtrace:
>   0: (REPORT-INVALID-FORM INVALID-SOURCE-REGISTRY :ARGUMENTS ("~@<One and
> only one of ~S or ~S is required.~@:>" :INHERIT-CONFIGURATION
> :IGNORE-INHERITED-CONFIGURATION))
>   1: (VALIDATE-CONFIGURATION-FORM (:SOURCE-REGISTRY (:DIRECTORY :HERE)
> (:TREE
> "/home/977315/projects/chamber-matching/experimental-data/data-analysis-software/"))
> :SOURCE-REGISTRY VALIDATE-SOURCE-REGISTRY-..
>   2: ((:METHOD PROCESS-SOURCE-REGISTRY (PATHNAME))
> #P"/home/mv/.config/common-lisp/source-registry.conf" :INHERIT
> (USER-SOURCE-REGISTRY-DIRECTORY SYSTEM-SOURCE-REGISTRY
> SYSTEM-SOURCE-REGISTRY-DIRECTORY DEF..
>   3: (ASDF/SOURCE-REGISTRY::PROCESS-SOURCE-REGISTRY-DIRECTIVE
> :INHERIT-CONFIGURATION :INHERIT (NIL ENVIRONMENT-SOURCE-REGISTRY
> USER-SOURCE-REGISTRY USER-SOURCE-REGISTRY-DIRECTORY SYSTEM-SOURCE-REGISTRY
> SYS..
>   4: ((:METHOD PROCESS-SOURCE-REGISTRY (CONS)) (:SOURCE-REGISTRY (:TREE
> #P"/usr/local/lib/sbcl/") :INHERIT-CONFIGURATION) :INHERIT (NIL
> ENVIRONMENT-SOURCE-REGISTRY USER-SOURCE-REGISTRY USER-SOURCE-REGISTRY..
>   5: (FLATTEN-SOURCE-REGISTRY NIL)
>
>
> Thanks,
>
> Mirko
>
>
>
>


-- 
My Best,

Dave Cooper, Genworks Support
david.cooper at genworks.com, dave.genworks.com(skype)
USA: 248-327-3253(o), 1-248-330-2979(mobile)
UK: 0191 645 1699
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.common-lisp.net/pipermail/asdf-devel/attachments/20131106/e4a51f6d/attachment.html>


More information about the asdf-devel mailing list