Add a crate to interface with the WebAssembly spec interpreter
The WebAssembly spec interpreter is written in OCaml and the new crate uses `ocaml-interop` along with a small OCaml wrapper to interpret Wasm modules in-process. The build process for this crate is currently Linux-specific: it requires several OCaml packages (e.g. `apt install -y ocaml-nox ocamlbuild`) as well as `make`, `cp`, and `ar`.
This commit is contained in:
22
crates/fuzzing/wasm-spec-interpreter/Cargo.toml
Normal file
22
crates/fuzzing/wasm-spec-interpreter/Cargo.toml
Normal file
@@ -0,0 +1,22 @@
|
||||
[package]
|
||||
authors = ["The Wasmtime Project Developers"]
|
||||
description = "A Rust-to-OCaml wrapper for the WebAssembly specification interpreter"
|
||||
name = "wasm-spec-interpreter"
|
||||
version = "0.1.0"
|
||||
publish = false
|
||||
edition = "2018"
|
||||
license = "Apache-2.0 WITH LLVM-exception"
|
||||
|
||||
# Until https://gitlab.com/ocaml-rust/ocaml-boxroot/-/issues/1 is resolved and
|
||||
# this crate can use the `without-ocamlopt` feature to avoid build failures, it
|
||||
# is better to only build the OCaml dependencies when fuzzing (see the
|
||||
# `build-libinterpret` feature set by this crate's parent).
|
||||
[dependencies]
|
||||
ocaml-interop = { version = "0.8", optional = true }
|
||||
lazy_static = { version = "1.4", optional = true }
|
||||
|
||||
[dev-dependencies]
|
||||
wat = "1.0"
|
||||
|
||||
[features]
|
||||
build-libinterpret = ["ocaml-interop", "lazy_static"]
|
||||
Reference in New Issue
Block a user