diff options
Diffstat (limited to 'pkgs/development/lisp-modules/clwrapper/cl-wrapper.sh')
-rwxr-xr-x | pkgs/development/lisp-modules/clwrapper/cl-wrapper.sh | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/pkgs/development/lisp-modules/clwrapper/cl-wrapper.sh b/pkgs/development/lisp-modules/clwrapper/cl-wrapper.sh new file mode 100755 index 000000000000..91b8a0c2bb0f --- /dev/null +++ b/pkgs/development/lisp-modules/clwrapper/cl-wrapper.sh @@ -0,0 +1,44 @@ +#! /bin/sh +# Part of NixPkgs package collection +# This script can be used at your option under the same license as NixPkgs or +# under MIT/X11 license + +eval "$NIX_LISP_PREHOOK" + +NIX_LISP_COMMAND="$1" +shift + +[ -z "$NIX_LISP" ] && NIX_LISP="${NIX_LISP_COMMAND##*/}" + +export NIX_LISP NIX_LISP_LOAD_FILE NIX_LISP_EXEC_CODE NIX_LISP_COMMAND NIX_LISP_FINAL_PARAMETERS + +case "$NIX_LISP" in + sbcl) + NIX_LISP_LOAD_FILE="--load" + NIX_LISP_EXEC_CODE="--eval" + NIX_LISP_FINAL_PARAMETERS= + ;; + ecl) + NIX_LISP_LOAD_FILE="-load" + NIX_LISP_EXEC_CODE="-eval" + NIX_LISP_FINAL_PARAMETERS= + ;; + clisp) + NIX_LISP_LOAD_FILE="-c -l" + NIX_LISP_EXEC_CODE="-x" + NIX_LISP_FINAL_PARAMETERS="-repl" + ;; +esac + +NIX_LISP_ASDF_REGISTRY_CODE=" + (progn + (setf asdf:*default-source-registries* '(asdf/source-registry:environment-source-registry)) + (asdf:initialize-source-registry) + ) +" + +[ -z "$NIX_LISP_SKIP_CODE" ] && "$NIX_LISP_COMMAND" $NIX_LISP_EARLY_OPTIONS \ + $NIX_LISP_EXEC_CODE "(load \"$NIX_LISP_ASDF/lib/common-lisp/asdf/build/asdf.lisp\")" \ + $NIX_LISP_EXEC_CODE "$NIX_LISP_ASDF_REGISTRY_CODE" \ + $NIX_LISP_FINAL_PARAMETERS \ + "$@" |