at 18.09-beta 1.1 kB view raw
1{ stdenv, cmake, fetchFromGitHub, emscriptenRev ? null }: 2 3let 4 defaultVersion = "45"; 5 6 # Map from git revs to SHA256 hashes 7 sha256s = { 8 "version_45" = "1wgzfzjjzkiaz0rf2lnwrcvlcsjvjhyvbyh58jxhqq43vi34zyjc"; 9 "1.37.36" = "1wgzfzjjzkiaz0rf2lnwrcvlcsjvjhyvbyh58jxhqq43vi34zyjc"; 10 }; 11in 12 13stdenv.mkDerivation rec { 14 version = if emscriptenRev == null 15 then defaultVersion 16 else "emscripten-${emscriptenRev}"; 17 rev = if emscriptenRev == null 18 then "version_${version}" 19 else emscriptenRev; 20 name = "binaryen-${version}"; 21 22 src = fetchFromGitHub { 23 owner = "WebAssembly"; 24 repo = "binaryen"; 25 sha256 = 26 if builtins.hasAttr rev sha256s 27 then builtins.getAttr rev sha256s 28 else null; 29 inherit rev; 30 }; 31 32 nativeBuildInputs = [ cmake ]; 33 34 meta = with stdenv.lib; { 35 homepage = https://github.com/WebAssembly/binaryen; 36 description = "Compiler infrastructure and toolchain library for WebAssembly, in C++"; 37 platforms = platforms.all; 38 maintainers = with maintainers; [ asppsa ]; 39 license = licenses.asl20; 40 }; 41}