[package]
edition = "2024"
rust-version = "1.93"
name = "wasmer-c-api"
version = "7.2.0"
authors = ["Wasmer Engineering Team <engineering@wasmer.io>"]
build = "build.rs"
exclude = ["examples/assets/**"]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Wasmer C API library"
homepage = "https://wasmer.io/"
documentation = "https://wasmerio.github.io/wasmer/c-api/"
readme = "README.md"
keywords = [
"wasm",
"webassembly",
"runtime",
]
categories = [
"wasm",
"api-bindings",
]
license = "MIT"
repository = "https://github.com/wasmerio/wasmer"
resolver = "2"
[features]
compiler = [
"sys",
"wasmer-compiler",
"wasmer-api/compiler",
"wasmer-c-api-imports/compiler",
"wasmer-compiler/translator",
"wasmer-compiler/compiler",
]
compiler-headless = [
"sys",
"wasmer-artifact-load",
"static-artifact-load",
"wasmer-api/compiler",
"wasmer-c-api-imports/compiler",
"wasmer-compiler/translator",
"wasmer-compiler/compiler",
]
cranelift = [
"dep:wasmer-compiler-cranelift",
"wasmer-api/cranelift",
"wasmer-c-api-imports/cranelift",
"compiler",
]
default = [
"wat",
"sys-default",
"cranelift",
"compiler",
"wasi",
"middlewares",
]
engine = ["compiler"]
jit = ["compiler"]
llvm = [
"dep:wasmer-compiler-llvm",
"wasmer-api/llvm",
"wasmer-c-api-imports/llvm",
"compiler",
]
middlewares = [
"compiler",
"wasmer-middlewares",
"wasmer-api/wasmparser",
]
singlepass = [
"dep:wasmer-compiler-singlepass",
"wasmer-api/singlepass",
"wasmer-c-api-imports/singlepass",
"compiler",
]
static-artifact-create = [
"wasmer-compiler/static-artifact-create",
"wasmer-c-api-imports/static-artifact-create",
]
static-artifact-load = [
"wasmer-compiler/static-artifact-load",
"wasmer-c-api-imports/static-artifact-load",
]
sys = [
"wasmer-api/sys",
"wasmer-compiler",
"wasmer-c-api-imports/sys",
]
sys-default = [
"sys",
"wasmer-api/sys-default",
"wasmer-c-api-imports/sys-default",
]
v8 = [
"wasmer-api/v8",
"wasmer-c-api-imports/v8",
]
v8-default = [
"v8",
"wasmer-api/v8-default",
"wasmer-c-api-imports/v8-default",
]
wasi = ["wasmer-wasix"]
wasmer-artifact-create = [
"wasmer-compiler/wasmer-artifact-create",
"wasmer-c-api-imports/wasmer-artifact-create",
]
wasmer-artifact-load = [
"wasmer-compiler/wasmer-artifact-load",
"wasmer-c-api-imports/wasmer-artifact-load",
]
wat = [
"wasmer-api/wat",
"wasmer-c-api-imports/wat",
]
webc_runner = [
"virtual-fs",
"webc",
]
[lib]
name = "wasmer"
crate-type = [
"staticlib",
"cdylib",
"rlib",
]
path = "src/lib.rs"
[dependencies.anyhow]
version = "1.0"
[dependencies.cfg-if]
version = "1.0"
[dependencies.enumset]
version = "1.1.0"
[dependencies.libc]
version = "0.2.178"
default-features = false
[dependencies.paste]
version = "1.0.15"
[dependencies.thiserror]
version = "2.0.17"
[dependencies.tokio]
version = "1.39.0"
features = [
"rt",
"rt-multi-thread",
"io-util",
"sync",
"macros",
]
default-features = false
[dependencies.tracing]
version = "0.1"
default-features = false
[dependencies.tracing-subscriber]
version = "0.3"
features = [
"env-filter",
"fmt",
]
default-features = false
[dependencies.typetag]
version = "0.2.21"
optional = true
[dependencies.virtual-fs]
version = "0.702.0"
features = ["static-fs"]
optional = true
default-features = false
[dependencies.wasmer-api]
version = "=7.2.0"
default-features = false
package = "wasmer"
[dependencies.wasmer-c-api-imports]
version = "=7.2.0"
default-features = false
[dependencies.wasmer-compiler]
version = "=7.2.0"
optional = true
[dependencies.wasmer-compiler-cranelift]
version = "=7.2.0"
optional = true
[dependencies.wasmer-compiler-llvm]
version = "=7.2.0"
optional = true
[dependencies.wasmer-compiler-singlepass]
version = "=7.2.0"
optional = true
[dependencies.wasmer-middlewares]
version = "=7.2.0"
optional = true
[dependencies.wasmer-types]
version = "=7.2.0"
[dependencies.wasmer-wasix]
version = "=0.702.0"
features = [
"host-fs",
"host-vnet",
"sys",
]
optional = true
default-features = false
[dependencies.webc]
version = "=12.0.0"
optional = true
[dev-dependencies.field-offset]
version = "0.3.3"
[dev-dependencies.inline-c]
version = "0.1.8"
[dev-dependencies.wat]
version = "1.252.0"
[build-dependencies.cbindgen]
version = "0.29"
default-features = false
[lints.rust.unexpected_cfgs]
level = "warn"
priority = 0
check-cfg = ["cfg(coverage_nightly)"]