diff options
author | Yorick van Pelt <yorick@yorickvanpelt.nl> | 2022-05-30 13:02:20 +0200 |
---|---|---|
committer | Will Cohen <willcohen@users.noreply.github.com> | 2022-06-23 11:14:21 -0400 |
commit | d531cd40af1f8385eb1f0c2384dc5a9e1ccb32db (patch) | |
tree | b0f56add02f6e92cf030e72d5d92bd828f87bb78 /pkgs/development/compilers/binaryen | |
parent | c3b5da2298bfb484d6cc70bea6b53ae69980a4ed (diff) |
binaryen: run tests
Diffstat (limited to 'pkgs/development/compilers/binaryen')
-rw-r--r-- | pkgs/development/compilers/binaryen/default.nix | 31 |
1 files changed, 28 insertions, 3 deletions
diff --git a/pkgs/development/compilers/binaryen/default.nix b/pkgs/development/compilers/binaryen/default.nix index c70b02cc55acb..9f417c5ef7ad3 100644 --- a/pkgs/development/compilers/binaryen/default.nix +++ b/pkgs/development/compilers/binaryen/default.nix @@ -1,4 +1,6 @@ -{ lib, stdenv, cmake, python3, fetchFromGitHub, emscripten }: +{ lib, stdenv, cmake, python3, fetchFromGitHub, emscripten, + gtest, lit, nodejs, filecheck +}: stdenv.mkDerivation rec { pname = "binaryen"; @@ -8,12 +10,35 @@ stdenv.mkDerivation rec { owner = "WebAssembly"; repo = "binaryen"; rev = "version_${version}"; - sha256 = "sha256-CcGxPBdUiNLfMjjJKFMdDvaIrHvf2M/gCub4JBw4+8c="; - fetchSubmodules = true; + sha256 = "sha256-KGrzAME2Gt4WFIcBJ4L6k4DtE+OtuH4KFbEMPe+f+pA="; }; nativeBuildInputs = [ cmake python3 ]; + preConfigure = '' + if [ $doCheck -eq 1 ]; then + sed -i '/googletest/d' third_party/CMakeLists.txt + else + cmakeFlagsArray=($cmakeFlagsArray -DBUILD_TESTS=0) + fi + ''; + + checkInputs = [ gtest lit nodejs filecheck ]; + checkPhase = '' + LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$PWD/lib python3 ../check.py $tests + ''; + + tests = [ + "version" "wasm-opt" "wasm-dis" + "crash" "dylink" "ctor-eval" + "wasm-metadce" "wasm-reduce" "spec" + "lld" "wasm2js" "validator" + "example" "unit" + # "binaryenjs" "binaryenjs_wasm" # not building this + "lit" "gtest" + ]; + doCheck = stdenv.isLinux; + meta = with lib; { homepage = "https://github.com/WebAssembly/binaryen"; description = "Compiler infrastructure and toolchain library for WebAssembly, in C++"; |