[cl-containers-devel] On Containers, binary locations, and system connections
Nathan Bird
nathan at acceleration.net
Wed Oct 22 16:49:10 UTC 2008
Most directly:
CL-containers defines the following system connection
(asdf:defsystem-connection containers-and-utilities
:requires (cl-containers metatilities-base)
:components ((:module "dev"
:components ((:file "utilities-integration")))))
However since the cl-containers system itself depends on metatilities
base it appears that this system connection is redundant. and that file
should probably just be in the containers system proper.
How I came across this:
Trying to setup a buildbot running under its own user, it doesn't have
access to write fasls to /usr/local/lib/sbcl/site/... AHA I said, let
me go grab that binary-locations library. This seems to be working for
the most part except that we carve out /usr/local/lib/sbcl as a location
that it shouldn't alter. I didn't think that would be a problem since
everything in that directory I consider to be already built.
System-connections though, when it loads the system, uses ':force t' to
force recompilation (unnecessarily? I suspect that there at least was a
reason at one point, can it go away?).
I tried setting the asdf:*source-to-target-mappings* to nil so that it
would compile everything to the private location, which of course lead
to the regression that was designed to prevent.
I also tried
(setf asdf:*source-to-target-mappings*
(list (list "/usr/local/lib/sbcl/site" ;;asdf-install locations
should be recompilable
(concatenate 'string
asdf:*default-toplevel-directory*
(asdf:implementation-specific-directory-name)
"/usr/local/lib/sbcl/site"))
'("/usr/local/lib/sbcl" NIL))) ;;sbcl-sourced packages should
be left alone.
That configuration apparently didn't work--"failed to find the TRUENAME
of
/home/buildmaster/.sbcl/fasls/sbcl-1.0.21-linux-x86/usr/local/lib/sbcl/sb-posix/constants.lisp-temp:
No such file or directory"
So it doesn't appear to be properly separating sbcl/ and sbcl/site even
though the code does appear to search from front to back.
I'm stuck at the moment, will try to dig deeper a bit later.
Nathan Bird
More information about the cl-containers-devel
mailing list