forked from Smithay/smithay
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Cargo.toml
144 lines (129 loc) · 5.34 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
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
[package]
name = "smithay"
version = "0.3.0"
authors = ["Victor Berger <[email protected]>", "Drakulix (Victoria Brekenfeld)"]
license = "MIT"
description = "Smithay is a library for writing wayland compositors."
repository = "https://github.com/Smithay/smithay"
edition = "2021"
readme = "README.md"
homepage = "https://smithay.github.io/"
keywords = ["wayland", "compositor", "graphics", "server"]
categories = ["gui"]
rust-version = "1.72.0"
[package.metadata.docs.rs]
features = ["test_all_features"]
rustdoc-args = ["--cfg", "docsrs"]
[workspace]
members = [
"smithay-drm-extras",
"smallvil",
"anvil",
"wlcs_anvil"
]
[dependencies]
appendlist = "1.4"
ash = { version = "0.38.0", optional = true }
bitflags = "2.2.1"
calloop = "0.14.0"
cursor-icon = "1.0.0"
cgmath = "0.18.0"
downcast-rs = "1.2.0"
drm-fourcc = "^2.2.0"
drm = { version = "0.12.0", optional = true }
drm-ffi = { version = "0.8.0", optional = true }
errno = "0.3.5"
gbm = { version = "0.15.0", optional = true, default-features = false, features = ["drm-support"] }
glow = { version = "0.12", optional = true }
input = { version = "0.9.0", default-features = false, features=["libinput_1_19"], optional = true }
indexmap = "2.0"
lazy_static = "1"
libc = "0.2.103"
libseat = { version = "0.2.1", optional = true, default-features = false }
libloading = { version="0.8.0", optional = true }
rustix = { version = "0.38.18", features = ["event", "fs", "mm", "net", "shm", "time"] }
once_cell = "1.8.0"
rand = "0.8.4"
scopeguard = { version = "1.1.0", optional = true }
tracing = "0.1.37"
tempfile = { version = "3.0", optional = true }
thiserror = "1.0.25"
udev = { version = "0.8.0", optional = true }
# Require never `wayland-client`/`wayland-cursor` than winit uses to fix `-Z minimal-versions`
# due to issue in older version.
wayland-client = { version = "0.31.3", optional = true }
wayland-cursor = { version = "0.31.3", optional = true }
wayland-egl = { version = "0.32.0", optional = true }
wayland-protocols = { version = "0.32.1", features = ["unstable", "staging", "server"], optional = true }
wayland-protocols-wlr = { version = "0.3.1", features = ["server"], optional = true }
wayland-protocols-misc = { version = "0.3.1", features = ["server"], optional = true }
wayland-server = { version = "0.31.0", optional = true }
wayland-sys = { version = "0.31", optional = true }
wayland-backend = { version = "0.3.0", optional = true }
winit = { version = "0.30.0", default-features = false, features = ["wayland", "wayland-dlopen", "x11", "rwh_06"], optional = true }
x11rb = { version = "0.13.0", optional = true }
xkbcommon = { version = "0.7.0", features = ["wayland"]}
scan_fmt = { version = "0.2.3", default-features = false }
encoding_rs = { version = "0.8.33", optional = true }
profiling = "1.0"
smallvec = "1.11"
pixman = { version = "0.1.0", features = ["drm-fourcc"], optional = true }
[dev-dependencies]
clap = { version = "4", features = ["derive"] }
criterion = { version = "0.5" }
image = "0.25"
tracing-subscriber = { version = "0.3.16", features = ["env-filter"] }
[build-dependencies]
gl_generator = { version = "0.14", optional = true }
pkg-config = { version = "0.3.17", optional = true }
cc = { version = "1.0.79", optional = true }
[features]
default = ["backend_drm", "backend_gbm", "backend_libinput", "backend_udev", "backend_session_libseat", "backend_x11", "backend_winit", "desktop", "renderer_gl", "renderer_pixman", "renderer_multi", "xwayland", "wayland_frontend", "backend_vulkan"]
backend_winit = ["winit", "backend_egl", "wayland-client", "wayland-cursor", "wayland-egl", "renderer_gl"]
backend_x11 = ["x11rb", "x11rb/dri3", "x11rb/xfixes", "x11rb/present", "x11rb_event_source", "backend_gbm", "backend_drm", "backend_egl"]
backend_drm = ["drm", "drm-ffi"]
backend_gbm = ["gbm", "cc", "pkg-config"]
backend_gbm_has_fd_for_plane = []
backend_gbm_has_create_with_modifiers2 = []
backend_egl = ["gl_generator", "libloading"]
backend_libinput = ["input"]
backend_session = []
backend_udev = ["udev", "input/udev"]
backend_vulkan = ["ash", "scopeguard"]
backend_session_libseat = ["backend_session", "libseat"]
desktop = []
renderer_gl = ["gl_generator", "backend_egl"]
renderer_glow = ["renderer_gl", "glow"]
renderer_multi = ["backend_drm"]
renderer_pixman = ["pixman"]
renderer_test = []
use_system_lib = ["wayland_frontend", "wayland-backend/server_system", "wayland-sys", "gbm?/import-wayland"]
use_bindgen = ["drm-ffi/use_bindgen", "gbm/use_bindgen", "input/use_bindgen"]
wayland_frontend = ["wayland-server", "wayland-protocols", "wayland-protocols-wlr", "wayland-protocols-misc", "tempfile"]
x11rb_event_source = ["x11rb"]
xwayland = ["encoding_rs", "wayland_frontend", "x11rb/composite", "x11rb/xfixes", "x11rb_event_source", "scopeguard"]
test_all_features = ["default", "use_system_lib", "renderer_glow", "renderer_test"]
[[example]]
name = "minimal"
required-features = ["backend_winit", "renderer_gl", "wayland_frontend"]
[[example]]
name = "seat"
required-features = ["wayland_frontend"]
[[example]]
name = "compositor"
required-features = ["wayland_frontend"]
[[example]]
name = "vulkan"
required-features = ["backend_vulkan"]
[[example]]
name = "buffer_test"
required-features = ["backend_drm", "backend_gbm", "backend_egl", "backend_vulkan", "renderer_gl"]
[[bench]]
name = "benchmark"
harness = false
[[bench]]
name = "geometry"
harness = false
[profile.release-with-debug]
inherits = "release"
debug = true