From 4dca44ac722fee72c05b753bc51ea5bcd2bb3b7c Mon Sep 17 00:00:00 2001 From: eta Date: Mon, 6 Jul 2020 17:40:31 +0100 Subject: fix(buildLisp): use full store path in FASL output pathnames If you compiled dirA/test.lisp and dirB/test.lisp in the same library, they'd both get written to /test.fasl and the second would overwrite the first. Instead, use the whole store path (with / swapped for -) as the fasl filename. Change-Id: I4eb88b5d33757751e1f67e72ed328bd58079b1b9 Reviewed-on: https://cl.tvl.fyi/c/depot/+/944 Tested-by: BuildkiteCI Reviewed-by: tazjin --- nix/buildLisp/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'nix/buildLisp') diff --git a/nix/buildLisp/default.nix b/nix/buildLisp/default.nix index 0e94ed6223b7..5d9861891b34 100644 --- a/nix/buildLisp/default.nix +++ b/nix/buildLisp/default.nix @@ -32,7 +32,7 @@ let (let ((outfile (make-pathname :type "fasl" :directory (or (sb-posix:getenv "NIX_BUILD_TOP") (error "not running in a Nix build")) - :defaults srcfile))) + :name (substitute #\- #\/ srcfile)))) (multiple-value-bind (_outfile _warnings-p failure-p) (compile-file srcfile :output-file outfile) (if failure-p (sb-posix:exit 1) -- cgit 1.4.1