topola/Cargo.toml

104 lines
2.1 KiB
TOML

[package]
name = "topola"
version = "0.1.0"
edition = "2021"
default-run = "topola-egui"
[lib]
name = "topola"
[[bin]]
name = "topola-egui"
required-features = ["egui"]
[[bin]]
name = "topola-sdl2-demo"
required-features = ["sdl2"]
[features]
egui = ["dep:eframe", "dep:egui", "dep:rfd", "dep:futures"]
sdl2 = ["dep:sdl2", "dep:gl", "dep:pathfinder_canvas", "dep:pathfinder_geometry", "dep:pathfinder_gl", "dep:pathfinder_renderer", "dep:pathfinder_resources"]
disable_contracts = ["contracts/disable_contracts"]
[dependencies]
thiserror = "1.0.56"
anyhow = "1.0.79"
geo = "0.25.1"
rstar = "0.11.0"
petgraph = "0.6.3"
spade = "2.2.0"
serde_json = "1.0.117"
enum_dispatch = "0.3.12"
itertools = "0.8.2"
contracts = "0.6.3"
bimap = "0.6.3"
log = "0.4"
[dependencies.serde]
version = "1"
features = ["derive"]
[dependencies.eframe]
optional = true
version = "0.26.0"
default-features = false
features = ["accesskit", "default_fonts", "glow", "persistence"]
[dependencies.egui]
optional = true
version = "0.26.0"
[dependencies.rfd]
optional = true
version = "0.14.0"
[dependencies.futures]
optional = true
version = "0.3.30"
[dependencies.sdl2]
optional = true
version = "0.35.2"
default-features = false
features = ["bundled"]
[dependencies.gl]
optional = true
version = "0.14.0"
[dependencies.pathfinder_canvas]
optional = true
git = "https://github.com/servo/pathfinder"
[dependencies.pathfinder_geometry]
optional = true
git = "https://github.com/servo/pathfinder"
[dependencies.pathfinder_gl]
optional = true
git = "https://github.com/servo/pathfinder"
[dependencies.pathfinder_renderer]
optional = true
git = "https://github.com/servo/pathfinder"
[dependencies.pathfinder_resources]
optional = true
git = "https://github.com/servo/pathfinder"
[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
env_logger = "0.10"
[target.'cfg(target_arch = "wasm32")'.dependencies]
wasm-bindgen-futures = "0.4"
[profile.release]
opt-level = 2 # fast and small wasm
# Optimize all dependencies even in debug builds:
[profile.dev.package."*"]
opt-level = 2
[patch.crates-io]
contracts = { path = "vendored/contracts" }