-
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Cargo.toml
128 lines (111 loc) · 4.69 KB
/
Cargo.toml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
# Disabled until issues with compiling with no_mangle resolved on WASM
# cargo-features = ["edition2024"]
[package]
name = "catgirl-engine"
description = "A game engine for cool moddability and procedurally generated data"
license = "Zlib"
version = "0.14.37-alpha" # https://semver.org (Do not use 1.0.0 until first production release)
keywords = ["catgirl", "engine", "gamedev", "game"]
categories = ["game-engines"]
repository = "https://github.com/Foxgirl-Labs/catgirl-engine.git"
documentation = "https://docs.rs/catgirl-engine"
homepage = "https://github.com/Foxgirl-Labs/catgirl-engine"
readme = "ReadMe.md"
authors = ["Alexis <@[email protected]>"] # <@user@server> is a Fedi Address
edition = "2021"
resolver = "2"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[lib]
name = "main"
crate-type = ["cdylib", "rlib"] # cdylib - C Compatible Lib, rlib - Rust Lib
# Optimize for faster build times
[profile.dev]
lto = false
debug = true
opt-level = 0
incremental = true
codegen-units = 256
# Optimize for speed and remove debug information for size
[profile.release]
lto = true
debug = false # Setting to false significantly reduces code size (last test was 286 MB to 13 MB)
opt-level = 3
incremental = false
[features]
default = ["client", "server", "logging-subscriber"]
client = ["dep:client"]
server = ["dep:server"]
embed-assets = ["client/embed-assets"]
embed-resources = ["utils/embed-resources"]
logging-subscriber = []
appimage = ["utils/appimage", "client/appimage"]
# Used for customizing building of docs.rs binary
[package.metadata.docs.rs]
features = ["default"]
rustdoc-args = ["--document-private-items", "--default-theme=ayu"]
default-target = "x86_64-unknown-linux-gnu"
targets = ["x86_64-unknown-linux-gnu", "x86_64-pc-windows-gnu", "wasm32-unknown-unknown",
"aarch64-linux-android", "armv7-linux-androideabi",
"i686-linux-android", "x86_64-linux-android"]
[workspace]
members = [
"macros",
"utils",
"client",
"server"
]
[lints.clippy]
missing_docs_in_private_items = "warn"
pedantic = { level = "warn", priority = -1 }
similar_names = "allow"
module_name_repetitions = "allow"
needless_pass_by_value = "allow"
too_many_lines = "allow"
unused_self = "allow"
struct_excessive_bools = "allow"
[package.metadata.appimage]
assets = ["resources/linux", "resources/assets", "target/binding"]
icon = "resources/assets/vanilla/texture/logo/logo.svg"
desktop_file = "catgirl-engine.desktop"
startup_wm_class = "catgirl-engine"
args = ["--sign"] # "-u", "gh-releases-zsync|Foxgirl-Labs|catgirl-engine|latest|*.zsync"
auto_link = true
auto_link_exclude_list = [
"libc.so*",
"libm.so*",
"libgcc*.so*",
"ld-linux*.so*",
"libpthread.so*",
"libdl.so*"
]
[package.metadata.wasm-pack.profile.profiling]
wasm-opt = ['-Oz']
# [package.metadata.wasm-pack.profile.profiling.wasm-bindgen]
# dwarf-debug-info = true
[build-dependencies]
build-info-build = { version = "~0.0.39", default-features = false, features = ["git"] }
cc = { version = "~1.2", default-features = false }
cbindgen = { version = "~0", default-features = false }
[dependencies]
macros = { version = "0.14.37-alpha", package = "catgirl-engine-macros", path = "macros" }
utils = { version = "0.14.37-alpha", package = "catgirl-engine-utils", path = "utils" }
client = { version = "0.14.37-alpha", package = "catgirl-engine-client", path = "client", optional = true }
server = { version = "0.14.37-alpha", package = "catgirl-engine-server", path = "server", optional = true }
build-info = { version = "~0.0.39", default-features = false, features = ["runtime"] }
cfg-if = { version = "~1", default-features = false }
wasm-bindgen = { version = "~0.2", default-features = true }
pretty_env_logger = { version = "~0", default-features = false }
tracing = { version = "~0.1", default-features = false, features = ["log"] }
clap = { version = "~4", features = ["derive"] }
[target.'cfg(any(target_family="unix", target_family="windows"))'.dependencies]
ctrlc = { version = "~3", default-features = false }
[target.'cfg(target_os="android")'.dependencies]
android_logger = { version = "~0.14", default-features = false }
winit = { version = "~0.30", default-features = false, features = ["android-game-activity"] }
[target.'cfg(target_family="wasm")'.dependencies]
console_error_panic_hook = { version = "~0.1", default-features = false }
console_log = { version = "~1", default-features = false }
wasm-bindgen-futures = { version = "~0.4", default-features = false }
web-sys = { version = "~0.3", default-features = false, features = ["Document", "Window", "Element"] }
getrandom = { version = "~0.2", default-features = false, features = ["js"] }
fern = { version = "~0.7", default-features = false }