denoland/rusty_v8

Failed to build V8 on riscv64

hack3ric opened this issue · 0 comments

Hi, currently rusty_v8 fails to build on riscv64:

error: failed to run custom build command for `v8 v0.91.1`

Caused by:
  process didn't exit successfully: `/build/deno/src/deno/target/release/build/v8-860405898034c0a2/build-script-build` (exit status: 101)
  --- stdout
  cargo:rerun-if-changed=.gn
  cargo:rerun-if-changed=BUILD.gn
  cargo:rerun-if-changed=src/binding.cc
  cargo:rerun-if-env-changed=CCACHE
  cargo:rerun-if-env-changed=CLANG_BASE_PATH
  cargo:rerun-if-env-changed=CXXSTDLIB
  cargo:rerun-if-env-changed=DENO_TRYBUILD
  cargo:rerun-if-env-changed=DOCS_RS
  cargo:rerun-if-env-changed=GN
  cargo:rerun-if-env-changed=GN_ARGS
  cargo:rerun-if-env-changed=HOST
  cargo:rerun-if-env-changed=NINJA
  cargo:rerun-if-env-changed=OUT_DIR
  cargo:rerun-if-env-changed=RUSTY_V8_ARCHIVE
  cargo:rerun-if-env-changed=RUSTY_V8_MIRROR
  cargo:rerun-if-env-changed=SCCACHE
  cargo:rerun-if-env-changed=V8_FORCE_DEBUG
  cargo:rerun-if-env-changed=V8_FROM_SOURCE
  cargo:rerun-if-env-changed=PYTHON
  cargo:rerun-if-env-changed=DISABLE_CLANG
  cargo:rerun-if-env-changed=EXTRA_GN_ARGS
  cargo:rerun-if-env-changed=NO_PRINT_GN_ARGS
  cargo:rerun-if-env-changed=CARGO_ENCODED_RUSTFLAGS
  cargo:rustc-link-lib=static=rusty_v8
  clang_base_path (system): /usr
  cargo:warning=Not using sccache or ccache
  The current directory is /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/v8-0.91.1
  gn gen --root=/build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/v8-0.91.1 /build/deno/src/deno/target/release/gn_out
  ERROR at //v8/BUILD.gn:1388:9: Undefined identifier
      if (riscv_use_zba || target_is_simulator) {
          ^------------
  See //BUILD.gn:11:5: which caused the file to be included.
      "//v8:v8_libplatform",
      ^--------------------

  --- stderr
  thread 'main' panicked at /build/.cargo/registry/src/index.crates.io-6f17d22bba15001f/v8-0.91.1/build.rs:870:5:
  assertion failed: Command::new(gn()).arg(format!("--root={}",
                                                  dirs.root.display())).arg(format!("--script-executable={}",
                                              python())).arg("gen").arg(&gn_out_dir).arg("--args=".to_owned()
                                  +
                                  &args).stdout(Stdio::inherit()).stderr(Stdio::inherit()).envs(env::vars()).status().expect("Could not run `gn`").success()
  note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
warning: build failed, waiting for other jobs to finish...

It seems that the build/ directory hasn't been updated for a while, and the fix is available upstream at https://chromium-review.googlesource.com/c/chromium/src/+/4974179.