mirror of
https://github.com/redstrate/Physis.git
synced 2025-05-08 19:47:44 +00:00
These are giant dependencies that for some reason pull in winapi(???) and we actually don't need all of their features. Criterion can be replaced with brunch, a minimalist alternative. walkdir is replaced with a single function. system-dep can be replaced with a single line. Eventually I would like to make it a little bit more than one line, but that's all we need for now.
70 lines
No EOL
2.1 KiB
TOML
Executable file
70 lines
No EOL
2.1 KiB
TOML
Executable file
[package]
|
|
name = "physis"
|
|
version = "0.3.0"
|
|
authors = ["Joshua Goins <josh@redstrate.com>"]
|
|
edition = "2021"
|
|
description = "Interact with XIV game data."
|
|
license = "GPL-3.0"
|
|
homepage = "https://xiv.zone/physis"
|
|
repository = "https://git.sr.ht/~redstrate/physis"
|
|
keywords = ["ffxiv", "modding"]
|
|
documentation = "https://docs.xiv.zone/docs/physis/"
|
|
readme = "README.md"
|
|
|
|
[profile.release]
|
|
lto = true
|
|
|
|
[[bench]]
|
|
name = "benchmark"
|
|
harness = false
|
|
|
|
[[bench]]
|
|
name = "retail_benchmark"
|
|
harness = false
|
|
required-features = ["retail_game_testing"]
|
|
|
|
[dev-dependencies]
|
|
hmac-sha512 = "1"
|
|
|
|
# used while rust doesn't have native benchmarking capability
|
|
brunch = { version = "0.5.3", default-features = false }
|
|
|
|
# used for testing our jamcrc implementation
|
|
crc = "3"
|
|
|
|
[features]
|
|
default = ["visual_data"]
|
|
|
|
# enables game installation support using unshield (only supported on Linux and macOS)
|
|
game_install = []
|
|
|
|
# enables support for extracting visual data, such as models, textures, materials, etc.
|
|
# this enables a bunch of dependencies!
|
|
# tip: can be safely turned off for launchers and other tools that simply need to extract the bare minimum of data
|
|
visual_data = ["dep:half", "dep:bitflags", "dep:texture2ddecoder"]
|
|
|
|
# testing only features
|
|
retail_game_testing = []
|
|
patch_testing = ["game_install"]
|
|
|
|
[dependencies]
|
|
# amazing binary parsing/writing library
|
|
binrw = { version = "0.13.0", features = ["std"], default-features = false }
|
|
|
|
tracing = { version = "0.1.40", features = ["std"], default-features = false }
|
|
|
|
# used for zlib compression in sqpack files
|
|
libz-ng-sys = { version = "1.1" }
|
|
|
|
# nice to have features rust is lacking at the moment
|
|
modular-bitfield = "0.11"
|
|
|
|
# needed for half-float support which FFXIV uses in its model data
|
|
half = { version = "2", optional = true }
|
|
|
|
# needed for c-style bitflags used in some formats (such as tex files)
|
|
# cannot upgrade to 2.0.0, breaking changes that aren't recoverable: https://github.com/bitflags/bitflags/issues/314
|
|
bitflags = { version = "1.3", optional = true }
|
|
|
|
# needed for dxt/bc decompression
|
|
texture2ddecoder = { version = "0.0.5", optional = true } |