summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDave Airlie <airlied@fedoraproject.org>2008-01-01 05:46:09 +0000
committerDave Airlie <airlied@fedoraproject.org>2008-01-01 05:46:09 +0000
commitb7db2fa2de9adae6671305f55076cb54df75986e (patch)
treee01965e39637b8cbd52acad21ca5a9cb1f26a355
parentf25fd6b543ccc7a3812d9f8162fd0df368bbbd4c (diff)
downloadmesa-b7db2fa2de9adae6671305f55076cb54df75986e.tar.gz
mesa-b7db2fa2de9adae6671305f55076cb54df75986e.tar.xz
mesa-b7db2fa2de9adae6671305f55076cb54df75986e.zip
- update to Mesa 7.0.2 finalmesa-7_0_2-1_fc8
- mesa-7.0.2-rx00-vertprog-num-temps-off-by-one.patch - fixes for maniadrive - mesa-7.0.2-t_vp_build-use-less-temps.patch - fixes for maniadrive
-rw-r--r--.cvsignore2
-rw-r--r--mesa-7.0-build-config.patch102
-rw-r--r--mesa-7.0-selinux-awareness.patch63
-rw-r--r--mesa-7.0.2-rx00-vertprog-num-temps-off-by-one.patch44
-rw-r--r--mesa-7.0.2-t_vp_build-use-less-temps.patch81
-rw-r--r--mesa.spec15
-rw-r--r--sources4
7 files changed, 187 insertions, 124 deletions
diff --git a/.cvsignore b/.cvsignore
index 5bf1add..4b94f13 100644
--- a/.cvsignore
+++ b/.cvsignore
@@ -1,3 +1,5 @@
MesaLib-7.0.1.tar.bz2
MesaDemos-7.0.1.tar.bz2
gl-manpages-1.0.1.tar.bz2
+MesaDemos-7.0.2.tar.bz2
+MesaLib-7.0.2.tar.bz2
diff --git a/mesa-7.0-build-config.patch b/mesa-7.0-build-config.patch
index 0dc466e..728b128 100644
--- a/mesa-7.0-build-config.patch
+++ b/mesa-7.0-build-config.patch
@@ -1,6 +1,6 @@
-diff -up mesa-20070725/configs/linux.build-config mesa-20070725/configs/linux
---- mesa-20070725/configs/linux.build-config 2007-07-25 09:36:03.000000000 -0400
-+++ mesa-20070725/configs/linux 2007-07-25 10:33:03.000000000 -0400
+diff -up Mesa-7.0.2/configs/linux.da Mesa-7.0.2/configs/linux
+--- Mesa-7.0.2/configs/linux.da 2007-11-02 05:09:01.000000000 +1000
++++ Mesa-7.0.2/configs/linux 2008-01-02 02:24:07.000000000 +1000
@@ -8,7 +8,9 @@ CONFIG_NAME = linux
CC = gcc
CXX = g++
@@ -12,9 +12,9 @@ diff -up mesa-20070725/configs/linux.build-config mesa-20070725/configs/linux
PIC_FLAGS = -fPIC
# Add '-DGLX_USE_TLS' to ARCH_FLAGS to enable TLS support. Add -m32
-diff -up mesa-20070725/configs/linux-indirect.build-config mesa-20070725/configs/linux-indirect
---- mesa-20070725/configs/linux-indirect.build-config 2007-07-25 09:36:03.000000000 -0400
-+++ mesa-20070725/configs/linux-indirect 2007-07-25 10:34:40.000000000 -0400
+diff -up Mesa-7.0.2/configs/linux-indirect.da Mesa-7.0.2/configs/linux-indirect
+--- Mesa-7.0.2/configs/linux-indirect.da 2007-11-02 05:09:01.000000000 +1000
++++ Mesa-7.0.2/configs/linux-indirect 2008-01-02 02:24:07.000000000 +1000
@@ -15,7 +15,7 @@ CXX = g++
#MKDEP_OPTIONS = -MF depend
@@ -24,7 +24,7 @@ diff -up mesa-20070725/configs/linux-indirect.build-config mesa-20070725/configs
PIC_FLAGS = -fPIC
# Add '-DGLX_USE_TLS' to ARCH_FLAGS to enable TLS support.
-@@ -44,7 +44,7 @@ GL_LIB_DEPS = $(EXTRA_LIB_PATH) -lX11
+@@ -47,7 +47,7 @@ GL_LIB_DEPS = $(EXTRA_LIB_PATH) -lX11
# Directories
@@ -33,9 +33,9 @@ diff -up mesa-20070725/configs/linux-indirect.build-config mesa-20070725/configs
DRIVER_DIRS =
PROGRAM_DIRS =
WINDOW_SYSTEM=dri
-diff -up mesa-20070725/configs/linux-dri.build-config mesa-20070725/configs/linux-dri
---- mesa-20070725/configs/linux-dri.build-config 2007-07-25 09:36:03.000000000 -0400
-+++ mesa-20070725/configs/linux-dri 2007-07-25 10:34:31.000000000 -0400
+diff -up Mesa-7.0.2/configs/linux-dri.da Mesa-7.0.2/configs/linux-dri
+--- Mesa-7.0.2/configs/linux-dri.da 2007-11-02 05:09:01.000000000 +1000
++++ Mesa-7.0.2/configs/linux-dri 2008-01-02 02:24:07.000000000 +1000
@@ -12,8 +12,9 @@ CXX = g++
#MKDEP = /usr/X11R6/bin/makedepend
#MKDEP = gcc -M
@@ -56,7 +56,7 @@ diff -up mesa-20070725/configs/linux-dri.build-config mesa-20070725/configs/linu
CFLAGS = -Wall -Wmissing-prototypes -std=c99 -ffast-math \
$(OPT_FLAGS) $(PIC_FLAGS) $(ARCH_FLAGS) $(DEFINES) $(ASM_FLAGS)
-@@ -36,7 +35,7 @@ CXXFLAGS = -Wall $(OPT_FLAGS) $(PIC_FLAG
+@@ -41,7 +40,7 @@ CXXFLAGS += -fno-strict-aliasing
ASM_SOURCES =
# Library/program dependencies
@@ -65,41 +65,29 @@ diff -up mesa-20070725/configs/linux-dri.build-config mesa-20070725/configs/linu
LIBDRM_CFLAGS = `pkg-config --cflags libdrm`
LIBDRM_LIB = `pkg-config --libs libdrm`
-@@ -54,10 +53,10 @@ USING_EGL=0
+@@ -59,10 +58,10 @@ USING_EGL=0
# Directories
ifeq ($(USING_EGL), 1)
-SRC_DIRS = egl glx/x11 mesa glu glut/glx glw
+SRC_DIRS = egl glx/x11 mesa glu glut/glx
- PROGRAM_DIRS = egl
+ PROGRAM_DIRS = egl xdemos
else
-SRC_DIRS = glx/x11 mesa glu glut/glx glw
+SRC_DIRS = glx/x11 mesa glu
- PROGRAM_DIRS =
+ PROGRAM_DIRS = xdemos
endif
-@@ -67,4 +66,4 @@ WINDOW_SYSTEM=dri
+@@ -72,4 +71,4 @@ WINDOW_SYSTEM=dri
# gamma are missing because they have not been converted to use the new
# interface.
DRI_DIRS = i810 i915tex i915 i965 mach64 mga r128 r200 r300 radeon s3v \
- savage sis tdfx trident unichrome ffb
+ savage tdfx trident unichrome ffb # sis
-diff -up mesa-20070725/configs/linux-dri-x86.build-config mesa-20070725/configs/linux-dri-x86
---- mesa-20070725/configs/linux-dri-x86.build-config 2007-07-25 09:36:03.000000000 -0400
-+++ mesa-20070725/configs/linux-dri-x86 2007-07-25 10:33:03.000000000 -0400
-@@ -6,7 +6,7 @@ include $(TOP)/configs/linux-dri
- CONFIG_NAME = linux-dri-x86
-
- # Unnecessary on x86, generally.
--PIC_FLAGS =
-+# PIC_FLAGS =
-
- # Add -m32 to CFLAGS:
- ARCH_FLAGS = -m32
-diff -up mesa-20070725/configs/default.build-config mesa-20070725/configs/default
---- mesa-20070725/configs/default.build-config 2007-07-25 09:36:03.000000000 -0400
-+++ mesa-20070725/configs/default 2007-07-25 10:34:20.000000000 -0400
-@@ -58,8 +58,8 @@ GLW_SOURCES = GLwDrawA.c
+diff -up Mesa-7.0.2/configs/default.da Mesa-7.0.2/configs/default
+--- Mesa-7.0.2/configs/default.da 2007-11-02 01:30:52.000000000 +1000
++++ Mesa-7.0.2/configs/default 2008-01-02 02:25:54.000000000 +1000
+@@ -59,8 +59,8 @@ GLW_SOURCES = GLwDrawA.c
# Directories to build
@@ -110,15 +98,16 @@ diff -up mesa-20070725/configs/default.build-config mesa-20070725/configs/defaul
GLU_DIRS = sgi
DRIVER_DIRS = x11 osmesa
# Which subdirs under $(TOP)/progs/ to enter:
-@@ -72,14 +72,14 @@ GL_LIB_DEPS = $(EXTRA_LIB_PATH) -lX11 -l
+@@ -73,7 +73,7 @@ GL_LIB_DEPS = $(EXTRA_LIB_PATH) -lX11 -l
OSMESA_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB)
GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -lm
GLUT_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) $(EXTRA_LIB_PATH) -lX11 -lXmu -lXt -lXi -lm
-GLW_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) $(EXTRA_LIB_PATH) -lXt -lX11
+GLW_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GL_LIB) -lXm $(EXTRA_LIB_PATH) -lXt -lX11
- APP_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm
-
+ # Program dependencies - specific GL/glut libraries added in Makefiles
+ APP_LIB_DEPS = -lm
+@@ -82,7 +82,7 @@ APP_LIB_DEPS = -lm
# Installation directories (for make install)
INSTALL_DIR = /usr/local
@@ -127,9 +116,9 @@ diff -up mesa-20070725/configs/default.build-config mesa-20070725/configs/defaul
# Where libGL will look for DRI hardware drivers
DRI_DRIVER_SEARCH_DIR = $(DRI_DRIVER_INSTALL_DIR)
-diff -up mesa-20070725/configs/linux-dri-ppc.build-config mesa-20070725/configs/linux-dri-ppc
---- mesa-20070725/configs/linux-dri-ppc.build-config 2007-07-25 09:36:03.000000000 -0400
-+++ mesa-20070725/configs/linux-dri-ppc 2007-07-25 10:33:03.000000000 -0400
+diff -up Mesa-7.0.2/configs/linux-dri-ppc.da Mesa-7.0.2/configs/linux-dri-ppc
+--- Mesa-7.0.2/configs/linux-dri-ppc.da 2007-06-22 08:10:53.000000000 +1000
++++ Mesa-7.0.2/configs/linux-dri-ppc 2008-01-02 02:24:07.000000000 +1000
@@ -5,7 +5,7 @@ include $(TOP)/configs/linux-dri
CONFIG_NAME = linux-dri-ppc
@@ -139,9 +128,9 @@ diff -up mesa-20070725/configs/linux-dri-ppc.build-config mesa-20070725/configs/
PIC_FLAGS = -fPIC
ASM_FLAGS = -DUSE_PPC_ASM -DUSE_VMX_ASM
-diff -up mesa-20070725/configs/linux-osmesa16.build-config mesa-20070725/configs/linux-osmesa16
---- mesa-20070725/configs/linux-osmesa16.build-config 2007-07-25 09:36:03.000000000 -0400
-+++ mesa-20070725/configs/linux-osmesa16 2007-07-25 10:33:03.000000000 -0400
+diff -up Mesa-7.0.2/configs/linux-osmesa16.da Mesa-7.0.2/configs/linux-osmesa16
+--- Mesa-7.0.2/configs/linux-osmesa16.da 2007-11-02 05:09:01.000000000 +1000
++++ Mesa-7.0.2/configs/linux-osmesa16 2008-01-02 02:24:07.000000000 +1000
@@ -7,8 +7,10 @@ CONFIG_NAME = linux-osmesa16
# Compiler and flags
CC = gcc
@@ -153,9 +142,9 @@ diff -up mesa-20070725/configs/linux-osmesa16.build-config mesa-20070725/configs
+CFLAGS = $(OPT_FLAGS) $(DEFINES) -DCHAN_BITS=16 -DDEFAULT_SOFTWARE_DEPTH_BITS=31
+CXXFLAGS = $(OPT_FLAGS) $(DEFINES)
-
- # Library names
-@@ -17,12 +19,12 @@ OSMESA_LIB_NAME = libOSMesa16.so
+ # Work around aliasing bugs - developers should comment this out
+ CFLAGS += -fno-strict-aliasing
+@@ -20,12 +22,12 @@ OSMESA_LIB_NAME = libOSMesa16.so
# Directories
@@ -170,9 +159,9 @@ diff -up mesa-20070725/configs/linux-osmesa16.build-config mesa-20070725/configs
+OSMESA_LIB_DEPS = -lm -lpthread -lselinux
GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(OSMESA_LIB)
APP_LIB_DEPS = -lOSMesa16
-diff -up mesa-20070725/configs/linux-osmesa32.build-config mesa-20070725/configs/linux-osmesa32
---- mesa-20070725/configs/linux-osmesa32.build-config 2007-07-25 09:36:03.000000000 -0400
-+++ mesa-20070725/configs/linux-osmesa32 2007-07-25 10:33:03.000000000 -0400
+diff -up Mesa-7.0.2/configs/linux-osmesa32.da Mesa-7.0.2/configs/linux-osmesa32
+--- Mesa-7.0.2/configs/linux-osmesa32.da 2007-11-02 05:09:01.000000000 +1000
++++ Mesa-7.0.2/configs/linux-osmesa32 2008-01-02 02:24:07.000000000 +1000
@@ -7,8 +7,10 @@ CONFIG_NAME = linux-osmesa32
# Compiler and flags
CC = gcc
@@ -184,9 +173,9 @@ diff -up mesa-20070725/configs/linux-osmesa32.build-config mesa-20070725/configs
+CFLAGS = $(OPT_FLAGS) $(DEFINES) -DCHAN_BITS=32 -DDEFAULT_SOFTWARE_DEPTH_BITS=31
+CXXFLAGS = $(OPT_FLAGS) $(DEFINES)
-
- # Library names
-@@ -17,12 +19,12 @@ OSMESA_LIB_NAME = libOSMesa32.so
+ # Work around aliasing bugs - developers should comment this out
+ CFLAGS += -fno-strict-aliasing
+@@ -20,12 +22,12 @@ OSMESA_LIB_NAME = libOSMesa32.so
# Directories
@@ -201,20 +190,23 @@ diff -up mesa-20070725/configs/linux-osmesa32.build-config mesa-20070725/configs
+OSMESA_LIB_DEPS = -lm -lpthread -lselinux
GLU_LIB_DEPS = -L$(TOP)/$(LIB_DIR) -l$(OSMESA_LIB)
APP_LIB_DEPS = -lOSMesa32
-diff -up mesa-20070725/configs/linux-osmesa.build-config mesa-20070725/configs/linux-osmesa
---- mesa-20070725/configs/linux-osmesa.build-config 2007-07-25 09:36:03.000000000 -0400
-+++ mesa-20070725/configs/linux-osmesa 2007-07-25 10:33:03.000000000 -0400
-@@ -9,17 +9,18 @@ CONFIG_NAME = linux-osmesa
+diff -up Mesa-7.0.2/configs/linux-osmesa.da Mesa-7.0.2/configs/linux-osmesa
+--- Mesa-7.0.2/configs/linux-osmesa.da 2007-11-02 05:09:01.000000000 +1000
++++ Mesa-7.0.2/configs/linux-osmesa 2008-01-02 02:27:46.000000000 +1000
+@@ -9,20 +9,22 @@ 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
-CXXFLAGS = -O3 -ansi -pedantic -fPIC -ffast-math -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
--
+DEFINES = -D_POSIX_SOURCE -D_POSIX_C_SOURCE=199309L -D_SVID_SOURCE -D_BSD_SOURCE
+OPT_FLAGS ?= -O3 -ansi -pendantic -fPIC -ffast-math
+CFLAGS = $(OPT_FLAGS) $(DEFINES)
-+CXXFLAGS = $(OPT_FLAGS) $(DEFINES)
++CXXFLAGS = $(OPT_FLAGS) $(DEFINES)
+
+ # Work around aliasing bugs - developers should comment this out
+ CFLAGS += -fno-strict-aliasing
+ CXXFLAGS += -fno-strict-aliasing
# Directories
-SRC_DIRS = mesa glu
diff --git a/mesa-7.0-selinux-awareness.patch b/mesa-7.0-selinux-awareness.patch
index dcce752..c25a15c 100644
--- a/mesa-7.0-selinux-awareness.patch
+++ b/mesa-7.0-selinux-awareness.patch
@@ -1,66 +1,3 @@
-diff -up Mesa-7.0/src/mesa/tnl/t_vertex_sse.c.jx Mesa-7.0/src/mesa/tnl/t_vertex_sse.c
---- Mesa-7.0/src/mesa/tnl/t_vertex_sse.c.jx 2007-06-21 18:10:54.000000000 -0400
-+++ Mesa-7.0/src/mesa/tnl/t_vertex_sse.c 2007-07-23 15:59:26.000000000 -0400
-@@ -348,7 +348,8 @@ static GLboolean build_vertex_emit( stru
- struct x86_reg vp1 = x86_make_reg(file_XMM, 2);
- GLubyte *fixup, *label;
-
-- x86_init_func(&p->func);
-+ if (!x86_init_func(&p->func))
-+ return GL_FALSE;
-
- /* Push a few regs?
- */
-@@ -646,7 +647,10 @@ void _tnl_generate_sse_emit( GLcontext *
- p.identity = x86_make_reg(file_XMM, 6);
- p.chan0 = x86_make_reg(file_XMM, 7);
-
-- x86_init_func(&p.func);
-+ if (!x86_init_func(&p.func)) {
-+ vtx->codegen_emit = NULL;
-+ return;
-+ }
-
- if (build_vertex_emit(&p)) {
- _tnl_register_fastpath( vtx, GL_TRUE );
-diff -up Mesa-7.0/src/mesa/x86/rtasm/x86sse.h.jx Mesa-7.0/src/mesa/x86/rtasm/x86sse.h
---- Mesa-7.0/src/mesa/x86/rtasm/x86sse.h.jx 2007-06-21 18:10:55.000000000 -0400
-+++ Mesa-7.0/src/mesa/x86/rtasm/x86sse.h 2007-07-23 15:59:23.000000000 -0400
-@@ -80,8 +80,8 @@ enum sse_cc {
- */
-
-
--void x86_init_func( struct x86_function *p );
--void x86_init_func_size( struct x86_function *p, GLuint code_size );
-+int x86_init_func( struct x86_function *p );
-+int x86_init_func_size( struct x86_function *p, GLuint code_size );
- void x86_release_func( struct x86_function *p );
- void (*x86_get_func( struct x86_function *p ))( void );
-
-diff -up Mesa-7.0/src/mesa/x86/rtasm/x86sse.c.jx Mesa-7.0/src/mesa/x86/rtasm/x86sse.c
---- Mesa-7.0/src/mesa/x86/rtasm/x86sse.c.jx 2007-06-21 18:10:55.000000000 -0400
-+++ Mesa-7.0/src/mesa/x86/rtasm/x86sse.c 2007-07-23 15:59:23.000000000 -0400
-@@ -1063,15 +1063,17 @@ struct x86_reg x86_fn_arg( struct x86_fu
- }
-
-
--void x86_init_func( struct x86_function *p )
-+int x86_init_func( struct x86_function *p )
- {
-- x86_init_func_size(p, 1024);
-+ return x86_init_func_size(p, 1024);
- }
-
--void x86_init_func_size( struct x86_function *p, GLuint code_size )
-+int x86_init_func_size( struct x86_function *p, GLuint code_size )
- {
- p->store = _mesa_exec_malloc(code_size);
- p->csr = p->store;
-+
-+ return (p->store != NULL);
- }
-
- void x86_release_func( struct x86_function *p )
diff -up Mesa-7.0/src/mesa/main/execmem.c.jx Mesa-7.0/src/mesa/main/execmem.c
--- Mesa-7.0/src/mesa/main/execmem.c.jx 2007-06-21 18:10:54.000000000 -0400
+++ Mesa-7.0/src/mesa/main/execmem.c 2007-07-23 16:02:30.000000000 -0400
diff --git a/mesa-7.0.2-rx00-vertprog-num-temps-off-by-one.patch b/mesa-7.0.2-rx00-vertprog-num-temps-off-by-one.patch
new file mode 100644
index 0000000..d078ffa
--- /dev/null
+++ b/mesa-7.0.2-rx00-vertprog-num-temps-off-by-one.patch
@@ -0,0 +1,44 @@
+--- Mesa-7.0.2/src/mesa/drivers/dri/r200/r200_vertprog.c~ 2007-12-28 22:41:51.000000000 +0100
++++ Mesa-7.0.2/src/mesa/drivers/dri/r200/r200_vertprog.c 2007-12-28 22:41:51.000000000 +0100
+@@ -408,6 +408,7 @@ static GLboolean r200_translate_vertex_p
+ int fog_temp_i = 0;
+ int free_inputs;
+ int array_count = 0;
++ int u_temp_used;
+
+ vp->native = GL_FALSE;
+ vp->translated = GL_TRUE;
+@@ -1051,14 +1052,15 @@ else {
+ dofogfix = 0;
+ }
+
++ u_temp_used = (R200_VSF_MAX_TEMPS - 1) - u_temp_i;
+ if (mesa_vp->Base.NumNativeTemporaries <
+- (mesa_vp->Base.NumTemporaries + (R200_VSF_MAX_TEMPS - 1 - u_temp_i))) {
++ (mesa_vp->Base.NumTemporaries + u_temp_used)) {
+ mesa_vp->Base.NumNativeTemporaries =
+- mesa_vp->Base.NumTemporaries + (R200_VSF_MAX_TEMPS - 1 - u_temp_i);
++ mesa_vp->Base.NumTemporaries + u_temp_used;
+ }
+- if (u_temp_i < mesa_vp->Base.NumTemporaries) {
++ if ((mesa_vp->Base.NumTemporaries + u_temp_used) > R200_VSF_MAX_TEMPS) {
+ if (R200_DEBUG & DEBUG_FALLBACKS) {
+- fprintf(stderr, "Ran out of temps, num temps %d, us %d\n", mesa_vp->Base.NumTemporaries, u_temp_i);
++ fprintf(stderr, "Ran out of temps, num temps %d, us %d\n", mesa_vp->Base.NumTemporaries, u_temp_used);
+ }
+ return GL_FALSE;
+ }
+--- Mesa-7.0.2/src/mesa/drivers/dri/r300/r300_vertprog.c~ 2007-12-28 22:42:19.000000000 +0100
++++ Mesa-7.0.2/src/mesa/drivers/dri/r300/r300_vertprog.c 2007-12-28 22:42:19.000000000 +0100
+@@ -101,8 +101,9 @@ USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+ #define FREE_TEMPS() \
+ do { \
+- if(u_temp_i < vp->num_temporaries) { \
+- WARN_ONCE("Ran out of temps, num temps %d, us %d\n", vp->num_temporaries, u_temp_i); \
++ int u_temp_used = (VSF_MAX_FRAGMENT_TEMPS - 1) - u_temp_i; \
++ if((vp->num_temporaries + u_temp_used) > VSF_MAX_FRAGMENT_TEMPS) { \
++ WARN_ONCE("Ran out of temps, num temps %d, us %d\n", vp->num_temporaries, u_temp_used); \
+ vp->native = GL_FALSE; \
+ } \
+ u_temp_i=VSF_MAX_FRAGMENT_TEMPS-1; \
diff --git a/mesa-7.0.2-t_vp_build-use-less-temps.patch b/mesa-7.0.2-t_vp_build-use-less-temps.patch
new file mode 100644
index 0000000..1909471
--- /dev/null
+++ b/mesa-7.0.2-t_vp_build-use-less-temps.patch
@@ -0,0 +1,81 @@
+--- Mesa-7.0.2/src/mesa/tnl/t_vp_build.c 2007-10-23 18:52:25.000000000 +0200
++++ Mesa-7.0.2.new/src/mesa/tnl/t_vp_build.c 2007-12-28 20:36:50.000000000 +0100
+@@ -890,7 +890,6 @@
+ {
+ struct ureg shininess = get_material(p, 0, STATE_SHININESS);
+ emit_op1(p, OPCODE_MOV, dots, WRITEMASK_W, swizzle1(shininess,X));
+- release_temp(p, shininess);
+
+ _col0 = make_temp(p, get_scenecolor(p, 0));
+ if (separate)
+@@ -904,7 +903,6 @@
+ struct ureg shininess = get_material(p, 1, STATE_SHININESS);
+ emit_op1(p, OPCODE_MOV, dots, WRITEMASK_Z,
+ negate(swizzle1(shininess,X)));
+- release_temp(p, shininess);
+
+ _bfc0 = make_temp(p, get_scenecolor(p, 1));
+ if (separate)
+@@ -972,7 +970,6 @@
+ struct ureg tmpPpli = get_temp(p);
+
+ VPpli = get_temp(p);
+- half = get_temp(p);
+
+ /* In homogeneous object coordinates
+ */
+@@ -983,6 +980,9 @@
+ */
+ emit_op2(p, OPCODE_SUB, VPpli, 0, tmpPpli, V);
+
++ /* we're done with tmpPpli now */
++ release_temp(p, tmpPpli);
++
+ /* Normalize VPpli. The dist value also used in
+ * attenuation below.
+ */
+@@ -997,10 +997,14 @@
+ p->state->unit[i].light_attenuated) {
+ att = calculate_light_attenuation(p, i, VPpli, dist);
+ }
++
++ /* We're done with dist now */
++ release_temp(p, dist);
+
+
+ /* Calculate viewer direction, or use infinite viewer:
+ */
++ half = get_temp(p);
+ if (p->state->light_local_viewer) {
+ struct ureg eye_hat = get_eye_position_normalized(p);
+ emit_op2(p, OPCODE_SUB, half, 0, VPpli, eye_hat);
+@@ -1011,9 +1015,6 @@
+ }
+
+ emit_normalize_vec3(p, half, half);
+-
+- release_temp(p, dist);
+- release_temp(p, tmpPpli);
+ }
+
+ /* Calculate dot products:
+@@ -1021,6 +1022,10 @@
+ emit_op2(p, OPCODE_DP3, dots, WRITEMASK_X, normal, VPpli);
+ emit_op2(p, OPCODE_DP3, dots, WRITEMASK_Y, normal, half);
+
++ /* we're done with VPpli and half now, so free them as to not drive up
++ our temp usage unnecessary */
++ release_temp(p, VPpli);
++ release_temp(p, half);
+
+ /* Front face lighting:
+ */
+@@ -1109,8 +1114,6 @@
+ release_temp(p, specular);
+ }
+
+- release_temp(p, half);
+- release_temp(p, VPpli);
+ release_temp(p, att);
+ }
+ }
diff --git a/mesa.spec b/mesa.spec
index 6cdfd99..6ebeed7 100644
--- a/mesa.spec
+++ b/mesa.spec
@@ -31,8 +31,8 @@
Summary: Mesa graphics libraries
Name: mesa
-Version: 7.0.1
-Release: 7%{?dist}
+Version: 7.0.2
+Release: 1%{?dist}
License: MIT
Group: System Environment/Libraries
URL: http://www.mesa3d.org
@@ -52,6 +52,8 @@ Patch26: mesa-7.0.1-stable-branch.patch
Patch27: mesa-7.0-use_master-r300.patch
Patch28: mesa-7.0.1-r300-fix-writemask.patch
Patch29: mesa-7.0.1-r200-settexoffset.patch
+Patch30: mesa-7.0.2-rx00-vertprog-num-temps-off-by-one.patch
+Patch31: mesa-7.0.2-t_vp_build-use-less-temps.patch
BuildRequires: pkgconfig
%if %{with_dri}
@@ -179,10 +181,10 @@ chmod a-x progs/demos/glslnoise.c
%patch18 -p1 -b .selinux-awareness
%patch23 -p1 -b .bindcontext
%patch25 -p1 -b .makej
-%patch26 -p1 -b .stable
%patch27 -p1 -b .r300
%patch28 -p1 -b .r300-writemask
-%patch29 -p1 -b .r200-settexoffset
+%patch30 -p1 -b .rx00-fix-vp
+%patch31 -p1 -b .vp-temp-fix
# WARNING: The following files are copyright "Mark J. Kilgard" under the GLUT
# license and are not open source/free software, so we remove them.
@@ -412,6 +414,11 @@ rm -rf $RPM_BUILD_ROOT
%{_libdir}/mesa-demos-data
%changelog
+* Tue Jan 01 2008 Dave Airlie <airlied@redhat.com> 7.0.2-1
+- update to Mesa 7.0.2 final
+- mesa-7.0.2-rx00-vertprog-num-temps-off-by-one.patch - fixes for maniadrive
+- mesa-7.0.2-t_vp_build-use-less-temps.patch - fixes for maniadrive
+
* Thu Oct 18 2007 Dave Airlie <airlied@redhat.com> 7.0.1-7
- mesa-7.0.1-stable-branch.patch - Updated with more fixes from stable
- mesa-7.0.1-r300-fix-writemask.patch - fix r300 fragprog writemask
diff --git a/sources b/sources
index e5f1a90..74c6002 100644
--- a/sources
+++ b/sources
@@ -1,3 +1,3 @@
-c056abd763e899114bf745c9eedbf9ad MesaLib-7.0.1.tar.bz2
-3b66b3268df12ca8a6c4e0c4c457912c MesaDemos-7.0.1.tar.bz2
6ae05158e678f4594343f32c2ca50515 gl-manpages-1.0.1.tar.bz2
+11a10410bae7be85cf25bc7119966468 MesaDemos-7.0.2.tar.bz2
+93e6ed7924ff069a4f883b4fce5349dc MesaLib-7.0.2.tar.bz2