summaryrefslogtreecommitdiffstats
path: root/docs/egl.html
diff options
context:
space:
mode:
Diffstat (limited to 'docs/egl.html')
-rw-r--r--docs/egl.html55
1 files changed, 32 insertions, 23 deletions
diff --git a/docs/egl.html b/docs/egl.html
index e960309fc47..ad3b850f2ad 100644
--- a/docs/egl.html
+++ b/docs/egl.html
@@ -32,13 +32,13 @@ cards.</p>
the Gallium driver for your hardware. For example</p>
<pre>
- $ ./configure --with-state-trackers=egl,es,vega --enable-gallium-{swrast,intel}
+ $ ./configure --enable-gles-overlay --with-state-trackers=egl,vega --enable-gallium-{swrast,intel}
</pre>
-<p>The main library will be enabled by default. The <code>egl</code> state
+<p>The main library and OpenGL is enabled by default. The first option enables
+<a href="opengles.html">OpenGL ES 1.x and 2.x</a>. The <code>egl</code> state
tracker is needed by a number of EGL drivers. EGL drivers will be covered
-later. The <a href="opengles.html">es state tracker</a> provides OpenGL ES 1.x
-and 2.x and the <a href="openvg.html">vega state tracker</a> provides OpenVG
+later. The <a href="openvg.html">vega state tracker</a> provides OpenVG
1.x.</p>
</li>
@@ -46,8 +46,8 @@ and 2.x and the <a href="openvg.html">vega state tracker</a> provides OpenVG
</ol>
<p>In the given example, it will build and install <code>libEGL</code>,
-<code>libGLESv1_CM</code>, <code>libGLESv2</code>, <code>libOpenVG</code>, and
-one or more EGL drivers.</p>
+<code>libGL</code>, <code>libGLESv1_CM</code>, <code>libGLESv2</code>,
+<code>libOpenVG</code>, and one or more EGL drivers.</p>
<h3>Configure Options</h3>
@@ -83,9 +83,26 @@ bare KMS (kernel modesetting).</p>
<li><code>--with-state-trackers</code>
<p>The argument is a comma separated string. It is usually used to specify the
-rendering APIs, like OpenGL ES or OpenVG, to build. But it should be noted
-that a number of EGL drivers depend on the <code>egl</code> state tracker.
-They will <em>not</em> be built without the <code>egl</code> state tracker.</p>
+rendering APIs, such as OpenVG, to build. But it should be noted that a number
+of EGL drivers depend on the <code>egl</code> state tracker. They will
+<em>not</em> be built without the <code>egl</code> state tracker.</p>
+
+</li>
+
+<li><code>--enable-gles-overlay</code>
+
+<p>OpenGL and OpenGL ES are not controlled by
+<code>--with-state-trackers</code>. OpenGL is always built. To build OpenGL
+ES, this option must be explicitly given.</p>
+
+</li>
+
+<li><code>--enable-gles1</code> and <code>--enable-gles2</code>
+
+<p>Unlike <code>--enable-gles-overlay</code>, which builds one library for each
+rendering API, these options enable OpenGL ES support in OpenGL. The result is
+one big library that supports multiple APIs. This is used by DRI drivers and
+<code>egl_dri2</code> EGL driver.
</li>
@@ -99,25 +116,17 @@ software rendering automatically.</p>
</li>
</ul>
-<h3>OpenGL</h3>
-
-<p>The OpenGL state tracker is not built in the above example. It should be
-noted that the classic <code>libGL</code> is not a state tracker and cannot be
-used with EGL (unless the EGL driver in use is <code>egl_glx</code>). To build
-the OpenGL state tracker, one may append <code>glx</code> to
-<code>--with-state-trackers</code> and manually build
-<code>src/gallium/targets/libgl-xlib/</code>.</p>
-
<h2>Use EGL</h2>
-<p>The demos for OpenGL ES and OpenVG can be found in <code>progs/es1/</code>,
-<code>progs/es2/</code> and <code>progs/openvg/</code>. You can use them to
-test your build. For example,</p>
+<p>There are demos for the client APIs supported by EGL. They can be found in
+<code>progs/egl/</code>, You can use them to test your build. For example,</p>
<pre>
- $ cd progs/es1/xegl
+ $ cd progs/egl/eglut
+ $ make
+ $ cd ../opengles1
$ make
- $ ./torus
+ $ ./torus_x11
</pre>
<h3>Environment Variables</h3>