The ARB_gpu_shader5 extension is made up of a lot of small sub-parts. Instead of adding PIPE_CAP's for each of these, just rely on the GLSL version reported by the pipe driver. The remaining extensions lend themselves naturally to being checked through a single CAP.
Signed-off-by: Ilia Mirkin <imir...@alum.mit.edu> --- The only issue will happen when GLSL 4.00 is supported for real and so we can't rely on the st to clamp it down to 330. (Although perhaps the mesa version limiting logic would kick in then as well?) The alternative is to add a ARB_GS5 cap, or a bunch of little ones for the sub-parts, but that doesn't seem too useful. src/mesa/state_tracker/st_extensions.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/mesa/state_tracker/st_extensions.c b/src/mesa/state_tracker/st_extensions.c index 7ac4840..51fd71a 100644 --- a/src/mesa/state_tracker/st_extensions.c +++ b/src/mesa/state_tracker/st_extensions.c @@ -826,4 +826,7 @@ void st_init_extensions(struct st_context *st) } if (ctx->Const.MaxProgramTextureGatherComponents > 0) ctx->Extensions.ARB_texture_gather = GL_TRUE; + + if (glsl_feature_level >= 400) + ctx->Extensions.ARB_gpu_shader5 = GL_TRUE; } -- 1.8.5.5 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev