summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
authorTim Steinbach <NeQuissimus@users.noreply.github.com>2017-04-01 13:45:56 -0400
committerGitHub <noreply@github.com>2017-04-01 13:45:56 -0400
commited5d80d74b46a2ce5ad8346a0d65cc0c4f2b5713 (patch)
treef9bb02a2a8745d6da40682d84707ca5f06b4200b /pkgs
parent97210a1f48defa49c690af419cd332ab3a6530c8 (diff)
parent033c5debbc2db8f934aad4bd2b35b899d839fb46 (diff)
downloadnixpkgs-ed5d80d74b46a2ce5ad8346a0d65cc0c4f2b5713.tar
nixpkgs-ed5d80d74b46a2ce5ad8346a0d65cc0c4f2b5713.tar.gz
nixpkgs-ed5d80d74b46a2ce5ad8346a0d65cc0c4f2b5713.tar.bz2
nixpkgs-ed5d80d74b46a2ce5ad8346a0d65cc0c4f2b5713.tar.lz
nixpkgs-ed5d80d74b46a2ce5ad8346a0d65cc0c4f2b5713.tar.xz
nixpkgs-ed5d80d74b46a2ce5ad8346a0d65cc0c4f2b5713.tar.zst
nixpkgs-ed5d80d74b46a2ce5ad8346a0d65cc0c4f2b5713.zip
Merge pull request #24524 from vbgl/utop_404
utop: fix on OCaml 4.04
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/development/tools/ocaml/utop/default.nix18
1 files changed, 14 insertions, 4 deletions
diff --git a/pkgs/development/tools/ocaml/utop/default.nix b/pkgs/development/tools/ocaml/utop/default.nix
index 9b41a06c935..31549729cfe 100644
--- a/pkgs/development/tools/ocaml/utop/default.nix
+++ b/pkgs/development/tools/ocaml/utop/default.nix
@@ -25,14 +25,24 @@ stdenv.mkDerivation rec {
     make doc
     '';
 
+  dontStrip = true;
+
   postFixup =
-  let ocamlVersion = (builtins.parseDrvName (ocaml.name)).version;
-  in
+   let p = p: "${p}/lib/ocaml/${ocaml.version}/site-lib"; in
    ''
-   for prog in "$out"/bin/*
+   pushd $out/bin
+   for prog in *
    do
-    wrapProgram $prog --set CAML_LD_LIBRARY_PATH "${ocaml_lwt}"/lib/ocaml/${ocamlVersion}/site-lib/lwt/:"${lambdaTerm}"/lib/ocaml/${ocamlVersion}/site-lib/lambda-term/:'$CAML_LD_LIBRARY_PATH' --set OCAMLPATH "${ocaml_lwt}"/lib/ocaml/${ocamlVersion}/site-lib:${ocaml_react}/lib/ocaml/${ocamlVersion}/site-lib:${camomile}/lib/ocaml/${ocamlVersion}/site-lib:${zed}/lib/ocaml/${ocamlVersion}/site-lib:${lambdaTerm}/lib/ocaml/${ocamlVersion}/site-lib:"$out"/lib/ocaml/${ocamlVersion}/site-lib:'$OCAMLPATH'
+    mv $prog .$prog-wrapped
+    cat > $prog <<EOF
+#!/bin/sh
+export CAML_LD_LIBRARY_PATH=${p ocaml_lwt}/lwt:${p lambdaTerm}/lambda-term:'\$CAML_LD_LIBRARY_PATH'
+export OCAMLPATH=${p ocaml_lwt}:${p ocaml_react}:${p camomile}:${p zed}:${p lambdaTerm}:"$out"/lib/ocaml/${ocaml.version}/site-lib:'\$OCAMLPATH'
+${ocaml}/bin/ocamlrun $out/bin/.$prog-wrapped \$*
+EOF
+    chmod +x $prog
    done
+   popd
    '';
 
   meta = {