summaryrefslogtreecommitdiffstats
path: root/glsl_parser_extras.cpp
diff options
context:
space:
mode:
authorIan Romanick <[email protected]>2010-04-07 16:59:46 -0700
committerIan Romanick <[email protected]>2010-04-07 16:59:46 -0700
commitc77b257094b15e7c53b62cb50bfbcd7c5003f2a8 (patch)
tree84eb97b6fbdef4528a309c93ea95ad7f3c7eadcb /glsl_parser_extras.cpp
parent887a8b07deffa578b7d6540257a0c5f8c4d5d97c (diff)
Add support for GL_ARB_draw_buffers extension
Diffstat (limited to 'glsl_parser_extras.cpp')
-rw-r--r--glsl_parser_extras.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/glsl_parser_extras.cpp b/glsl_parser_extras.cpp
index 6cd69c8b882..553cd675a7a 100644
--- a/glsl_parser_extras.cpp
+++ b/glsl_parser_extras.cpp
@@ -126,6 +126,15 @@ _mesa_glsl_process_extension(const char *name, YYLTYPE *name_locp,
? "enable" : "require");
return false;
}
+ } if (strcmp(name, "GL_ARB_draw_buffers") == 0) {
+ /* This extension is only supported in fragment shaders.
+ */
+ if (state->target != fragment_shader) {
+ unsupported = true;
+ } else {
+ state->ARB_draw_buffers_enable = (ext_mode != extension_disable);
+ state->ARB_draw_buffers_warn = (ext_mode == extension_warn);
+ }
} else {
unsupported = true;
}