You should be able to invoke the function initialize-output-translations on an s-expression like the one Stelian sent.

-- 
Robert P. Goldman

On October 22, 2021 at 16:35:07, Raymond Toy (toy.raymond@gmail.com) wrote:

Thanks.  Is it possible to do this programmatically?  I need this to work without someone manually setting up the config dir.

On Fri, Oct 22, 2021 at 10:33 AM Stelian Ionescu <sionescu@cddr.org> wrote:
Add this to ~/.config/common-lisp/asdf-output-translations.conf:

(:output-translations
:inherit-configuration
((:home "src")
  (:home "output")))

The translation config is pairs of absolute paths, evaluated in order. AFAIU it doesn't allow specifying paths relative to the .asd file.
Here's my config, as a more complex example:

(:output-translations
:inherit-configuration
("/usr/share/common-lisp/source"
  (:user-cache "system"))
((:home "lisp/src")
  (:user-cache "src"))
((:home "lisp/quicklisp/dists/quicklisp/software")
  (:user-cache "qlq"))
((:home "lisp/quicklisp/dists")
  (:user-cache "ql"))
((:home "work/src")
  (:user-cache "work")))

I want to do a simple output translation and I just can't figure out what the sexp dsl would be for that.

What I want to do.  Let's say my asd file is in src/foo/proj.asd.  What I want is when I build the project, the fasls go in output/foo.  I just can't  figure out how to set up the output translations to make this happen.  I'm too stupid to grok the section in the manual about the sexp  dsl for translations.

Help would be appreciated.  More examples in the manual (and an updated section?) would be really helpful too.

--

Ray


--
Stelian Ionescu



--
Ray