[Ecls-list] Building lisp .o files on Debian

Juan Jose Garcia-Ripoll jjgarcia at users.sourceforge.net
Sat Feb 2 10:34:56 UTC 2008


On Feb 2, 2008 10:36 AM, Juan Jose Garcia-Ripoll
<jjgarcia at users.sourceforge.net> wrote:
> On Feb 1, 2008 10:41 PM, Juan Jose Garcia-Ripoll
> <jjgarcia at users.sourceforge.net> wrote:
> > On Jan 29, 2008 11:14 PM,  <David_Creelman at pa.com.au> wrote:
> > >  Is there a way to build the temp files somewhere else?
> > > That way I'd be able to
> > >  try out libraries packages for SBCL. I get the impression that SBCL does
> > >  something where temp files get built in a user owned build area.
> >
> > This does not seem to be true:
>
> Well actually I think what you experience is a result of the setup in
> Debian. There, all lisps share the same sources and the library called
> common-lisp-controller takes care of storing the binaries on a
> separate location.

Indeed, I just found that the common-lisp-controller defines an around
method that maps all compiled files to the global cache in the Debian
distribution. I am not sure how one can use this directly from a
Debian distribution, but it should not be difficult to write your own
version, which you can place in the $HOME/.ecl file.

(require 'asdf)

(defvar asdf::*binaries-root* "/Users/jjgarcia/.asdf-binaries/")

(defmethod asdf:output-files :around ((op asdf:operation) (c asdf:component))
  "Method to rewrite output files to fasl-root"
  (flet ((remap-directory (pathname)
	   (let ((d (pathname-directory pathname)))
	     (make-pathname
	      :directory (append (pathname-directory asdf::*binaries-root*)
				 (rest d))
	      :defaults pathname))))
    (mapcar #'remap-directory (call-next-method))))

-- 
Facultad de Fisicas, Universidad Complutense,
Ciudad Universitaria s/n Madrid 28040 (Spain)
http://juanjose.garciaripoll.googlepages.com




More information about the ecl-devel mailing list