1#! /bin/sh
2# Part of NixPkgs package collection
3# This script can be used at your option under the same license as NixPkgs or
4# under MIT/X11 license
5
6eval "$NIX_LISP_PREHOOK"
7
8NIX_LISP_COMMAND="$1"
9shift
10
11[ -z "$NIX_LISP" ] && NIX_LISP="${NIX_LISP_COMMAND##*/}"
12
13export NIX_LISP NIX_LISP_LOAD_FILE NIX_LISP_EXEC_CODE NIX_LISP_COMMAND NIX_LISP_FINAL_PARAMETERS
14
15test -n "$NIX_LISP_LD_LIBRARY_PATH" &&
16 export LD_LIBRARY_PATH="$LD_LIBRARY_PATH${LD_LIBRARY_PATH+:}$NIX_LISP_LD_LIBRARY_PATH"
17
18case "$NIX_LISP" in
19 sbcl)
20 NIX_LISP_LOAD_FILE="--load"
21 NIX_LISP_EXEC_CODE="--eval"
22 NIX_LISP_FINAL_PARAMETERS=
23 ;;
24 ecl)
25 NIX_LISP_LOAD_FILE="-load"
26 NIX_LISP_EXEC_CODE="-eval"
27 NIX_LISP_FINAL_PARAMETERS=
28 ;;
29 clisp)
30 NIX_LISP_LOAD_FILE="-c -l"
31 NIX_LISP_EXEC_CODE="-x"
32 NIX_LISP_FINAL_PARAMETERS="-repl"
33 ;;
34esac
35
36NIX_LISP_ASDF_REGISTRY_CODE="
37 (progn
38 (setf asdf:*default-source-registries* '(asdf/source-registry:environment-source-registry))
39 (asdf:initialize-source-registry)
40 )
41"
42
43NIX_LISP_ASDF="${NIX_LISP_ASDF:-@asdf@}"
44
45[ -z "$NIX_LISP_SKIP_CODE" ] && "$NIX_LISP_COMMAND" $NIX_LISP_EARLY_OPTIONS \
46 $NIX_LISP_EXEC_CODE "(load \"$NIX_LISP_ASDF/lib/common-lisp/asdf/build/asdf.lisp\")" \
47 $NIX_LISP_EXEC_CODE "$NIX_LISP_ASDF_REGISTRY_CODE" \
48 $NIX_LISP_FINAL_PARAMETERS \
49 "$@"