outfly/Cargo.toml

94 lines
3.8 KiB
TOML

# ▄████████▄ + ███ + ▄█████████ ███ +
# ███▀ ▀███ + + ███ ███▀ + ███ + +
# ███ + ███ ███ ███ █████████ ███ ███ ███ ███
# ███ +███ ███ ███ ███ ███▐██████ ███ ███ ███
# ███ + ███ ███+ ███ +███ ███ + ███ ███ + ███
# ███▄ ▄███ ███▄ ███ ███ + ███ + ███ ███▄ ███
# ▀████████▀ + ▀███████ ███▄ ███▄ ▀████ ▀███████
# + + + ███
# + ▀████████████████████████████████████████████████████▀
[package]
name = "outfly"
version = "0.9.2"
edition = "2021"
homepage = "https://codeberg.org/outfly/outfly"
repository = "https://codeberg.org/outfly/outfly"
categories = ["game", "aerospace", "simulation"]
keywords = ["game", "space", "3d"]
license = "GPL-3.0-only"
rust-version = "1.76.0"
[dependencies]
# For parsing the game definition file, src/data/defs.txt
regex = "1"
# For seeded pseudo-random procedural generation of asteroids
fastrand = "2.0"
# For conversation specification files, which are in YAML
serde = { version = "1.0", features = ["derive"] }
serde_yaml = "0.9"
# For reading/writing the player's configuration file.
dirs = "5.0"
toml_edit = { version = "0.22", features = ["serde"] }
[dependencies.bevy]
# The bevy game engine, the basis for this game
# We temporarily use a fork with a custom bug fix, see https://codeberg.org/outfly/bevy
version = "0.13.2"
git = "https://codeberg.org/outfly/bevy.git"
rev = "e4dc13639106aa86826f6243d58f3209e1e94b1b"
default-features = false
features = ["animation", "bevy_asset", "bevy_audio", "bevy_scene", "bevy_winit", "bevy_core_pipeline", "bevy_pbr", "bevy_gltf", "bevy_render", "bevy_text", "bevy_ui", "jpeg", "multi-threaded", "png", "tonemapping_luts", "vorbis"]
[dependencies.bevy_embedded_assets]
# For embedding assets into the binary, creating a self-sufficient executable
# We temporarily use a fork with a custom bug fix, see https://codeberg.org/outfly/bevy
version = "0.10.2"
git = "https://codeberg.org/outfly/bevy_embedded_assets.git"
rev = "2696fcc0319e8660c50d4601e7d4e530cf0bb981"
optional = true
[dependencies.bevy_xpbd_3d]
# For physics and collision handling
# We temporarily use a fork with a custom bug fix, see https://codeberg.org/outfly/bevy
version = "0.4.2"
git = "https://codeberg.org/outfly/bevy_xpbd.git"
rev = "b6a03d6ec41e409d56f6b876f654a14d0b33afa7"
default-features = false
features = ["3d", "f64", "parry-f64", "parallel", "async-collider"]
[build-dependencies]
# NOTE: even though we use embed-resource for windows only, we can't move it into
# a [target[...]build-dependencies] block because in case of cross-compiling, the
# build.rs will be compiled for a different, non-windows target than the main executable.
embed-resource = "1.6.3" # embedding of .exe metadata
blend = "0.8.0"
[features]
default = ["x11", "embed_assets"]
dev_mode = []
dev = ["dev_mode", "bevy/dynamic_linking", "bevy/file_watcher"]
release_linux = ["x11", "wayland", "embed_assets"]
release_windows = ["embed_assets"]
wasm = ["bevy/webgl2"]
x11 = ["bevy/x11"]
wayland = ["bevy/wayland"]
embed_assets = ["dep:bevy_embedded_assets"]
[profile.dev]
opt-level = 1
[profile.dev.package."*"]
opt-level = 3 # high optimizations for dependencies, but not for our code
[profile.release]
lto = true
opt-level = 'z'
codegen-units = 1
incremental = false
debug = false
strip = true