summary refs log tree commit diff
path: root/pkgs/development/compilers/neko/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/compilers/neko/default.nix')
-rw-r--r--pkgs/development/compilers/neko/default.nix24
1 files changed, 17 insertions, 7 deletions
diff --git a/pkgs/development/compilers/neko/default.nix b/pkgs/development/compilers/neko/default.nix
index e229bd0db02..ec47d17ba94 100644
--- a/pkgs/development/compilers/neko/default.nix
+++ b/pkgs/development/compilers/neko/default.nix
@@ -14,9 +14,9 @@ composableDerivation {} ( fixed : {
 
   name = "neko-cvs";
 
-  # REGION AUTO UPDATE:           { name="neko"; type="cvs"; cvsRoot = ":pserver:anonymous@cvs.motion-twin.com:/cvsroot"; module = "neko"; }
-  src= sourceFromHead "neko-F_01-20-32.tar.gz"
-               (fetchurl { url = "http://mawercer.de/~nix/repos/neko-F_01-20-32.tar.gz"; sha256 = "785449f6df718fe26b6c87a2b7aa3cc587a72e7127582e6300ce966d97d6d16b"; });
+  # REGION AUTO UPDATE:              { name="neko"; type="cvs"; cvsRoot = ":pserver:anonymous@cvs.motion-twin.com:/cvsroot"; module = "neko"; groups = "haxe_group"; }
+  src = sourceFromHead "neko-F_23-45-39.tar.gz"
+               (fetchurl { url = "http://mawercer.de/~nix/repos/neko-F_23-45-39.tar.gz"; sha256 = "fc74720da7a80cc6f0f9ea9842df8a5fa78858f742171365fae66f0b9975d228"; });
   # END
 
   # optionally remove apache mysql like gentoo does?
@@ -28,8 +28,12 @@ composableDerivation {} ( fixed : {
     sed -i \
       -e 's@"/usr/include",@${includes}@' \
       src/tools/install.neko
-    sed -i "s@/usr/local@$out@" Makefile
+    sed -i "s@/usr/local@$out@" Makefile vm/load.c
+    # make sure that nekotools boot finds the neko executable and not our wrapper:
     ensureDir $out/{bin,lib}
+
+    sed -i "s@\"neko\"@\".neko-wrapped\"@" src/tools/nekoboot.neko
+    ln -s ./neko bin/.neko-wrapped
   '';
 
   inherit zlib;
@@ -45,12 +49,18 @@ composableDerivation {} ( fixed : {
   # if stripping was done neko and nekoc would be the same. ?!
   dontStrip = 1;
 
+  # neko-wrapped: nekotools boot has to find it. So don't prefix wrapped executable by "."
   postInstall = ''
-    wrapProgram "$out/bin/nekoc" \
-      --set "LD_LIBRARY_PATH" $out/lib/neko \
+    for prog in nekotools nekoc; do
+      wrapProgram "$out/bin/$prog" \
+        --prefix "LD_LIBRARY_PATH" $out/lib/neko
+    done
   
     wrapProgram "$out/bin/neko" \
-      --set "LD_LIBRARY_PATH" $out/lib/neko \
+      --prefix "LD_LIBRARY_PATH" $out/lib/neko
+
+    # create symlink so that nekotools boot finds not wrapped neko-wrapped executable
+    ln -s  ln -s ../../bin/.neko-wrapped $out/lib/neko
   '';
 
   # TODO make them optional and make them work