From 664b7303c2e8ae2c6c5a44d5b30254ddab4eb266 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Thu, 12 Nov 2009 23:17:14 -0700 Subject: docs: fixes, changes for Mesa 7.7 --- docs/relnotes-7.7.html | 3 +++ 1 file changed, 3 insertions(+) (limited to 'docs') diff --git a/docs/relnotes-7.7.html b/docs/relnotes-7.7.html index 856b8fae3d..e640de2941 100644 --- a/docs/relnotes-7.7.html +++ b/docs/relnotes-7.7.html @@ -44,11 +44,14 @@ tbd

Bug fixes

Changes

-- cgit v1.2.3 From 0f060250fc95e63e00ebf9eeb603eed470693221 Mon Sep 17 00:00:00 2001 From: Corbin Simpson Date: Mon, 16 Nov 2009 10:46:20 -0800 Subject: docs: Update r300g status. --- docs/relnotes-7.7.html | 1 + 1 file changed, 1 insertion(+) (limited to 'docs') diff --git a/docs/relnotes-7.7.html b/docs/relnotes-7.7.html index e640de2941..7ab278bd08 100644 --- a/docs/relnotes-7.7.html +++ b/docs/relnotes-7.7.html @@ -45,6 +45,7 @@ tbd

Bug fixes

-- cgit v1.2.3 From 63bc736f90e044bdd681d56300e8342582c5a93a Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Tue, 17 Nov 2009 11:23:03 -0700 Subject: docs: list the new VMware SVGA Gallium driver in release notes --- docs/relnotes-7.7.html | 3 +++ 1 file changed, 3 insertions(+) (limited to 'docs') diff --git a/docs/relnotes-7.7.html b/docs/relnotes-7.7.html index 7ab278bd08..8c8f763b6f 100644 --- a/docs/relnotes-7.7.html +++ b/docs/relnotes-7.7.html @@ -34,6 +34,9 @@ tbd

New features

    +
  • VMware "SVGA" Gallium driver. This is a Gallium3D driver which targets the + VMware virtual graphics device. It allows Linux OpenGL guest applications + to utilize the 3D graphics hardware of the host operating system.
  • GL_ARB_draw_elements_base_vertex (supported in Intel i965 and software drivers)
  • GL_ARB_depth_clamp (supported in Intel i965 DRI and software drivers)
  • GL_NV_depth_clamp (supported in Intel i965 DRI and software drivers)
  • -- cgit v1.2.3 From 2b3ea2be906fbe0bf08f08f23ec39c0feb7a8f39 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Tue, 17 Nov 2009 15:53:27 -0700 Subject: docs: i965 clipping fix --- docs/relnotes-7.6.1.html | 1 + 1 file changed, 1 insertion(+) (limited to 'docs') diff --git a/docs/relnotes-7.6.1.html b/docs/relnotes-7.6.1.html index 9ee6babc9d..7a809a0c41 100644 --- a/docs/relnotes-7.6.1.html +++ b/docs/relnotes-7.6.1.html @@ -52,6 +52,7 @@ tbd it returns the actual compressed format chosen.
  • Fixed glBitmap bugs in Intel drivers.
  • Fixed a number of Microsoft Visual Studio compilation problems. +
  • Fixed clipping / provoking vertex bugs in i965 driver.
-- cgit v1.2.3 From 4440d8adb6f94c9a5c4bc1a913433d88a9ef5324 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Tue, 17 Nov 2009 16:32:05 -0700 Subject: docs: libGL documentation, from the xorg-docs tree This is pretty old and needs some updating but might be useful or interesting to some people. --- docs/libGL.txt | 197 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 197 insertions(+) create mode 100644 docs/libGL.txt (limited to 'docs') diff --git a/docs/libGL.txt b/docs/libGL.txt new file mode 100644 index 0000000000..cb98840437 --- /dev/null +++ b/docs/libGL.txt @@ -0,0 +1,197 @@ + + + +Introduction +------------ + +This document describes the implementation of the XFree86 4.0 libGL.so +library defined by the Linux/OpenGL Base specification found at +http://reality.sgi.com/opengl/linux/linuxbase.html. + +The documentation is divided into two sections: + User's Guide + Driver Developer's Guide + +Author: Brian Paul (brian@precisioninsight.com) +Date: February 2000 + + + +User's Guide +------------ + +Using libGL.so + +The libGL.so library defines the gl- and glX-prefixed functions needed to +run OpenGL programs. OpenGL client applications should link with the +-lGL option to use it. + +libGL.so serves two primary functions: GLX protocol generation for indirect +rendering and loading/management of hardware drivers for direct rendering. + +When libGL.so initializes itself it uses the DRI to determine the +appropriate hardware driver for each screen on the local X display. +The hardware drivers are expected to be in the /usr/X11R6/lib/modules/dri/ +directory. Drivers are named with the convention _dri.so where + is a driver such as "tdfx", "i810", "gamma", etc. + +The LIBGL_DRIVERS_DIR environment variable may be used to specify a +different DRI modules directory, overriding /usr/X11R6/lib/modules/dri/. +This environment variable is ignored in setuid programs for security +reasons. + +When libGL.so is unable to locate appropriate hardware drivers it will +fall back to using indirect GLX rendering. + +To aid in solving problems, libGL.so will print diagnostic messages to +stderr if the LIBGL_DEBUG environment variable is defined. + +libGL.so is thread safe. The overhead of thread safety for common, +single-thread clients is negligible. However, the overhead of thread +safety for multi-threaded clients is significant. Each GL API call +requires two calls to pthread_get_specific() which can noticably +impact performance. Warning: libGL.so is thread safe but individual +DRI drivers may not be. Please consult the documentation for a driver +to learn if it is thread safe. + + + +Indirect Rendering + +You can force indirect rendering mode by setting the LIBGL_ALWAYS_INDIRECT +environment variable. Hardware acceleration will not be used. + + + +libGL.so Extensibility + +libGL.so is designed to be extended without upgrading. That is, +drivers may install new OpenGL extension functions into libGL.so +without requiring libGL.so to be replaced. Clients of libGL.so should +use the glXGetProcAddressEXT() function to obtain the address of +functions by name. For more details of GLX_ARB_get_proc_address see +http://oss.sgi.com/projects/ogl-sample/registry/ARB/get_proc_address.spec + +libGL.so is also designed with flexibility such that it may be used +with many generations of hardware drivers to come. + + + + +Driver Developer's Guide +------------------------ + +This section describes the requirements to make an XFree86 4.0 +libGL.so-compatible hardware driver. It is not intended for end +users of libGL.so. + + +XFree86 source files + +libGL.so is built inside XFree86 with sources found in xc/lib/GL/. +Specifically, libGL.so is built from: + + xc/lib/GL/glx/*.c + xc/lib/dri/XF86dri.c + xc/lib/dri/dri_glx.c + xc/lib/GL/mesa/src/glapi.c + xc/lib/GL/mesa/src/glapitemp.h + xc/lib/GL/mesa/src/glapitable.h + xc/lib/GL/mesa/src/glapioffsets.h + xc/lib/GL/mesa/src/glapinoop.c + xc/lib/GL/mesa/src/glheader.h + xc/lib/GL/mesa/src/glthread.c + xc/lib/GL/mesa/src/glthread.h + xc/lib/GL/mesa/src/X86/glapi_x86.S + xc/lib/GL/mesa/src/X86/assyntax.h + +Understand that the mesa/src/gl*.[ch] files are not tied to Mesa. They +have no dependencies on the rest of Mesa and are designed to be reusable +in a number of projects. + +The glapi_x86.X and assyntax.h files implement x86-optimized dispatch +of GL functions. They are not required; C-based dispatch can be used +instead, with a slight performance penalty. + + + +Driver loading and binding + +When libGL.so initializes itself (via the __glXInitialize function) a +call is made to driCreateDisplay(). This function uses DRI facilities +to determine the driver file appropriate for each screen on the local +display. Each screen's driver is then opened with dlopen() and asked +for its __driCreateScreen() function. The pointers to the __driCreateScreen() +functions are kept in an array, indexed by screen number, in the +__DRIdisplayRec struct. + +When a driver's __driCreateScreen() function is called, it must initialize +a __DRIscreenRec struct. This struct acts as the root of a tree of +function pointers which are called to create and destroy contexts and +drawables and perform all the operations needed by the GLX interface. +See the xc/lib/GL/glx/glxclient.h file for details. + + + +Dynamic Extension Function Registration + +In order to provide forward compatibility with future drivers, libGL.so +allows drivers to register new OpenGL extension functions which weren't +known when libGL.so was built. + +The register_extensions() function in xc/lib/GL/dri/dri_glx.c is called +as soon as libGL.so is loaded. This is done with gcc's constructor +attribute. This mechanism will likely have to be changed for other compilers. + +register_extensions() loops over all local displays and screens, determines +the DRI driver for each, and calls the driver's __driRegisterExtensions() +function, if present. + +The __driRegisterExtensions() function can add new entrypoints to libGL +by calling: + + GLboolean _glapi_add_entrypoint(const char *funcName, GLuint offset) + +The parameters are the name of the function (such as "glFoobarEXT") and the +offset of the dispatch slot in the API dispatch table. The return value +indicates success (GL_TRUE) or failure (GL_FALSE). + +_glapi_add_entrypoint() will synthesize entrypoint code in assembly +language. Assembly languages is required since parameter passing +can't be handled correctly using a C-based solution. + +The address of the new entrypoint is obtained by calling the +glXGetProcAddressARB() function. + +The dispatch offset number MUST be a number allocated by SGI in the same +manner in which new GL_* constants are allocated. Using an arbitrary +offset number will result in many problems. + + + +Dispatch Management + +When a GL context is made current, the driver must install its dispatch +table as the current dispatch table. This is done by calling + + void _glapi_set_dispatch(struct _glapi_table *dispatch); + +This will install the named dispatch table for the calling thread. +The current dispatch table for a thread can be obtained by calling + + struct _glapi_table *_glapi_get_dispatch(void); + +For higher performance in the common single-thread case, the global +variable _glapi_Dispatch will point to the current dispatch table. +This variable will be NULL when in multi-thread mode. + + + +Context Management + +libGL.so uses the XFree86 xthreads package to manage a thread-specific +current context pointer. See __glXGet/SetCurrentContext() in glext.c + +Drivers may use the _glapi_set/get_context() functions to maintain +a private thread-specific context pointer. + -- cgit v1.2.3 From 3ba983bf5d0ae8f9eb5083513e910abf41dd8b73 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Wed, 18 Nov 2009 07:46:17 -0700 Subject: docs: setup 7.8 release notes file --- docs/relnotes-7.8.html | 53 ++++++++++++++++++++++++++++++++++++++++++++++++++ docs/relnotes.html | 1 + 2 files changed, 54 insertions(+) create mode 100644 docs/relnotes-7.8.html (limited to 'docs') diff --git a/docs/relnotes-7.8.html b/docs/relnotes-7.8.html new file mode 100644 index 0000000000..dc003566c7 --- /dev/null +++ b/docs/relnotes-7.8.html @@ -0,0 +1,53 @@ + + +Mesa Release Notes + + + + + + + +

