diff options
author | Michael Raskin <7c6f434c@mail.ru> | 2017-03-31 22:46:32 +0200 |
---|---|---|
committer | Michael Raskin <7c6f434c@mail.ru> | 2017-03-31 22:46:49 +0200 |
commit | 1e7bad5d51756ac7f0f8065ee726add4c7670eaf (patch) | |
tree | 2919e2e918f36071bb23118e0604ab63a42e4576 /pkgs/development/lisp-modules/define-package.nix | |
parent | 5793e12143ba18b91826c2443e2888d2a6ccafb7 (diff) | |
download | nixpkgs-1e7bad5d51756ac7f0f8065ee726add4c7670eaf.tar nixpkgs-1e7bad5d51756ac7f0f8065ee726add4c7670eaf.tar.gz nixpkgs-1e7bad5d51756ac7f0f8065ee726add4c7670eaf.tar.bz2 nixpkgs-1e7bad5d51756ac7f0f8065ee726add4c7670eaf.tar.lz nixpkgs-1e7bad5d51756ac7f0f8065ee726add4c7670eaf.tar.xz nixpkgs-1e7bad5d51756ac7f0f8065ee726add4c7670eaf.tar.zst nixpkgs-1e7bad5d51756ac7f0f8065ee726add4c7670eaf.zip |
clwrapper, buildLispPackage: compile fasls and store them for all systems
Diffstat (limited to 'pkgs/development/lisp-modules/define-package.nix')
-rw-r--r-- | pkgs/development/lisp-modules/define-package.nix | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/pkgs/development/lisp-modules/define-package.nix b/pkgs/development/lisp-modules/define-package.nix index a3368e336e6..58f4ab6d21d 100644 --- a/pkgs/development/lisp-modules/define-package.nix +++ b/pkgs/development/lisp-modules/define-package.nix @@ -1,15 +1,17 @@ -args @ {stdenv, clwrapper, baseName, version ? "latest", src, description, deps, - buildInputs ? [], meta ? {}, overrides?(x: {}), propagatedBuildInputs ? []}: +args @ {stdenv, clwrapper, baseName, testSystem ? baseName, version ? "latest" + , src, description, deps, buildInputs ? [], meta ? {}, overrides?(x: {}) + , propagatedBuildInputs ? []}: let deployConfigScript = '' config_script="$out"/lib/common-lisp-settings/${args.baseName}-shell-config.sh mkdir -p "$(dirname "$config_script")" touch "$config_script" chmod a+x "$config_script" - echo "export NIX_CFLAGS_COMPILE='$NIX_CFLAGS_COMPILE'\"\''${NIX_CFLAGS_COMPILE:+ $NIX_CFLAGS_COMPILE}\"" >> "$config_script" + echo "export NIX_CFLAGS_COMPILE='$NIX_CFLAGS_COMPILE'\"\''${NIX_CFLAGS_COMPILE:+ \$NIX_CFLAGS_COMPILE}\"" >> "$config_script" echo "export NIX_LISP_COMMAND='$NIX_LISP_COMMAND'" >> "$config_script" echo "export NIX_LISP_ASDF='$NIX_LISP_ASDF'" >> "$config_script" echo "export CL_SOURCE_REGISTRY="\$CL_SOURCE_REGISTRY\''${CL_SOURCE_REGISTRY:+:}"'$CL_SOURCE_REGISTRY:$out/lib/common-lisp/${args.baseName}/'" >> "$config_script" + echo "export ASDF_OUTPUT_TRANSLATIONS="\$ASDF_OUTPUT_TRANSLATIONS\''${ASDF_OUTPUT_TRANSLATIONS:+:}"'$out/lib/common-lisp/${args.baseName}/:$out/lib/common-lisp-compiled/${args.baseName}:$ASDF_OUTPUT_TRANSLATIONS'" >> "$config_script" test -n "$LD_LIBRARY_PATH" && echo "export LD_LIBRARY_PATH=\"\$LD_LIBRARY_PATH\''${LD_LIBRARY_PATH:+:}\"'$LD_LIBRARY_PATH'" >> "$config_script" test -n "$NIX_LISP_LD_LIBRARY_PATH" && @@ -41,9 +43,14 @@ basePackage = { ${deployConfigScript} ${deployLaunchScript} + ${if testSystem != null then '' + NIX_LISP_PRELAUNCH_HOOK='nix_lisp_run_single_form "(asdf:load-system :${testSystem})"' \ + "$out/bin/${args.baseName}-lisp-launcher.sh" "" + '' else ""} + eval "$postInstall" ''; - propagatedBuildInputs = (args.deps or []) ++ [clwrapper clwrapper.lisp] + propagatedBuildInputs = (args.deps or []) ++ [clwrapper clwrapper.lisp clwrapper.asdf] ++ (args.propagatedBuildInputs or []); buildInputs = buildInputs; dontStrip=true; |