[package]
edition      = "2021"
name         = "firebeetle_2_board_esp32_c6"
rust-version = "1.86"
version      = "0.1.0"

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

[dependencies]
defmt = "1.0.1"
libm = "0.2"
esp-bootloader-esp-idf = { version = "0.2.0", features = ["esp32c6"] }
esp-hal = { version = "=1.0.0-rc.0", features = [
  "defmt",
  "esp32c6",
  "unstable",
] }

critical-section = "1.2.0"
embedded-io = { version = "0.6.1", features = ["defmt-03"] }
esp-alloc = { version = "0.8.0", features = ["defmt"] }
esp-wifi = { version = "0.15.0", features = [
  "builtin-scheduler",
  "defmt",
  "esp-alloc",
  "esp32c6",
  "smoltcp",
  "wifi",
] }
panic-rtt-target = { version = "0.2.0", features = ["defmt"] }
rtt-target = { version = "0.6.1", features = ["defmt"] }
smoltcp = { version = "0.12.0", default-features = false, features = [
  "defmt",
  "medium-ethernet",
  "multicast",
  "proto-dhcpv4",
  "proto-dns",
  "proto-ipv4",
  "socket-dns",
  "socket-icmp",
  "socket-raw",
  "socket-tcp",
  "socket-udp",
] }


[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
