1
0
Fork 0
mirror of https://github.com/alemidev/scope-tui.git synced 2024-11-09 16:39:19 +01:00
scope-tui/Cargo.toml
alemi 688329dfbe
fix: default features
maybe CPAL will build inside CI?
2024-04-05 00:22:07 +02:00

50 lines
1.7 KiB
TOML

[package]
name = "scope-tui"
version = "0.3.0"
edition = "2021"
authors = [ "alemi <me@alemi.dev>" ]
description = "A simple oscilloscope/vectorscope/spectroscope for your terminal"
license = "MIT"
keywords = ["cli", "tui", "audio", "visualization", "scope"]
repository = "https://git.alemi.dev/scope-tui.git"
readme = "README.md"
[lib]
name = "scope"
path = "src/lib.rs"
[[bin]]
name = "scope-tui"
path = "src/main.rs"
required-features = ["app"]
[dependencies]
derive_more = "0.99.17"
thiserror = "1.0.48"
rustfft = "6.1.0"
# for TUI app
clap = { version = "4.0.32", features = ["derive"], optional = true }
# cross platform audio library backend
cpal = { version = "0.15.3", optional = true }
# for TUI backend
ratatui = { version = "0.26", features = ["all-widgets"], optional = true }
crossterm = { version = "0.27", optional = true }
# for pulseaudio
libpulse-binding = { version = "2.0", optional = true }
libpulse-simple-binding = { version = "2.25", optional = true }
[features]
default = ["app", "file", "cpal"]
app = ["dep:clap", "tui"]
tui = ["dep:ratatui", "dep:crossterm"]
file = []
cpal = ["dep:cpal"]
pulseaudio = ["dep:libpulse-binding", "dep:libpulse-simple-binding"]
[profile.release] # make small binaries! will take quite longer, from https://github.com/johnthagen/min-sized-rust
opt-level = 'z' # optimize for size
lto = true # enable Link Time Optimisation: don't link unused stuff
codegen-units = 1 # reducing codegen units slows it down but allows for better optimization
panic = 'abort' # abort on panic: don't include code to show what went wrong in release
strip = "symbols" # strip symbols from binary: have fun debugging on prod! :)