esp-hal/esp-sync/Cargo.toml
Dániel Buga 69776eb638
Even more cargo-batch, encode configs in Cargo.toml (#4134)
* Abstract out LP-core targeting packages

* Encode targets_lp_core in Cargo.toml

* Encode architecture compatibility in Cargo.toml

* Move semver_checked into Cargo.toml

* Cache parsed tomls

* Parse simple feature sets from Cargo.toml

* Move all basic feature rules to Cargo.toml

* Add check configs

* Limit command length on Windows

* Update cargo.rs

* Add clippy configs

* Use a single syntax, use a single doc-config line

* Fix known problems

* Run cargo check in CI command

* Fix more problems

* Fix esp-storage
2025-09-18 16:15:35 +00:00

64 lines
2.1 KiB
TOML

[package]
name = "esp-sync"
version = "0.0.0"
edition = "2024"
rust-version = "1.88.0"
description = "Synchronization primitives for Espressif devices"
documentation = "https://docs.espressif.com/projects/rust/esp-sync/latest/"
categories = ["no-std", "embedded", "concurrency"]
repository = "https://github.com/esp-rs/esp-hal"
license = "MIT OR Apache-2.0"
exclude = [ "MIGRATING-*", "CHANGELOG.md" ]
[package.metadata.espressif]
check-configs = [
{ features = [] },
{ features = ["log-04"] },
{ features = ["defmt"] },
]
clippy-configs = [{ features = ["defmt"] }]
[dependencies]
cfg-if = "1"
document-features = "0.2"
esp-metadata-generated = { version = "0.1.0", path = "../esp-metadata-generated" }
embassy-sync-06 = { package = "embassy-sync", version = "0.6" }
embassy-sync-07 = { package = "embassy-sync", version = "0.7" }
# Logging interfaces, they are mutually exclusive so they need to be behind separate features.
defmt = { version = "1.0.1", optional = true }
log-04 = { package = "log", version = "0.4", optional = true }
[target.'cfg(target_arch = "riscv32")'.dependencies]
riscv = { version = "0.15.0" }
[target.'cfg(target_arch = "xtensa")'.dependencies]
xtensa-lx = { version = "0.12.0", path = "../xtensa-lx" }
[build-dependencies]
esp-metadata-generated = { version = "0.1.0", path = "../esp-metadata-generated", features = ["build-script"] }
[features]
#! ### Chip Support Feature Flags
## Target the ESP32.
esp32 = ["esp-metadata-generated/esp32"]
## Target the ESP32-C2.
esp32c2 = ["esp-metadata-generated/esp32c2"]
## Target the ESP32-C3.
esp32c3 = ["esp-metadata-generated/esp32c3"]
## Target the ESP32-C6.
esp32c6 = ["esp-metadata-generated/esp32c6"]
## Target the ESP32-H2.
esp32h2 = ["esp-metadata-generated/esp32h2"]
## Target the ESP32-S2.
esp32s2 = ["esp-metadata-generated/esp32s2"]
## Target the ESP32-S3.
esp32s3 = ["esp-metadata-generated/esp32s3"]
#! ### Logging Feature Flags
## Enable logging output using version 0.4 of the `log` crate.
log-04 = ["dep:log-04"]
## Enable logging output using `defmt` and implement `defmt::Format` on certain types.
defmt = ["dep:defmt"]