The only difference between these forms is the return value when
"$NIX_LISP_SKIP_CODE" is the empty string. In the original
formulation, the script would return a false exit status. In the new
formulation, it will return a true exit status.
Its useful to be able to source cl-wrapper.sh (to get the variables it
establishes), and its a bit annoying that sourcing it with
NIX_LISP_SKIP_CODE=1 results in a false exit status.
The CCL package installs a symlink named "ccl" that points at the
actual implementation executable: lx86cl64 (or lx86cl for 32 bit).
When clwrapper is used with CCL as the backing implementation, this
script fails to recognize the implementation. By resolving the
symlink, we are able to recognize which implementation we're actually
working with.
Features:
+ configurable via environment variables
+ can skip the actual launching of the lisp implementation (source it
with NIX_LISP_SKIP_CODE=1 to get all the settings)
+ currently supports SBCL, CLisp, ECL
+ determines lisp implementation from NIX_LISP_COMMAND variable or
from buildInputs
+ sets ASDF search path for packages using buildInputs