[package]
edition = "2024"
rust-version = "1.96"
name = "libbladerf-rs"
version = "0.5.0"
authors = ["Ratzrattillo <11601995+ratzrattillo@users.noreply.github.com>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Fully Rust native BladeRF driver"
readme = "README.md"
keywords = [
"sdr",
"rf",
"bladerf",
]
categories = [
"hardware-support",
"science",
]
license = "Apache-2.0"
repository = "https://github.com/ratzrattillo/seify-bladerf"
[package.metadata.docs.rs]
all-features = true
rustdoc-args = [
"--cfg",
"docsrs",
]
[features]
bladerf1 = []
bladerf2 = []
default = [
"xb100",
"xb200",
"xb300",
"smol",
]
smol = ["nusb/smol"]
tokio = [
"nusb/tokio",
"dep:tokio",
]
xb100 = ["bladerf1"]
xb200 = ["bladerf1"]
xb300 = ["bladerf1"]
[lib]
name = "libbladerf_rs"
path = "src/lib.rs"
[[test]]
name = "bladerf1"
path = "tests/bladerf1/main.rs"
required-features = ["bladerf1"]
[[test]]
name = "bladerf1_async"
path = "tests/bladerf1_async/main.rs"
required-features = [
"bladerf1",
"tokio",
]
[[test]]
name = "public_api"
path = "tests/public_api.rs"
required-features = ["bladerf1"]
[[test]]
name = "unit"
path = "tests/unit/main.rs"
[[bench]]
name = "hardware_calibration_bench"
path = "benches/hardware_calibration_bench.rs"
harness = false
required-features = ["bladerf1"]
[[bench]]
name = "hardware_gain_bench"
path = "benches/hardware_gain_bench.rs"
harness = false
required-features = ["bladerf1"]
[[bench]]
name = "hardware_gpio_bench"
path = "benches/hardware_gpio_bench.rs"
harness = false
required-features = ["bladerf1"]
[[bench]]
name = "hardware_stream_build_teardown_bench"
path = "benches/hardware_stream_build_teardown_bench.rs"
harness = false
required-features = ["bladerf1"]
[[bench]]
name = "hardware_stream_latency_bench"
path = "benches/hardware_stream_latency_bench.rs"
harness = false
required-features = ["bladerf1"]
[[bench]]
name = "hardware_tuning_bench"
path = "benches/hardware_tuning_bench.rs"
harness = false
required-features = ["bladerf1"]
[[bench]]
name = "metadata_header_bench"
path = "benches/metadata_header_bench.rs"
harness = false
[[bench]]
name = "nios_packet_bench"
path = "benches/nios_packet_bench.rs"
harness = false
[[bench]]
name = "sample_format_bench"
path = "benches/sample_format_bench.rs"
harness = false
[dependencies.futures-timer]
version = "3"
[dependencies.log]
version = "0.4"
[dependencies.nusb]
version = "0.2.7"
[dependencies.serde]
version = "1"
features = ["derive"]
[dependencies.serde_json]
version = "1"
[dependencies.thiserror]
version = "2.0"
[dev-dependencies.criterion]
version = "0.8"
features = ["html_reports"]
[dev-dependencies.env_logger]
version = "0.11"
[dev-dependencies.husky-rs]
version = "0.4"
[dev-dependencies.tokio]
version = "1"
features = [
"rt",
"macros",
"time",
]
[target.'cfg(not(target_arch = "wasm32"))'.dependencies.tokio]
version = "1"
features = ["rt"]
optional = true
default-features = false
[target.'cfg(target_arch = "wasm32")'.dependencies.futures-timer]
version = "3"
features = ["wasm-bindgen"]
[profile.prof]
lto = false
debug = 2
inherits = "release"