build.rs unpacks the ADF images next to Cargo.toml (or in SKIDS_EMBED_DIR) with the same ADF/LHA readers the game uses and packs the files into the executable. At run time the built-in data loads first and anything given with --data, or found next to the executable, overrides it. The embed feature is on by default; builds without it behave as before and ask for --data. CI now runs the binary from an empty directory.
33 lines
892 B
TOML
33 lines
892 B
TOML
[package]
|
|
name = "skids"
|
|
version = "0.1.0"
|
|
edition = "2021"
|
|
description = "Cross-platform revival of Super Skidmarks (Acid Software, 1995) that runs on the original Amiga game data"
|
|
license = "MIT"
|
|
readme = "README.md"
|
|
repository = "https://github.com/andydixon/skids"
|
|
|
|
[features]
|
|
default = ["audio", "embed"]
|
|
# Procedural engine/skid sound via cpal. Disable with --no-default-features
|
|
# on Linux machines without the ALSA development headers.
|
|
audio = ["dep:cpal"]
|
|
# Build the game data from the ADF images next to Cargo.toml (or in
|
|
# SKIDS_EMBED_DIR) into the executable, so it runs without the disks.
|
|
embed = []
|
|
|
|
[dependencies]
|
|
minifb = "0.28"
|
|
png = "0.18"
|
|
cpal = { version = "0.15", optional = true }
|
|
|
|
[profile.dev]
|
|
# The renderer is a software rasteriser; unoptimised builds are too slow to play.
|
|
opt-level = 2
|
|
|
|
[profile.release]
|
|
opt-level = 3
|
|
lto = "thin"
|
|
codegen-units = 1
|
|
strip = true
|