about summary refs log tree commit diff
path: root/pkgs/development/interpreters
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/interpreters')
-rw-r--r--pkgs/development/interpreters/evcxr/default.nix8
-rw-r--r--pkgs/development/interpreters/perl/wrapper.nix2
-rw-r--r--pkgs/development/interpreters/python/default.nix8
-rw-r--r--pkgs/development/interpreters/python/pypy/default.nix10
-rw-r--r--pkgs/development/interpreters/python/pypy/tk_tcl_paths.patch9
-rw-r--r--pkgs/development/interpreters/quickjs/default.nix2
-rw-r--r--pkgs/development/interpreters/wasmer/default.nix40
7 files changed, 68 insertions, 11 deletions
diff --git a/pkgs/development/interpreters/evcxr/default.nix b/pkgs/development/interpreters/evcxr/default.nix
index 1cc63788555f..168b012efcc1 100644
--- a/pkgs/development/interpreters/evcxr/default.nix
+++ b/pkgs/development/interpreters/evcxr/default.nix
@@ -2,16 +2,16 @@
 
 rustPlatform.buildRustPackage rec {
   pname = "evcxr";
-  version = "0.4.6";
+  version = "0.5.0";
 
   src = fetchFromGitHub {
     owner = "google";
     repo = "evcxr";
-    rev = "v${version}";
-    sha256 = "1yzvqf93zz3ncck4dyq2kayp408lm3h6fx0fb212j7h70mlzx984";
+    rev = "239e431c58d04c641da22af791e4d3e1b894365e";
+    sha256 = "0vkcis06gwsqfwvrl8xcf74mfcs6j77b9fhcz5rrh77mwl7ixsdc";
   };
 
-  cargoSha256 = "0g17g12isah4nkqp9i299qr1sz19k4czcc43rm1wbs0y9szaqvwc";
+  cargoSha256 = "04wffj2y9pqyk0x3y6ghp06pggmxnk2h245iabqq0mpwx36fd8b6";
 
   nativeBuildInputs = [ pkgconfig makeWrapper cmake ];
   buildInputs = stdenv.lib.optional stdenv.isDarwin Security;
diff --git a/pkgs/development/interpreters/perl/wrapper.nix b/pkgs/development/interpreters/perl/wrapper.nix
index 95122aebf039..2e3d394f8515 100644
--- a/pkgs/development/interpreters/perl/wrapper.nix
+++ b/pkgs/development/interpreters/perl/wrapper.nix
@@ -35,7 +35,7 @@ let
             if [ -f "$prg" ]; then
               rm -f "$out/bin/$prg"
               if [ -x "$prg" ]; then
-                makeWrapper "$path/bin/$prg" "$out/bin/$prg" --set PERL5LIB "$out/${perl.libPrefix}"
+                makeWrapper "$path/bin/$prg" "$out/bin/$prg" --suffix PERL5LIB ':' "$out/${perl.libPrefix}"
               fi
             fi
           done
diff --git a/pkgs/development/interpreters/python/default.nix b/pkgs/development/interpreters/python/default.nix
index caf2e13bdf62..4811c8ec48e8 100644
--- a/pkgs/development/interpreters/python/default.nix
+++ b/pkgs/development/interpreters/python/default.nix
@@ -158,9 +158,11 @@ in {
     };
     sha256 = "0yq6ln1ic476sasp8zs4mg5i9524l1p96qwanp486rr1yza1grlg";
     pythonVersion = "2.7";
-    db = db.override { dbmSupport = true; };
+    db = db.override { dbmSupport = !stdenv.isDarwin; };
     python = python27;
     inherit passthruFun;
+    inherit (darwin) libunwind;
+    inherit (darwin.apple_sdk.frameworks) Security;
   };
 
   pypy36 = callPackage ./pypy {
@@ -172,9 +174,11 @@ in {
     };
     sha256 = "1hqvnran7d2dzj5555n7q680dyzhmbklz04pvkxgb5j604v7kkx1";
     pythonVersion = "3.6";
-    db = db.override { dbmSupport = true; };
+    db = db.override { dbmSupport = !stdenv.isDarwin; };
     python = python27;
     inherit passthruFun;
+    inherit (darwin) libunwind;
+    inherit (darwin.apple_sdk.frameworks) Security;
   };
 
   pypy27_prebuilt = callPackage ./pypy/prebuilt.nix {
diff --git a/pkgs/development/interpreters/python/pypy/default.nix b/pkgs/development/interpreters/python/pypy/default.nix
index b220bfa0f934..0c4f3eda7b1e 100644
--- a/pkgs/development/interpreters/python/pypy/default.nix
+++ b/pkgs/development/interpreters/python/pypy/default.nix
@@ -1,5 +1,5 @@
 { stdenv, substituteAll, fetchurl
-, zlib ? null, zlibSupport ? true, bzip2, pkgconfig, libffi
+, zlib ? null, zlibSupport ? true, bzip2, pkgconfig, libffi, libunwind, Security
 , sqlite, openssl_1_0_2, ncurses, python, expat, tcl, tk, tix, xlibsWrapper, libX11
 , self, gdbm, db, lzma
 , python-setup-hook
@@ -47,6 +47,8 @@ in with passthru; stdenv.mkDerivation rec {
     stdenv.cc.libc
   ] ++ optionals zlibSupport [
     zlib
+  ] ++ optionals stdenv.isDarwin [
+    libunwind Security
   ];
 
   hardeningDisable = optional stdenv.isi686 "pic";
@@ -127,13 +129,17 @@ in with passthru; stdenv.mkDerivation rec {
     mkdir -p $out/{bin,include,lib,${executable}-c}
 
     cp -R {include,lib_pypy,lib-python,${executable}-c} $out/${executable}-c
-    cp lib${executable}-c.so $out/lib/
+    cp lib${executable}-c${stdenv.hostPlatform.extensions.sharedLibrary} $out/lib/
     ln -s $out/${executable}-c/${executable}-c $out/bin/${executable}
 
     # other packages expect to find stuff according to libPrefix
     ln -s $out/${executable}/include $out/include/${libPrefix}
     ln -s $out/${executable}-c/lib-python/${if isPy3k then "3" else pythonVersion} $out/lib/${libPrefix}
 
+    ${stdenv.lib.optionalString stdenv.isDarwin ''
+      install_name_tool -change @rpath/libpypy${optionalString isPy3k "3"}-c.dylib $out/lib/libpypy${optionalString isPy3k "3"}-c.dylib $out/bin/${executable}
+    ''}
+
     # verify cffi modules
     $out/bin/${executable} -c ${if isPy3k then "'import tkinter;import sqlite3;import curses;import lzma'" else "'import Tkinter;import sqlite3;import curses'"}
 
diff --git a/pkgs/development/interpreters/python/pypy/tk_tcl_paths.patch b/pkgs/development/interpreters/python/pypy/tk_tcl_paths.patch
index 92bbfc557b35..0b78caf7e075 100644
--- a/pkgs/development/interpreters/python/pypy/tk_tcl_paths.patch
+++ b/pkgs/development/interpreters/python/pypy/tk_tcl_paths.patch
@@ -1,6 +1,13 @@
 --- pypy-pypy-84a2f3e6a7f8.org/lib_pypy/_tkinter/tklib_build.py	2017-10-03 11:49:20.000000000 +0100
 +++ pypy-pypy-84a2f3e6a7f8/lib_pypy/_tkinter/tklib_build.py	2017-11-21 13:20:51.398607530 +0000
-@@ -24,11 +24,11 @@
+@@ -17,18 +17,14 @@
+     incdirs = []
+     linklibs = ['tcl85', 'tk85']
+     libdirs = []
+-elif sys.platform == 'darwin':
+-    incdirs = ['/System/Library/Frameworks/Tk.framework/Versions/Current/Headers/']
+-    linklibs = ['tcl', 'tk']
+-    libdirs = []
  else:
      # On some Linux distributions, the tcl and tk libraries are
      # stored in /usr/include, so we must check this case also
diff --git a/pkgs/development/interpreters/quickjs/default.nix b/pkgs/development/interpreters/quickjs/default.nix
index e7f01856ef59..b1d03252d7ef 100644
--- a/pkgs/development/interpreters/quickjs/default.nix
+++ b/pkgs/development/interpreters/quickjs/default.nix
@@ -35,7 +35,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     description = "A small and embeddable Javascript engine";
     homepage = "https://bellard.org/quickjs/";
-    maintainers = with maintainers; [ stesie ivan ];
+    maintainers = with maintainers; [ stesie ];
     platforms = platforms.linux;
     license = licenses.mit;
   };
diff --git a/pkgs/development/interpreters/wasmer/default.nix b/pkgs/development/interpreters/wasmer/default.nix
new file mode 100644
index 000000000000..7c270e5fb447
--- /dev/null
+++ b/pkgs/development/interpreters/wasmer/default.nix
@@ -0,0 +1,40 @@
+{ lib
+, rustPlatform
+, fetchFromGitHub
+, cmake
+, llvmPackages
+, pkg-config
+}:
+
+rustPlatform.buildRustPackage rec {
+  pname = "wasmer";
+  version = "0.13.0";
+
+  src = fetchFromGitHub {
+    owner = "wasmerio";
+    repo = pname;
+    rev = version;
+    sha256 = "1k9zd2vhrbvxlpkh21m39alk5lfhd3xa25k0awis27plfpv8fqcq";
+    fetchSubmodules = true;
+  };
+
+  cargoSha256 = "1yp7kandh5hh8hkzlmqpj05vwgr5v4nil8blf3scbppg865qk3rq";
+
+  nativeBuildInputs = [ cmake pkg-config ];
+
+  LIBCLANG_PATH = "${llvmPackages.libclang}/lib";
+
+  meta = with lib; {
+    description = "The Universal WebAssembly Runtime";
+    longDescription = ''
+      Wasmer is a standalone WebAssembly runtime for running WebAssembly outside
+      of the browser, supporting WASI and Emscripten. Wasmer can be used
+      standalone (via the CLI) and embedded in different languages, running in
+      x86 and ARM devices.
+    '';
+    homepage = "https://wasmer.io/";
+    license = licenses.mit;
+    maintainers = with maintainers; [ filalex77 ];
+    platforms = platforms.all;
+  };
+}