Unverified Commit 8e7d13ec authored by Will Cohen's avatar Will Cohen Committed by GitHub
Browse files

emscripten: 3.1.73 -> 4.0.8 (#380263)

parents 3de7c50f 578f23a3
Loading
Loading
Loading
Loading
+29 −29
Original line number Diff line number Diff line
@@ -20,13 +20,13 @@ let
in
stdenv.mkDerivation rec {
  pname = "binaryen";
  version = "120_b";
  version = "123";

  src = fetchFromGitHub {
    owner = "WebAssembly";
    repo = "binaryen";
    rev = "version_${version}";
    hash = "sha256-gdqjsAQp4NTHROAf6i44GjkbtNyLPQZ153k3veK7eYs=";
    hash = "sha256-SFruWOJVxO3Ll1HwjK3DYSPY2IprnDly7QjxrECTrzE=";
  };

  nativeBuildInputs = [
@@ -38,7 +38,7 @@ stdenv.mkDerivation rec {

  preConfigure = ''
    if [ $doCheck -eq 1 ]; then
      sed -i '/googletest/d' third_party/CMakeLists.txt
      sed -i '/gtest/d' third_party/CMakeLists.txt
      rmdir test/spec/testsuite
      ln -s ${testsuite} test/spec/testsuite
    else
@@ -51,14 +51,13 @@ stdenv.mkDerivation rec {
    nodejs
    filecheck
  ];
  checkInputs = [
    gtest
  ];
  checkInputs = [ gtest ];
  checkPhase = ''
    LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$PWD/lib python3 ../check.py $tests
  '';

  tests = [
  tests =
    [
      "version"
      "wasm-opt"
      "wasm-dis"
@@ -70,14 +69,17 @@ stdenv.mkDerivation rec {
      "spec"
      "lld"
      "wasm2js"
    "validator"
    "example"
    "unit"
      # "unit" # fails on test.unit.test_cluster_fuzz.ClusterFuzz
      # "binaryenjs" "binaryenjs_wasm" # not building this
    "lit"
      # "lit" # fails on d8/fuzz_shell*
      "gtest"
    ]
    ++ lib.optionals stdenv.hostPlatform.isLinux [
      "example"
      "validator"
    ];
  doCheck = stdenv.hostPlatform.isLinux;

  doCheck = (stdenv.hostPlatform.isLinux || stdenv.hostPlatform.isDarwin);

  meta = with lib; {
    homepage = "https://github.com/WebAssembly/binaryen";
@@ -89,7 +91,5 @@ stdenv.mkDerivation rec {
    ];
    license = licenses.asl20;
  };
  passthru.tests = {
    inherit emscripten;
  };
  passthru.tests = { inherit emscripten; };
}
+5 −5
Original line number Diff line number Diff line
@@ -17,7 +17,7 @@

stdenv.mkDerivation rec {
  pname = "emscripten";
  version = "3.1.73";
  version = "4.0.8";

  llvmEnv = symlinkJoin {
    name = "emscripten-llvm-${version}";
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
    name = "emscripten-node-modules-${version}";
    inherit pname version src;

    npmDepsHash = "sha256-bqxUlxpIH1IAx9RbnaMq4dZW8fy+M/Q02Q7VrW/AKNQ=";
    npmDepsHash = "sha256-fGlBtXsYOQ5V4/PRPPIpL3nxb+hUAuj9q7Jw0kL7ph0=";

    dontBuild = true;

@@ -46,7 +46,7 @@ stdenv.mkDerivation rec {
  src = fetchFromGitHub {
    owner = "emscripten-core";
    repo = "emscripten";
    hash = "sha256-QlC2k2rhF3/Pz+knnrlBDV8AfHHBSlGr7b9Ae6TNsxY=";
    hash = "sha256-xiqi3SMmlfV7NaA61QZAW7BFHu9xOVN9QMWwwDInBeE=";
    rev = version;
  };

@@ -67,8 +67,8 @@ stdenv.mkDerivation rec {

    patchShebangs .

    # emscripten 3.1.67 requires LLVM tip-of-tree instead of LLVM 18
    sed -i -e "s/EXPECTED_LLVM_VERSION = 20/EXPECTED_LLVM_VERSION = 19/g" tools/shared.py
    # emscripten 4 requires LLVM tip-of-tree instead of LLVM 20
    sed -i -e "s/EXPECTED_LLVM_VERSION = 21/EXPECTED_LLVM_VERSION = 20.1/g" tools/shared.py

    # fixes cmake support
    sed -i -e "s/print \('emcc (Emscript.*\)/sys.stderr.write(\1); sys.stderr.flush()/g" emcc.py
+1 −1
Original line number Diff line number Diff line
@@ -2913,7 +2913,7 @@ with pkgs;
  buildEmscriptenPackage = callPackage ../development/em-modules/generic { };
  emscripten = callPackage ../development/compilers/emscripten {
    llvmPackages = llvmPackages_19;
    llvmPackages = llvmPackages_20;
  };
  emscriptenPackages = recurseIntoAttrs (callPackage ./emscripten-packages.nix { });