[workspace]
members = [
    "embassy",
    "embassy-traits",
    "embassy-nrf",
    "embassy-stm32",
    "embassy-stm32f4",
    "embassy-stm32l0",
    "embassy-nrf-examples",
    "embassy-stm32f4-examples",
    "embassy-macros",
    "embassy-extras",
]

# embassy-std enables std-only features. Since Cargo resolves all features
# for all crates in the workspace together, including it would result in
# incompatible features enabled in embassy.
exclude = [
    "embassy-std",
    "embassy-std-examples",
]

[profile.dev]
codegen-units = 1
debug = 2
debug-assertions = true
incremental = false
opt-level = 3
overflow-checks = true

[profile.release]
codegen-units = 1
debug = 2
debug-assertions = false
incremental = false
lto = "fat"
opt-level = 's'
overflow-checks = false

# do not optimize proc-macro crates = faster builds from scratch
[profile.dev.build-override]
codegen-units = 8
debug = false
debug-assertions = false
opt-level = 0
overflow-checks = false

[profile.release.build-override]
codegen-units = 8
debug = false
debug-assertions = false
opt-level = 0
overflow-checks = false