[package] name = "wasmer-compiler" description = "Base compiler abstraction for Wasmer WebAssembly runtime" categories = ["wasm", "no-std"] keywords = ["wasm", "webassembly", "compiler"] readme = "README.md" authors.workspace = true edition.workspace = true homepage.workspace = true license.workspace = true repository.workspace = true rust-version.workspace = true version.workspace = true [dependencies] wasmer-types = { path = "../types", version = "=5.0.1", default-features = false } wasmer-object = { path = "../object", version = "=5.0.1", optional = true } wasmparser = { workspace = true, optional = true, default-features = false } enumset.workspace = true hashbrown = { version = "0.11", optional = true } serde = { version = "1.0", features = ["derive"], optional = true } thiserror = "1.0" serde_bytes = { version = "0.11", optional = true } smallvec = "1.6" xxhash-rust = { version = "0.8.10", features = ["xxh64"] } loupe = { version = "0.1.3", optional = true, features = [ "indexmap", "enable-indexmap", ] } backtrace = "0.3" memmap2 = "0.6" more-asserts = "0.2" lazy_static = "1.4" cfg-if = "1.0" leb128 = "0.2" enum-iterator = "0.7.0" bytes = "1.0" self_cell = "1.0" rkyv = { workspace = true } shared-buffer = { workspace = true } libc.workspace = true [target.'cfg(not(target_arch = "wasm32"))'.dependencies] wasmer-vm = { path = "../vm", version = "=5.0.1" } region = { version = "3.0" } [target.'cfg(target_os = "windows")'.dependencies] windows-sys = { version = "0.59", features = [ "Win32_System_Diagnostics_Debug", ] } [features] default = ["std"] # This feature is for compiler implementors, it enables using `Compiler` and # `CompilerConfig`, as well as the included wasmparser. # Disable this feature if you just want a headless engine. translator = ["wasmparser"] compiler = ["translator"] wasmer-artifact-load = [] wasmer-artifact-create = [] static-artifact-load = [] static-artifact-create = ["wasmer-object"] std = ["wasmer-types/std"] core = ["hashbrown", "wasmer-types/core"] enable-serde = ["serde", "serde_bytes", "wasmer-types/enable-serde"] artifact-size = ["dep:loupe"] [badges] maintenance = { status = "experimental" } [package.metadata.docs.rs] features = [ "static-artifact-create", "static-artifact-load", "wasmer-artifact-create", "wasmer-artifact-load", ] rustc-args = ["--cfg", "docsrs"]