@@ -35,7 +35,7 @@ default = [
35
35
" accesskit" ,
36
36
" default_fonts" ,
37
37
" glow" ,
38
- " wayland" ,
38
+ " wayland" , # Required for Linux support (including CI!)
39
39
" web_screen_reader" ,
40
40
" winit/default" ,
41
41
" x11" ,
@@ -72,7 +72,15 @@ persistence = [
72
72
]
73
73
74
74
# # Enables wayland support and fixes clipboard issue.
75
- wayland = [" egui-winit/wayland" , " egui-wgpu?/wayland" , " egui_glow?/wayland" ]
75
+ # #
76
+ # # If you are compiling for Linux (or want to test on a CI system using Linux), you should enable this feature.
77
+ wayland = [
78
+ " egui-winit/wayland" ,
79
+ " egui-wgpu?/wayland" ,
80
+ " egui_glow?/wayland" ,
81
+ " glutin?/wayland" ,
82
+ " glutin-winit?/wayland" ,
83
+ ]
76
84
77
85
# # Enable screen reader support (requires `ctx.options_mut(|o| o.screen_reader = true);`) on web.
78
86
# #
@@ -98,7 +106,15 @@ web_screen_reader = [
98
106
wgpu = [" dep:wgpu" , " dep:egui-wgpu" , " dep:pollster" ]
99
107
100
108
# # Enables compiling for x11.
101
- x11 = [" egui-winit/x11" , " egui-wgpu?/x11" , " egui_glow?/x11" ]
109
+ x11 = [
110
+ " egui-winit/x11" ,
111
+ " egui-wgpu?/x11" ,
112
+ " egui_glow?/x11" ,
113
+ " glutin?/x11" ,
114
+ " glutin?/glx" ,
115
+ " glutin-winit?/x11" ,
116
+ " glutin-winit?/glx" ,
117
+ ]
102
118
103
119
# # If set, eframe will look for the env-var `EFRAME_SCREENSHOT_TO` and write a screenshot to that location, and then quit.
104
120
# # This is used to generate images for examples.
@@ -142,10 +158,14 @@ egui-wgpu = { workspace = true, optional = true, features = [
142
158
] } # if wgpu is used, use it with winit
143
159
pollster = { workspace = true , optional = true } # needed for wgpu
144
160
145
- # we can expose these to user so that they can select which backends they want to enable to avoid compiling useless deps.
146
- # this can be done at the same time we expose x11/wayland features of winit crate.
147
- glutin = { workspace = true , optional = true }
148
- glutin-winit = { workspace = true , optional = true }
161
+ glutin = { workspace = true , optional = true , default-features = false , features = [
162
+ " egl" ,
163
+ " wgl" ,
164
+ ] }
165
+ glutin-winit = { workspace = true , optional = true , default-features = false , features = [
166
+ " egl" ,
167
+ " wgl" ,
168
+ ] }
149
169
home = { workspace = true , optional = true }
150
170
wgpu = { workspace = true , optional = true , features = [
151
171
# Let's enable some backends so that users can use `eframe` out-of-the-box
0 commit comments