[package]
edition = "2021"
name = "kinda"
version = "0.1.1"
default-run = "kinda"

[features]
default = []
web-sim = []

[[bin]]
name = "kinda"
path = "./src/bin/main.rs"

[[bin]]
name = "kinda-web-sim"
path = "./src/bin/web_sim.rs"
required-features = ["web-sim"]

[dependencies]
embedded-graphics = "0.8.1"
heapless = { version = "0.8.0", default-features = false }

[target.'cfg(target_arch = "riscv32")'.dependencies]
embedded-graphics = { version = "0.8.1", features = ["defmt"] }
ssd1677 = { path = "../ssd1677" }
defmt = "1.0.1"
esp-alloc = "0.10.0"
esp-hal = { version = "1.1.1", features = ["defmt", "esp32c6", "unstable"] }
critical-section = "1.2.0"
embassy-executor = { version = "0.10.0", features = ["defmt", "nightly"] }
embassy-time = { version = "0.5.0", features = ["generic-queue-8"] }
esp-rtos = { version = "0.3.0", features = [
  "embassy",
  "defmt",
  "esp32c6",
] }
static_cell = { version = "2.1.0", features = ["nightly"] }
embedded-hal = { version = "1.0.0", features = ["defmt-03"] }
esp-println = { version = "0.17.0", features = [
  "defmt-espflash",
  "esp32c6",
  "log-04",
] }
esp-backtrace = { version = "0.19.0", features = [
  "panic-handler",
  "esp32c6",
  "defmt",
] }
esp-bootloader-esp-idf = { version = "0.5.0", features = ["esp32c6"] }
lm3630a = { version = "0.1.1", features = ["async"] }

[profile.dev]
# Rust debug is too slow.
# For debug builds always builds with some optimization
opt-level = "s"

[profile.release]
codegen-units = 1        # LLVM can perform better optimizations using a single thread
debug = 2
debug-assertions = false
incremental = false
lto = 'fat'
opt-level = 's'
overflow-checks = false
