Merge branch 'mesa_7_5_branch' into mesa_7_6_branch
This commit is contained in:
commit
5d526ed21a
|
@ -23,6 +23,7 @@ HOST_CC = $(CC)
|
||||||
CFLAGS = -O
|
CFLAGS = -O
|
||||||
CXXFLAGS = -O
|
CXXFLAGS = -O
|
||||||
LDFLAGS =
|
LDFLAGS =
|
||||||
|
HOST_CFLAGS = $(CFLAGS)
|
||||||
GLU_CFLAGS =
|
GLU_CFLAGS =
|
||||||
|
|
||||||
# Compiler for building demos/tests/etc
|
# Compiler for building demos/tests/etc
|
||||||
|
|
|
@ -1202,7 +1202,7 @@ if test "x$enable_gallium_radeon" = xyes; then
|
||||||
fi
|
fi
|
||||||
|
|
||||||
dnl
|
dnl
|
||||||
dnl Gallium Radeon configuration
|
dnl Gallium Nouveau configuration
|
||||||
dnl
|
dnl
|
||||||
AC_ARG_ENABLE([gallium-nouveau],
|
AC_ARG_ENABLE([gallium-nouveau],
|
||||||
[AS_HELP_STRING([--enable-gallium-nouveau],
|
[AS_HELP_STRING([--enable-gallium-nouveau],
|
||||||
|
|
|
@ -45,6 +45,8 @@ tbd
|
||||||
<ul>
|
<ul>
|
||||||
<li>Assorted bug fixes for i965/i945 drivers
|
<li>Assorted bug fixes for i965/i945 drivers
|
||||||
<li>Fixed Gallium glDrawPixels(GL_STENCIL_INDEX) failure.
|
<li>Fixed Gallium glDrawPixels(GL_STENCIL_INDEX) failure.
|
||||||
|
<li>Fixed GLSL linker/preprocessor version directive issue seen in Wine
|
||||||
|
(such as bug 23946)
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -119,6 +119,12 @@ static void Init( void )
|
||||||
glBindProgramARB(GL_VERTEX_PROGRAM_ARB, prognum);
|
glBindProgramARB(GL_VERTEX_PROGRAM_ARB, prognum);
|
||||||
glProgramStringARB(GL_VERTEX_PROGRAM_ARB, GL_PROGRAM_FORMAT_ASCII_ARB,
|
glProgramStringARB(GL_VERTEX_PROGRAM_ARB, GL_PROGRAM_FORMAT_ASCII_ARB,
|
||||||
sz, (const GLubyte *) buf);
|
sz, (const GLubyte *) buf);
|
||||||
|
if (glGetError()) {
|
||||||
|
printf("Program failed to compile:\n%s\n", buf);
|
||||||
|
printf("Error: %s\n",
|
||||||
|
(char *) glGetString(GL_PROGRAM_ERROR_STRING_ARB));
|
||||||
|
exit(1);
|
||||||
|
}
|
||||||
assert(glIsProgramARB(prognum));
|
assert(glIsProgramARB(prognum));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -70,7 +70,7 @@ validate_texture_wrap_mode(GLcontext * ctx, GLenum target, GLenum wrap)
|
||||||
return GL_TRUE;
|
return GL_TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
_mesa_error( ctx, GL_INVALID_VALUE, "glTexParameter(param=0x%x)", wrap );
|
_mesa_error( ctx, GL_INVALID_ENUM, "glTexParameter(param=0x%x)", wrap );
|
||||||
return GL_FALSE;
|
return GL_FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -210,7 +210,7 @@ set_tex_parameteri(GLcontext *ctx,
|
||||||
}
|
}
|
||||||
/* fall-through */
|
/* fall-through */
|
||||||
default:
|
default:
|
||||||
_mesa_error( ctx, GL_INVALID_VALUE, "glTexParameter(param=0x%x)",
|
_mesa_error( ctx, GL_INVALID_ENUM, "glTexParameter(param=0x%x)",
|
||||||
params[0] );
|
params[0] );
|
||||||
}
|
}
|
||||||
return GL_FALSE;
|
return GL_FALSE;
|
||||||
|
@ -225,7 +225,7 @@ set_tex_parameteri(GLcontext *ctx,
|
||||||
texObj->MagFilter = params[0];
|
texObj->MagFilter = params[0];
|
||||||
return GL_TRUE;
|
return GL_TRUE;
|
||||||
default:
|
default:
|
||||||
_mesa_error( ctx, GL_INVALID_VALUE, "glTexParameter(param=0x%x)",
|
_mesa_error( ctx, GL_INVALID_ENUM, "glTexParameter(param=0x%x)",
|
||||||
params[0]);
|
params[0]);
|
||||||
}
|
}
|
||||||
return GL_FALSE;
|
return GL_FALSE;
|
||||||
|
|
|
@ -1474,6 +1474,21 @@ _mesa_link_program(GLcontext *ctx, GLuint program)
|
||||||
FLUSH_VERTICES(ctx, _NEW_PROGRAM);
|
FLUSH_VERTICES(ctx, _NEW_PROGRAM);
|
||||||
|
|
||||||
_slang_link(ctx, program, shProg);
|
_slang_link(ctx, program, shProg);
|
||||||
|
|
||||||
|
/* debug code */
|
||||||
|
if (0) {
|
||||||
|
GLuint i;
|
||||||
|
|
||||||
|
_mesa_printf("Link %u shaders in program %u: %s\n",
|
||||||
|
shProg->NumShaders, shProg->Name,
|
||||||
|
shProg->LinkStatus ? "Success" : "Failed");
|
||||||
|
|
||||||
|
for (i = 0; i < shProg->NumShaders; i++) {
|
||||||
|
_mesa_printf(" shader %u, type 0x%x\n",
|
||||||
|
shProg->Shaders[i]->Name,
|
||||||
|
shProg->Shaders[i]->Type);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -546,6 +546,32 @@ _slang_update_inputs_outputs(struct gl_program *prog)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Remove extra #version directives from the concatenated source string.
|
||||||
|
* Disable the extra ones by converting first two chars to //, a comment.
|
||||||
|
* This is a bit of hack to work around a preprocessor bug that only
|
||||||
|
* allows one #version directive per source.
|
||||||
|
*/
|
||||||
|
static void
|
||||||
|
remove_extra_version_directives(GLchar *source)
|
||||||
|
{
|
||||||
|
GLuint verCount = 0;
|
||||||
|
while (1) {
|
||||||
|
char *ver = _mesa_strstr(source, "#version");
|
||||||
|
if (ver) {
|
||||||
|
verCount++;
|
||||||
|
if (verCount > 1) {
|
||||||
|
ver[0] = '/';
|
||||||
|
ver[1] = '/';
|
||||||
|
}
|
||||||
|
source += 8;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -593,6 +619,8 @@ concat_shaders(struct gl_shader_program *shProg, GLenum shaderType)
|
||||||
_mesa_printf("---NEW CONCATENATED SHADER---:\n%s\n------------\n", source);
|
_mesa_printf("---NEW CONCATENATED SHADER---:\n%s\n------------\n", source);
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
remove_extra_version_directives(source);
|
||||||
|
|
||||||
newShader = CALLOC_STRUCT(gl_shader);
|
newShader = CALLOC_STRUCT(gl_shader);
|
||||||
newShader->Type = shaderType;
|
newShader->Type = shaderType;
|
||||||
newShader->Source = source;
|
newShader->Source = source;
|
||||||
|
|
Loading…
Reference in New Issue