[Xquartz-changes] mesa: Branch '7.8' - 11 commits

Jeremy Huddleston jeremyhu at freedesktop.org
Sat May 1 14:00:21 PDT 2010


 configs/linux-osmesa                   |    6 +++---
 configs/linux-osmesa16                 |    2 +-
 configs/linux-osmesa32                 |    2 +-
 progs/osdemos/Makefile                 |    2 +-
 progs/osdemos/ostest1.c                |    6 +++++-
 src/egl/drivers/dri2/egl_dri2.c        |    3 ++-
 src/glx/dri2_glx.c                     |    1 +
 src/glx/glxcmds.c                      |    8 ++++----
 src/mesa/drivers/common/meta.c         |   13 +++++++++----
 src/mesa/state_tracker/st_cb_texture.c |    5 ++++-
 src/mesa/state_tracker/st_gen_mipmap.c |    4 +++-
 11 files changed, 34 insertions(+), 18 deletions(-)

New commits:
commit 4d63be67f320839d115987211d0d9b4297f6d17d
Author: Jeremy Huddleston <jeremyhu at apple.com>
Date:   Sat May 1 13:59:30 2010 -0700

    darwin: Fix build
    
    This is a regression from e42d84eaba228d4d96a46d116c6ca24581e29439
    
    https://bugs.freedesktop.org/show_bug.cgi?id=27929
    
    Signed-off-by: Jeremy Huddleston <jeremyhu at apple.com>

diff --git a/src/glx/glxcmds.c b/src/glx/glxcmds.c
index b048297..9e4e194 100644
--- a/src/glx/glxcmds.c
+++ b/src/glx/glxcmds.c
@@ -887,9 +887,6 @@ glXCopyContext(Display * dpy, GLXContext source,
 static Bool
 __glXIsDirect(Display * dpy, GLXContextID contextID)
 {
-#ifdef GLX_USE_APPLEGL /* TODO: apple indirect */
-   return GC_IS_DIRECT(gc);
-#else
 #if !defined(USE_XCB)
    xGLXIsDirectReq *req;
    xGLXIsDirectReply reply;
@@ -925,7 +922,6 @@ __glXIsDirect(Display * dpy, GLXContextID contextID)
 
    return reply.isDirect;
 #endif /* USE_XCB */
-#endif /* GLX_USE_APPLEGL */
 }
 
 /**
@@ -943,7 +939,11 @@ glXIsDirect(Display * dpy, GLXContext gc)
    else if (GC_IS_DIRECT(gc)) {
       return GL_TRUE;
    }
+#ifdef GLX_USE_APPLEGL  /* TODO: indirect on darwin */
+      return GL_FALSE;
+#else
    return __glXIsDirect(dpy, gc->xid);
+#endif
 }
 
 PUBLIC GLXPixmap
commit 7b640f9f708306b3e8c661771f29bf24bf8687fb
Author: Brian Paul <brianp at vmware.com>
Date:   Wed Apr 28 10:06:05 2010 -0600

    st/mesa: fix incorrect RowStride computation
    
    Fixes incorrect stride when getting a compressed tex image.

diff --git a/src/mesa/state_tracker/st_cb_texture.c b/src/mesa/state_tracker/st_cb_texture.c
index 92eefca..61d3f0f 100644
--- a/src/mesa/state_tracker/st_cb_texture.c
+++ b/src/mesa/state_tracker/st_cb_texture.c
@@ -931,7 +931,10 @@ st_get_tex_image(GLcontext * ctx, GLenum target, GLint level,
                                             PIPE_TRANSFER_READ, 0, 0,
                                             stImage->base.Width,
                                             stImage->base.Height);
