1[package]
2name = "glutin"
3version = "0.31.3"
4authors = ["Kirill Chibisov <contact@kchibisov.com>"]
5description = "Cross-platform OpenGL context provider."
6keywords = ["windowing", "opengl", "egl"]
7license = "Apache-2.0"
8readme = "README.md"
9repository = "https://github.com/rust-windowing/glutin"
10documentation = "https://docs.rs/glutin"
11rust-version = "1.65.0"
12edition = "2021"
13
14[features]
15default = ["egl", "glx", "x11", "wayland", "wgl"]
16egl = ["glutin_egl_sys", "libloading"]
17glx = ["x11", "glutin_glx_sys", "libloading"]
18wgl = ["glutin_wgl_sys", "windows-sys"]
19x11 = ["x11-dl"]
20wayland = ["wayland-sys", "egl"]
21
22[dependencies]
23bitflags = "2.2.1"
24libloading = { version = "0.8.0", optional = true }
25once_cell = "1.13"
26raw-window-handle = "0.5.2"
27
28[target.'cfg(windows)'.dependencies]
29glutin_egl_sys = { version = "0.6.0", path = "../glutin_egl_sys", optional = true }
30glutin_wgl_sys = { version = "0.5.0", path = "../glutin_wgl_sys", optional = true }
31
32[target.'cfg(windows)'.dependencies.windows-sys]
33version = "0.48"
34features = [
35 "Win32_Foundation",
36 "Win32_Graphics_Gdi",
37 "Win32_Graphics_OpenGL",
38 "Win32_System_LibraryLoader",
39 "Win32_UI_WindowsAndMessaging",
40]
41optional = true
42
43[target.'cfg(target_os = "android")'.dependencies]
44glutin_egl_sys = { version = "0.6.0", path = "../glutin_egl_sys" }
45
46[target.'cfg(any(target_os = "linux", target_os = "freebsd", target_os = "dragonfly", target_os = "netbsd", target_os = "openbsd"))'.dependencies]
47glutin_egl_sys = { version = "0.6.0", path = "../glutin_egl_sys", optional = true }
48glutin_glx_sys = { version = "0.5.0", path = "../glutin_glx_sys", optional = true }
49wayland-sys = { version = "0.31.1", default-features = false, features = ["egl", "client", "dlopen"], optional = true }
50x11-dl = { version = "2.20.0", optional = true }
51
52[target.'cfg(any(target_os = "macos"))'.dependencies]
53cgl = "0.3.2"
54core-foundation = "0.9.3"
55# Enable `relax-void-encoding` until https://github.com/madsmtm/objc2/pull/526 is resolved
56objc2 = { version = "0.4.1", features = ["relax-void-encoding"] }
57dispatch = "0.2.0"
58
59[target.'cfg(any(target_os = "macos"))'.dependencies.icrate]
60version = "0.0.4"
61features = [
62 "dispatch",
63 "Foundation",
64 "Foundation_NSArray",
65 "Foundation_NSThread",
66 "AppKit",
67 "AppKit_NSView",
68 "AppKit_NSWindow",
69]
70
71[build-dependencies]
72cfg_aliases = "0.1.1"
73
74[package.metadata.docs.rs]
75rustdoc-args = ["--cfg", "docsrs"]
76targets = [
77 "aarch64-linux-android",
78 "x86_64-unknown-linux-gnu",
79 "x86_64-pc-windows-msvc",
80 "x86_64-apple-darwin",
81 "i686-unknown-linux-gnu",
82 "i686-pc-windows-msvc",
83]
84default-target = "x86_64-unknown-linux-gnu"
85