Repository navigation
Expand file tree
/
Copy pathCargo.toml
More file actions
116 lines (97 loc) · 3.52 KB
/
Copy pathCargo.toml
File metadata and controls
116 lines (97 loc) · 3.52 KB
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
[workspace]
resolver = "2"
members = [
"crates/gl-bindings",
"crates/canvas-core",
"crates/canvas-2d",
"crates/canvas-webgl",
"crates/canvas-android",
"crates/canvas-ios",
"crates/playground",
"crates/canvas-c",
"crates/canvas-svg",
"crates/canvas-svg-c",
"crates/canvas-napi",
"crates/canvas-svg-napi",
"crates/audio-context-napi",
"crates/canvas-media-napi",
"crates/canvas-gamepad-napi",
"crates/canvas-svg-ios",
"crates/canvas-svg-android",
]
[profile.release]
panic = "abort"
codegen-units = 1
lto = true
opt-level = "s" # size-optimized default; hot rendering crates overridden below
debug = false
incremental = false
strip = true
# Keep rendering-critical crates at full speed
[profile.release.package.canvas-2d]
opt-level = 3
[profile.release.package.canvas-core]
opt-level = 3
[profile.release.package.canvas-webgl]
opt-level = 3
[profile.release.package.skia-safe]
opt-level = 3
[profile.release.package.skia-bindings]
opt-level = 3
# Node-API addons (canvas-napi). The host app must survive a Rust panic: `unwind` lets the
# binding turn it into a JS exception. Line tables + PDBs are kept for crash symbolication.
[profile.release-napi]
inherits = "release"
panic = "unwind"
opt-level = 3
debug = "line-tables-only"
strip = "none"
# Aggressively size-optimize heavy utility crates
[profile.release.package.regex]
opt-level = "z"
[profile.release.package.regex-lite]
opt-level = "z"
[profile.release.package.ureq]
opt-level = "z"
[profile.release.package.image]
opt-level = "z"
# Node-API hosts that export napi_* from a DLL rather than the executable (NativeScript Windows)
# need the patched symbol lookup (the `[canvas patch]` hunks in crates/vendor/napi-sys/src/functions.rs).
[patch.crates-io]
napi-sys = { path = "crates/vendor/napi-sys" }
[workspace.dependencies.wgt]
package = "wgpu-types"
git = "https://github.com/triniwiz/wgpu"
rev = "e5c0aa02"
[workspace.dependencies]
env_logger = "0.11.5"
log = "0.4.29"
parking_lot = { version = "0.12.3" }
raw-window-handle = "0.6.2"
windows = "0.62.2"
canvas-2d = { path = "./crates/canvas-2d" }
canvas-core = { path = "./crates/canvas-core" }
canvas-webgl = { path = "./crates/canvas-webgl" }
canvas-svg = { path = "./crates/canvas-svg" }
canvas-svg-c = { path = "./crates/canvas-svg-c" }
gl-bindings = { path = "./crates/gl-bindings" }
canvas-c = { path = "./crates/canvas-c" }
quick-xml = "0.34"
skia-safe = { git = "https://github.com/triniwiz/rust-skia", rev = "b9d29071cd8876b2447d58a14346b9fe6a5d21e2", features = ["textlayout"] }
itertools = "0.14.0"
ustr = "1.1.0"
wgpu-core = { git = "https://github.com/triniwiz/wgpu", rev = "e5c0aa02", features = ["wgsl"] }
wgpu-hal = { git = "https://github.com/triniwiz/wgpu", rev = "e5c0aa02" }
ureq = "2.10.1"
jni = "0.21.1"
regex-lite = "0.1.9"
objc2 = { version = "0.6.3", default-features = false }
objc2-core-foundation = { version = "0.3.2", default-features = false }
objc2-metal = { version = "0.3.2", default-features = false, features = ["MTLCommandBuffer", "MTLCommandQueue", "MTLDrawable", "MTLPixelFormat", "MTLTexture", "MTLDevice", "MTLBlitCommandEncoder", "MTLCommandEncoder", "MTLBuffer", "MTLResource", "MTLTypes", "objc2-core-foundation"] }
objc2-foundation = { version = "0.3.2", features = ["NSGeometry", "NSData", "NSAutoreleasePool", "NSDictionary", "NSObject", "NSValue", "NSString"] }
objc2-quartz-core = { version = "0.3.2", default-features = false, features = ["std",
"objc2-core-foundation",
"CALayer",
"CAMetalLayer",
"objc2-metal"] }
core-foundation = "0.10.1"