-      texImage->RowStride = stImage->transfer->stride / util_format_get_blocksize(stImage->pt->format);
+      /* compute stride in texels from stride in bytes */
+      texImage->RowStride = stImage->transfer->stride
+         * util_format_get_blockwidth(stImage->pt->format)
+         / util_format_get_blocksize(stImage->pt->format);
    }
    else {
       /* Otherwise, the image should actually be stored in
commit 56f99ee640772f71c1eac0388ba2d70935010e3e
Author: Brian Paul <brianp at vmware.com>
Date:   Wed Apr 28 10:05:00 2010 -0600

    st/mesa: fill in stImage->level in st_generate_mipmap()
    
    Before, this field was always zero for all the new mipmap levels.
    Fixes problems with glGetTexImage() from a generated mipmap.

diff --git a/src/mesa/state_tracker/st_gen_mipmap.c b/src/mesa/state_tracker/st_gen_mipmap.c
index f67d7b4..4a3e38d 100644
--- a/src/mesa/state_tracker/st_gen_mipmap.c
+++ b/src/mesa/state_tracker/st_gen_mipmap.c
@@ -297,7 +297,9 @@ st_generate_mipmap(GLcontext *ctx, GLenum target,
 
       dstImage->TexFormat = srcImage->TexFormat;
 
-      stImage = (struct st_texture_image *) dstImage;
+      stImage = st_texture_image(dstImage);
+      stImage->level = dstLevel;
+
       pipe_texture_reference(&stImage->pt, pt);
    }
 }
commit ef9a8fcb1b651b95c570fd3a46cdea4751d2b725
Author: Jakob Bornecrantz <jakob at vmware.com>
Date:   Wed Apr 28 16:19:41 2010 +0100

    glx: Fix build

diff --git a/src/glx/glxcmds.c b/src/glx/glxcmds.c
index e74ae34..b048297 100644
--- a/src/glx/glxcmds.c
+++ b/src/glx/glxcmds.c
@@ -887,7 +887,7 @@ glXCopyContext(Display * dpy, GLXContext source,
 static Bool
 __glXIsDirect(Display * dpy, GLXContextID contextID)
 {
-#ifndef GLX_USE_APPLEGL /* TODO: apple indirect */
+#ifdef GLX_USE_APPLEGL /* TODO: apple indirect */
    return GC_IS_DIRECT(gc);
 #else
 #if !defined(USE_XCB)
commit 9cfaaa291f9c69cfc24e8a9c0d7de47319e479ed
Author: Micah Fedke <M.Fedke at Astronautics.com>
Date:   Wed Apr 28 07:25:58 2010 -0600

    egl: dri2 driver error output
    
    This patch amends the error output string for the case where the
    dri2 egl driver could not open the dri dev node.
    
    Signed-off-by: Brian Paul <brianp at vmware.com>

diff --git a/src/egl/drivers/dri2/egl_dri2.c b/src/egl/drivers/dri2/egl_dri2.c
index 15b3529..2dfb70d 100644
--- a/src/egl/drivers/dri2/egl_dri2.c
+++ b/src/egl/drivers/dri2/egl_dri2.c
@@ -706,7 +706,8 @@ dri2_initialize(_EGLDriver *drv, _EGLDisplay *disp,
    dri2_dpy->fd = open(dri2_dpy->device_name, O_RDWR);
    if (dri2_dpy->fd == -1) {
       _eglLog(_EGL_FATAL,
-	      "DRI2: could not open %s (%s)", path, strerror(errno));
+	      "DRI2: could not open %s (%s)", dri2_dpy->device_name,
+              strerror(errno));
       goto cleanup_driver;
    }
 
commit eecd2a59c1205246cc220ab09a79988838bb1759
Author: Brian Paul <brianp at vmware.com>
Date:   Tue Apr 27 17:06:17 2010 -0600

    osmesa: update SRC_DIRS to fix build

diff --git a/configs/linux-osmesa b/configs/linux-osmesa
index c112642..3015f5f 100644
--- a/configs/linux-osmesa
+++ b/configs/linux-osmesa
@@ -9,7 +9,7 @@ CONFIG_NAME = linux-osmesa
 # Compiler and flags
 CC = gcc
 CXX = g++
-CFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -DPTHREADS
+CFLAGS = -g -ansi -pedantic -fPIC -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE -D_GNU_SOURCE -DPTHREADS
 CXXFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
 
 # Work around aliasing bugs - developers should comment this out
@@ -17,12 +17,12 @@ CFLAGS += -fno-strict-aliasing
 CXXFLAGS += -fno-strict-aliasing
 
 # Directories
-SRC_DIRS = gallium mesa glu
+SRC_DIRS = glsl mesa glu
 DRIVER_DIRS = osmesa
 PROGRAM_DIRS = osdemos
 
 
 # Dependencies
-OSMESA_LIB_DEPS = -lm -lpthread
+OSMESA_LIB_DEPS = -lm -lpthread -ldl
 GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(OSMESA_LIB)
 APP_LIB_DEPS = -lm -lpthread
diff --git a/configs/linux-osmesa16 b/configs/linux-osmesa16
index b3c8da0..090ca27 100644
--- a/configs/linux-osmesa16
+++ b/configs/linux-osmesa16
@@ -20,7 +20,7 @@ OSMESA_LIB_NAME = libOSMesa16.so
 
 
 # Directories
-SRC_DIRS = gallium mesa glu
+SRC_DIRS = glsl mesa glu
 DRIVER_DIRS = osmesa
 PROGRAM_DIRS = 
 
diff --git a/configs/linux-osmesa32 b/configs/linux-osmesa32
index 5804ef8..63de7f9 100644
--- a/configs/linux-osmesa32
+++ b/configs/linux-osmesa32
@@ -20,7 +20,7 @@ OSMESA_LIB_NAME = libOSMesa32.so
 
 
 # Directories
-SRC_DIRS = gallium mesa glu
+SRC_DIRS = glsl mesa glu
 DRIVER_DIRS = osmesa
 PROGRAM_DIRS = 
 
commit 29fc97606b13edb20fd1fc5351a066ba85968c77
Author: Brian Paul <brianp at vmware.com>
Date:   Tue Apr 27 17:05:56 2010 -0600

    osdemos: replace assertion with error handler

diff --git a/progs/osdemos/ostest1.c b/progs/osdemos/ostest1.c
index 000b8c4..5a00fdb 100644
--- a/progs/osdemos/ostest1.c
+++ b/progs/osdemos/ostest1.c
@@ -399,7 +399,11 @@ test(GLenum type, GLint bits, const char *filename)
 
    /* sanity checks */
    glGetIntegerv(GL_RED_BITS, &cBits);
-   assert(cBits == bits);
+   if (cBits != bits) {
+      fprintf(stderr, "Unable to create %d-bit/channel renderbuffer.\n", bits);
+      fprintf(stderr, "May need to recompile Mesa with CHAN_BITS=16 or 32.\n");
+      return 0;
+   }
    glGetIntegerv(GL_GREEN_BITS, &cBits);
    assert(cBits == bits);
    glGetIntegerv(GL_BLUE_BITS, &cBits);
commit c5bf13c537e55ef04deec8226924cf9ab17d9538
Author: Brian Paul <brianp at vmware.com>
Date:   Tue Apr 27 16:57:42 2010 -0600

    osmesa: don't need to link with -lGL
    
    The gl entrypoints are in libOSMesa.so

diff --git a/progs/osdemos/Makefile b/progs/osdemos/Makefile
index f53515c..2a0f208 100644
--- a/progs/osdemos/Makefile
+++ b/progs/osdemos/Makefile
@@ -5,7 +5,7 @@ include $(TOP)/configs/current
 
 INCDIR = $(TOP)/include
 
-OSMESA_LIBS = -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) -l$(OSMESA_LIB) $(APP_LIB_DEPS)
+OSMESA_LIBS = -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(OSMESA_LIB) $(APP_LIB_DEPS)
 
 OSMESA16_LIBS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -lOSMesa16 -l$(GLU_LIB) \
 	-l$(GL_LIB) $(APP_LIB_DEPS)
