about summary refs log tree commit diff
path: root/pkgs/development/lisp-modules/clwrapper/cl-wrapper.sh
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/lisp-modules/clwrapper/cl-wrapper.sh')
-rwxr-xr-xpkgs/development/lisp-modules/clwrapper/cl-wrapper.sh31
1 files changed, 29 insertions, 2 deletions
diff --git a/pkgs/development/lisp-modules/clwrapper/cl-wrapper.sh b/pkgs/development/lisp-modules/clwrapper/cl-wrapper.sh
index 97add524d176..41d40064294f 100755
--- a/pkgs/development/lisp-modules/clwrapper/cl-wrapper.sh
+++ b/pkgs/development/lisp-modules/clwrapper/cl-wrapper.sh
@@ -1,6 +1,6 @@
 #!@stdenv_shell@
 # Part of NixPkgs package collection
-# This script can be used at your option under the same license as NixPkgs or 
+# This script can be used at your option under the same license as NixPkgs or
 # under MIT/X11 license
 
 eval "$NIX_LISP_PREHOOK"
@@ -24,6 +24,7 @@ case "$NIX_LISP" in
                 NIX_LISP_QUIT="(quit)"
                 NIX_LISP_NODEBUG='--non-interactive'
 		NIX_LISP_FINAL_PARAMETERS=
+                NIX_LISP_FASL_TYPE="fasl"
 		;;
 	ecl)
 		NIX_LISP_LOAD_FILE="-load"
@@ -31,6 +32,7 @@ case "$NIX_LISP" in
                 NIX_LISP_QUIT="(quit)"
                 NIX_LISP_NODEBUG='--nodebug'
 		NIX_LISP_FINAL_PARAMETERS=
+                NIX_LISP_FASL_TYPE="fas"
 		;;
 	clisp)
 		NIX_LISP_LOAD_FILE="-c -l"
@@ -38,6 +40,31 @@ case "$NIX_LISP" in
                 NIX_LISP_QUIT="(quit)"
                 NIX_LISP_NODEBUG='-on-error exit'
 		NIX_LISP_FINAL_PARAMETERS="-repl"
+                NIX_LISP_FASL_TYPE="fas"
+		;;
+	lx86cl64)
+		NIX_LISP_LOAD_FILE="-l"
+		NIX_LISP_EXEC_CODE="-e"
+                NIX_LISP_QUIT="(quit)"
+                NIX_LISP_NODEBUG='-b'
+		NIX_LISP_FINAL_PARAMETERS=
+                NIX_LISP_FASL_TYPE="lx64fsl"
+		;;
+	lx86cl)
+		NIX_LISP_LOAD_FILE="-l"
+		NIX_LISP_EXEC_CODE="-e"
+                NIX_LISP_QUIT="(quit)"
+                NIX_LISP_NODEBUG='-b'
+		NIX_LISP_FINAL_PARAMETERS=
+                NIX_LISP_FASL_TYPE="lx32fsl"
+		;;
+	abcl)
+		NIX_LISP_LOAD_FILE="--load"
+		NIX_LISP_EXEC_CODE="--eval"
+                NIX_LISP_QUIT="(quit)"
+                NIX_LISP_NODEBUG=''
+		NIX_LISP_FINAL_PARAMETERS=
+                NIX_LISP_FASL_TYPE="abcl"
 		;;
 esac
 
@@ -59,7 +86,7 @@ nix_lisp_run_single_form(){
 eval "$NIX_LISP_PRELAUNCH_HOOK"
 
 [ -z "$NIX_LISP_SKIP_CODE" ] && "$NIX_LISP_COMMAND" $NIX_LISP_EARLY_OPTIONS \
-	$NIX_LISP_EXEC_CODE "${NIX_LISP_ASDF_LOAD:-"(load \"$NIX_LISP_ASDF/lib/common-lisp/asdf/build/asdf.lisp\")"}" \
+	$NIX_LISP_EXEC_CODE "${NIX_LISP_ASDF_LOAD:-"(load \"$NIX_LISP_ASDF/lib/common-lisp/asdf/build/asdf.$NIX_LISP_FASL_TYPE\")"}" \
 	$NIX_LISP_EXEC_CODE "$NIX_LISP_ASDF_REGISTRY_CODE" \
 	${NIX_LISP_FINAL_PARAMETERS[*]:+"${NIX_LISP_FINAL_PARAMETERS[@]}"} \
 	"$@"