1#![cfg(any(
2 target_os = "linux",
3 target_os = "dragonfly",
4 target_os = "freebsd",
5 target_os = "netbsd",
6 target_os = "openbsd"
7))]
8#![allow(clippy::missing_safety_doc)]
9#![allow(clippy::manual_non_exhaustive)]
10#![allow(clippy::unused_unit)]
11#![allow(clippy::redundant_static_lifetimes)]
12#![allow(clippy::unnecessary_cast)]
13
14pub use self::glx::types::GLXContext;
15pub use x11_dl::xlib::*;
16
17/// GLX bindings
18pub mod glx {
19 include!(concat!(env!("OUT_DIR"), "/glx_bindings.rs"));
20
21 // The GLX protocol error codes extracted from <GL/glxproto.h>.
22 pub const PROTO_BAD_CONTEXT: types::GLenum = 0;
23 pub const PROTO_BAD_CONTEXT_STATE: types::GLenum = 1;
24 pub const PROTO_BAD_DRAWABLE: types::GLenum = 2;
25 pub const PROTO_BAD_PIXMAP: types::GLenum = 3;
26 pub const PROTO_BAD_CONTEXT_TAG: types::GLenum = 4;
27 pub const PROTO_BAD_CURRENT_WINDOW: types::GLenum = 5;
28 pub const PROTO_BAD_RENDER_REQUEST: types::GLenum = 6;
29 pub const PROTO_BAD_LARGE_REQUEST: types::GLenum = 7;
30 pub const PROTO_UNSUPPORTED_PRIVATE_REQUEST: types::GLenum = 8;
31 pub const PROTO_BAD_FBCONFIG: types::GLenum = 9;
32 pub const PROTO_BAD_PBUFFER: types::GLenum = 10;
33 pub const PROTO_BAD_CURRENT_DRAWABLE: types::GLenum = 11;
34 pub const PROTO_BAD_WINDOW: types::GLenum = 12;
35 pub const PROTO_BAD_PROFILE_ARB: types::GLenum = 13;
36}
37
38/// Functions that are not necessarily always available
39pub mod glx_extra {
40 include!(concat!(env!("OUT_DIR"), "/glx_extra_bindings.rs"));
41}
42