3
0
Fork 0
forked from mirrors/nixpkgs

lispPackages: A less aggressive way to manipulate ASDF search path, as suggested by Fare

This commit is contained in:
Michael Raskin 2017-11-22 07:55:06 +01:00
parent a1e340fab2
commit 4db842f465
3 changed files with 9 additions and 9 deletions

View file

@ -70,8 +70,12 @@ esac
NIX_LISP_ASDF_REGISTRY_CODE="
(progn
#+asdf3 (setf asdf:*default-source-registries*
'(asdf/source-registry:environment-source-registry))
(setf asdf:*source-registry-parameter*
'(:source-registry
$(for p in $NIX_LISP_ASDF_PATHS; do
echo "(:tree \"$p\")"
done)
:inherit-configuration))
(asdf:initialize-source-registry)
)
"

View file

@ -29,7 +29,7 @@ let
echo "source '$path_config_script'" >> "$config_script"
echo "fi" >> "$config_script"
echo "if test -z \"\''${_''${outhash}_NIX_LISP_PATH_CONFIG}\"; then export _''${outhash}_NIX_LISP_PATH_CONFIG=1; " >> "$path_config_script"
echo "for i in \"''${CL_SOURCE_REGISTRY//:/\" \"}\" \"$out/lib/common-lisp/${args.baseName}/\" ; do echo \"\$CL_SOURCE_REGISTRY\" | grep -E \"(^|:)\$i(:|\\\$)\" >/dev/null || export CL_SOURCE_REGISTRY=\"\$CL_SOURCE_REGISTRY\''${CL_SOURCE_REGISTRY:+:}\$i\"; done;" >> "$path_config_script"
echo "export NIX_LISP_ASDF_PATHS=\"$( ( echo "\$NIX_LISP_ASDF_PATHS"; echo "$NIX_LISP_ASDF_PATHS"; echo "$out/lib/common-lisp/${args.baseName}" ) | grep . | sort | uniq)\"" >> "$path_config_script"
test -n "$LD_LIBRARY_PATH" &&
echo "export LD_LIBRARY_PATH=\"\$LD_LIBRARY_PATH\''${LD_LIBRARY_PATH:+:}\"'$LD_LIBRARY_PATH'" >> "$path_config_script"
test -n "$NIX_LISP_LD_LIBRARY_PATH" &&

View file

@ -28,13 +28,8 @@ in
propagatedBuildInputs = [pkgs.fuse];
overrides = y : (x.overrides y) // {
configurePhase = ''
export SAVED_CL_SOURCE_REGISTRY="$CL_SOURCE_REGISTRY"
export CL_SOURCE_REGISTRY="$CL_SOURCE_REGISTRY:$PWD"
export makeFlags="$makeFlags LISP=common-lisp.sh"
'';
preInstall = ''
export CL_SOURCE_REGISTRY="$SAVED_CL_SOURCE_REGISTRY"
'';
};
};
hunchentoot = addNativeLibs [pkgs.openssl];
@ -65,7 +60,8 @@ in
overrides = y: (x.overrides y) // {
linkedSystems = [];
postInstall = ((x.overrides y).postInstall or "") + ''
export CL_SOURCE_REGISTRY="$CL_SOURCE_REGISTRY:$out/lib/common-lisp/query-fs"
export NIX_LISP_ASDF_PATHS="$NIX_LISP_ASDF_PATHS
$out/lib/common-lisp/query-fs"
export HOME=$PWD
"$out/bin/query-fs-lisp-launcher.sh" --eval '(asdf:make :query-fs)' \
--eval "(progn $(for i in $linkedSystems; do echo "(asdf:make :$i)"; done) )" \