acid/firmware2/Cargo.toml

93 lines
2.8 KiB
TOML
Raw Normal View History

2025-12-24 02:07:21 +01:00
[package]
name = "acid-firmware"
version = "0.1.0"
authors = ['Jakub "Limeth" Hlusička']
description = "Firmware for the ACID keyboard"
homepage = "https://github.com/haobogu/rmk"
repository = "https://github.com/haobogu/rmk"
edition = "2024"
[features]
default = ["ble", "usb-log"]
no-usb = ["rmk/_no_usb"]
2025-12-27 21:03:52 +01:00
ble = ["rmk/esp32s3_ble"]
# Use alternative logging via GPIO5 as RX and GPIO12 as TX.
# Disables default logging via USB.
# Does not support esp-println's `println!`.
alt-log = []
# Standard logging implementation over USB.
usb-log = ["esp-backtrace/panic-handler"]
2025-12-24 02:07:21 +01:00
[dependencies]
rmk = { version = "0.8.2", default-features = false, features = [
"log",
"storage",
"vial",
] }
embassy-executor = { version = "0.9" }
2025-12-27 21:03:52 +01:00
embassy-time = { version = "0.5.0", features = ["log"] }
embassy-embedded-hal = "0.5.0"
esp-backtrace = { version = "0.18", default-features = false, features = [
2025-12-24 02:07:21 +01:00
"esp32s3",
"println",
] }
2025-12-27 21:03:52 +01:00
esp-hal = { version = "1.0", features = ["esp32s3", "unstable", "psram", "log-04"] }
2025-12-24 02:07:21 +01:00
esp-storage = { version = "0.8.0", features = ["esp32s3"] }
esp-alloc = { version = "0.9.0" }
esp-println = { version = "0.16.0", features = ["esp32s3", "log-04"] }
esp-radio = { version = "0.17", features = ["esp32s3", "unstable", "ble"] }
esp-rtos = { version = "0.2", features = ["esp32s3", "esp-radio", "embassy"] }
esp-bootloader-esp-idf = { version = "0.4", features = ["esp32s3", "log-04"] }
bt-hci = { version = "0.6" }
rand_core = { version = "0.6", default-features = false }
static_cell = "2"
lazy_static = { version = "1.5.0", features = ["spin_no_std"], default-features = false }
log = "0.4.29"
bitflags = "2.10.0"
paste = "1.0.15"
2025-12-27 21:03:52 +01:00
itertools = { version = "0.14.0", default-features = false }
bytemuck = "1.24.0"
slint = { version = "1.14.1", default-features = false, features = ["compat-1-2", "libm", "log", "unsafe-single-threaded", "renderer-software"]}
critical-section = "1.2.0"
2025-12-31 22:24:26 +01:00
backtrace = { version = "0.3.76", default-features = false }
2025-12-31 00:54:48 +01:00
# Crates for serial UART CLI
embedded-cli = { version = "0.2.1", default-features = false, features = ["help", "macros"] }
embedded-io = "0.6.1"
2025-12-24 02:07:21 +01:00
[build-dependencies]
xz2 = "0.1.7"
json = "0.12"
const-gen = "1.6"
embuild = "0.33"
cc = "1.2.9"
slint-build = "1.14.1"
2025-12-31 22:24:26 +01:00
gix = { version = "0.76.0", default-features = false, features = ["max-performance", "status"] }
2025-12-24 02:07:21 +01:00
[[bin]]
name = "acid-firmware"
test = false
bench = false
[profile.release-with-debug]
inherits = "release"
debug = true
[profile.dev.package.esp-storage]
opt-level = 3
[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 = 'thin'
opt-level = 3
overflow-checks = false