KyriaV3-FW/Cargo.toml
2025-09-14 20:29:45 +02:00

72 lines
23 KiB
TOML

[package]
name = "Kyriav3"
version = "0.2.0"
authors = ["Haobo Gu <haobogu@outlook.com>"]
description = "Keyboard firmware written in Rust"
homepage = "https://github.com/haobogu/rmk"
repository = "https://github.com/haobogu/rmk"
readme = "../../README.md"
edition = "2021"
license = "MIT OR Apache-2.0"
[dependencies]
rmk = { version = "0.7", features = ["split", "rp2040_bl", "rp2040_pio"] }
embassy-time = { version = "0.4", features = ["defmt"] }
embassy-rp = { version = "0.4", features = [
"rp2040",
"defmt",
"time-driver",
"critical-section-impl",
] }
embassy-executor = { version = "0.7", features = [
"defmt",
"arch-cortex-m",
"executor-thread",
] }
embassy-futures = { version = "0.1", features = ["defmt"] }
cortex-m-rt = "0.7.5"
portable-atomic = { version = "1.11", features = ["critical-section"] }
defmt = "1.0"
defmt-rtt = "1.0"
panic-probe = { version = "1.0", features = ["print-defmt"] }
static_cell = "2"
[patch.crates-io]
embassy-sync = { git = "https://github.com/embassy-rs/embassy.git", rev = "f35aa4005a63e8d478b2b95aaa2bfb316b72dece" }
embassy-futures = { git = "https://github.com/embassy-rs/embassy.git", rev = "f35aa4005a63e8d478b2b95aaa2bfb316b72dece" }
embassy-executor = { git = "https://github.com/embassy-rs/embassy.git", rev = "f35aa4005a63e8d478b2b95aaa2bfb316b72dece" }
sequential-storage = { git = "https://github.com/tweedegolf/sequential-storage", rev = "4e9abcec36c259cb2c30840649ff8f9a6b6fcafc" } # Tmp workaround for https://github.com/tweedegolf/sequential-storage/issues/81
# [features]
# avoid having to use --allow-multiple-definition linker flag
# on macOS with Apple Silicon at least
# default = ["rp-pico/disable-intrinsics"]
[build-dependencies]
xz2 = "0.1.7"
json = "0.12"
const-gen = "1.6"
# Split keyboard example
[[bin]]
name = "central"
path = "src/central.rs"
[[bin]]
name = "peripheral"
path = "src/peripheral.rs"
[profile.dev]
codegen-units = 1 # better optimizations
debug = true
opt-level = 1
overflow-checks = true
lto = false
panic = 'unwind'
[profile.release]
codegen-units = 1 # better optimizations
debug = true # no overhead for bare-metal
opt-level = "z" # optimize for binary size
overflow-checks = false
lto = "fat"