commit c0b41116f1e7e8e7ebe5e0bc5b790ae7842f09d4
Author: Pierre Willenbrock <pierre at pirsoft.de>
Date:   Tue Apr 27 14:16:49 2010 -0700

    mesa: Disable scissor when begining meta operations
    
    Signed-off-by: Brian Paul <brianp at vmware.com>

diff --git a/src/mesa/drivers/common/meta.c b/src/mesa/drivers/common/meta.c
index d0b5cb5..3d2183c 100644
--- a/src/mesa/drivers/common/meta.c
+++ b/src/mesa/drivers/common/meta.c
@@ -424,6 +424,7 @@ _mesa_meta_begin(GLcontext *ctx, GLbitfield state)
 
    if (state & META_SCISSOR) {
       save->Scissor = ctx->Scissor; /* struct copy */
+      _mesa_set_enable(ctx, GL_SCISSOR_TEST, GL_FALSE);
    }
 
    if (state & META_SHADER) {
commit 717e86738f82d5c7d7de39fbd85734febfd4c66a
Author: Pierre Willenbrock <pierre at pirsoft.de>
Date:   Tue Apr 27 14:16:48 2010 -0700

    mesa: Don't set srcLevel on GL_TEXTURE_RECTANGLE_ARB targets
    
    Signed-off-by: Brian Paul <brianp at vmware.com>

diff --git a/src/mesa/drivers/common/meta.c b/src/mesa/drivers/common/meta.c
index b97b760..d0b5cb5 100644
--- a/src/mesa/drivers/common/meta.c
+++ b/src/mesa/drivers/common/meta.c
@@ -1112,8 +1112,10 @@ blitframebuffer_texture(GLcontext *ctx,
          _mesa_BindTexture(target, texObj->Name);
          _mesa_TexParameteri(target, GL_TEXTURE_MIN_FILTER, filter);
          _mesa_TexParameteri(target, GL_TEXTURE_MAG_FILTER, filter);
-         _mesa_TexParameteri(target, GL_TEXTURE_BASE_LEVEL, srcLevel);
-         _mesa_TexParameteri(target, GL_TEXTURE_MAX_LEVEL, srcLevel);
+         if (target != GL_TEXTURE_RECTANGLE_ARB) {
+            _mesa_TexParameteri(target, GL_TEXTURE_BASE_LEVEL, srcLevel);
+            _mesa_TexParameteri(target, GL_TEXTURE_MAX_LEVEL, srcLevel);
+         }
          _mesa_TexParameteri(target, GL_TEXTURE_WRAP_S, GL_CLAMP_TO_EDGE);
          _mesa_TexParameteri(target, GL_TEXTURE_WRAP_T, GL_CLAMP_TO_EDGE);
          _mesa_TexEnvi(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_REPLACE);
@@ -1171,8 +1173,10 @@ blitframebuffer_texture(GLcontext *ctx,
           */
          _mesa_TexParameteri(target, GL_TEXTURE_MIN_FILTER, minFilterSave);
          _mesa_TexParameteri(target, GL_TEXTURE_MAG_FILTER, magFilterSave);
-         _mesa_TexParameteri(target, GL_TEXTURE_BASE_LEVEL, baseLevelSave);
-         _mesa_TexParameteri(target, GL_TEXTURE_MAX_LEVEL, maxLevelSave);
+         if (target != GL_TEXTURE_RECTANGLE_ARB) {
+            _mesa_TexParameteri(target, GL_TEXTURE_BASE_LEVEL, baseLevelSave);
+            _mesa_TexParameteri(target, GL_TEXTURE_MAX_LEVEL, maxLevelSave);
+         }
          _mesa_TexParameteri(target, GL_TEXTURE_WRAP_S, wrapSSave);
          _mesa_TexParameteri(target, GL_TEXTURE_WRAP_T, wrapTSave);
 
commit cc806f70b2749dd9013491f43f442f5b1fe7cc7f
Author: Pierre Willenbrok <pierre at pirsoft.de>
Date:   Tue Apr 27 15:53:28 2010 -0600

    glx: Initialize have_back.
    
    Signed-off-by: Brian Paul <brianp at vmware.com>

diff --git a/src/glx/dri2_glx.c b/src/glx/dri2_glx.c
index 86b0a27..1c34448 100644
--- a/src/glx/dri2_glx.c
+++ b/src/glx/dri2_glx.c
@@ -188,6 +188,7 @@ dri2CreateDrawable(__GLXscreenConfigs * psc,
    pdraw->base.psc = psc;
    pdraw->bufferCount = 0;
    pdraw->swap_interval = 1;
+   pdraw->have_back = 0;
 
    DRI2CreateDrawable(psc->dpy, xDrawable);
 


More information about the Xquartz-changes mailing list