diff options
Diffstat (limited to 'crates')
| -rw-r--r-- | crates/cli/Cargo.toml | 4 | ||||
| -rw-r--r-- | crates/cli/bin.rs | 9 | ||||
| -rw-r--r-- | crates/tinywasm/Cargo.toml | 2 |
3 files changed, 13 insertions, 2 deletions
diff --git a/crates/cli/Cargo.toml b/crates/cli/Cargo.toml index 505b025..dfb418a 100644 --- a/crates/cli/Cargo.toml +++ b/crates/cli/Cargo.toml @@ -18,5 +18,5 @@ pretty_env_logger="0.5" wast={version="69.0", optional=true} [features] -default=["wast"] -wast=["dep:wast"] +default=["wat"] +wat=["dep:wast"] diff --git a/crates/cli/bin.rs b/crates/cli/bin.rs index a067ca8..f8b0e1e 100644 --- a/crates/cli/bin.rs +++ b/crates/cli/bin.rs @@ -5,6 +5,8 @@ use color_eyre::eyre::Result; use log::info; use tinywasm::{self, Module, WasmValue}; mod util; + +#[cfg(feature = "wat")] mod wat; #[derive(FromArgs)] @@ -75,11 +77,18 @@ fn main() -> Result<()> { TinyWasmSubcommand::Run(Run { wasm_file, engine }) => { let path = cwd.join(wasm_file.clone()); let module = match wasm_file.ends_with(".wat") { + #[cfg(feature = "wat")] true => { let wat = std::fs::read_to_string(path)?; let wasm = wat::wat2wasm(&wat); tinywasm::Module::parse_bytes(&wasm)? } + #[cfg(not(feature = "wat"))] + true => { + return Err(color_eyre::eyre::eyre!( + "wat support is not enabled, please enable it with --features wat" + )) + } false => tinywasm::Module::parse_file(path)?, }; diff --git a/crates/tinywasm/Cargo.toml b/crates/tinywasm/Cargo.toml index b54ef8b..acd6736 100644 --- a/crates/tinywasm/Cargo.toml +++ b/crates/tinywasm/Cargo.toml @@ -4,7 +4,9 @@ version="0.0.0" edition="2021" [lib] +name="tinywasm" path="src/lib.rs" +crate-type=["cdylib", "rlib"] [dependencies] log="0.4.20" |
