diff --git a/pkgs/development/compilers/binaryen/default.nix b/pkgs/development/compilers/binaryen/default.nix new file mode 100644 index 00000000000..31f5845cc86 --- /dev/null +++ b/pkgs/development/compilers/binaryen/default.nix @@ -0,0 +1,24 @@ +{ stdenv, cmake, fetchFromGitHub }: + +stdenv.mkDerivation rec { + version = "32"; + rev = "version_${version}"; + name = "binaryen-${version}"; + + src = fetchFromGitHub { + owner = "WebAssembly"; + repo = "binaryen"; + sha256 = "0zclw6pa2pkzrnp8ib9qwbjvq38r2h5ynfg8fjl99b5lcyz5m590"; + inherit rev; + }; + + nativeBuildInputs = [ cmake ]; + + meta = with stdenv.lib; { + homepage = https://github.com/WebAssembly/binaryen; + description = "Compiler infrastructure and toolchain library for WebAssembly, in C++"; + platforms = platforms.all; + maintainers = with maintainers; [ asppsa ]; + license = licenses.asl20; + }; +} diff --git a/pkgs/development/compilers/emscripten/default.nix b/pkgs/development/compilers/emscripten/default.nix index ad1cd437ffa..f118a11e419 100644 --- a/pkgs/development/compilers/emscripten/default.nix +++ b/pkgs/development/compilers/emscripten/default.nix @@ -1,4 +1,6 @@ -{ stdenv, fetchFromGitHub, emscriptenfastcomp, python, nodejs, closurecompiler, jre }: +{ stdenv, fetchFromGitHub, emscriptenfastcomp, python, nodejs, closurecompiler +, jre, binaryen, enableWasm ? true +}: let rev = "1.37.10"; @@ -36,6 +38,9 @@ stdenv.mkDerivation { echo "COMPILER_ENGINE = NODE_JS" >> $out/${appdir}/config echo "CLOSURE_COMPILER = '${closurecompiler}/share/java/closure-compiler-v${closurecompiler.version}.jar'" >> $out/${appdir}/config echo "JAVA = '${jre}/bin/java'" >> $out/${appdir}/config + '' + + stdenv.lib.optionalString enableWasm '' + echo "BINARYEN_ROOT = '${binaryen}'" >> $out/share/emscripten/config ''; meta = with stdenv.lib; { diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 3eb3ead3d02..4dc82ad078b 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -5014,6 +5014,8 @@ with pkgs; stdenv = overrideCC stdenv gcc49; }; + binaryen = callPackage ../development/compilers/binaryen { }; + boo = callPackage ../development/compilers/boo { inherit (gnome2) gtksourceview; };