From: Chia-I Wu
The driver in use decides the window system to support. For drivers that -support hardware rendering, there are usually multiple drivers supporting the -same window system. Each one of of them supports a certain range of graphics -cards.
+The driver in use decides the window system to support.
--enable-gles1
and --enable-gles2
-These options enable OpenGL ES support in OpenGL. The result is -one big library that supports multiple APIs.
+These options enable OpenGL ES support in OpenGL. The result is one big +internal library that supports multiple APIs.
--enable-gles-overlay
-This option enables OpenGL ES as separate libraries. This is an alternative
-approach to enable OpenGL ES. It is only supported by
-egl_gallium
.
This option enables OpenGL ES as separate internal libraries. This is an +alternative approach to enable OpenGL ES.
+ +This is only supported by egl_gallium
. For systems using DRI
+drivers, --enable-gles1
and --enable-gles2
are
+suggested instead as all drivers will benefit.
egl_dri2
This driver supports both x11
and drm
platforms.
-It functions as a DRI2 driver loader. For x11
support, it talks
-to the X server directly using (XCB-)DRI2 protocol.
x11
support, it talks to
+the X server directly using (XCB-)DRI2 protocol.
+
+This driver can share DRI drivers with libGL
.
This driver comes with its own hardware drivers
+(pipe_<hw>
) and client API modules
+(st_<api>
).
egl_glx
@@ -202,6 +208,21 @@ is not available in GLX or GLX extensions.
The ABI between the main library and its drivers are not stable. Nor is
+there a plan to stabilize it at the moment. Of the EGL drivers,
+egl_gallium
has its own hardware drivers and client API modules.
+They are considered internal to egl_gallium
and there is also no
+stable ABI between them. These should be kept in mind when packaging for
+distribution.
Generally, egl_dri2
is preferred over egl_gallium
+when the system already has DRI drivers. As egl_gallium
is loaded
+before egl_dri2
when both are available, egl_gallium
+may either be disabled with --disable-gallium-egl
or packaged
+separately.
The sources of the main library and the classic drivers can be found at