Mesa 7.8 Release Notes / date TBD

+ +

+Mesa 7.8 is a new development release. +People who are concerned with stability and reliability should stick +with a previous release or wait for Mesa 7.8.1. +

+

+Mesa 7.8 implements the OpenGL 2.1 API, but the version reported by +glGetString(GL_VERSION) depends on the particular driver being used. +Some drivers don't support all the features required in OpenGL 2.1. +

+

+See the Compiling/Installing page for prerequisites +for DRI hardware acceleration. +

+ + +

MD5 checksums

+
+tbd
+
+ + +

New features

+
    +
  • TBD +
+ + +

Bug fixes

+
    +
  • TBD +
+ + +

Changes

+
    +
  • TBD +
+ + + diff --git a/docs/relnotes.html b/docs/relnotes.html index b301ee046a..d0d9b6e5b9 100644 --- a/docs/relnotes.html +++ b/docs/relnotes.html @@ -13,6 +13,7 @@ The release notes summarize what's new or changed in each Mesa release.

    +
  • 7.8 release notes
  • 7.7 release notes
  • 7.6.1 release notes
  • 7.6 release notes -- cgit v1.2.3 From c5add6a46899b87b3f338288cf9744160cf7c464 Mon Sep 17 00:00:00 2001 From: Alex Deucher Date: Wed, 18 Nov 2009 11:32:55 -0500 Subject: docs: Add note about r600 --- docs/relnotes-7.6.1.html | 1 + 1 file changed, 1 insertion(+) (limited to 'docs') diff --git a/docs/relnotes-7.6.1.html b/docs/relnotes-7.6.1.html index 7a809a0c41..5615ed6e08 100644 --- a/docs/relnotes-7.6.1.html +++ b/docs/relnotes-7.6.1.html @@ -34,6 +34,7 @@ tbd
    • Upgraded GL/glext.h to version 56, GL/glxext.h to version 25, GL/wglext.h to version 17 +
    • New 3D driver, r600, for Radeon R6xx, R7xx hardware
    -- cgit v1.2.3 From 2a1505b42e30eeae20624bd24386198a8d867357 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Thu, 19 Nov 2009 09:01:48 -0700 Subject: docs: remove VC6/7 project file info --- docs/README.WIN32 | 23 ----------------------- 1 file changed, 23 deletions(-) (limited to 'docs') diff --git a/docs/README.WIN32 b/docs/README.WIN32 index 97e1ffb7a7..204b8e6604 100644 --- a/docs/README.WIN32 +++ b/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 --- -- cgit v1.2.3 From e16b59df42131452633742a03694bd5132a8895e Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Thu, 19 Nov 2009 09:07:17 -0700 Subject: docs: update news file for 7.6.1 release --- docs/news.html | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'docs') diff --git a/docs/news.html b/docs/news.html index 93da56a5c3..2abec2e635 100644 --- a/docs/news.html +++ b/docs/news.html @@ -10,6 +10,13 @@

    News

    +

    November XX, 2009

    +

    +Mesa 7.6.1 is released. This is a bug-fix +release fixing issues found in the 7.6 release. +

    + +

    September 28, 2009

    Mesa 7.6 is released. This is a new feature -- cgit v1.2.3 From 5117725fd0eee7dbd5708bdbbd066bc89c2d35a9 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Thu, 19 Nov 2009 09:07:34 -0700 Subject: docs: removed VC6/7 project files --- docs/relnotes-7.6.1.html | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'docs') diff --git a/docs/relnotes-7.6.1.html b/docs/relnotes-7.6.1.html index 5615ed6e08..14f9077d9e 100644 --- a/docs/relnotes-7.6.1.html +++ b/docs/relnotes-7.6.1.html @@ -56,5 +56,11 @@ tbd

  • Fixed clipping / provoking vertex bugs in i965 driver.
+

Changes

+
    +
  • Removed old VC6, VC7 project files for Windows +
