libbladerf-rs 0.5.0

Fully Rust native BladeRF driver
# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[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"