summaryrefslogtreecommitdiff
path: root/dist/Mesa/docs
diff options
context:
space:
mode:
authorMatthieu Herrb <matthieu@cvs.openbsd.org>2010-05-22 20:06:39 +0000
committerMatthieu Herrb <matthieu@cvs.openbsd.org>2010-05-22 20:06:39 +0000
commitaca48d4468c7360eebe114372261237dfd326366 (patch)
tree0a16251dfd7bd3edd37c8da55a753fc501c33c4c /dist/Mesa/docs
parentbe5e6de483520135642d4178eb0e9e91f86d9555 (diff)
Update to Mesa 7.8.1. Tested on a bulk ports build by naddy@, ok oga@.
Diffstat (limited to 'dist/Mesa/docs')
-rw-r--r--dist/Mesa/docs/MESA_shader_debug.spec2
-rw-r--r--dist/Mesa/docs/MESA_swap_control.spec7
-rw-r--r--dist/Mesa/docs/MiniGLX.html547
-rw-r--r--dist/Mesa/docs/README.3DFX2
-rw-r--r--dist/Mesa/docs/README.D3D124
-rw-r--r--dist/Mesa/docs/README.WIN3223
-rw-r--r--dist/Mesa/docs/README.directfb28
-rw-r--r--dist/Mesa/docs/cell.html37
-rw-r--r--dist/Mesa/docs/contents.html10
-rw-r--r--dist/Mesa/docs/demos.html18
-rw-r--r--dist/Mesa/docs/devinfo.html42
-rw-r--r--dist/Mesa/docs/dispatch.html8
-rw-r--r--dist/Mesa/docs/download.html16
-rw-r--r--dist/Mesa/docs/enums.txt14
-rw-r--r--dist/Mesa/docs/envvars.html27
-rw-r--r--dist/Mesa/docs/extensions.html1
-rw-r--r--dist/Mesa/docs/faq.html13
-rw-r--r--dist/Mesa/docs/install.html47
-rw-r--r--dist/Mesa/docs/lists.html44
-rw-r--r--dist/Mesa/docs/news.html82
-rw-r--r--dist/Mesa/docs/osmesa.html2
-rw-r--r--dist/Mesa/docs/pbuffers.html54
-rw-r--r--dist/Mesa/docs/precompiled.html12
-rw-r--r--dist/Mesa/docs/relnotes-7.4.2.html16
-rw-r--r--dist/Mesa/docs/relnotes-7.5.html61
-rw-r--r--dist/Mesa/docs/relnotes.html19
-rw-r--r--dist/Mesa/docs/repository.html84
-rw-r--r--dist/Mesa/docs/shading.html43
-rw-r--r--dist/Mesa/docs/xlibdriver.html16
29 files changed, 467 insertions, 932 deletions
diff --git a/dist/Mesa/docs/MESA_shader_debug.spec b/dist/Mesa/docs/MESA_shader_debug.spec
index 1f7d42ac9..fab92abc7 100644
--- a/dist/Mesa/docs/MESA_shader_debug.spec
+++ b/dist/Mesa/docs/MESA_shader_debug.spec
@@ -13,7 +13,7 @@ Contact
Status
- XXX - Not complete yet!!!
+ Obsolete.
Version
diff --git a/dist/Mesa/docs/MESA_swap_control.spec b/dist/Mesa/docs/MESA_swap_control.spec
index ecc674649..856978b53 100644
--- a/dist/Mesa/docs/MESA_swap_control.spec
+++ b/dist/Mesa/docs/MESA_swap_control.spec
@@ -43,7 +43,7 @@ Issues
New Procedures and Functions
- int glXSwapIntervalMESA(int interval)
+ int glXSwapIntervalMESA(unsigned int interval)
int glXGetSwapIntervalMESA(void)
New Tokens
@@ -103,11 +103,8 @@ Additions to the GLX 1.3 Specification
Errors
- glXSwapIntervalMESA returns GLX_BAD_VALUE if parameter <interval> is
- less than zero.
-
glXSwapIntervalMESA returns GLX_BAD_CONTEXT if there is no current
- GLXContext.
+ GLXContext or if the current context is not a direct rendering context.
GLX Protocol
diff --git a/dist/Mesa/docs/MiniGLX.html b/dist/Mesa/docs/MiniGLX.html
deleted file mode 100644
index 342981299..000000000
--- a/dist/Mesa/docs/MiniGLX.html
+++ /dev/null
@@ -1,547 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
-<head>
- <title>Mini GLX Specification</title>
-</head>
-<body>
-<h1>
-<center>Mini GLX Specification</center>
-</h1>
-<h2>
-<center>Tungsten Graphics, Inc.<br>
-<br>
-January 20, 2003<br>
-<br>
-</center>
-</h2>
-<p> Copyright &copy; 2002-2003 by Tungsten Graphics, Inc., Cedar Park,
-Texas. All Rights Reserved. <br>
-<br>
-Permission is granted to make and distribute verbatim copies of this
-document provided the copyright notice and this permission notice are
-preserved on all copies.<br>
-<br>
-</p>
-<h1>1. Introduction</h1>
-<p>The Mini GLX interface facilitates OpenGL rendering on embedded
-devices. The interface is a subset of the GLX interface, plus a minimal
-set of Xlib-like functions.</p>
-<p>Programs written to the Mini GLX specification should run unchanged
-on systems with the X Window System and the GLX extension. The intention
-is to allow flexibility for prototyping and testing.</p>
-<p>This document serves as both the reference guide and programming
-guide for Mini GLX.<br>
-<br>
-</p>
-<h1>2. Mini GLX Concepts</h1>
-<p>The OpenGL specification does not describe how OpenGL rendering
-contexts and drawing surfaces (i.e. the frame buffer) are created and
-managed. Rather, this is handled by an OpenGL window system interface,
-such as Mini GLX.</p>
-<p>There are three main datatypes or resources managed by Mini GLX. The
-resources and their corresponding GLX or Xlib data types are:</p>
-<table cellspacing="10" align="center">
- <tbody>
- <tr>
- <td><u>Resource</u></td>
- <td><u>Data type</u></td>
- </tr>
- <tr>
- <td>pixel formats</td>
- <td>X Visual and XVisualInfo</td>
- </tr>
- <tr>
- <td>drawing surfaces</td>
- <td>X Window or GLXDrawable</td>
- </tr>
- <tr>
- <td>rendering contexts</td>
- <td>GLXContext</td>
- </tr>
- </tbody>
-</table>
-<p>Pixel formats or X Visuals describe the per-pixel attributes of the
-frame buffer. For example, bits per color component, Z buffer size,
-stencil size, TrueColor vs PseudoColor, etc.</p>
-<p>Drawing surfaces or X Windows typically describe a spatial
-allocation of the frame buffer (i.e. the position and size of a
-rectangular region of pixels). Since MiniGLX doesn't really support a
-window system, the window is effectively the entire frame buffer.</p>
-<p>A rendering context represents the current OpenGL state such as
-current drawing color, line width, blending mode, texture parameters,
-etc. Several rendering contexts can be created but only one can be in
-use at any given time.</p>
-<p>The Mini GLX interface provides all the functions needed for
-choosing pixel formats, create drawing surfaces, creating rendering
-contexts and binding rendering contexts to drawing surfaces.<br>
-<br>
-</p>
-<h1>3. Using Mini GLX</h1>
-<p>To use the Mini GLX interface in your application, include the
-GL/miniglx.h header file at compile time:</p>
-<blockquote><code> #include &lt;GL/miniglx.h&gt;<br>
- </code></blockquote>
-<code></code>Applications should link with libGL.so (i.e. <code>gcc
-myprogram.o -lGL -o myprogram</code>). &nbsp;libGL.so implements the
-MiniGLX API functions and, in turn, loads a hardware-specific device
-driver (such as <code>radeon_dri.so</code>) at runtime. &nbsp;The
-environment variable <code>LIBGL_DRIVERS_PATH</code> should name the
-directory where these modules are located.<br>
-<br>
-Prior to running a MiniGXL application, the following kernel modules
-must be installed:<br>
-<br>
-<div style="margin-left: 40px;"> agpgart.o<br>
-radeonfb.o &nbsp;(assuming Radeon hardware)<br>
-radeon.o &nbsp;(assuming Radeon hardware)<br>
-</div>
-<code></code> <br>
-Finally, MiniGLX reads a configuration file (by default,<code>
-/etc/miniglx.conf</code>) to determine basic configuration information.
-&nbsp;The configuration file may also be located in the directory
-specified by the <code>MINIGLX_CONF</code> environment variable).<br>
-<br>
-The remainder of this section describes the MiniGLX API functions.<br>
-<br>
-<h2>3.1 Initialization</h2>
-<p>The XOpenDisplay function is used to initialize the graphics system:</p>
-<blockquote>
- <pre>Display *XOpenDisplay(const char *displayname)<br></pre>
-</blockquote>
-<p>The <code>displayName</code> parameter is currently ignored in Mini
-GLX. It is recommended that <code>NULL</code> be passed as the<code>displayName</code>
-parameter.</p>
-<p>If XOpenDisplay is able to initialize the graphics system a pointer
-to a Display will be returned. Otherwise, NULL will be returned.</p>
-<h2>3.2 Choosing a Visual</h2>
-<p>A visual (i.e. pixel format) must be chosen before a drawing surface
-or rendering context can be created. This is done with the
-glXChooseVisual function:</p>
-<blockquote>
- <pre>XVisualInfo *glXChooseVisual(Display *dpy, int screen, const int *attribList)<br></pre>
-</blockquote>
-<p><code>dpy</code> is a pointer to the display returned by
-XOpenDisplay. </p>
-<p><code>screen</code> is currently ignored by Mini GLX and should be
-zero. </p>
-<p><code>attribList</code> is a list of GLX attributes which describe
-the desired pixel format. It is terminated by the token <code>None</code>.
-The attributes are as follows:</p>
-<blockquote>
- <dl>
- <dt><code>GLX_USE_GL</code></dt>
- <dd>This attribute should always be present in order to maintain
-compatibility with GLX.</dd>
- <dt><code>GLX_RGBA</code></dt>
- <dd>If present, only RGBA pixel formats will be considered.
-Otherwise, only color index formats are considered.</dd>
- <dt><code>GLX_DOUBLEBUFFER</code></dt>
- <dd>if present, only double-buffered pixel formats will be chosen.</dd>
- <dt><code>GLX_RED_SIZE n</code></dt>
- <dd>Must be followed by a non-negative integer indicating the
-minimum number of bits per red pixel component that is acceptable.</dd>
- <dt><code>GLX_GREEN_SIZE n</code></dt>
- <dd>Must be followed by a non-negative integer indicating the
-minimum number of bits per green pixel component that is acceptable.</dd>
- <dt><code>GLX_BLUE_SIZE n</code></dt>
- <dd>Must be followed by a non-negative integer indicating the
-minimum number of bits per blue pixel component that is acceptable.</dd>
- <dt><code>GLX_ALPHA_SIZE n</code></dt>
- <dd>Must be followed by a non-negative integer indicating the
-minimum number of bits per alpha pixel component that is acceptable.</dd>
- <dt><code>GLX_STENCIL_SIZE n</code></dt>
- <dd>Must be followed by a non-negative integer indicating the
-minimum number of bits per stencil value that is acceptable.</dd>
- <dt><code>None</code></dt>
- <dd>This token is used to terminate the attribute list.</dd>
- </dl>
-</blockquote>
-<p>glXChooseVisual will return a pointer to an XVisualInfo object which
-most closely matches the requirements of the attribute list. If there
-is no visual which matches the request, NULL will be returned.</p>
-<p>Note that visuals with accumulation buffers and depth buffers are
-not available.<br>
-<br>
-</p>
-<h2>3.3 Creating a Drawing Surface</h2>
-<p>Drawing surfaces are created as X windows. &nbsp;For Mini GLX,
-windows are <i>full-screen</i>; they cover the entire frame buffer.
-&nbsp;Also, Mini GLX imposes a limit of one window. A second window
-cannot be created until the first one is destroyed.</p>
-<h3>3.3.1 Window Creation</h3>
-<p>The XCreateWindow function is used to create a drawing surface:</p>
-<blockquote>
- <pre>Window XCreateWindow( Display *display,<br> Window parent,<br> int x, int y,<br> unsigned int width, unsigned int height,<br> unsigned int borderWidth,<br> int depth,<br> unsigned int class,<br> Visual *visual,<br> unsigned long valuemask,<br> XSetWindowAttributes *attributes )<br></pre>
-</blockquote>
-<p>The parameters are as follows:</p>
-<blockquote>
- <dl>
- <dt><code>display</code></dt>
- <dd>A Display pointer, as returned by XOpenDisplay.</dd>
- <dt><code>parent</code></dt>
- <dd>The parent window for the new window. For Mini GLX, this
-should be<code>RootWindow(dpy, 0)</code>.</dd>
- <dt><code>x, y</code></dt>
- <dd>The position of the window. For Mini GLX, both values should
-be zero.</dd>
- <dt><code>width, height</code></dt>
- <dd>The size of the window. For Mini GLX, this specifies the
-desired screen size such as 1024, 768 or 1280, 1024.</dd>
- <dt><code>borderWidth</code></dt>
- <dd>This parameter should be zero.</dd>
- <dt><code>depth</code></dt>
- <dd>The pixel depth for the window. For Mini GLX this should be
-the depth found in the XVisualInfo object returned by <code>glxChooseVisual</code>.</dd>
- <dt><code>class</code></dt>
- <dd>The window class. For Mini GLX this value should be <code>InputOutput</code>.</dd>
- <dt><code>visual</code></dt>
- <dd>This parameter should be the <code>visual</code> field of the <code>XVisualInfo</code>
-object returned by <code>glxChooseVisual</code>.</dd>
- <dt><code>valuemask</code></dt>
- <dd>This parameter indicates which fields of the <code>XSetWindowAttributes</code>
-are to be used. For Mini GLX this is typically the bitmask<code>CWBackPixel
-| CWBorderPixel | CWColormap</code>.</dd>
- <dt><code>attributes</code></dt>
- <dd>Initial window attributes. Of the fields in the <code>XSetWindowAttributes</code>
-structure, the<code>background_pixel</code>, <code>border_pixel</code>
-and <code>colormap</code> fields should be set. &nbsp;See the discussion
-below regarding colormaps.</dd>
- </dl>
-</blockquote>
-<p><code>XCreateWindow</code> will return a window handle if it succeeds
-or zero if it fails.</p>
-<h3>3.3.2 Window Mapping</h3>
-<p>To display the window the XMapWindow function must be called:</p>
-<blockquote>
- <pre>void XMapWindow(Display *dpy, Window w)</pre>
-</blockquote>
-<p>This function does nothing in Mini GLX but is required for Xlib/GLX
-compatibility</p>
-<h3>3.3.3 Colormaps<br>
-</h3>
-<p>Xlib requires specification of a colormap when creating a window.
-&nbsp;For purposes of interoperability, Mini GLX requires this as well,
-though the colormap is not actually used. &nbsp;The XCreateColormap
-function is used to create a colormap:</p>
-<blockquote><code>Colormap XCreateColormap(Display *dpy, Window window,
-Visual *visual, int alloc)</code><br>
- <code></code></blockquote>
-<p>The parameters are as follows:<br>
-</p>
-<blockquote>
- <dl>
- <dt><code>dpy</code></dt>
- <dd>The display handle as returned by XOpenDisplay.</dd>
- <dt><code>window</code></dt>
- <dd> This parameter is ignored by Mini GLX but should be the value
-returned by the <code>RootWindow(dpy, 0)</code> macro.<br>
- </dd>
- <dt><code>visual</code></dt>
- <dd>This parameter is ignored by Mini GLX but should be the visual
-field of the XVisualInfo object returned by glXChooseVisual. </dd>
- <dt><code>alloc</code></dt>
- <dd>This parameter is ignored by Mini GLX but should be set to <code>AllocNone</code>.</dd>
- </dl>
-</blockquote>
-<br>
-<h2>3.4 Creating a Rendering Context</h2>
-<p>An OpenGL rendering context is created with the <code>glXCreateContext</code>
-function:</p>
-<blockquote>
- <pre>GLXContext glXCreateContext(Display *dpy, XVisualInfo *visInfo, GLXContext shareList, Bool direct)<br></pre>
-</blockquote>
-<p>The parameters are as follows:</p>
-<blockquote>
- <dl>
- <dt><code>dpy</code></dt>
- <dd>The display handle as returned by XOpenDisplay.</dd>
- <dt><code>visInfo</code></dt>
- <dd>The visual as returned by glXChooseVisual.</dd>
- <dt><code>shareList</code></dt>
- <dd>If non-zero, texture objects and display lists are shared with
-the named rendering context. If zero, texture objects and display lists
-will (initially) be private to this context. They may be shared when a
-subsequent context is created.</dd>
- <dt><code>direct</code></dt>
- <dd>Specifies whether direct or indirect rendering is desired. For
-Mini GLX this value is ignored but it should be set to <code>True</code>.</dd>
- </dl>
-</blockquote>
-<p><code>glXCreateContext</code> will return a GLXContext handle if it
-succeeds or zero if it fails due to invalid parameter or insufficient
-resources.<br>
-<br>
-</p>
-<h2>3.5 Binding a Rendering Context</h2>
-<p>The final step before beginning OpenGL rendering is to bind (i.e.
-activate) a rendering context and drawing surface with the
-glXMakeCurrent function:</p>
-<blockquote>
- <pre>Bool glXMakeCurrent(Display *dpy, GLXDrawable drawable, GLXContext ctx)<br></pre>
-</blockquote>
-<p>The parameters are as follows:</p>
-<blockquote>
- <dl>
- <dt><code>dpy</code></dt>
- <dd>The display handle, as returned by XOpenDisplay.</dd>
- <dt><code>drawable</code></dt>
- <dd>The window or drawable to bind to the rendering context. This
-should be the value returned by XCreateWindow.</dd>
- <dt><code>ctx</code></dt>
- <dd>The rendering context to bind, as returned by glXCreateContext.</dd>
- </dl>
-</blockquote>
-<p>If glXMakeCurrent succeeds True is returned. Otherwise False is
-returned to indicate an invalid display, window or context parameter.</p>
-<p>After the rendering context has been bound to the drawing surface
-OpenGL rendering can begin.</p>
-<p>The current rendering context may be unbound by calling
-glXMakeCurrent with the window and context parameters set to zero.</p>
-<p>An application may create any number of rendering contexts and bind
-them as needed. Note that binding a rendering context is generally not a
-light-weight operation. &nbsp;Most simple OpenGL applications create
-only one rendering context.<br>
-<br>
-</p>
-<h2>3.6 Color Buffer Swapping</h2>
-<p>A double buffered window has two color buffers: a front buffer and a
-back buffer. Normally, rendering is directed to the back buffer while
-the front buffer is displayed. When rendering of a frame is finished
-the front and back buffers are swapped to provide the illusion of
-instanteous screen updates.</p>
-<p>The color buffers for a particular window (i.e. drawable) may be
-swapped with the glXSwapBuffers command:</p>
-<blockquote>
- <pre>void glXSwapBuffers(Display *dpy, GLXDrawable drawable)<br></pre>
-</blockquote>
-Any pending rendering commands will be completed before the buffer swap
-takes place.<br>
-<br>
-Calling glXSwapBuffers on a window which is single-buffered has no
-effect.<br>
-<br>
-<h2>3.7 Releasing Resources</h2>
-<h3>3.7.1 Releasing Rendering Contexts</h3>
-<p>A rendering context may be destroyed by calling glXDestroyContext:</p>
-<blockquote>
- <pre>void glXDestroyContext(Display *dpy, GLXContext ctx)<br></pre>
-</blockquote>
-<h3>3.7.2 Releasing Windows</h3>
-<p>A window may be destroyed by calling XDestroyWindow:</p>
-<blockquote>
- <pre>void XDestroyWindow(Display *dpy, Window window)<br></pre>
-</blockquote>
-<h3>3.7.3 Releasing Visuals</h3>
-<p>An XVisualInfo object may be freed by calling XFree:</p>
-<blockquote>
- <pre>void XFree(void *data)<br></pre>
-</blockquote>
-<h3>3.7.4 Releasing Colormaps</h3>
-<p>A colormap may be freed by calling XFreeColormap:</p>
-<blockquote>
- <pre>void XFreeColormap(Display *dpy, Colormap colormap)<br></pre>
-</blockquote>
-<h3>3.7.4 Releasing Display Resources</h3>
-<p>When the application is about to exit, the resources associated with
-the graphics system can be released by calling XCloseDisplay:</p>
-<blockquote>
- <pre>void XCloseDisplay(Display *dpy)<br></pre>
-</blockquote>
-<p>The display handle becomes invalid at this point.<br>
-<br>
-</p>
-<h2>3.8 Query Functions</h2>
-<h3>3.8.1 Querying Available Visuals</h3>
-A list of all available visuals can be obtained with the XGetVisualInfo
-function:<br>
-<br>
-<div style="margin-left: 40px;"><code>XVisualInfo
-*XGetVisualInfo(Display *dpy, long vinfo_mask, XVisualInfo
-*vinfo_template, int *nitems_return)<br>
-</code></div>
-<br>
-The parameters are as follows:<br>
-<blockquote>
- <dl>
- <dt><code>dpy</code></dt>
- <dd>The display handle, as returned by XOpenDisplay.</dd>
- <dt><code>vinfo_mask</code></dt>
- <dd>A bitmask indicating which fields of the vinfo_template are to
-be matched. &nbsp;The value must be VisualScreenMask.</dd>
- <dt><code>vinfo_template</code></dt>
- <dd>A template whose fields indicate which visual attributes must
-be matched by the results. &nbsp;The screen field of this structure must
-be zero.</dd>
- <dt><code>nitems_return</code></dt>
- <dd>Returns the number of visuals returned. </dd>
- </dl>
-</blockquote>
-The return value is the address of an array of all available visuals.<br>
-<br>
-An example of using XGetVisualInfo to get all available visuals follows:<br>
-<br>
-<div style="margin-left: 40px;"><code>XVisualInfo visTemplate, *results;</code><br>
-<code>int numVisuals;</code><br>
-<code>Display *dpy = XOpenDisplay(NULL);</code><br>
-<code>visTemplate.screen = 0;</code><br>
-<code>results = XGetVisualInfo(dpy, VisualScreenMask, &amp;visTemplate,
-&amp;numVisuals);</code><br>
-<code></code></div>
-<br>
-<h3>3.8.2 Querying Visual Attributes</h3>
-<p>The GLX attributes of an X visual may be queried with the
-glXGetConfig function:</p>
-<blockquote>
- <pre>int glXGetConfig(Display *dpy, XVisualInfo *vis, int attribute, int *value)<br></pre>
-</blockquote>
-<p>The parameters are as follows:</p>
-<blockquote>
- <dl>
- <dt><code>dpy</code></dt>
- <dd>The display handle, as returned by XOpenDisplay.</dd>
- <dt><code>vis</code></dt>
- <dd>The visual, as returned by glXChooseVisual.</dd>
- <dt><code>attribute</code></dt>
- <dd>The attribute to query. The attributes are listed below.</dd>
- <dt><code>value</code></dt>
- <dd>Pointer to an integer in which the result of the query will be
-stored. </dd>
- </dl>
-</blockquote>
-<p>The return value will be zero if no error occurs.<code>
-&nbsp;GLX_INVALID_ATTRIBUTE</code> will be returned if the attribute
-parameter is invalid.<code> &nbsp;GLX_BAD_VISUAL</code> will be returned
-if the XVisualInfo parameter is invalid.</p>
-<p>The following attributes may be queried:</p>
-<blockquote>
- <dl>
- <dt><code>GLX_USE_GL</code></dt>
- <dd>The result will be <code>True</code> or <code>False</code> to
-indicate if OpenGL rendering is supported with the visual. Mini GLX
-always return <code>True</code>.</dd>
- <dt><code>GLX_RGBA</code></dt>
- <dd>The result will be <code>True</code> for RGBA visuals or <code>False</code>
-for color index visuals.</dd>
- <dt><code>GLX_DOUBLEBUFFER</code></dt>
- <dd>The result will be <code>True</code> if the visual has two
-color buffers or <code>False</code> if the visual has one color buffer.</dd>
- <dt><code>GLX_RED_SIZE</code></dt>
- <dd>The result will be the number of red bits per pixel.</dd>
- <dt><code>GLX_GREEN_SIZE</code></dt>
- <dd>The result will be the number of green bits per pixel.</dd>
- <dt><code>GLX_BLUE_SIZE</code></dt>
- <dd>The result will be the number of blue bits per pixel.</dd>
- <dt><code>GLX_ALPHA_SIZE</code></dt>
- <dd>The result will be the number of alpha bits per pixel.</dd>
- <dt><code>GLX_DEPTH_SIZE</code></dt>
- <dd>The result will be the number of bits per Z value.</dd>
- <dt><code>GLX_STENCIL_SIZE</code></dt>
- <dd>The result will be the number of bits per stencil value.<br>
- <br>
- </dd>
- </dl>
-</blockquote>
-<h3>3.8.3 Querying the Current Rendering Context</h3>
-<p>The current rendering context can be queried with
-glXGetCurrentContext: </p>
-<blockquote>
- <pre>GLXContext glXGetCurrentContext(void)<br></pre>
-</blockquote>
-<p>Zero will be returned if no context is currently bound.<br>
-<br>
-</p>
-<h3>3.8.4 Querying the Current Drawable</h3>
-<p>The current drawable (i.e. window or drawing surface) can be queried
-with glXGetCurrentDrawable:</p>
-<blockquote>
- <pre>GLXDrawable glXGetCurrentDrawable(void)<br></pre>
-</blockquote>
-<p>Zero will be returned if no drawable is currently bound.<br>
-<br>
-</p>
-<h3>3.8.5 Function Address Queries</h3>
-<p>The glXGetProcAddress function will return the address of any
-available OpenGL or Mini GLX function:</p>
-<blockquote>
- <pre>void *glXGetProcAddress(const GLubyte *procName)<br></pre>
-</blockquote>
-<p>If <code>procName</code> is a valid function name, a pointer to that
-function will be returned. &nbsp;Otherwise, NULL will be returned.</p>
-<p>The purpose of glXGetProcAddress is to facilitate using future
-extensions to OpenGL or Mini GLX. If a future version of the library
-adds new extension functions they'll be accessible via
-glXGetProcAddress. The alternative is to hard-code calls to the new
-functions in the application but doing so will prevent linking the
-application with older versions of the library.<br>
-<br>
-</p>
-<h2>3.9 Versioning</h2>
-The Mini GLX version can be queried at run time with glXQueryVersion:
-<blockquote>
- <pre>Bool glXQueryVersion(Display *dpy, int *major, int *minor)<br></pre>
-</blockquote>
-<p><code>major</code> will be set to the major version number and<code>minor</code>
-will be set to the minor version number.<code>True</code> will be
-returned if the function succeeds. <code>False</code> will be returned
-if the function fails due to invalid parameters. The <code>dpy</code>
-argument is currently ignored, but should be the value returned by
-XOpenDisplay.</p>
-<p>At compile time, the Mini GLX interface version can be tested with
-the MINI_GLX_VERSION_1_<i>x</i> preprocessor tokens. For example, if
-version 1.0 of Mini GLX is supported, then<code> MINI_GLX_VERSION_1_0</code>
-will be defined. If version 1.1 of Mini GLX is supported, then<code>
-MINI_GLX_VERSION_1_1</code> will be defined.</p>
-<p>At the time of writing the current Mini GLX version is 1.0.<br>
-<br>
-</p>
-<h1>4.0 Interoperability with GLX and Xlib</h1>
-While Mini GLX strives to be compatible with GLX and Xlib there are
-some unavoidable differences which must be taken into consideration.<br>
-<h2>4.1 Public vs Private Structures</h2>
-The structure of many X data types is public. &nbsp;For example, the <code>Display</code>
-data type is defined as a structure in /usr/include/X11/Xlib.h and
-programmers may access any fields of that structure at will. &nbsp;Mini
-GLX also defines a Display data type but its fields are hidden and not
-visiblein <code>miniglx.h</code>. &nbsp;Duplicating the Xlib
-declaration for the <code>Display</code> data type in minigl.h would
-require defining a large number of other superfluous Xlib datatypes.<br>
-<br>
-Mini GLX users are discouraged from directly accessing the fields of
-Xlib data types to maximize portability - though this is unavoidable to
-some extent. &nbsp;For example, the <code>XVisualInfo</code> and <code>XSetWindowAtttributes</code>
-data types must be completely public.
-<h2>4.2 Macros</h2>
-In some cases, Xlib defines macros which are meant to be used instead
-of direct structure accesses. &nbsp;For example, the <code>RootWindow(dpy,
-screen)</code> macro returns the root window for a given screen on a
-given display. &nbsp;Unfortunately, macros do nothing to aid in ABI
-compatibility since they are resolved at compile time instead of at
-link/run time.<br>
-<br>
-Mini GLX also defines a <code>RootWindow</code> macro since it's
-essential for creating windows. &nbsp;But the implementation of this
-macro by Xlib and Mini GLX is completely different.<br>
-<h2>4.3 Summary</h2>
-Because Xlib and Mini GLX define data types and macros differently,
-Mini GLX applications must be recompiled when retargeting Mini GLX or
-native Xlib/GLX. &nbsp;That is, applications can't simply be re-linked
-because of ABI incompatibilities.<br>
-<br>
-Nevertheless, the fact that Mini GLX programs can be recompiled for
-Xlib and GLX increases portability and flexibility for testing and
-prototyping.<br>
-<br>
-<h1>5.0 Example Program</h1>
-<p>This section shows an example program which uses the Mini GLX
-interface. The program simply draws several frames of a rotating square.<br>
-</p>
-<p>The program may be compiled for use with Xlib/GLX or Mini GLX by
-setting the <code>USE_MINIGLX</code> token to 0 or 1, respectively.
-&nbsp;Note that the only difference is the header files which are
-included.<br>
-</p>
-<p> </p>
-<pre><code><br></code>#define USE_MINIGLX 1 /* 1 = use Mini GLX, 0 = use Xlib/GLX */<br><br>#include &lt;stdio.h&gt;<br>#include &lt;stdlib.h&gt;<br>#include &lt;GL/gl.h&gt;<br><br>#if USE_MINIGLX<br>#include &lt;GL/miniglx.h&gt;<br>#else<br>#include &lt;GL/glx.h&gt;<br>#include &lt;X11/Xlib.h&gt;<br>#endif<br><br><code>/*<br> * Create a simple double-buffered RGBA window.<br> */<br>static Window<br>MakeWindow(Display * dpy, unsigned int width, unsigned int height)<br>{<br> int visAttributes[] = {<br> GLX_RGBA,<br> GLX_RED_SIZE, 1,<br> GLX_GREEN_SIZE, 1,<br> GLX_BLUE_SIZE, 1,<br> GLX_DOUBLEBUFFER,<br> None<br> };<br> XSetWindowAttributes attr;<br> unsigned long attrMask;<br> Window root;<br> Window win;<br> GLXContext ctx;<br> XVisualInfo *visinfo;<br><br> root = RootWindow(dpy, 0);<br><br> /* Choose GLX visual / pixel format */<br> visinfo = glXChooseVisual(dpy, 0, visAttributes);<br> if (!visinfo) {<br> printf("Error: couldn't get an RGB, Double-buffered visual\n");<br> exit(1);<br> }<br><br> /* Create the window */<br> attr.background_pixel = 0;<br> attr.border_pixel = 0;<br> attr.colormap = XCreateColormap(dpy, root, visinfo-&gt;visual, AllocNone);<br> attrMask = CWBackPixel | CWBorderPixel | CWColormap;<br> win = XCreateWindow(dpy, root, 0, 0, width, height,<br> 0, visinfo-&gt;depth, InputOutput,<br> visinfo-&gt;visual, attrMask, &amp;attr);<br> if (!win) {<br> printf("Error: XCreateWindow failed\n");<br> exit(1);<br> }<br><br> /* Display the window */<br> XMapWindow(dpy, win);<br><br> /* Create GLX rendering context */<br> ctx = glXCreateContext(dpy, visinfo, NULL, True);<br> if (!ctx) {<br> printf("Error: glXCreateContext failed\n");<br> exit(1);<br> }<br><br> /* Bind the rendering context and window */<br> glXMakeCurrent(dpy, win, ctx);<br><br> return win;<br>}<br><br><br>/*<br> * Draw a few frames of a rotating square.<br> */<br>static void<br>DrawFrames(Display * dpy, Window win)<br>{<br> int angle;<br> glShadeModel(GL_FLAT);<br> glClearColor(0.5, 0.5, 0.5, 1.0);<br> for (angle = 0; angle &lt; 360; angle += 10) {<br> glClear(GL_COLOR_BUFFER_BIT);<br> glColor3f(1.0, 1.0, 0.0);<br> glPushMatrix();<br> glRotatef(angle, 0, 0, 1);<br> glRectf(-0.8, -0.8, 0.8, 0.8);<br> glPopMatrix();<br> glXSwapBuffers(dpy, win);<br> }<br>}<br><br><br>int<br>main(int argc, char *argv[])<br>{<br> Display *dpy;<br> Window win;<br><br> dpy = XOpenDisplay(NULL);<br> if (!dpy) {<br> printf("Error: XOpenDisplay failed\n");<br> return 1;<br> }<br><br> win = MakeWindow(dpy, 300, 300);<br><br> DrawFrames(dpy, win);<br><br> return 0;<br>}<br></code></pre>
-<br>
-</body>
-</html>
diff --git a/dist/Mesa/docs/README.3DFX b/dist/Mesa/docs/README.3DFX
index 037e8fa7c..7feda6f33 100644
--- a/dist/Mesa/docs/README.3DFX
+++ b/dist/Mesa/docs/README.3DFX
@@ -644,7 +644,7 @@ Hints and Special Features:
- The Voodoo driver supports the GL_EXT_paletted_texture. it works
only with GL_COLOR_INDEX8_EXT, GL_RGBA palettes and the alpha value
- is ignored because this is a limitation of the the current Glide
+ is ignored because this is a limitation of the current Glide
version and of the Voodoo hardware. See Mesa-3.1/3Dfx/demos/paltex.c for
a demo of this extension.
diff --git a/dist/Mesa/docs/README.D3D b/dist/Mesa/docs/README.D3D
deleted file mode 100644
index b41fcb620..000000000
--- a/dist/Mesa/docs/README.D3D
+++ /dev/null
@@ -1,124 +0,0 @@
-
- DirectX 6 Driver for Mesa 3.0
-
-
-This software is distributed under the terms of the GNU Library
-General Public License, see the LICENSE file for details.
-
-
-
-What do you need ?
-------------------
-
- - A PC with a DirectX 6 video driver installed.
-
- - Mesa 3.0
-
- - The 3Dfx Glide library 2.3 or later for your OS (the 2.4 works fine).
- The Voodoo2 requires the Glide library 2.51. The Glide 3.0 is not
- compatible with the Glide 2.x so it doesn't work with the current
- version of the driver;
-
- - Visual C++ 5.0 is only compiler test but others should be ok with
- changes to the makefiles (CFLAGS/LFLAGS).
-
- - DirectX 6 SDK (was a MS download but not sure if still available).
-
- - SoftIce or another debugger that will get DPF's is nice.
-
-
-Tested on:
-----------
- Windows 95
- Windows 98
- Windows NT 5.0 (beta 2)
-
-
-What is able to do ?
---------------------
-
- - the driver will try and use DirectX to rasterize the OpenGL primitives
- that are sent to the driver. The driver will fall back to SW if the rendering
- context is too big. The fallback to SW still uses DirectDraw. If the driver
- fails to support and operation (accum, stencil, etc) then it will try and get
- Mesa to render it in SW. DirectX 6 features that are unsupported by the
- installed DirectX 6 driver will be mapped to some other best fit feature.
-
-
-How to compile:
----------------
-
- These instructions assume you have Visual C++ installed.
-
- You might need to increase you enviroment space. You can do this by
- adding the following statement to you config.sys.
-
- shell=C:\COMMAND.COM C:\ /p /e:8198
-
- Next setup you compiler enviroment by running vcvars32.bat in the Visual C++
- 'bin' directoy.
-
- c:\DevStudio\VC\bin\vcvars32.bat
-
- Modify the D3D makefile to point at your SDK install. Example has the SDK
- installed on my 'f' drive in the root.
-
- file: \Mesa-3.0\src\makefile.d3d
-
- SDKROOT=f:\mssdk
-
- Now you can simply make the project. If you look in the makefile you can see
- I have some different targets like 'install'.
-
- nmake /f makefile.d3d
-
-
-FAQ:
-----
-
- 1) I don't think the driver is using my DirectX driver.
-
- This maybe true as the current version will only select the Primary D3D driver
- installed. If you 3D card is the secondary (3dfx) then your out of luck for this
- release.
-
- 2) The driver seems like its not HW accelerated.
-
- If you have a video card with limited memory then you might want to try and
- change your destop resolution to a low setting (640x480x16) so that the 3D part
- of the card has more resources. Remeber the driver can't make the card better...
-
- 3) Nothing works.
-
- Make sure you have a DirectX '6' driver installed. Check you driver docs for this
- info or use the SDK info utilities.
- The final 'dll' is named opengl32.dll and is either in the same directory as the
- OpenGL program or in your system directory (x:\windows\system or x:\winnt\system32).
- Check your destop resolution. Most DirectX 6 drivers will only support 16bit and
- 32bit color depth. To find out for sure you can check the DirectX Info Viewer in
- the SDK.
-
-
- 4) Rendering doesn't look right.
-
- Sometimes this is because the card doesn't support a feature that that is required.
- This is usually due to unsupported alpha functions (test/blend) or texture mapping.
- Some cards suffer from too small of an alpha channel. The driver does its best to
- fallback on unsupported features. This is not to say the driver may not have a bug(s).
-
- 5) Textures look bad.
-
- No mipmapping in this release.
-
-
-Thanks to:
-----------
-
-Brian Paul
-
-
-
-
-Leigh McRae (leigh@altsoftware.com)
-February 9, 1999
-
diff --git a/dist/Mesa/docs/README.WIN32 b/dist/Mesa/docs/README.WIN32
index 97e1ffb7a..204b8e660 100644
--- a/dist/Mesa/docs/README.WIN32
+++ b/dist/Mesa/docs/README.WIN32
@@ -27,12 +27,6 @@ using the SDK with Visual Studio Express can be found at
http://msdn.microsoft.com/vstudio/express/visualc/usingpsdk/
-If you are stuck using VC6 or VC7, you may start with these project
-files, but you may need to modify them to reflect changes in the
-Mesa source code tree. If you sucessfully update the project files,
-please submit them to the author of this document so that they may
-be included in the next distribution.
-
The project files to build the core Mesa library, Windows Mesa
drivers, OSMesa, and GLU are in the mesa directory. The project files
to build GLUT and some demo programs are in the progs directory.
@@ -106,23 +100,6 @@ should build all the demos.
Build System Notes
----- ------ -----
-VC6 (not actively supported)
----
-
-Visual Studio 6 does not recognize files with the .cc extension as C++
-language files, without a lot of unnatural tweaking. So, the VC6
-build process uses custom build steps to compile these files in the
-GLU library.
-
-Two additional configurations are provided, Debug x86 and Release x86
-that activate the shader code compilation by defining SLANG_86. It is
-unknown if and how this works.
-
-VC7 (not actively supported)
----
-
-The above-mentioned .cc problem does not exist in this version.
-
VC8
---
diff --git a/dist/Mesa/docs/README.directfb b/dist/Mesa/docs/README.directfb
deleted file mode 100644
index 169ebe486..000000000
--- a/dist/Mesa/docs/README.directfb
+++ /dev/null
@@ -1,28 +0,0 @@
-
- Mesa DirectFB Information
-
-
-Requirements
-============
-
- To build Mesa with DirectFB (DirectFBGL) support you need:
- - DirectFB at least 0.9.21 (http://directfb.org)
- - pkg-config at least 0.9 (http://pkgconfig.sf.net)
-
-
-Installation
-============
- Run
-
- make linux-directfb
-
- to build Mesa and DirectFBGL module,
-
- make install
-
- to install OpenGL libraries and
-
- make linux-directfb-install
-
- to install DirectFBGL module in the proper location.
-
diff --git a/dist/Mesa/docs/cell.html b/dist/Mesa/docs/cell.html
index 7fbbba7c7..30626b60b 100644
--- a/dist/Mesa/docs/cell.html
+++ b/dist/Mesa/docs/cell.html
@@ -12,31 +12,18 @@
The Mesa
<a href="http://en.wikipedia.org/wiki/Cell_%28microprocessor%29" target="_parent">Cell</a>
driver is part of the
-<a href="http://www.tungstengraphics.com/wiki/index.php/Gallium3D" target="_parent">Gallium3D</a>
+<a href="http://wiki.freedesktop.org/wiki/Software/gallium" target="_parent">Gallium3D</a>
architecture.
-</p>
-
-<p>
-<a href="http://www.tungstengraphics.com/" target="_parent">Tungsten Graphics</a>
-is leading the project.
-Two phases are planned.
-First, to implement the framework for parallel rasterization using the Cell
-SPEs, including texture mapping.
-Second, to implement a full-featured OpenGL driver with support for GLSL, etc.
-The second phase is now underway.
+Tungsten Graphics did the original implementation of the Cell driver.
</p>
<H2>Source Code</H2>
<p>
-The latest Cell driver source code is on the <code>gallium-0.2</code> branch
-of the Mesa git repository.
-After you've cloned the repository, check out the branch with:
+The latest Cell driver source code is on the master branch of the Mesa
+git repository.
</p>
-<pre>
- git-checkout -b gallium-0.2 origin/gallium-0.2
-</pre>
<p>
To build the driver you'll need the IBM Cell SDK (version 2.1 or 3.0).
To use the driver you'll need a Cell system, such as a PS3 running Linux,
@@ -50,19 +37,21 @@ special changes.
<p>
To compile the code, run <code>make linux-cell</code>.
-To build in debug mode, run <code>make linux-cell-debug</code>.
+Or to build in debug mode, run <code>make linux-cell-debug</code>.
</p>
<p>
-To use the library, make sure <code>LD_LIBRARY_PATH</code> points the Mesa/lib/
-directory that contains <code>libGL.so</code>.
-</p>
+To use the library, make sure your current directory is the top of the
+Mesa tree, then set <code>LD_LIBRARY_PATH</code> like this:
+<pre>
+ export LD_LIBRARY_PATH=$PWD/lib/gallium:$PWD/lib/
+</pre>
<p>
-Verify that the Cell driver is being used by running <code>glxinfo</code>
-and looking for:
+Verify that the Cell driver is being used by running
+<code>progs/xdemos/glxinfo</code> and looking for:
<pre>
- OpenGL renderer string: Gallium 0.2, Cell on Xlib
+ OpenGL renderer string: Gallium 0.3, Cell on Xlib
</pre>
diff --git a/dist/Mesa/docs/contents.html b/dist/Mesa/docs/contents.html
index 1dca3a228..cca20ecaa 100644
--- a/dist/Mesa/docs/contents.html
+++ b/dist/Mesa/docs/contents.html
@@ -39,7 +39,6 @@ a:visited {
<ul>
<li><a href="download.html" target="MainFrame">Downloading / Unpacking</a>
<li><a href="install.html" target="MainFrame">Compiling / Installing</a>
-<li><a href="glu.html" target="MainFrame">SGI's GLU</a>
<li><a href="precompiled.html" target="MainFrame">Precompiled Libraries</a>
</ul>
@@ -53,9 +52,12 @@ a:visited {
<b>User Topics</b>
<ul>
+<li><a href="shading.html" target="MainFrame">Shading Language</a>
+<li><a href="egl.html" target="MainFrame">EGL</a>
+<li><a href="opengles.html" target="MainFrame">OpenGL ES</a>
+<li><a href="openvg.html" target="MainFrame">OpenVG / Vega</a>
<LI><A HREF="envvars.html" target="MainFrame">Environment Variables</A>
<LI><A HREF="osmesa.html" target="MainFrame">Off-Screen Rendering</A>
-<LI><A HREF="pbuffers.html" target="MainFrame">Pbuffer Rendering</A>
<LI><A HREF="debugging.html" target="MainFrame">Debugging Tips</A>
<LI><A HREF="perf.html" target="MainFrame">Performance Tips</A>
<LI><A HREF="extensions.html" target="MainFrame">Mesa Extensions</A>
@@ -66,8 +68,9 @@ a:visited {
<ul>
<li><a href="http://sourceforge.net/projects/mesa3d" target="_parent">SourceForge homepage</a>
<li><a href="repository.html" target="MainFrame">Source Code Repository</a>
+<li><a href="sourcetree.html" target="MainFrame">Source Code Tree</a>
<li><a href="memory.html" target="MainFrame">DRI Memory Management</a>
-<li><a href="shading.html" target="MainFrame">Shading Language</a>
+<li><a href="glu.html" target="MainFrame">SGI's GLU</a>
<li><a href="utilities.html" target="MainFrame">Utilities</a>
<li><a href="helpwanted.html" target="MainFrame">Help Wanted</a>
<li><a href="devinfo.html" target="MainFrame">Development Notes</a>
@@ -89,7 +92,6 @@ a:visited {
<li><a href="modelers.html" target="MainFrame">Modeling and Rendering</a>
<li><a href="science.html" target="MainFrame">Science and Technical</a>
<li><a href="utility.html" target="MainFrame">Utilities</a>
-<li><a href="demos.html" target="MainFrame">Demos / other</a>
</ul>
<b>Hosted by:</b>
diff --git a/dist/Mesa/docs/demos.html b/dist/Mesa/docs/demos.html
deleted file mode 100644
index b4a2cc5e3..000000000
--- a/dist/Mesa/docs/demos.html
+++ /dev/null
@@ -1,18 +0,0 @@
-<HTML>
-
-<TITLE>Demos</TITLE>
-
-<link rel="stylesheet" type="text/css" href="mesa.css"></head>
-
-<BODY>
-
-<H1>Demos</H1>
-
-
-<ul>
-<li><a href="http://www.geocities.com/shobhand/homepage.html">Shobhan Dutta's Geartrain and Walkthrough Demos</a>
-</li></ul>
-
-
-</body>
-</html> \ No newline at end of file
diff --git a/dist/Mesa/docs/devinfo.html b/dist/Mesa/docs/devinfo.html
index 3cebf5f36..df0e72652 100644
--- a/dist/Mesa/docs/devinfo.html
+++ b/dist/Mesa/docs/devinfo.html
@@ -107,7 +107,7 @@ Global variables are not allowed.
Function name examples:
</p>
<pre>
- glFooBar() - a public GL entry point (in dispatch.c)
+ glFooBar() - a public GL entry point (in glapi_dispatch.c)
_mesa_FooBar() - the internal immediate mode function
save_FooBar() - retained mode (display list) function in dlist.c
foo_bar() - a static (private) function
@@ -123,20 +123,21 @@ These are the instructions for making a new Mesa release.
<H3>Get latest source files</H3>
<p>
-Use "cvs update -dAP " to get the latest Mesa files from CVS.
+Use git to get the latest Mesa files from the git repository, from whatever
+branch is relevant.
</p>
<H3>Verify and update version info</H3>
<p>
-Create/edit the docs/RELNOTES-X.Y file to document what's new in the release.
-Add the new RELNOTES-X.Y file to <a href="relnotes.html">relnotes.html</a>.
-Update the docs/VERSIONS file too.
+Create/edit the docs/relnotes-x.y.html file to document what's new in the release.
+Add the new relnotes-x.y.html file to <a href="relnotes.html">relnotes.html</a>.
</p>
<p>
-Edit the MESA_MAJOR, MESA_MINOR and MESA_TINY version numbers in
+Update the MESA_MAJOR, MESA_MINOR and MESA_TINY version numbers in
configs/default.
+Also update the VERSION line in the top-level Makefile.
</p>
<p>
@@ -144,27 +145,24 @@ Make sure the values in src/mesa/main/version.h are correct.
</p>
<p>
-Edit the top-level Makefile and verify that DIRECTORY, LIB_NAME and
-DEMO_NAME are correct.
-</p>
-
-<p>
Update the docs/news.html file and docs/download.html files.
</p>
<p>
-Check in all updates to CVS.
+Check in all updates to git.
</p>
<p>
-Tag the CVS files with the release name (in the form <b>mesa_X_Y</b>).
+Tag the files with the release name (in the form <b>mesa_X_Y</b>)
+with: <code>git tag -a mesa_X_Y</code>
+Then: <code>git push origin mesa_X_Y</code>
</p>
<H3>Make the tarballs</H3>
<p>
Make a symbolic link from $(DIRECTORY) to 'Mesa'. For example,
-ln -s Mesa Mesa-6.3
+<code>ln -s Mesa Mesa-7.5</code>
This is needed in order to make a correct tar file in the next step.
</p>
@@ -177,7 +175,7 @@ Make the distribution files. From inside the Mesa directory:
<p>
After the tarballs are created, the md5 checksums for the files will
be computed.
-Add them to the docs/news.html file.
+Add them to the docs/relnotes-X.Y.html file.
</p>
<p>
@@ -192,8 +190,20 @@ uploading the tarballs.
</p>
<p>
+Basically, to upload the tarball files with:
+<br>
+<code>
+rsync -avP ssh Mesa*-X.Y.* USERNAME@frs.sourceforge.net:uploads/
+</code>
+</p>
+
+<p>
Update the web site by copying the docs/ directory's files to
-/home/users/b/br/brianp/mesa-www/htdocs/
+/home/users/b/br/brianp/mesa-www/htdocs/ with:
+<br>
+<code>
+sftp USERNAME,mesa3d@web.sourceforge.net
+</code>
</p>
<p>
diff --git a/dist/Mesa/docs/dispatch.html b/dist/Mesa/docs/dispatch.html
index b9ea8822e..e5587c1a2 100644
--- a/dist/Mesa/docs/dispatch.html
+++ b/dist/Mesa/docs/dispatch.html
@@ -198,8 +198,8 @@ few preprocessor defines.</p>
<ul>
<li>If <tt>GLX_USE_TLS</tt> is defined, method #4 is used.</li>
<li>If <tt>PTHREADS</tt> is defined, method #3 is used.</li>
-<li>If any of <tt>PTHREADS</tt>, <tt>USE_XTHREADS</tt>,
-<tt>SOLARIS_THREADS</tt>, <tt>WIN32_THREADS</tt>, or <tt>BEOS_THREADS</tt>
+<li>If any of <tt>PTHREADS</tt>,
+<tt>WIN32_THREADS</tt>, or <tt>BEOS_THREADS</tt>
is defined, method #2 is used.</li>
<li>If none of the preceeding are defined, method #1 is used.</li>
</ul>
@@ -244,8 +244,8 @@ isn't a significant problem.</p>
system. There are two steps to this. The file must first be added to
<tt>src/mesa/sources</tt>. That gets the file built and linked. The second
step is to add the correct <tt>#ifdef</tt> magic to
-<tt>src/mesa/main/dispatch.c</tt> to prevent the C version of the dispatch
-functions from being built.</p>
+<tt>src/mesa/glapi/glapi_dispatch.c</tt> to prevent the C version of the
+dispatch functions from being built.</p>
<A NAME="fixedsize"/>
<H3>3.4. Fixed-Length Dispatch Stubs</H3>
diff --git a/dist/Mesa/docs/download.html b/dist/Mesa/docs/download.html
index 877698e5c..3cb9423dd 100644
--- a/dist/Mesa/docs/download.html
+++ b/dist/Mesa/docs/download.html
@@ -9,20 +9,14 @@
<H1>Downloading</H1>
<p>
-Current stable release: <b>7.4.1</b>
-<br>
-Last unstable/development release: <b>7.3</b>
+Primary Mesa download site:
+<a href="ftp://ftp.freedesktop.org/pub/mesa/"
+target="_parent">freedesktop.org</a> (FTP)
</p>
<p>
-Primary download site:
-<a href="http://sourceforge.net/project/showfiles.php?group_id=3"
-target="_parent">SourceForge</a>
-</p>
-
-<p>
-When a new release is coming, release candidates (betas) can be found
-<a href="http://www.mesa3d.org/beta/">here</a>.
+When a new release is coming, release candidates (betas) may be found
+<a href="ftp://ftp.freedesktop.org/pub/mesa/beta/" target="_parent">here</a>.
</p>
diff --git a/dist/Mesa/docs/enums.txt b/dist/Mesa/docs/enums.txt
index 6c43fc189..b37768e20 100644
--- a/dist/Mesa/docs/enums.txt
+++ b/dist/Mesa/docs/enums.txt
@@ -1,4 +1,6 @@
+See the OpenGL ARB enum registry at http://www.opengl.org/registry/api/enum.spec
+
Blocks allocated to Mesa:
0x8750-0x875F
0x8BB0-0x8BBF
@@ -30,12 +32,12 @@ MESA_ycbcr_texture.spec:
GL_MESA_pack_invert.spec
GL_PACK_INVERT_MESA 0x8758
-GL_MESA_shader_debug.spec:
+GL_MESA_shader_debug.spec: (obsolete)
GL_DEBUG_OBJECT_MESA 0x8759
GL_DEBUG_PRINT_MESA 0x875A
GL_DEBUG_ASSERT_MESA 0x875B
-GL_MESA_program_debug.spec:
+GL_MESA_program_debug.spec: (obsolete)
GL_FRAGMENT_PROGRAM_CALLBACK_MESA 0x????
GL_VERTEX_PROGRAM_CALLBACK_MESA 0x????
GL_FRAGMENT_PROGRAM_POSITION_MESA 0x????
@@ -45,3 +47,11 @@ GL_MESA_program_debug.spec:
GL_VERTEX_PROGRAM_CALLBACK_FUNC_MESA 0x????
GL_VERTEX_PROGRAM_CALLBACK_DATA_MESA 0x????
+GL_MESAX_texture_stack:
+ GL_TEXTURE_1D_STACK_MESAX 0x8759
+ GL_TEXTURE_2D_STACK_MESAX 0x875A
+ GL_PROXY_TEXTURE_1D_STACK_MESAX 0x875B
+ GL_PROXY_TEXTURE_2D_STACK_MESAX 0x875C
+ GL_TEXTURE_1D_STACK_BINDING_MESAX 0x875D
+ GL_TEXTURE_2D_STACK_BINDING_MESAX 0x875E
+
diff --git a/dist/Mesa/docs/envvars.html b/dist/Mesa/docs/envvars.html
index 7fd9fe7c0..fd1700a02 100644
--- a/dist/Mesa/docs/envvars.html
+++ b/dist/Mesa/docs/envvars.html
@@ -25,6 +25,10 @@ fragment programs (intended for developers only)
<li>MESA_TNL_PROG - if set, implement conventional vertex transformation
operations with vertex programs (intended for developers only).
Setting this variable automatically sets the MESA_TEX_PROG variable as well.
+<li>MESA_EXTENSION_OVERRIDE - can be used to enable/disable extensions.
+A value such as "GL_EXT_foo -GL_EXT_bar" will enable the GL_EXT_foo extension
+and disable the GL_EXT_bar extension.
+<li>MESA_GLSL - <a href="shading.html#envvars">shading language options</a>
</ul>
<p>
@@ -47,5 +51,28 @@ See the <A HREF="xlibdriver.html">Xlib software driver page</A> for details.
</ul>
+<p>
+These environment variables are for the Intel i945/i965 drivers:
+</p>
+<ul>
+<li>INTEL_STRICT_CONFORMANCE - if set to 1, enable sw fallbacks to improve
+ OpenGL conformance. If set to 2, always use software rendering.
+<li>INTEL_NO_BLIT - if set, disable hardware-accelerated glBitmap,
+ glCopyPixels, glDrawPixels.
+</ul>
+
+
+<p>
+These environment variables are for the Radeon R300 driver:
+</p>
+<ul>
+<li>R300_NO_TCL - if set, disable hardware-accelerated Transform/Clip/Lighting.
+</ul>
+
+<p>
+Mesa EGL supports different sets of environment variables. See the
+<a href="egl.html">Mesa EGL</a> page for the details.
+</p>
+
</BODY>
</HTML>
diff --git a/dist/Mesa/docs/extensions.html b/dist/Mesa/docs/extensions.html
index dbb8ebada..91ed20e5c 100644
--- a/dist/Mesa/docs/extensions.html
+++ b/dist/Mesa/docs/extensions.html
@@ -24,6 +24,7 @@ The specifications follow.
<LI><A HREF="MESA_resize_buffers.spec">MESA_resize_buffers.spec</A>
<LI><A HREF="MESA_set_3dfx_mode.spec">MESA_set_3dfx_mode.spec</A>
<LI><A HREF="MESA_sprite_point.spec">MESA_sprite_point.spec</A> (obsolete)
+<LI><A HREF="MESA_texture_signed_rgba.spec">MESA_texture_signed_rgba.spec</A>
<LI><A HREF="MESA_trace.spec">MESA_trace.spec</A> (obsolete)
<LI><A HREF="MESA_window_pos.spec">MESA_window_pos.spec</A>
<LI><A HREF="MESA_ycbcr_texture.spec">MESA_ycbcr_texture.spec</A>
diff --git a/dist/Mesa/docs/faq.html b/dist/Mesa/docs/faq.html
index 11b5d4325..65e279aac 100644
--- a/dist/Mesa/docs/faq.html
+++ b/dist/Mesa/docs/faq.html
@@ -316,6 +316,19 @@ Basically, applying a translation of (0.375, 0.375, 0.0) to your coordinates
will fix the problem.
</p>
+<h2>3.6 How can I change the maximum framebuffer size in Mesa's
+<tt>swrast</tt> backend?</h2>
+<p>
+These can be overridden by using the <tt>--with-max-width</tt> and
+<tt>--with-max-height</tt> options. The two need not be equal.
+</p><p>
+Do note that Mesa uses these values to size some internal buffers,
+so increasing these sizes will cause Mesa to require additional
+memory. Furthermore, increasing these limits beyond <tt>4096</tt>
+may introduce rasterization artifacts; see the leading comments in
+<tt>src/mesa/swrast/s_tritemp.h</tt>.
+</p>
+
<br>
<br>
diff --git a/dist/Mesa/docs/install.html b/dist/Mesa/docs/install.html
index be61ef304..5aea92e0b 100644
--- a/dist/Mesa/docs/install.html
+++ b/dist/Mesa/docs/install.html
@@ -21,6 +21,7 @@
<li><a href="#pkg-config">Building OpenGL programs with pkg-config
</ul>
<li><a href="#windows">Windows</a>
+<li><a href="#scons">SCons</a>
<li><a href="#other">Other</a>
</ol>
<br>
@@ -34,14 +35,14 @@
<h3>1.1 Prerequisites for DRI and hardware acceleration</h3>
<p>
-The following are required for DRI-based hardware acceleration with Mesa 7.3:
+The following are required for DRI-based hardware acceleration with Mesa:
</p>
<ul>
<li><a href="http://xorg.freedesktop.org/releases/individual/proto/">dri2proto</a> version 1.99.3 or later
<li>Linux 2.6.28
<li><a href="http://dri.freedesktop.org/libdrm/" target="_parent">libDRM</a>
-version 2.4.3 or later
+version 2.4.15 or later
<li>Xorg server version 1.5 or later
</ul>
</p>
@@ -328,13 +329,51 @@ For example, compiling and linking a GLUT application can be done with:
<H2>2. Windows Compilation and Installation</H1>
<p>
-Please see the <a href="README.WIN32">README.WIN32</a> file.
+Please see the <a href="#scons">instructions on building with SCons</a>.
+Alternatively see <a href="README.WIN32">README.WIN32</a> file.
</p>
+<a name="scons">
+<H2>3. Building with SCons</H1>
+
+<p>
+To build Mesa with SCons on Linux or Windows do
+</p>
+<pre>
+ scons
+</pre>
+<p>
+The build output will be placed in
+build/<i>platform</i>-<i>machine</i>-<i>debug</i>/..., where <i>platform</i> is for
+example linux or windows, <i>machine</i> is x86 or x86_64, optionally followed
+by -debug for debug builds.
+</p>
+
+<p>
+To build Mesa with SCons for Windows on Linux using the MinGW crosscompiler toolchain do
+</p>
+<pre>
+ scons platform=windows toolchain=crossmingw machine=x86 statetrackers=mesa drivers=softpipe,trace winsys=gdi
+</pre>
+<p>
+This will create:
+</p>
+<ul>
+<li>build/windows-x86-debug/gallium/winsys/gdi/opengl32.dll &mdash; Mesa + Gallium + softpipe, binary compatible with Windows's opengl32.dll
+<li>build/windows-x86-debug/glut/glx/glut32.dll
+<li>progs/build/windows-x86-debug/wgl/wglinfo.exe
+<li>progs/build/windows-x86-debug/trivial/tri.exe
+<li>and many other samples in progs/build/windows-x86-debug/...
+</ul>
+<p>
+Put them all in the same directory to test them.
+</p>
+
+
<a name="other">
-<H2>3. Other systems</H1>
+<H2>4. Other systems</H1>
<p>
Documentation for other environments (some may be very out of date):
diff --git a/dist/Mesa/docs/lists.html b/dist/Mesa/docs/lists.html
index 5227fbd05..148789153 100644
--- a/dist/Mesa/docs/lists.html
+++ b/dist/Mesa/docs/lists.html
@@ -13,36 +13,50 @@
</p>
<ul>
-<li><a href="https://lists.sourceforge.net/lists/listinfo/mesa3d-announce"
-target="_parent">mesa3d-announce</a> - announcements of new Mesa
-versions are sent to this list.
-</li>
-<br>
-<li><a href="https://lists.sourceforge.net/lists/listinfo/mesa3d-users"
-target="_parent">mesa3d-users</a> - intended for users of the Mesa and DRI.
-Newbie questions are appropriate, but please try the general OpenGL
+<li><a href="http://lists.freedesktop.org/mailman/listinfo/mesa-users"
+target="_parent">mesa-users</a> - intended for end-users of Mesa and DRI
+drivers. Newbie questions are OK, but please try the general OpenGL
resources and Mesa/DRI documentation first.
</li>
<br>
-<li><a href="https://lists.sourceforge.net/lists/listinfo/mesa3d-dev"
-target="_parent">mesa3d-dev</a> - for discussion of Mesa and Direct Rendering
-Infrastructure development. Not for beginners.
+<li><a href="http://lists.freedesktop.org/mailman/listinfo/mesa-dev"
+target="_parent">mesa-dev</a> - for Mesa, Gallium and DRI development
+discussion. Not for beginners.
</li>
<br>
<li><a href="http://lists.freedesktop.org/mailman/listinfo/mesa-commit"
target="_parent">mesa-commit</a> - relays git check-in messages
(for developers).
+In general, people should not post to this list.
+</li>
<br>
-Note: the old mesa3d-cvs list is no longer in use.
+<li><a href="http://lists.freedesktop.org/mailman/listinfo/mesa-announce"
+target="_parent">mesa-announce</a> - announcements of new Mesa
+versions are sent to this list. Very low traffic.
</li>
</ul>
+<p>
+Follow the links above for list archives.
+</p>
+
+<p>
+The old Mesa lists hosted at SourceForge are no longer in use.
+The archives are still available, however:
+<a href="http://sourceforge.net/mailarchive/forum.php?forum_name=mesa3d-announce" target="_parent">mesa3d-announce</a>,
+<a href="http://sourceforge.net/mailarchive/forum.php?forum_name=mesa3d-users" target="_parent">mesa3d-users</a>,
+<a href="http://sourceforge.net/mailarchive/forum.php?forum_name=mesa3d-dev" target="_parent">mesa3d-dev</a>.
+</p>
+
+
<p>For mailing lists about Direct Rendering Modules (drm) in Linux/BSD
-kernels, see <a href="http://dri.freedesktop.org/wiki/MailingLists">wiki</a>.
+kernels, see the
+<a href="http://dri.freedesktop.org/wiki/MailingLists" target="_parent">
+DRI wiki</a>.
+</p>
<p>
-<b>Notice</b>: non-member posts to any of these lists will be automatically
-rejected.
+<b>Notice</b>: You must subscribe to these lists in order to post to them.
</p>
diff --git a/dist/Mesa/docs/news.html b/dist/Mesa/docs/news.html
index e032a6a49..b7731cdaf 100644
--- a/dist/Mesa/docs/news.html
+++ b/dist/Mesa/docs/news.html
@@ -11,6 +11,86 @@
<H1>News</H1>
+<h2>April 5, 2010</h2>
+
+<p>
+<a href="relnotes-7.8.1.html">Mesa 7.8.1</a> is released. This is a bug-fix
+release for a few critical issues in the 7.8 release.
+</p>
+
+
+<h2>March 28, 2010</h2>
+<p>
+<a href="relnotes-7.7.1.html">Mesa 7.7.1</a> is released. This is a bug-fix
+release fixing issues found in the 7.7 release.
+</p>
+<p>
+Also, <a href="relnotes-7.8.html">Mesa 7.8</a> is released. This is a new
+development release.
+</p>
+
+
+
+<h2>December 21, 2009</h2>
+<p>
+<a href="relnotes-7.6.1.html">Mesa 7.6.1</a> is released. This is a bug-fix
+release fixing issues found in the 7.6 release.
+</p>
+<p>
+Also, <a href="relnotes-7.7.html">Mesa 7.7</a> is released. This is a new
+development release.
+</p>
+
+
+<h2>September 28, 2009</h2>
+<p>
+<a href="relnotes-7.6.html">Mesa 7.6</a> is released. This is a new feature
+release. Those especially concerned about stability may want to wait for the
+follow-on 7.6.1 bug-fix release.
+</p>
+<p>
+<a href="relnotes-7.5.2.html">Mesa 7.5.2</a> is also released.
+This is a stable release fixing bugs since the 7.5.1 release.
+</p>
+
+
+<h2>September 3, 2009</h2>
+<p>
+<a href="relnotes-7.5.1.html">Mesa 7.5.1</a> is released.
+This is a bug-fix release which fixes bugs found in version 7.5.
+</p>
+
+
+<h2>July 17, 2009</h2>
+<p>
+<a href="relnotes-7.5.html">Mesa 7.5</a> is released.
+This is a new features release. People especially concerned about
+stability may want to wait for the follow-on 7.5.1 bug-fix release.
+</p>
+
+
+<h2>June 23, 2009</h2>
+<p>
+<a href="relnotes-7.4.4.html">Mesa 7.4.4</a> is released.
+This is a stable release that fixes a regression in the i915/i965 drivers
+that slipped into the 7.4.3 release.
+</p>
+
+
+<h2>June 19, 2009</h2>
+<p>
+<a href="relnotes-7.4.3.html">Mesa 7.4.3</a> is released.
+This is a stable release fixing bugs since the 7.4.2 release.
+</p>
+
+
+<h2>May 15, 2009</h2>
+<p>
+<a href="relnotes-7.4.2.html">Mesa 7.4.2</a> is released.
+This is a stable release fixing bugs since the 7.4.1 release.
+</p>
+
+
<h2>April 18, 2009</h2>
<p>
<a href="relnotes-7.4.1.html">Mesa 7.4.1</a> is released.
@@ -77,7 +157,7 @@ Added a new page describing the <a href="cell.html">Mesa Cell driver</a>.
<p>
Gallium3D is the codename for the new Mesa device driver architecture
which is currently under development.
-A <a href="http://www.tungstengraphics.com/wiki/index.php/Gallium3D"
+A <a href="http://wiki.freedesktop.org/wiki/Software/gallium"
target="_parent"> summary</a> of the architecture can be found on the
Tungsten Graphics website.
</p>
diff --git a/dist/Mesa/docs/osmesa.html b/dist/Mesa/docs/osmesa.html
index 629d054f4..525da4d42 100644
--- a/dist/Mesa/docs/osmesa.html
+++ b/dist/Mesa/docs/osmesa.html
@@ -26,7 +26,7 @@ more information about the API functions.
</p>
<p>
-There are several examples of OSMesa in the <code>progs/osdemo/</code>
+There are several examples of OSMesa in the <code>progs/osdemos/</code>
directory.
</p>
diff --git a/dist/Mesa/docs/pbuffers.html b/dist/Mesa/docs/pbuffers.html
deleted file mode 100644
index 259910155..000000000
--- a/dist/Mesa/docs/pbuffers.html
+++ /dev/null
@@ -1,54 +0,0 @@
-<HTML>
-
-<TITLE>PBuffer Rendering</TITLE>
-
-<link rel="stylesheet" type="text/css" href="mesa.css"></head>
-
-<BODY>
-
-<H1>PBuffer Rendering</H1>
-
-<p>
-Basically, FBconfigs and PBuffers allow you to do off-screen rendering
-with OpenGL. The OSMesa interface does basically the same thing, but
-fbconfigs and pbuffers are supported by more vendors.
-PBuffer rendering may also be hardware accelerated.
-</p>
-
-<p>
-PBuffers are getting more use nowadays, though they've actually been
-around for a long time on IRIX systems and other workstations.
-</p>
-
-<p>
-The
-<a href="http://oss.sgi.com/projects/ogl-sample/registry/SGIX/fbconfig.txt"
-target="_parent">GL_SGIX_fbconfig</a>
-and
-<a href="http://oss.sgi.com/projects/ogl-sample/registry/SGIX/pbuffer.txt"
-target="_parent">
-GL_SGIX_pbuffer</a> extensions describe the functionality.
-More recently, these extensions have been promoted to ARB extensions (on
-Windows at least).
-</p>
-
-<p>
-The Mesa/progs/xdemos/ directory has some useful code for working
-with pbuffers:
-</p>
-
-<ul>
-<li><b>pbinfo.c</b> - like glxinfo, it prints a list of available
- fbconfigs and whether each supports pbuffers.
-<li><b>pbutil.c</b> - a few utility functions for dealing with
- fbconfigs and pbuffers.
-<li><b>pbdemo.c</b> - a demonstration of off-screen rendering with pbuffers.
-</ul>
-
-<p>
-Mesa 4.1 and later support GL_SGIX_fbconfig and GL_SGIX_pbuffer (software
-rendering only).
-</p>
-
-</BODY>
-</HTML>
diff --git a/dist/Mesa/docs/precompiled.html b/dist/Mesa/docs/precompiled.html
index 166d33d82..50cb2af60 100644
--- a/dist/Mesa/docs/precompiled.html
+++ b/dist/Mesa/docs/precompiled.html
@@ -9,17 +9,11 @@
<H1>Precompiled Libraries</H1>
<p>
-In general, precompiled libraries are not available.
-However, people occasionally prepare packages of precompiled libraries
-for some systems.
+In general, precompiled Mesa libraries are not available.
</p>
-
-<H2>Mesa-6.0 for Solaris</H2>
-
<p>
-Steve Christensen has submitted precompiled Mesa-6.0 libraries for
-Solaris at <a href="http://sunfreeware.com/" target="_parent">
-sunfreeware.com</a>.
+However, some Linux distros (such as Ubuntu) seem to closely track
+Mesa and often have the latest Mesa release available as an update.
</p>
</BODY>
diff --git a/dist/Mesa/docs/relnotes-7.4.2.html b/dist/Mesa/docs/relnotes-7.4.2.html
index c38079297..7d066e418 100644
--- a/dist/Mesa/docs/relnotes-7.4.2.html
+++ b/dist/Mesa/docs/relnotes-7.4.2.html
@@ -8,7 +8,7 @@
<body bgcolor="#eeeeee">
-<H1>Mesa 7.4.2 Release Notes / TBD</H1>
+<H1>Mesa 7.4.2 Release Notes / May 15, 2009</H1>
<p>
Mesa 7.4.2 is a stable development release fixing bugs since the 7.4.1 release.
@@ -26,7 +26,15 @@ for DRI hardware acceleration.
<h2>MD5 checksums</h2>
<pre>
-tbd
+172f5193154dad731387f97bd44ab68f MesaLib-7.4.2.tar.gz
+b10a76e32bde4645cfc34ea0416d7d8b MesaLib-7.4.2.tar.bz2
+cc6dfc2efd424cc342b84e6bcd78ce5d MesaLib-7.4.2.zip
+182a7e78aa7a480b3650a5c956dbddd1 MesaDemos-7.4.2.tar.gz
+bf559a0485667a3bfa4513a23501579b MesaDemos-7.4.2.tar.bz2
+5379e622b65e8c22022dba34aeb6f4f9 MesaDemos-7.4.2.zip
+7cc43c1c35bf6a279a16e063dea3b8c5 MesaGLUT-7.4.2.tar.gz
+e0dfc44d537904a030861e5b3c760c11 MesaGLUT-7.4.2.tar.bz2
+4a6cf5bbbac190d6ba97448b3098b7f4 MesaGLUT-7.4.2.zip
</pre>
@@ -35,6 +43,10 @@ tbd
<li>Fixed segfault when rendering to front buffer with DRI 1.
<li>Fixed swrast texture rectangle bug when wrap mode = GL_CLAMP_TO_BORDER and
filter mode = GL_LINEAR. (bug 21461)
+<li>Fixed texture object mem leak during context destruction.
+<li>Fixed a state validation bug in glCopyTex[Sub]Image()
+<li>Fixed some i965 GLSL bugs.
+<li>Fixed an R300 driver texture object bad memory reference.
</ul>
diff --git a/dist/Mesa/docs/relnotes-7.5.html b/dist/Mesa/docs/relnotes-7.5.html
index 0d54dff76..56deca6a8 100644
--- a/dist/Mesa/docs/relnotes-7.5.html
+++ b/dist/Mesa/docs/relnotes-7.5.html
@@ -8,10 +8,17 @@
<body bgcolor="#eeeeee">
-<H1>Mesa 7.5 Release Notes / date TBD</H1>
+<H1>Mesa 7.5 Release Notes / 17 July 2009</H1>
<p>
Mesa 7.5 is a new development release.
+People who are concerned with stability and reliability should stick
+with the 7.4.x branch or wait for Mesa 7.5.1.
+</p>
+<p>
+The main new feature of Mesa 7.5 is the
+<a href="http://wiki.freedesktop.org/wiki/Software/gallium"
+target="_parent">Gallium3D</a> infrastructure.
</p>
<p>
Mesa 7.5 implements the OpenGL 2.1 API, but the version reported by
@@ -20,27 +27,75 @@ Some drivers don't support all the features required in OpenGL 2.1.
</p>
<p>
See the <a href="install.html">Compiling/Installing page</a> for prerequisites
-for DRI ardware acceleration.
+for DRI hardware acceleration.
+</p>
+<p>
+Note that the Mesa project is no longer using odd/even version numbers
+to indicate development/stable releases.
+The so-called development releases have been fairly stable.
+If you're especially concerned with stability you should probably look for
+"point" releases such as 7.5.1 which will be a bug-fix release.
</p>
<h2>MD5 checksums</h2>
<pre>
-tbd
+553fd956e544727f30fbe249619b6286 MesaLib-7.5.tar.gz
+459f332551f6ebb86f384d21dd15e1f0 MesaLib-7.5.tar.bz2
+8c02c0e17a9025250d20424ae32f5163 MesaLib-7.5.zip
+a188da2886fa5496ea0c2cda602b2eeb MesaDemos-7.5.tar.gz
+398ee8801814a00e47f6c2314e3dfddc MesaDemos-7.5.tar.bz2
+15a0c8ae013c54335a26335e1a98d609 MesaDemos-7.5.zip
+81010147def5a644ba14f9bbb7a49a2a MesaGLUT-7.5.tar.gz
+baa7a1e850b6e39bae58868fd0684004 MesaGLUT-7.5.tar.bz2
+265228418e4423fa328f2f5b7970cf08 MesaGLUT-7.5.zip
</pre>
<h2>New features</h2>
<ul>
+<li>Gallium3D - this is the new architecture for OS-independent and
+ API-independent 3D drivers.
+ Gallium3D is intended for GPUs that fully support vertex/fragment shaders.
+ The Gallium3D drivers currently included are:
+ <ul>
+ <li>softpipe - a software/reference driver
+ <li>i915 - Intel 915/945 driver
+ <li><a href="cell.html">Cell</a> - IBM/Sony/Toshiba Cell processor driver
+ <li>nouveau (for NVIDIA GPUs) and R300 for (AMD/ATI R300).
+ <b>PLEASE NOTE: these drivers are incomplete and still under development.
+ It's probably NOT worthwhile to report any bugs unless you have patches.
+ </b>
+ </ul>
+<li>GL_ARB_framebuffer_object extension (software drivers, i965 driver)
+<li>Reworked two-sided stencil support.
+This allows a driver to support all three variations of two-sided stencil
+including GL_ATI_separate_stencil, GL_EXT_stencil_two_side and OpenGL 2.0
+<li>GL_EXT_vertex_array_bgra extension (software drivers, i965 driver)
+<li>GL_NV_texture_env_combine4 extension (software drivers, i965/i915 drivers)
+<li>GL_EXT_texture_swizzle extension (software drivers, i965 driver)
+<li>Updated SPARC assembly optimizations (David S. Miller)
+<li>Initial support for separate compilation units in GLSL compiler.
+<li>Increased max number of generic GLSL varying variables to 16 (formerly 8).
+<li>GLSL linker now detects when too many varying variables are used.
+<li>Optimize-out redundant glMaterial and glShadeModel calls in display lists
+<li>Fixed gl_TextureMatrix[i][j] array indexing bug in GLSL compiler.
</ul>
<h2>Bug fixes</h2>
<ul>
+<li>Lots of i965 driver bug fixes
+<li>Fixed some GLSL preprocessor bugs
+<li>GLSL: continue inside of a for-loop didn't work
</ul>
+
<h2>Changes</h2>
<ul>
+<li>Remove support for GL_SGIX_shadow, GL_SGIX_shadow_ambient and
+GL_SGIX_depth_texture extensions. Superseded by the ARB versions.
+<li>Omitted some old Mesa demos from the release tarballs, added some others.
</ul>
</body>
diff --git a/dist/Mesa/docs/relnotes.html b/dist/Mesa/docs/relnotes.html
index be47e1a10..39b02b842 100644
--- a/dist/Mesa/docs/relnotes.html
+++ b/dist/Mesa/docs/relnotes.html
@@ -9,17 +9,22 @@
<H1>Release Notes</H1>
<p>
-Mesa uses an even/odd version number scheme like the Linux kernel.
-Odd numbered versions (such as 7.5) designate new developmental releases.
-Even numbered versions (such as 7.4) designate stable releases.
-</p>
-
-
-<p>
The release notes summarize what's new or changed in each Mesa release.
</p>
<UL>
+<LI><A HREF="relnotes-7.8.2.html">7.8.2 release notes</A>
+<LI><A HREF="relnotes-7.8.1.html">7.8.1 release notes</A>
+<LI><A HREF="relnotes-7.8.html">7.8 release notes</A>
+<LI><A HREF="relnotes-7.7.1.html">7.7.1 release notes</A>
+<LI><A HREF="relnotes-7.7.html">7.7 release notes</A>
+<LI><A HREF="relnotes-7.6.1.html">7.6.1 release notes</A>
+<LI><A HREF="relnotes-7.6.html">7.6 release notes</A>
+<LI><A HREF="relnotes-7.5.2.html">7.5.2 release notes</A>
+<LI><A HREF="relnotes-7.5.1.html">7.5.1 release notes</A>
+<LI><A HREF="relnotes-7.5.html">7.5 release notes</A>
+<LI><A HREF="relnotes-7.4.4.html">7.4.4 release notes</A>
+<LI><A HREF="relnotes-7.4.3.html">7.4.3 release notes</A>
<LI><A HREF="relnotes-7.4.2.html">7.4.2 release notes</A>
<LI><A HREF="relnotes-7.4.1.html">7.4.1 release notes</A>
<LI><A HREF="relnotes-7.4.html">7.4 release notes</A>
diff --git a/dist/Mesa/docs/repository.html b/dist/Mesa/docs/repository.html
index ed385288e..95d274a7a 100644
--- a/dist/Mesa/docs/repository.html
+++ b/dist/Mesa/docs/repository.html
@@ -1,6 +1,6 @@
<HTML>
-<TITLE>Cocd Repository</TITLE>
+<TITLE>Code Repository</TITLE>
<link rel="stylesheet" type="text/css" href="mesa.css"></head>
@@ -9,11 +9,8 @@
<h1>Code Repository</h1>
<p>
-As of December 5, 2006, Mesa is using
-<a href="http://git.or.cz/"target="_parent">git</a>
+Mesa uses <a href="http://git.or.cz/"target="_parent">git</a>
as its source code management system.
-CVS was used previously.
-The old CVS repository should no longer be used.
</p>
The master git repository is hosted on
@@ -125,6 +122,83 @@ Questions about branch status/activity should be posted to the
mesa3d-dev mailing list.
</p>
+<H2>Developer Git Tips</H2>
+
+<ol>
+<li>Setting up to edit the master branch
+<p>
+If you try to do a pull by just saying<code> git pull </code>
+and git complains that you have not specified a
+branch, try:
+<pre>
+ git config branch.master.remote origin
+ git config branch.master.merge master
+</pre>
+Otherwise, you have to say<code> git pull origin master </code>
+each time you do a pull.
+</p>
+<li>Small changes to master
+<p>
+If you are an experienced git user working on substancial modifications,
+you are probably
+working on a separate branch and would rebase your branch prior to
+merging with master.
+But for small changes to the master branch itself,
+you also need to use the rebase feature in order to avoid an
+unnecessary and distracting branch in master.
+</p>
+<p>
+If it has been awhile since you've done the initial clone, try
+<pre>
+ git pull
+</pre>
+to get the latest files before you start working.
+</p>
+<p>
+Make your changes and use
+<pre>
+ git add &lt;files to commit&gt;
+ git commit
+</pre>
+to get your changes ready to push back into the fd.o repository.
+</p>
+<p>
+It is possible (and likely) that someone has changed master since
+you did your last pull. Even if your changes do not conflict with
+their changes, git will make a fast-forward
+merge branch, branching from the point in time
+where you did your last pull and merging it to a point after the other changes.
+</p>
+<p>
+To avoid this,
+<pre>
+ git pull --rebase
+ git push
+</pre>
+If you are familiar with CVS or similar system, this is similar to doing a
+<code> cvs update </code> in order to update your source tree to
+the current repository state, instead of the time you did the last update.
+(CVS doesn't work like git in this respect, but this is easiest way
+to explain it.)
+</br>
+In any case, your repository now looks like you made your changes after
+all the other changes.
+</p>
+<p>
+If the rebase resulted in conflicts or changes that could affect
+the proper operation of your changes, you'll need to investigate
+those before doing the push.
+</p>
+<p>
+If you want the rebase action to be the default action, then
+<pre>
+ git config branch.master.rebase true
+ git config --global branch.autosetuprebase=always
+</pre>
+<p>
+See <a href="http://www.eecs.harvard.edu/~cduan/technical/git/" target="_parent">Understanding Git Conceptually</a> for a fairly clear explanation about all of this.
+</p>
+</ol>
</body>
</html>
diff --git a/dist/Mesa/docs/shading.html b/dist/Mesa/docs/shading.html
index b77745fbf..750884cf3 100644
--- a/dist/Mesa/docs/shading.html
+++ b/dist/Mesa/docs/shading.html
@@ -15,13 +15,10 @@ OpenGL Shading Language</a>.
</p>
<p>
-Last updated on 15 December 2008.
-</p>
-
-<p>
Contents
</p>
<ul>
+<li><a href="#envvars">Environment variables</a>
<li><a href="#120">GLSL 1.20 support</a>
<li><a href="#unsup">Unsupported Features</a>
<li><a href="#notes">Implementation Notes</a>
@@ -33,11 +30,39 @@ Contents
+<a name="envvars">
+<h2>Environment Variables</h2>
+
+<p>
+The <b>MESA_GLSL</b> environment variable can be set to a comma-separated
+list of keywords to control some aspects of the GLSL compiler and shader
+execution. These are generally used for debugging.
+</p>
+<ul>
+<li>dump - print GLSL shader code to stdout at link time
+<li>log - log all GLSL shaders to files.
+ The filenames will be "shader_X.vert" or "shader_X.frag" where X
+ the shader ID.
+<li>nopt - disable compiler optimizations
+<li>opt - force compiler optimizations
+<li>uniform - print message to stdout when glUniform is called
+<li>nopvert - force vertex shaders to be a simple shader that just transforms
+ the vertex position with ftransform() and passes through the color and
+ texcoord[0] attributes.
+<li>nopfrag - force fragment shader to be a simple shader that passes
+ through the color attribute.
+<li>useprog - log glUseProgram calls to stderr
+</ul>
+<p>
+Example: export MESA_GLSL=dump,nopt
+</p>
+
+
<a name="120">
<h2>GLSL 1.20 support</h2>
<p>
-GLSL version 1.20 is supported in Mesa 7.3.
+GLSL version 1.20 is supported in Mesa 7.3 and later.
Among the features/differences of GLSL 1.20 are:
<ul>
<li><code>mat2x3, mat2x4</code>, etc. types and functions
@@ -59,12 +84,14 @@ Among the features/differences of GLSL 1.20 are:
<h2>Unsupported Features</h2>
<p>
-The following features of the shading language are not yet supported
+The following features of the shading language are not yet fully supported
in Mesa:
</p>
<ul>
-<li>Linking of multiple shaders is not supported
+<li>Linking of multiple shaders does not always work. Currently, linking
+ is implemented through shader concatenation and re-compiling. This
+ doesn't always work because of some #pragma and preprocessor issues.
<li>gl_ClipVertex
<li>The gl_Color and gl_SecondaryColor varying vars are interpolated
without perspective correction
@@ -177,6 +204,8 @@ This tool is useful for:
After building Mesa, the glslcompiler can be built by manually running:
</p>
<pre>
+ make realclean
+ make linux
cd src/mesa/drivers/glslcompiler
make
</pre>
diff --git a/dist/Mesa/docs/xlibdriver.html b/dist/Mesa/docs/xlibdriver.html
index 029e2b151..d95f4d579 100644
--- a/dist/Mesa/docs/xlibdriver.html
+++ b/dist/Mesa/docs/xlibdriver.html
@@ -169,20 +169,6 @@ the Gamma FAQ</a>
</p>
-<H2>Direct Rendering Flag</H2>
-<p>
-Some applications won't run with indirect rendering contexts (which is
-what the Xlib driver supports).
-To force the glXIsDirect() query to return True, set the MESA_GLX_FORCE_DIRECT
-environment variable.
-For example:
-</p>
-<pre>
- $ export MESA_GLX_FORCE_DIRECT=1
-</pre>
-
-
-
<H2>Overlay Planes</H2>
<p>
Hardware overlay planes are supported by the Xlib driver. To
@@ -282,8 +268,6 @@ This extension was added in Mesa 2.6
MESA_BACK_BUFFER - specifies how to implement the back color buffer (X only)
MESA_PRIVATE_CMAP - force aux/tk libraries to use private colormaps (X only)
MESA_GAMMA - gamma correction coefficients (X only)
- MESA_GLX_FORCE_DIRECT - report that the driver is direct rendering, even
- though it's not.
</pre>