forked from emilk/egui
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Cargo.toml
84 lines (71 loc) · 3.16 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
[workspace]
resolver = "2"
members = [
"crates/ecolor",
"crates/egui_demo_app",
"crates/egui_demo_lib",
"crates/egui_extras",
"crates/egui_glow",
"crates/egui_plot",
"crates/egui-wgpu",
"crates/egui-winit",
"crates/egui",
"crates/emath",
"crates/epaint",
"examples/*",
]
[workspace.package]
edition = "2021"
license = "MIT OR Apache-2.0"
rust-version = "1.72"
version = "0.26.0"
[profile.release]
# lto = true # VERY slightly smaller wasm
# opt-level = 's' # 10-20% smaller wasm compared to `opt-level = 3`
# opt-level = 1 # very slow and big wasm. Don't do this.
opt-level = 2 # fast and small wasm, basically same as `opt-level = 's'`
# opt-level = 3 # unnecessarily large wasm for no performance gain
# debug = true # include debug symbols, useful when profiling wasm
panic = "abort" # This leads to better optimizations and smaller binaries (and is the default in Wasm anyways).
[profile.dev]
# Can't leave this on by default, because it breaks the Windows build. Related: https://github.com/rust-lang/cargo/issues/4897
# split-debuginfo = "unpacked" # faster debug builds on mac
# opt-level = 1 # Make debug builds run faster
panic = "abort" # This leads to better optimizations and smaller binaries (and is the default in Wasm anyways).
[profile.dev.package."*"]
# Optimize all dependencies even in debug builds (does not affect workspace packages):
opt-level = 2
[workspace.dependencies]
emath = { version = "0.26.0", path = "crates/emath", default-features = false }
ecolor = { version = "0.26.0", path = "crates/ecolor", default-features = false }
epaint = { version = "0.26.0", path = "crates/epaint", default-features = false }
egui = { version = "0.26.0", path = "crates/egui", default-features = false }
egui_plot = { version = "0.26.0", path = "crates/egui_plot", default-features = false }
egui-winit = { version = "0.26.0", path = "crates/egui-winit", default-features = false }
egui_extras = { version = "0.26.0", path = "crates/egui_extras", default-features = false }
egui-wgpu = { version = "0.26.0", path = "crates/egui-wgpu", default-features = false }
egui_demo_lib = { version = "0.26.0", path = "crates/egui_demo_lib", default-features = false }
egui_glow = { version = "0.26.0", path = "crates/egui_glow", default-features = false }
eframe = { version = "0.26.0", path = "crates/eframe", default-features = false }
#TODO(emilk): make more things workspace dependencies
ahash = { version = "0.8.6", default-features = false, features = [
"no-rng", # we don't need DOS-protection, so we let users opt-in to it instead
"std",
] }
backtrace = "0.3"
criterion = { version = "0.5.1", default-features = false }
document-features = "0.2"
glow = "0.13"
log = { version = "0.4", features = ["std"] }
nohash-hasher = "0.2"
parking_lot = "0.12"
puffin = "0.19"
puffin_http = "0.16"
raw-window-handle = "0.6.0"
thiserror = "1.0.37"
web-time = "0.2" # Timekeeping for native and web
wgpu = { version = "0.19.1", default-features = false, features = [
# Make the renderer `Sync` even on wasm32, because it makes the code simpler:
"fragile-send-sync-non-atomic-wasm",
] }
winit = { version = "0.29.4", default-features = false }