# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2024"
name = "mstak-interpret"
version = "0.12.6"
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Minimal Stak Scheme bytecode interpreter"
readme = "README.md"
keywords = [
    "interpreter",
    "language",
    "scheme",
]
categories = [
    "compilers",
    "no-std",
    "no-std::no-alloc",
    "wasm",
]
license = "MIT"
repository = "https://github.com/raviqqe/stak"

[[bin]]
name = "mstak-interpret"
path = "src/main.rs"

[dependencies.dlmalloc]
version = "0.2.12"
features = ["global"]

[dependencies.origin]
version = "0.26.2"
features = ["libc"]
default-features = false

[dependencies.stak-device]
version = "0.12.0"
features = ["libc"]

[dependencies.stak-file]
version = "0.12.0"
features = ["libc"]

[dependencies.stak-libc]
version = "0.12.0"

[dependencies.stak-process-context]
version = "0.12.0"
features = ["libc"]

[dependencies.stak-r7rs]
version = "0.12.0"

[dependencies.stak-time]
version = "0.12.0"
features = ["libc"]

[dependencies.stak-vm]
version = "0.12.0"

[lints.clippy]
alloc_instead_of_core = "deny"
cargo = "deny"
complexity = "deny"
correctness = "deny"
dbg_macro = "deny"
derive_partial_eq_without_eq = "deny"
equatable_if_let = "deny"
explicit_deref_methods = "deny"
if_not_else = "deny"
manual_let_else = "deny"
missing_const_for_fn = "deny"
missing_panics_doc = "deny"
option_if_let_else = "deny"
perf = "deny"
std_instead_of_alloc = "deny"
std_instead_of_core = "deny"
style = "deny"
suspicious = "deny"
todo = "deny"
undocumented_unsafe_blocks = "deny"
unimplemented = "deny"
uninlined_format_args = "deny"
unnecessary_safety_comment = "deny"
unused_self = "deny"
use_self = "deny"

[lints.clippy.multiple_crate_versions]
level = "allow"
priority = 1

[lints.rust]
missing_docs = "deny"
warnings = "deny"

[profile.dev]
opt-level = 3
lto = true
codegen-units = 1
panic = "abort"
strip = true

[profile.dev.build-override]
opt-level = 3
debug-assertions = false
overflow-checks = false

[profile.release]
opt-level = 3
lto = true
codegen-units = 1
panic = "abort"
strip = true

[profile.release.build-override]
opt-level = 3
debug-assertions = false
overflow-checks = false
