i965: Add a driconf option to force GLSL extension behavior to "warn".

This can be used to work around broken application behavior, like in
Unigine where it attempts to use texture arrays without declaring
either "#extension GL_EXT_texture_array : enable" or "#version 130".

NOTE: This is a candidate for the 8.0 branch.
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
(cherry picked from commit 642247883f)
This commit is contained in:
Eric Anholt 2012-01-25 14:13:13 -08:00 committed by Ian Romanick
parent 92d842c073
commit f723df005c
3 changed files with 14 additions and 1 deletions

View file

@ -626,3 +626,13 @@ DRI_CONF_OPT_BEGIN(always_flush_cache,bool,def) \
DRI_CONF_DESC(fr,"Enable flushing GPU caches with each draw call") \
DRI_CONF_DESC(sv,"Enable flushing GPU caches with each draw call") \
DRI_CONF_OPT_END
#define DRI_CONF_FORCE_GLSL_EXTENSIONS_WARN(def) \
DRI_CONF_OPT_BEGIN(force_glsl_extensions_warn,bool,def) \
DRI_CONF_DESC(en,"Force GLSL extension default behavior to 'warn'") \
DRI_CONF_DESC(de,"Force GLSL extension default behavior to 'warn'") \
DRI_CONF_DESC(es,"Force GLSL extension default behavior to 'warn'") \
DRI_CONF_DESC(nl,"Force GLSL extension default behavior to 'warn'") \
DRI_CONF_DESC(fr,"Force GLSL extension default behavior to 'warn'") \
DRI_CONF_DESC(sv,"Force GLSL extension default behavior to 'warn'") \
DRI_CONF_OPT_END

View file

@ -372,6 +372,8 @@ brwCreateContext(int api,
ctx->Const.NativeIntegers = true;
ctx->Const.UniformBooleanTrue = 1;
ctx->Const.ForceGLSLExtensionsWarn = driQueryOptionb(&intel->optionCache, "force_glsl_extensions_warn");
return true;
}

View file

@ -74,6 +74,7 @@ PUBLIC const char __driConfigOptions[] =
DRI_CONF_NO_RAST(false)
DRI_CONF_ALWAYS_FLUSH_BATCH(false)
DRI_CONF_ALWAYS_FLUSH_CACHE(false)
DRI_CONF_FORCE_GLSL_EXTENSIONS_WARN(false)
DRI_CONF_OPT_BEGIN(stub_occlusion_query, bool, false)
DRI_CONF_DESC(en, "Enable stub ARB_occlusion_query support on 915/945.")
@ -85,7 +86,7 @@ PUBLIC const char __driConfigOptions[] =
DRI_CONF_SECTION_END
DRI_CONF_END;
const GLuint __driNConfigOptions = 12;
const GLuint __driNConfigOptions = 13;
#include "intel_batchbuffer.h"
#include "intel_buffers.h"