+ + -- cgit v1.2.3 From 3128d65fd7da9dc9b7a6823fae9d9b2ca33afca6 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Thu, 19 Nov 2009 09:35:01 -0700 Subject: docs: document fixes for AIX --- docs/relnotes-7.6.1.html | 1 + 1 file changed, 1 insertion(+) (limited to 'docs') diff --git a/docs/relnotes-7.6.1.html b/docs/relnotes-7.6.1.html index 14f9077d9e..3d19c6cb70 100644 --- a/docs/relnotes-7.6.1.html +++ b/docs/relnotes-7.6.1.html @@ -54,6 +54,7 @@ tbd
  • Fixed glBitmap bugs in Intel drivers.
  • Fixed a number of Microsoft Visual Studio compilation problems.
  • Fixed clipping / provoking vertex bugs in i965 driver. +
  • Assorted build fixes for AIX.

    Changes

    -- cgit v1.2.3 From 601edbef172f3106b9e4c0b96b24d8b5eea8d2a5 Mon Sep 17 00:00:00 2001 From: Michel Dänzer Date: Mon, 23 Nov 2009 19:33:59 +0100 Subject: Fix the DRI swrast driver for big endian platforms. Too bad I didn't realize earlier how easy this could be... Fixes http://bugs.freedesktop.org/show_bug.cgi?id=22767 . --- docs/relnotes-7.6.1.html | 1 + src/mesa/drivers/dri/swrast/swrast_span.c | 72 +++++++++++++------------------ 2 files changed, 30 insertions(+), 43 deletions(-) (limited to 'docs') diff --git a/docs/relnotes-7.6.1.html b/docs/relnotes-7.6.1.html index 3d19c6cb70..d155cf5a67 100644 --- a/docs/relnotes-7.6.1.html +++ b/docs/relnotes-7.6.1.html @@ -55,6 +55,7 @@ tbd
  • Fixed a number of Microsoft Visual Studio compilation problems.
  • Fixed clipping / provoking vertex bugs in i965 driver.
  • Assorted build fixes for AIX. +
  • Endianness fixes for the DRI swrast driver (bug 22767).
  • Changes

    diff --git a/src/mesa/drivers/dri/swrast/swrast_span.c b/src/mesa/drivers/dri/swrast/swrast_span.c index 2d3c25dcbe..f8e503463f 100644 --- a/src/mesa/drivers/dri/swrast/swrast_span.c +++ b/src/mesa/drivers/dri/swrast/swrast_span.c @@ -63,56 +63,42 @@ static const GLubyte kernel[16] = { /* 32-bit BGRA */ #define STORE_PIXEL_A8R8G8B8(DST, X, Y, VALUE) \ - DST[3] = VALUE[ACOMP]; \ - DST[2] = VALUE[RCOMP]; \ - DST[1] = VALUE[GCOMP]; \ - DST[0] = VALUE[BCOMP] + *DST = VALUE[ACOMP] << 24 | VALUE[RCOMP] << 16 | VALUE[GCOMP] << 8 | VALUE[BCOMP] #define STORE_PIXEL_RGB_A8R8G8B8(DST, X, Y, VALUE) \ - DST[3] = 0xff; \ - DST[2] = VALUE[RCOMP]; \ - DST[1] = VALUE[GCOMP]; \ - DST[0] = VALUE[BCOMP] + *DST = 0xff << 24 | VALUE[RCOMP] << 16 | VALUE[GCOMP] << 8 | VALUE[BCOMP] #define FETCH_PIXEL_A8R8G8B8(DST, SRC) \ - DST[ACOMP] = SRC[3]; \ - DST[RCOMP] = SRC[2]; \ - DST[GCOMP] = SRC[1]; \ - DST[BCOMP] = SRC[0] + DST[ACOMP] = *SRC >> 24; \ + DST[RCOMP] = (*SRC >> 16) & 0xff; \ + DST[GCOMP] = (*SRC >> 8) & 0xff; \ + DST[BCOMP] = *SRC & 0xff /* 32-bit BGRX */ #define STORE_PIXEL_X8R8G8B8(DST, X, Y, VALUE) \ - DST[3] = 0xff; \ - DST[2] = VALUE[RCOMP]; \ - DST[1] = VALUE[GCOMP]; \ - DST[0] = VALUE[BCOMP] + *DST = 0xff << 24 | VALUE[RCOMP] << 16 | VALUE[GCOMP] << 8 | VALUE[BCOMP] #define STORE_PIXEL_RGB_X8R8G8B8(DST, X, Y, VALUE) \ - DST[3] = 0xff; \ - DST[2] = VALUE[RCOMP]; \ - DST[1] = VALUE[GCOMP]; \ - DST[0] = VALUE[BCOMP] + *DST = 0xff << 24 | VALUE[RCOMP] << 16 | VALUE[GCOMP] << 8 | VALUE[BCOMP] #define FETCH_PIXEL_X8R8G8B8(DST, SRC) \ - DST[ACOMP] = 0xff; \ - DST[RCOMP] = SRC[2]; \ - DST[GCOMP] = SRC[1]; \ - DST[BCOMP] = SRC[0] + DST[ACOMP] = 0xff; \ + DST[RCOMP] = (*SRC >> 16) & 0xff; \ + DST[GCOMP] = (*SRC >> 8) & 0xff; \ + DST[BCOMP] = *SRC & 0xff /* 16-bit BGR */ #define STORE_PIXEL_R5G6B5(DST, X, Y, VALUE) \ do { \ int d = DITHER_COMP(X, Y) >> 6; \ - GLushort *p = (GLushort *)DST; \ - *p = ( ((DITHER_CLAMP((VALUE[RCOMP]) + d) & 0xf8) << 8) | \ - ((DITHER_CLAMP((VALUE[GCOMP]) + d) & 0xfc) << 3) | \ - ((DITHER_CLAMP((VALUE[BCOMP]) + d) & 0xf8) >> 3) ); \ + *DST = ( ((DITHER_CLAMP((VALUE[RCOMP]) + d) & 0xf8) << 8) | \ + ((DITHER_CLAMP((VALUE[GCOMP]) + d) & 0xfc) << 3) | \ + ((DITHER_CLAMP((VALUE[BCOMP]) + d) & 0xf8) >> 3) ); \ } while(0) #define FETCH_PIXEL_R5G6B5(DST, SRC) \ do { \ - GLushort p = *(GLushort *)SRC; \ DST[ACOMP] = 0xff; \ - DST[RCOMP] = ((p >> 8) & 0xf8) * 255 / 0xf8; \ - DST[GCOMP] = ((p >> 3) & 0xfc) * 255 / 0xfc; \ - DST[BCOMP] = ((p << 3) & 0xf8) * 255 / 0xf8; \ + DST[RCOMP] = ((*SRC >> 8) & 0xf8) * 255 / 0xf8; \ + DST[GCOMP] = ((*SRC >> 3) & 0xfc) * 255 / 0xfc; \ + DST[BCOMP] = ((*SRC << 3) & 0xf8) * 255 / 0xf8; \ } while(0) @@ -145,8 +131,8 @@ static const GLubyte kernel[16] = { #define SPAN_VARS \ struct swrast_renderbuffer *xrb = swrast_renderbuffer(rb); #define INIT_PIXEL_PTR(P, X, Y) \ - GLubyte *P = (GLubyte *)xrb->Base.Data + YFLIP(xrb, Y) * xrb->pitch + (X) * 4; -#define INC_PIXEL_PTR(P) P += 4 + GLuint *P = (GLuint *)xrb->Base.Data + YFLIP(xrb, Y) * xrb->pitch / 4 + (X) +#define INC_PIXEL_PTR(P) P++ #define STORE_PIXEL(DST, X, Y, VALUE) \ STORE_PIXEL_A8R8G8B8(DST, X, Y, VALUE) #define STORE_PIXEL_RGB(DST, X, Y, VALUE) \ @@ -163,8 +149,8 @@ static const GLubyte kernel[16] = { #define SPAN_VARS \ struct swrast_renderbuffer *xrb = swrast_renderbuffer(rb); #define INIT_PIXEL_PTR(P, X, Y) \ - GLubyte *P = (GLubyte *)xrb->Base.Data + YFLIP(xrb, Y) * xrb->pitch + (X) * 4; -#define INC_PIXEL_PTR(P) P += 4 + GLuint *P = (GLuint *)xrb->Base.Data + YFLIP(xrb, Y) * xrb->pitch / 4 + (X); +#define INC_PIXEL_PTR(P) P++ #define STORE_PIXEL(DST, X, Y, VALUE) \ STORE_PIXEL_X8R8G8B8(DST, X, Y, VALUE) #define STORE_PIXEL_RGB(DST, X, Y, VALUE) \ @@ -181,8 +167,8 @@ static const GLubyte kernel[16] = { #define SPAN_VARS \ struct swrast_renderbuffer *xrb = swrast_renderbuffer(rb); #define INIT_PIXEL_PTR(P, X, Y) \ - GLubyte *P = (GLubyte *)xrb->Base.Data + YFLIP(xrb, Y) * xrb->pitch + (X) * 2; -#define INC_PIXEL_PTR(P) P += 2 + GLushort *P = (GLushort *)xrb->Base.Data + YFLIP(xrb, Y) * xrb->pitch / 2 + (X); +#define INC_PIXEL_PTR(P) P++ #define STORE_PIXEL(DST, X, Y, VALUE) \ STORE_PIXEL_R5G6B5(DST, X, Y, VALUE) #define FETCH_PIXEL(DST, SRC) \ @@ -234,8 +220,8 @@ static const GLubyte kernel[16] = { #define SPAN_VARS \ struct swrast_renderbuffer *xrb = swrast_renderbuffer(rb); #define INIT_PIXEL_PTR(P, X, Y) \ - GLubyte *P = (GLubyte *)row; -#define INC_PIXEL_PTR(P) P += 4 + GLuint *P = (GLuint *)row; +#define INC_PIXEL_PTR(P) P++ #define STORE_PIXEL(DST, X, Y, VALUE) \ STORE_PIXEL_A8R8G8B8(DST, X, Y, VALUE) #define STORE_PIXEL_RGB(DST, X, Y, VALUE) \ @@ -252,8 +238,8 @@ static const GLubyte kernel[16] = { #define SPAN_VARS \ struct swrast_renderbuffer *xrb = swrast_renderbuffer(rb); #define INIT_PIXEL_PTR(P, X, Y) \ - GLubyte *P = (GLubyte *)row; -#define INC_PIXEL_PTR(P) P += 4 + GLuint *P = (GLuint *)row; +#define INC_PIXEL_PTR(P) P++ #define STORE_PIXEL(DST, X, Y, VALUE) \ STORE_PIXEL_X8R8G8B8(DST, X, Y, VALUE) #define STORE_PIXEL_RGB(DST, X, Y, VALUE) \ @@ -270,7 +256,7 @@ static const GLubyte kernel[16] = { #define SPAN_VARS \ struct swrast_renderbuffer *xrb = swrast_renderbuffer(rb); #define INIT_PIXEL_PTR(P, X, Y) \ - GLubyte *P = (GLubyte *)row; + GLushort *P = (GLushort *)row; #define INC_PIXEL_PTR(P) P += 2 #define STORE_PIXEL(DST, X, Y, VALUE) \ STORE_PIXEL_R5G6B5(DST, X, Y, VALUE) -- cgit v1.2.3 From fb83fa26c47a49db1673834fd5f013bbcacadf58 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Fri, 4 Dec 2009 08:09:07 -0700 Subject: docs: a few more fixes for 7.6.1 --- docs/relnotes-7.6.1.html | 2 ++ 1 file changed, 2 insertions(+) (limited to 'docs') diff --git a/docs/relnotes-7.6.1.html b/docs/relnotes-7.6.1.html index d155cf5a67..752f9cac64 100644 --- a/docs/relnotes-7.6.1.html +++ b/docs/relnotes-7.6.1.html @@ -56,6 +56,8 @@ tbd
  • Fixed clipping / provoking vertex bugs in i965 driver.
  • Assorted build fixes for AIX.
  • Endianness fixes for the DRI swrast driver (bug 22767).
  • +
  • Point sprite fixes for i915/945 driver. +
  • Fixed assorted memory leaks (usually on error paths)

    Changes

    -- cgit v1.2.3 From 7d41b4248bee1d926646ef5fdff07da4f9026589 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Fri, 11 Dec 2009 09:41:34 -0700 Subject: docs: updated 7.6.1 relnotes with GLSL fixes --- docs/relnotes-7.6.1.html | 1 + 1 file changed, 1 insertion(+) (limited to 'docs') diff --git a/docs/relnotes-7.6.1.html b/docs/relnotes-7.6.1.html index 752f9cac64..7160168d98 100644 --- a/docs/relnotes-7.6.1.html +++ b/docs/relnotes-7.6.1.html @@ -58,6 +58,7 @@ tbd
  • Endianness fixes for the DRI swrast driver (bug 22767).
  • Point sprite fixes for i915/945 driver.
  • Fixed assorted memory leaks (usually on error paths) +
  • Fixed some GLSL compiler bugs (ex: 25579)

    Changes

    -- cgit v1.2.3 From 35ff190a9c80988ffeb0fbe4e2b5d732f8130feb Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Wed, 16 Dec 2009 08:17:43 -0700 Subject: docs: document 7.6.1 BlueGene fixes --- docs/relnotes-7.6.1.html | 1 + 1 file changed, 1 insertion(+) (limited to 'docs') diff --git a/docs/relnotes-7.6.1.html b/docs/relnotes-7.6.1.html index 7160168d98..a41bcee81c 100644 --- a/docs/relnotes-7.6.1.html +++ b/docs/relnotes-7.6.1.html @@ -59,6 +59,7 @@ tbd
  • Point sprite fixes for i915/945 driver.
  • Fixed assorted memory leaks (usually on error paths)
  • Fixed some GLSL compiler bugs (ex: 25579) +
  • Assorted build fixes for BlueGene

    Changes

    -- cgit v1.2.3 From 6ffed19993ab622e0d63776420bd8c6fc6c646f3 Mon Sep 17 00:00:00 2001 From: Ian Romanick Date: Mon, 21 Dec 2009 18:30:35 -0800 Subject: Add MD5 checksums for 7.7 release --- docs/relnotes-7.7.html | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'docs') diff --git a/docs/relnotes-7.7.html b/docs/relnotes-7.7.html index 8c8f763b6f..de980238e5 100644 --- a/docs/relnotes-7.7.html +++ b/docs/relnotes-7.7.html @@ -28,7 +28,15 @@ for DRI hardware acceleration.

    MD5 checksums

    -tbd
    +395c9516edf1ad54b0934d8db15557bf  MesaLib-7.7.tar.gz
    +e3fa64a1508bc23dd9de9dd2cea7cfb1  MesaLib-7.7.tar.bz2
    +e54903eb5e49c3969821fa16b32da245  MesaLib-7.7.zip
    +53b5b6f78e55de170d43c98cb6aaab7e  MesaDemos-7.7.tar.gz
    +6fd616b27b9826d0faa23e08e05d9435  MesaDemos-7.7.tar.bz2
    +240fe06159ad73d5e22c27033b66c80a  MesaDemos-7.7.zip
    +9fe11a904b2a9d8cd06cc52bc330b716  MesaGLUT-7.7.tar.gz
    +e8dceed05a59a2d3c2619d7d734587e3  MesaGLUT-7.7.tar.bz2
    +96af041d435349ee23ead4667ec36363  MesaGLUT-7.7.zip
     
    -- cgit v1.2.3 From e9b5ed1c13e64f1da0770bce08456ed44d6bb53a Mon Sep 17 00:00:00 2001 From: Ian Romanick Date: Mon, 21 Dec 2009 18:32:32 -0800 Subject: Add MD5 checksums for 7.6.1 release --- docs/relnotes-7.6.1.html | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'docs') diff --git a/docs/relnotes-7.6.1.html b/docs/relnotes-7.6.1.html index a41bcee81c..19d54041b2 100644 --- a/docs/relnotes-7.6.1.html +++ b/docs/relnotes-7.6.1.html @@ -26,7 +26,15 @@ for DRI hardware acceleration.

    MD5 checksums

    -tbd
    +e80fabad2e3eb7990adae773d6aeacba  MesaLib-7.6.1.tar.gz
    +7db4617e9e10ad3aca1b64339fd71b7d  MesaLib-7.6.1.tar.bz2
    +dd3275dbf9833480d2e92d0c69b22abd  MesaLib-7.6.1.zip
    +f7fdcfe3c0f363e571c60f02f74368fb  MesaDemos-7.6.1.tar.gz
    +a4226f06732a02556fcf6be290b86dff  MesaDemos-7.6.1.tar.bz2
    +849425f356bd940726cebedfa79de176  MesaDemos-7.6.1.zip
    +d40cc7c5e337a85b674e27a8e494f52f  MesaGLUT-7.6.1.tar.gz
    +ca9aecb91f05b1da9fd7d5eeb19d47d7  MesaGLUT-7.6.1.tar.bz2
    +23fad8398004c977a1d8953079b72ca6  MesaGLUT-7.6.1.zip
     
    -- cgit v1.2.3 From 82184970d3aee822d945af7d4902359f28f7057f Mon Sep 17 00:00:00 2001 From: Ian Romanick Date: Mon, 21 Dec 2009 18:32:32 -0800 Subject: Add MD5 checksums for 7.6.1 release --- docs/relnotes-7.6.1.html | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'docs') diff --git a/docs/relnotes-7.6.1.html b/docs/relnotes-7.6.1.html index a41bcee81c..19d54041b2 100644 --- a/docs/relnotes-7.6.1.html +++ b/docs/relnotes-7.6.1.html @@ -26,7 +26,15 @@ for DRI hardware acceleration.

    MD5 checksums

    -tbd
    +e80fabad2e3eb7990adae773d6aeacba  MesaLib-7.6.1.tar.gz
    +7db4617e9e10ad3aca1b64339fd71b7d  MesaLib-7.6.1.tar.bz2
    +dd3275dbf9833480d2e92d0c69b22abd  MesaLib-7.6.1.zip
    +f7fdcfe3c0f363e571c60f02f74368fb  MesaDemos-7.6.1.tar.gz
    +a4226f06732a02556fcf6be290b86dff  MesaDemos-7.6.1.tar.bz2
    +849425f356bd940726cebedfa79de176  MesaDemos-7.6.1.zip
    +d40cc7c5e337a85b674e27a8e494f52f  MesaGLUT-7.6.1.tar.gz
    +ca9aecb91f05b1da9fd7d5eeb19d47d7  MesaGLUT-7.6.1.tar.bz2
    +23fad8398004c977a1d8953079b72ca6  MesaGLUT-7.6.1.zip
     
    -- cgit v1.2.3 From da876fa3a5df77763fe106b5e0a17b2e672a506c Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Sun, 27 Dec 2009 15:14:25 -0700 Subject: docs: insert 7.6.1 release date --- docs/news.html | 2 +- docs/relnotes-7.6.1.html | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) (limited to 'docs') diff --git a/docs/news.html b/docs/news.html index 2abec2e635..a7d834e1c7 100644 --- a/docs/news.html +++ b/docs/news.html @@ -10,7 +10,7 @@

    News

    -

    November XX, 2009

    +

    December 21, 2009

    Mesa 7.6.1 is released. This is a bug-fix release fixing issues found in the 7.6 release. diff --git a/docs/relnotes-7.6.1.html b/docs/relnotes-7.6.1.html index 19d54041b2..1d0ecd2ac0 100644 --- a/docs/relnotes-7.6.1.html +++ b/docs/relnotes-7.6.1.html @@ -8,7 +8,7 @@ -

    Mesa 7.6.1 Release Notes, (date tbd)

    +

    Mesa 7.6.1 Release Notes, 21 December 2009

    Mesa 7.6.1 is a bug-fix release fixing issues since version 7.6. -- cgit v1.2.3 From b0d5e44f243f64caecec66fae3b8dfc1c0107032 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Sun, 27 Dec 2009 15:33:25 -0700 Subject: docs: insert 7.7 release date --- docs/news.html | 4 ++++ docs/relnotes-7.7.html | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) (limited to 'docs') diff --git a/docs/news.html b/docs/news.html index a7d834e1c7..0a0be715c1 100644 --- a/docs/news.html +++ b/docs/news.html @@ -15,6 +15,10 @@ Mesa 7.6.1 is released. This is a bug-fix release fixing issues found in the 7.6 release.

    +

    +Also, Mesa 7.7 is released. This is a new +development release. +

    September 28, 2009

    diff --git a/docs/relnotes-7.7.html b/docs/relnotes-7.7.html index de980238e5..c1ed654613 100644 --- a/docs/relnotes-7.7.html +++ b/docs/relnotes-7.7.html @@ -8,7 +8,7 @@ -

    Mesa 7.7 Release Notes / date TBD

    +

    Mesa 7.7 Release Notes / 21 December 2009

    Mesa 7.7 is a new development release. -- cgit v1.2.3 From 9b0bbe15a54b3d5d0ba015a71b1cf10da04ab892 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Wed, 30 Dec 2009 10:39:20 -0700 Subject: docs: added GL 3.x feature checklist to track what's done in Mesa --- docs/GL3.txt | 62 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100644 docs/GL3.txt (limited to 'docs') diff --git a/docs/GL3.txt b/docs/GL3.txt new file mode 100644 index 0000000000..8660826535 --- /dev/null +++ b/docs/GL3.txt @@ -0,0 +1,62 @@ + +Status of OpenGL 3.x features in Mesa + + +Note: when an item is marked as "DONE" it means all the core Mesa +infrastructure is complete but it may be the case that few (if any) drivers +implement the features. + + +Feature Status +----------------------------------------------------- ------------------------ + +GL 3.0: + +GLSL changes (GL_EXT_gpu_shader4, etc) not started +Conditional rendering (GL_NV_conditional_render) not started +Map buffer subranges (GL_APPLE_flush_buffer_range) not started +Float textures, renderbuffers some infrastructure done +Framebuffer objects (GL_EXT_framebuffer_object) DONE +Half-float some infrastructure done +Multisample blit DONE +Non-normalized Integer texture/framebuffer formats not started +1D/2D Texture arrays mostly done +Packed depth/stencil formats DONE +Per-buffer blend and masks (GL_EXT_draw_buffers2) DONE +GL_EXT_texture_compression_rgtc not started +Red and red/green texture formats Ian? +Transform feedback (GL_EXT_transform_feedback) not started +Vertex array objects (GL_APPLE_vertex_array_object) DONE +sRGB framebuffer format (GL_EXT_framebuffer_sRGB) not started +glClearBuffer commands DONE, except for dispatch +glGetStringi command DONE, except for dispatch + + +GL 3.1: + +GLSL 1.30 and 1.40 not started +Instanced drawing (GL_ARB_draw_instanced) not started +Buffer copying (GL_ARB_copy_buffer) DONE +Primitive restart (GL_NV_primitive_restart) not started +16 vertex texture image units not started +Texture buffer objs (GL_ARB_textur_buffer_object) not started +Rectangular textures (GL_ARB_texture_rectangle) DONE +Uniform buffer objs (GL_ARB_uniform_buffer_object) not started +Signed normalized texture formats not started + + +GL 3.2: + +Core/compatibility profiles not started +GLSL 1.50 not started +Geometry shaders (GL_ARB_geometry_shader4) partially done (Zack) +BGRA vertex order (GL_ARB_vertex_array_bgra) DONE +Base vertex offset(GL_ARB_draw_elements_base_vertex) DONE +Frag shader coord (GL_ARB_fragment_coord_conventions) not started +Provoking vertex (GL_ARB_provoking_vertex) DONE +Seamless cubemaps (GL_ARB_seamless_cube_map) DONE, mostly? +Multisample textures (GL_ARB_texture_multisample) not started +Frag depth clamp (GL_ARB_depth_clamp) DONE +Fence objects (GL_ARB_sync) DONE + + -- cgit v1.2.3 From c28b451e406da1b46c7e5bb85951c6cbf36198f9 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Wed, 30 Dec 2009 21:42:12 -0700 Subject: docs: update status for conditional rendering --- docs/GL3.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'docs') diff --git a/docs/GL3.txt b/docs/GL3.txt index 8660826535..f25459db48 100644 --- a/docs/GL3.txt +++ b/docs/GL3.txt @@ -13,7 +13,7 @@ Feature Status GL 3.0: GLSL changes (GL_EXT_gpu_shader4, etc) not started -Conditional rendering (GL_NV_conditional_render) not started +Conditional rendering (GL_NV_conditional_render) DONE (swrast only) Map buffer subranges (GL_APPLE_flush_buffer_range) not started Float textures, renderbuffers some infrastructure done Framebuffer objects (GL_EXT_framebuffer_object) DONE -- cgit v1.2.3 From 06f10903cbddb91a58bee383c05364c79faf33b6 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Thu, 31 Dec 2009 08:48:52 -0700 Subject: docs: 7.8 relnotes: GL_NV_conditional_render and GL_EXT_draw_buffers2 --- docs/relnotes-7.8.html | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'docs') diff --git a/docs/relnotes-7.8.html b/docs/relnotes-7.8.html index dc003566c7..717b96282c 100644 --- a/docs/relnotes-7.8.html +++ b/docs/relnotes-7.8.html @@ -34,7 +34,8 @@ tbd

    New features

      -
    • TBD +
    • GL_NV_conditional_render extension (swrast driver only) +
    • GL_EXT_draw_buffers2 extension (swrast driver only)
    -- cgit v1.2.3 From 7bbf7f94ea786e41ff1364cedaf7dd5c0bbf605a Mon Sep 17 00:00:00 2001 From: José Fonseca Date: Thu, 31 Dec 2009 21:10:25 +0000 Subject: scons: Build progs together with everything else. This is a substantial reorganization, This particular commit enables: - building the progs for unices platforms - glew is now built as a shared library (it is the default, and it is inconvenient and pointless to shift away from that default) - all progs get built by default --- SConstruct | 8 ++- docs/install.html | 9 ---- progs/SConscript | 38 +++++++++++++++ progs/SConstruct | 65 ------------------------- progs/demos/SConscript | 124 ++++++++++++++++++++--------------------------- progs/fp/SConscript | 15 +----- progs/glsl/SConscript | 20 +------- progs/perf/SConscript | 11 +---- progs/redbook/SConscript | 20 +------- progs/samples/SConscript | 20 +------- progs/tests/SConscript | 20 +------- progs/trivial/SConscript | 11 +---- progs/vp/SConscript | 11 +---- progs/vpglsl/SConscript | 11 +---- progs/wgl/SConscript | 14 ++---- src/glew/SConscript | 31 ++++++++---- src/glut/glx/SConscript | 66 ++++++++++++++++--------- 17 files changed, 180 insertions(+), 314 deletions(-) delete mode 100644 progs/SConstruct (limited to 'docs') diff --git a/SConstruct b/SConstruct index 0a545d5c92..ed92518eec 100644 --- a/SConstruct +++ b/SConstruct @@ -177,7 +177,7 @@ if env['platform'] != common.default_platform: SConscript( 'src/glsl/SConscript', - variant_dir = env['build'] + '/host', + variant_dir = os.path.join(env['build'], 'host'), duplicate = 0, # http://www.scons.org/doc/0.97/HTML/scons-user/x2261.html exports={'env':host_env}, ) @@ -187,3 +187,9 @@ SConscript( variant_dir = env['build'], duplicate = 0 # http://www.scons.org/doc/0.97/HTML/scons-user/x2261.html ) + +SConscript( + 'progs/SConscript', + variant_dir = os.path.join('progs', env['build']), + duplicate = 0 # http://www.scons.org/doc/0.97/HTML/scons-user/x2261.html +) diff --git a/docs/install.html b/docs/install.html index 8c24cee7a3..5aea92e0b5 100644 --- a/docs/install.html +++ b/docs/install.html @@ -351,20 +351,11 @@ example linux or windows, machine is x86 or x86_64, optionally followed by -debug for debug builds.

    -

    -The sample programs are built seperately. To build them do -

    -    scons -C progs
    -
    -And the build output will be placed in progs/build/... -

    -

    To build Mesa with SCons for Windows on Linux using the MinGW crosscompiler toolchain do

         scons platform=windows toolchain=crossmingw machine=x86 statetrackers=mesa drivers=softpipe,trace winsys=gdi
    -    scons -C progs platform=windows toolchain=crossmingw machine=x86 -k
     

    This will create: diff --git a/progs/SConscript b/progs/SConscript index 66eaf9e541..3b180d00bc 100644 --- a/progs/SConscript +++ b/progs/SConscript @@ -1,5 +1,43 @@ SConscript([ 'util/SConscript', +]) + +Import('*') + +progs_env = env.Clone() + +if progs_env['platform'] == 'windows': + progs_env.Append(CPPDEFINES = ['NOMINMAX']) + progs_env.Prepend(LIBS = [ + 'winmm', + 'kernel32', + 'user32', + 'gdi32', + ]) + +# OpenGL +if progs_env['platform'] == 'windows': + progs_env.Prepend(LIBS = ['glu32', 'opengl32']) +else: + progs_env.Prepend(LIBS = ['GLU', 'GL']) + +# Glut +progs_env.Prepend(LIBS = [glut]) + +# GLEW +progs_env.Prepend(LIBS = [glew]) + +progs_env.Prepend(CPPPATH = [ + '#progs/util', +]) + +progs_env.Prepend(LIBS = [ + util, +]) + +Export('progs_env') + +SConscript([ 'demos/SConscript', 'glsl/SConscript', 'redbook/SConscript', diff --git a/progs/SConstruct b/progs/SConstruct deleted file mode 100644 index 4d268cc6d7..0000000000 --- a/progs/SConstruct +++ /dev/null @@ -1,65 +0,0 @@ -import os -import os.path -import sys - -env = Environment( - tools = ['generic'], - toolpath = ['../scons'], - ENV = os.environ, -) - - -# Use Mesa's headers and libs -if 1: - build_topdir = 'build' - build_subdir = env['platform'] - if env['machine'] != 'generic': - build_subdir += '-' + env['machine'] - if env['debug']: - build_subdir += "-debug" - if env['profile']: - build_subdir += "-profile" - build_dir = os.path.join(build_topdir, build_subdir) - - env.Append(CPPDEFINES = ['GLEW_STATIC']) - env.Append(CPPPATH = ['#../include']) - env.Append(LIBPATH = [ - '#../' + build_dir + '/glew/', - '#../' + build_dir + '/glut/glx', - ]) - - -conf = Configure(env) - -# OpenGL -if env['platform'] == 'windows': - env.Prepend(LIBS = ['glu32', 'opengl32']) -else: - env.Prepend(LIBS = ['GLU', 'GL']) - -# Glut -env['GLUT'] = False -if conf.CheckCHeader('GL/glut.h'): - if env['platform'] == 'windows': - env['GLUT_LIB'] = 'glut32' - else: - env['GLUT_LIB'] = 'glut' - env['GLUT'] = True - -# GLEW -env['GLEW'] = False -if conf.CheckCHeader('GL/glew.h'): - env['GLEW_LIB'] = 'glew' - env['GLEW'] = True - env.Prepend(LIBS = ['glew']) - -conf.Finish() - - -Export('env') - -SConscript( - 'SConscript', - build_dir = env['build'], - duplicate = 0 # http://www.scons.org/doc/0.97/HTML/scons-user/x2261.html -) diff --git a/progs/demos/SConscript b/progs/demos/SConscript index f851870bcf..742dd66f36 100644 --- a/progs/demos/SConscript +++ b/progs/demos/SConscript @@ -1,84 +1,66 @@ Import('*') -if not env['GLUT']: - Return() - -env = env.Clone() - -env.Prepend(CPPPATH = [ - '../util', -]) - -env.Prepend(LIBS = [ - util, - '$GLUT_LIB' -]) - -if env['platform'] == 'windows': - env.Append(CPPDEFINES = ['NOMINMAX']) - env.Prepend(LIBS = ['winmm']) - progs = [ - 'arbfplight', - 'arbfslight', - 'arbocclude', - 'bounce', - 'clearspd', - 'copypix', - 'cubemap', - 'drawpix', - 'engine', - 'fbo_firecube', - 'fire', - 'fogcoord', - 'fplight', - 'fslight', - 'gamma', - 'gearbox', - 'gears', - 'geartrain', - 'glinfo', - 'gloss', - 'gltestperf', - 'ipers', - 'isosurf', - 'lodbias', - 'morph3d', - 'multiarb', - 'paltex', - 'pointblast', - 'ray', - 'readpix', - 'reflect', - 'renormal', - 'shadowtex', - 'singlebuffer', - 'spectex', - 'spriteblast', - 'stex3d', - 'teapot', - 'terrain', - 'tessdemo', - 'texcyl', - 'texenv', - 'textures', - 'trispd', - 'tunnel', - 'tunnel2', - 'vao_demo', - 'winpos', - 'dinoshade', - 'fbotexture', - 'projtex', + 'arbfplight', + 'arbfslight', + 'arbocclude', + 'bounce', + 'clearspd', + 'copypix', + 'cubemap', + 'drawpix', + 'engine', + 'fbo_firecube', + 'fire', + 'fogcoord', + 'fplight', + 'fslight', + 'gamma', + 'gearbox', + 'gears', + 'geartrain', + 'glinfo', + 'gloss', + 'gltestperf', + 'ipers', + 'isosurf', + 'lodbias', + 'morph3d', + 'multiarb', + 'paltex', + 'pointblast', + 'ray', + 'readpix', + 'reflect', + 'renormal', + 'shadowtex', + 'singlebuffer', + 'spectex', + 'spriteblast', + 'stex3d', + 'teapot', + 'terrain', + 'tessdemo', + 'texcyl', + 'texenv', + 'textures', + 'trispd', + 'tunnel', + 'tunnel2', + 'vao_demo', + 'winpos', + 'dinoshade', + 'fbotexture', + 'projtex', ] for prog in progs: - env.Program( + progs_env.Program( target = prog, source = prog + '.c', ) -env.Program( +progs_env.Program( target = 'rain', source = [ 'rain.cxx', diff --git a/progs/fp/SConscript b/progs/fp/SConscript index a78318542c..113e11ab54 100644 --- a/progs/fp/SConscript +++ b/progs/fp/SConscript @@ -1,15 +1,4 @@ -Import('env') - -if not env['GLUT']: - Return() - -env = env.Clone() - -env.Prepend(CPPPATH = [ - '../util', -]) - -env.Prepend(LIBS = ['$GLUT_LIB']) +Import('*') progs = [ 'fp-tri', @@ -24,7 +13,7 @@ progs = [ ] for prog in progs: - env.Program( + progs_env.Program( target = prog, source = [prog + '.c'], ) diff --git a/progs/glsl/SConscript b/progs/glsl/SConscript index 7a4549cd70..8f2ebcf69c 100644 --- a/progs/glsl/SConscript +++ b/progs/glsl/SConscript @@ -1,23 +1,5 @@ Import('*') -if not env['GLUT']: - Return() - -env = env.Clone() - -env.Prepend(CPPPATH = [ - '../util', -]) - -env.Prepend(LIBS = [ - util, - '$GLUT_LIB' -]) - -if env['platform'] == 'windows': - env.Append(CPPDEFINES = ['NOMINMAX']) - env.Prepend(LIBS = ['winmm']) - progs = [ 'array', 'bitmap', @@ -48,7 +30,7 @@ progs = [ ] for prog in progs: - env.Program( + progs_env.Program( target = prog, source = prog + '.c', ) diff --git a/progs/perf/SConscript b/progs/perf/SConscript index a5ec9a7c2a..691478ab64 100644 --- a/progs/perf/SConscript +++ b/progs/perf/SConscript @@ -1,11 +1,4 @@ -Import('env') - -if not env['GLUT']: - Return() - -env = env.Clone() - -env.Prepend(LIBS = ['$GLUT_LIB']) +Import('*') progs = [ 'copytex', @@ -21,7 +14,7 @@ progs = [ ] for prog in progs: - env.Program( + progs_env.Program( target = prog, source = [ prog + '.c', diff --git a/progs/redbook/SConscript b/progs/redbook/SConscript index 242cb6647f..24d7cff1b6 100644 --- a/progs/redbook/SConscript +++ b/progs/redbook/SConscript @@ -1,23 +1,5 @@ Import('*') -if not env['GLUT']: - Return() - -env = env.Clone() - -env.Prepend(CPPPATH = [ - '../util', -]) - -env.Prepend(LIBS = [ - util, - '$GLUT_LIB' -]) - -if env['platform'] == 'windows': - env.Append(CPPDEFINES = ['NOMINMAX']) - env.Prepend(LIBS = ['winmm']) - progs = [ 'aaindex', 'aapoly', @@ -85,7 +67,7 @@ progs = [ ] for prog in progs: - env.Program( + progs_env.Program( target = prog, source = prog + '.c', ) diff --git a/progs/samples/SConscript b/progs/samples/SConscript index 7a8a0d62d8..134dfa9980 100644 --- a/progs/samples/SConscript +++ b/progs/samples/SConscript @@ -1,23 +1,5 @@ Import('*') -if not env['GLUT']: - Return() - -env = env.Clone() - -env.Prepend(CPPPATH = [ - '../util', -]) - -env.Prepend(LIBS = [ - util, - '$GLUT_LIB' -]) - -if env['platform'] == 'windows': - env.Append(CPPDEFINES = ['NOMINMAX']) - env.Prepend(LIBS = ['winmm']) - progs = [ 'accum', 'bitmap1', @@ -52,7 +34,7 @@ progs = [ ] for prog in progs: - env.Program( + progs_env.Program( target = prog, source = prog + '.c', ) diff --git a/progs/tests/SConscript b/progs/tests/SConscript index ae6488b3e6..e2c6538288 100644 --- a/progs/tests/SConscript +++ b/progs/tests/SConscript @@ -1,23 +1,5 @@ Import('*') -if not env['GLUT']: - Return() - -env = env.Clone() - -env.Prepend(CPPPATH = [ - '../util', -]) - -env.Prepend(LIBS = [ - util, - '$GLUT_LIB' -]) - -if env['platform'] == 'windows': - env.Append(CPPDEFINES = ['NOMINMAX']) - env.Prepend(LIBS = ['winmm']) - linux_progs = [ 'api_speed', ] @@ -140,7 +122,7 @@ progs = [ ] for prog in progs: - env.Program( + progs_env.Program( target = prog, source = prog + '.c', ) diff --git a/progs/trivial/SConscript b/progs/trivial/SConscript index 9a1f3575bd..613383c77b 100644 --- a/progs/trivial/SConscript +++ b/progs/trivial/SConscript @@ -1,11 +1,4 @@ -Import('env') - -if not env['GLUT']: - Return() - -env = env.Clone() - -env.Prepend(LIBS = ['$GLUT_LIB']) +Import('*') progs = [ 'clear-fbo-tex', @@ -154,7 +147,7 @@ progs = [ ] for prog in progs: - prog = env.Program( + prog = progs_env.Program( target = prog, source = prog + '.c', ) diff --git a/progs/vp/SConscript b/progs/vp/SConscript index 640c5dd847..787cb793af 100644 --- a/progs/vp/SConscript +++ b/progs/vp/SConscript @@ -1,13 +1,6 @@ -Import('env') +Import('*') -if not env['GLUT']: - Return() - -env = env.Clone() - -env.Prepend(LIBS = ['$GLUT_LIB']) - -env.Program( +progs_env.Program( target = 'vp-tris', source = ['vp-tris.c'], ) diff --git a/progs/vpglsl/SConscript b/progs/vpglsl/SConscript index 640c5dd847..787cb793af 100644 --- a/progs/vpglsl/SConscript +++ b/progs/vpglsl/SConscript @@ -1,13 +1,6 @@ -Import('env') +Import('*') -if not env['GLUT']: - Return() - -env = env.Clone() - -env.Prepend(LIBS = ['$GLUT_LIB']) - -env.Program( +progs_env.Program( target = 'vp-tris', source = ['vp-tris.c'], ) diff --git a/progs/wgl/SConscript b/progs/wgl/SConscript index 31f61676de..248cc53a8d 100644 --- a/progs/wgl/SConscript +++ b/progs/wgl/SConscript @@ -1,25 +1,17 @@ Import('*') -if env['platform'] != 'windows': +if progs_env['platform'] != 'windows': Return() -env = env.Clone() - -env.Append(LIBS = [ - 'kernel32', - 'user32', - 'gdi32', -]) - progs = [ 'sharedtex_mt', 'wglthreads', ] for prog in progs: - env.Program( + progs_env.Program( target = prog, source = prog + '/' + prog + '.c', ) -env.Program('wglinfo', ['wglinfo.c']) +progs_env.Program('wglinfo', ['wglinfo.c']) diff --git a/src/glew/SConscript b/src/glew/SConscript index 1161be6e63..b4541a7c26 100644 --- a/src/glew/SConscript +++ b/src/glew/SConscript @@ -7,7 +7,7 @@ env = env.Clone() env.Append(CPPDEFINES = [ 'GLEW_BUILD', - 'GLEW_STATIC', + #'GLEW_STATIC', #'GLEW_MX', # Multiple Rendering Contexts support ]) @@ -15,15 +15,6 @@ env.PrependUnique(CPPPATH = [ '#/include', ]) -glew = env.StaticLibrary( - target = 'glew', - source = [ - 'glew.c', - ], -) - -env = env.Clone() - if env['platform'] == 'windows': env.PrependUnique(LIBS = [ 'glu32', @@ -37,6 +28,24 @@ else: 'GL', 'X11', ]) + +if env['platform'] == 'windows': + target = 'glew' +else: + target = 'GLEW' + +glew = env.SharedLibrary( + target = target, + source = [ + 'glew.c', + ], +) + +if env['platform'] == 'windows': + glew = env.FindIxes(glew, 'LIBPREFIX', 'LIBSUFFIX') + +env = env.Clone() + env.Prepend(LIBS = [glew]) env.Program( @@ -48,3 +57,5 @@ env.Program( target = 'visualinfo', source = ['visualinfo.c'], ) + +Export('glew') diff --git a/src/glut/glx/SConscript b/src/glut/glx/SConscript index 938fec03df..5234e6d58a 100644 --- a/src/glut/glx/SConscript +++ b/src/glut/glx/SConscript @@ -2,11 +2,6 @@ Import('*') env = env.Clone() -if env['platform'] != 'windows': - Return() - -target = 'glut32' - env.Replace(CPPDEFINES = [ 'BUILD_GLUT32', 'GLUT_BUILDING_LIB', @@ -18,14 +13,6 @@ env.AppendUnique(CPPPATH = [ '#/include', ]) -env.PrependUnique(LIBS = [ - 'winmm', - 'gdi32', - 'user32', - 'opengl32', - 'glu32', -]) - sources = [ 'glut_bitmap.c', 'glut_bwidth.c', @@ -61,12 +48,6 @@ sources = [ 'glut_warp.c', 'glut_win.c', 'glut_winmisc.c', - - 'win32_glx.c', - 'win32_menu.c', - 'win32_util.c', - 'win32_winproc.c', - 'win32_x11.c', 'glut_8x13.c', 'glut_9x15.c', @@ -77,11 +58,52 @@ sources = [ 'glut_roman.c', 'glut_tr10.c', 'glut_tr24.c', - - 'glut.def', ] -env.SharedLibrary( +if env['platform'] == 'windows': + env.PrependUnique(LIBS = [ + 'winmm', + 'gdi32', + 'user32', + 'opengl32', + 'glu32', + ]) + target = 'glut32' + sources += [ + 'win32_glx.c', + 'win32_menu.c', + 'win32_util.c', + 'win32_winproc.c', + 'win32_x11.c', + 'glut.def', + ] +else: + env.PrependUnique(LIBS = [ + 'GLU', + 'GL', + 'X11', + 'Xext', + 'Xmu', + 'Xi', + ]) + target = 'glut' + sources += [ + 'glut_fcb.c', + 'glut_menu.c', + 'glut_menu2.c', + 'glut_glxext.c', + 'layerutil.c', + ] + + +glut = env.SharedLibrary( target = target, source = sources, ) + +env.InstallSharedLibrary(glut, version=(3, 7, 1)) + +if env['platform'] == 'windows': + glut = env.FindIxes(glut, 'LIBPREFIX', 'LIBSUFFIX') + +Export('glut') -- cgit v1.2.3 From 01bf004d8bef298298621dc9e13b4119e3ced572 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Mon, 4 Jan 2010 12:47:37 -0700 Subject: docs: initial release notes for 7.7.1 --- docs/relnotes-7.7.1.html | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ docs/relnotes.html | 1 + 2 files changed, 49 insertions(+) create mode 100644 docs/relnotes-7.7.1.html (limited to 'docs') diff --git a/docs/relnotes-7.7.1.html b/docs/relnotes-7.7.1.html new file mode 100644 index 0000000000..61a1167574 --- /dev/null +++ b/docs/relnotes-7.7.1.html @@ -0,0 +1,48 @@ + + +Mesa Release Notes + + + + + + + +

    Mesa 7.7.1 Release Notes / date tbd

    + +

    +Mesa 7.7.1 is a bug-fix release. +

    +

    +Mesa 7.7.1 implements the OpenGL 2.1 API, but the version reported by +glGetString(GL_VERSION) depends on the particular driver being used. +Some drivers don't support all the features required in OpenGL 2.1. +

    +

    +See the Compiling/Installing page for prerequisites +for DRI hardware acceleration. +

    + + +

    MD5 checksums

    +
    +tbd
    +
    + + +

    New features

    +
      +
    • tbd +
    + + +

    Bug fixes

    +
      +
    • Assorted fixes to VMware SVGA gallium driver. +
    • Fixed broken blending to multiple color buffers in swrast driver. +
    • Allocate constants more tightly in GL_ARB_vertex/fragment parser. +
    + + + + diff --git a/docs/relnotes.html b/docs/relnotes.html index b301ee046a..b06548ae61 100644 --- a/docs/relnotes.html +++ b/docs/relnotes.html @@ -13,6 +13,7 @@ The release notes summarize what's new or changed in each Mesa release.

      +
    • 7.7.1 release notes
    • 7.7 release notes
    • 7.6.1 release notes
    • 7.6 release notes -- cgit v1.2.3 From 9089436930b9c18c670e0990ec34d097eec156ba Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Tue, 5 Jan 2010 16:03:11 -0700 Subject: docs: added link to wiki page about missing Mesa features --- docs/GL3.txt | 3 +++ 1 file changed, 3 insertions(+) (limited to 'docs') diff --git a/docs/GL3.txt b/docs/GL3.txt index f25459db48..8ca4e7b786 100644 --- a/docs/GL3.txt +++ b/docs/GL3.txt @@ -60,3 +60,6 @@ Frag depth clamp (GL_ARB_depth_clamp) DONE Fence objects (GL_ARB_sync) DONE + +More info about these features and the work involved can be found at +http://dri.freedesktop.org/wiki/MissingFunctionality -- cgit v1.2.3 From a6975507adb12e2147ede43224b2e21b4e7fc3ae Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Tue, 5 Jan 2010 21:25:56 -0700 Subject: docs: added more GL3 items --- docs/GL3.txt | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'docs') diff --git a/docs/GL3.txt b/docs/GL3.txt index 8ca4e7b786..df3fd74549 100644 --- a/docs/GL3.txt +++ b/docs/GL3.txt @@ -13,7 +13,7 @@ Feature Status GL 3.0: GLSL changes (GL_EXT_gpu_shader4, etc) not started -Conditional rendering (GL_NV_conditional_render) DONE (swrast only) +Conditional rendering (GL_NV_conditional_render) DONE (swrast & softpipe) Map buffer subranges (GL_APPLE_flush_buffer_range) not started Float textures, renderbuffers some infrastructure done Framebuffer objects (GL_EXT_framebuffer_object) DONE @@ -30,6 +30,10 @@ Vertex array objects (GL_APPLE_vertex_array_object) DONE sRGB framebuffer format (GL_EXT_framebuffer_sRGB) not started glClearBuffer commands DONE, except for dispatch glGetStringi command DONE, except for dispatch +glTexParameterI, glGetTexParameterI commands DONE, except for dispatch +glVertexAttribI commands not started +glBindFragDataLocation, glGetFragDataLocation cmds not started +glBindBufferRange, glBindBufferBase commands not started GL 3.1: -- cgit v1.2.3 From 73bd4000160663db8c0c1d5918984a5b9268e9a0 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Wed, 6 Jan 2010 18:19:42 -0700 Subject: docs: document a mipmap generation bug fix --- docs/relnotes-7.7.1.html | 1 + 1 file changed, 1 insertion(+) (limited to 'docs') diff --git a/docs/relnotes-7.7.1.html b/docs/relnotes-7.7.1.html index 61a1167574..ce9c68f10e 100644 --- a/docs/relnotes-7.7.1.html +++ b/docs/relnotes-7.7.1.html @@ -41,6 +41,7 @@ tbd
    • Assorted fixes to VMware SVGA gallium driver.
    • Fixed broken blending to multiple color buffers in swrast driver.
    • Allocate constants more tightly in GL_ARB_vertex/fragment parser. +
    • Fixed mipmap generation bug caused by invalid viewport state.
    -- cgit v1.2.3 From 5dd9e23d6204e6ec36468d4ae99e630c782c1cc9 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Thu, 7 Jan 2010 14:55:27 -0700 Subject: docs: document Gallium SSE codegen for XPD bug fix --- docs/relnotes-7.7.1.html | 1 + 1 file changed, 1 insertion(+) (limited to 'docs') diff --git a/docs/relnotes-7.7.1.html b/docs/relnotes-7.7.1.html index ce9c68f10e..b20c8a7724 100644 --- a/docs/relnotes-7.7.1.html +++ b/docs/relnotes-7.7.1.html @@ -42,6 +42,7 @@ tbd
  • Fixed broken blending to multiple color buffers in swrast driver.
  • Allocate constants more tightly in GL_ARB_vertex/fragment parser.
  • Fixed mipmap generation bug caused by invalid viewport state. +
  • Gallium SSE codegen for XPD didn't always work. -- cgit v1.2.3