about summary refs log tree commit diff
path: root/pkgs/development/compilers
diff options
context:
space:
mode:
authorTuomas Tynkkynen <tuomas.tynkkynen@iki.fi>2016-12-13 18:51:33 +0200
committerGitHub <noreply@github.com>2016-12-13 18:51:33 +0200
commitc5ed16406ba556cf09e1c3035b23803d25d4ecbf (patch)
tree2f6d3e429c3958f7ee0bdafe5ca053a3108e793e /pkgs/development/compilers
parent8aecafcf5e53c1511a567b4d6e3a11b573d6b9aa (diff)
parent87f0ad66bf395cffaa87094e7ca0fb3e776efc5e (diff)
downloadnixlib-c5ed16406ba556cf09e1c3035b23803d25d4ecbf.tar
nixlib-c5ed16406ba556cf09e1c3035b23803d25d4ecbf.tar.gz
nixlib-c5ed16406ba556cf09e1c3035b23803d25d4ecbf.tar.bz2
nixlib-c5ed16406ba556cf09e1c3035b23803d25d4ecbf.tar.lz
nixlib-c5ed16406ba556cf09e1c3035b23803d25d4ecbf.tar.xz
nixlib-c5ed16406ba556cf09e1c3035b23803d25d4ecbf.tar.zst
nixlib-c5ed16406ba556cf09e1c3035b23803d25d4ecbf.zip
Merge pull request #21072 from boronine/neko-2.1.0
neko: 2.0.0 -> 2.1.0
Diffstat (limited to 'pkgs/development/compilers')
-rw-r--r--pkgs/development/compilers/neko/default.nix74
1 files changed, 39 insertions, 35 deletions
diff --git a/pkgs/development/compilers/neko/default.nix b/pkgs/development/compilers/neko/default.nix
index a036e7e6939f..493748d369b7 100644
--- a/pkgs/development/compilers/neko/default.nix
+++ b/pkgs/development/compilers/neko/default.nix
@@ -1,50 +1,54 @@
-{ stdenv, fetchurl, fetchpatch, boehmgc, zlib, sqlite, pcre }:
+{ stdenv, fetchurl, fetchpatch, boehmgc, zlib, sqlite, pcre, cmake, pkgconfig
+, git, apacheHttpd, apr, aprutil, mariadb, mbedtls, openssl, pkgs, gtk2
+}:
 
 stdenv.mkDerivation rec {
   name = "neko-${version}";
-  version = "2.0.0";
+  version = "2.1.0";
 
   src = fetchurl {
-    url = "http://nekovm.org/_media/neko-${version}.tar.gz";
-    sha256 = "1lcm1ahbklfpd5lnqjwmvyj2vr85jbq57hszk5jgq0x6yx6p3927";
+    url = "http://nekovm.org/media/neko-${version}-src.tar.gz";
+    sha256 = "15ng9ad0jspnhj38csli1pvsv3nxm75f0nlps7i10194jvzdb4qc";
   };
 
-  patches = stdenv.lib.singleton (fetchpatch {
-    url = "https://github.com/HaxeFoundation/neko/commit/"
-        + "ccc78c29deab7971e1369f4fe3dedd14cf9f3128.patch";
-    sha256 = "1nya50rzai15hmpq2azganjxzgrfydf30glfwirgw6q8z7z3wpkq";
-  });
-
-  prePatch = with stdenv.lib; let
-    libs = concatStringsSep "," (map (lib: "\"${lib.dev}/include\"") buildInputs);
-  in ''
-    sed -i -e '/^search_includes/,/^}/c \
-      search_includes = function(_) { return $array(${libs}) }
-    ' src/tools/install.neko
-    sed -i -e '/allocated = strdup/s|"[^"]*"|"'"$out/lib/neko:$out/bin"'"|' \
-      vm/load.c
-    # temporarily, fixed in 1.8.3
-    sed -i -e 's/^#if defined(_64BITS)/& || defined(__x86_64__)/' vm/neko.h
-
-    for disabled_mod in mod_neko{,2} mod_tora{,2} mysql ui; do
-      sed -i -e '/^libs/,/^}/{/^\s*'"$disabled_mod"'\s*=>/,/^\s*}/d}' \
-        src/tools/install.neko
-    done
+  # Patches backported with reference to https://github.com/HaxeFoundation/neko/issues/131
+  # They can probably be removed when bumping to next version
+  patches = [
+    (fetchpatch {
+      url = "https://github.com/HaxeFoundation/neko/commit/"
+          + "a8c71ad97faaccff6c6e9e09eba2d5efd022f8dc.patch";
+      sha256 = "0mnx15cdjs8mnl01mhc9z2gpzh4d1q0ygqnjackrqxz6x235ydyp";
+    })
+    (fetchpatch {
+      url = "https://github.com/HaxeFoundation/neko/commit/"
+          + "fe87462d9c7a6ee27e28f5be5e4fc0ac87b34574.patch";
+      sha256 = "1jbmq6j32vg3qv20dbh82cp54886lgrh7gkcqins8a2y4l4dl3sc";
+    })
+  ];
+
+  buildInputs =
+    [ boehmgc zlib sqlite pcre cmake pkgconfig git apacheHttpd apr aprutil
+      mariadb.client mbedtls openssl ]
+      ++ stdenv.lib.optional stdenv.isLinux gtk2
+      ++ stdenv.lib.optionals stdenv.isDarwin [ pkgs.darwin.apple_sdk.frameworks.Security
+                                                pkgs.darwin.apple_sdk.frameworks.Carbon];
+  cmakeFlags = [ "-DRUN_LDCONFIG=OFF" ];
+  prePatch = ''
+    sed -i -e '/allocated = strdup/s|"[^"]*"|"'"$out/lib/neko:$out/bin"'"|' vm/load.c
   '';
 
-  makeFlags = "INSTALL_PREFIX=$(out)";
-  buildInputs = [ boehmgc zlib sqlite pcre ];
-  dontStrip = true;
-
-  preInstall = ''
-    install -vd "$out/lib" "$out/bin"
+  checkPhase = ''
+    bin/neko bin/test.n
   '';
 
-  meta = {
+  dontStrip = true;
+
+  meta = with stdenv.lib; {
     description = "A high-level dynamically typed programming language";
     homepage = http://nekovm.org;
-    license = stdenv.lib.licenses.lgpl21;
-    maintainers = [ stdenv.lib.maintainers.marcweber ];
-    platforms = stdenv.lib.platforms.linux;
+    license = licenses.lgpl21;
+    maintainers = [ maintainers.marcweber ];
+    platforms = platforms.linux ++ platforms.darwin;
   };
 }
+