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".
---
 src/mesa/drivers/dri/common/xmlpool/options.h |   10 ++++++++++
 src/mesa/drivers/dri/i965/brw_context.c       |    2 ++
 src/mesa/drivers/dri/intel/intel_screen.c     |    3 ++-
 3 files changed, 14 insertions(+), 1 deletions(-)

diff --git a/src/mesa/drivers/dri/common/xmlpool/options.h 
b/src/mesa/drivers/dri/common/xmlpool/options.h
index 1e584ba..a5890af 100644
--- a/src/mesa/drivers/dri/common/xmlpool/options.h
+++ b/src/mesa/drivers/dri/common/xmlpool/options.h
@@ -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
diff --git a/src/mesa/drivers/dri/i965/brw_context.c 
b/src/mesa/drivers/dri/i965/brw_context.c
index 87ea1a5..1ab6310 100644
--- a/src/mesa/drivers/dri/i965/brw_context.c
+++ b/src/mesa/drivers/dri/i965/brw_context.c
@@ -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;
 }
 
diff --git a/src/mesa/drivers/dri/intel/intel_screen.c 
b/src/mesa/drivers/dri/intel/intel_screen.c
index 1c50830..063bbe7 100644
--- a/src/mesa/drivers/dri/intel/intel_screen.c
+++ b/src/mesa/drivers/dri/intel/intel_screen.c
@@ -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"
-- 
1.7.7.3

_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to