From: Ian Romanick <[email protected]> I thought I had this in my previous series, but I cannot find any trace of it. Prevents a regression in tests/spec/glsl-es-3.10/minimum-maximums.txt after GL_OES_geometry_shader is enabled. It also fixes tests/spec/oes_geometry_shader/minimum-maximums.txt
v2: Add extension enables to the passthrough shader too. Signed-off-by: Ian Romanick <[email protected]> --- tests/shaders/built-in-constants.c | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/tests/shaders/built-in-constants.c b/tests/shaders/built-in-constants.c index 41d0a99..5791c7c 100644 --- a/tests/shaders/built-in-constants.c +++ b/tests/shaders/built-in-constants.c @@ -462,6 +462,17 @@ piglit_init(int argc, char **argv) } else if (glsl_version < required_glsl_version) piglit_report_result(PIGLIT_SKIP); + /* Geometry shaders must use the #extension directive in GLSL ES + * before version 3.20. + */ + if (es_shader && required_glsl_version < 320 && + piglit_is_extension_supported("GL_OES_geometry_shader")) { + assert(num_required_extensions < ARRAY_SIZE(required_extensions)); + required_extensions[num_required_extensions] = + strdup("GL_OES_geometry_shader"); + num_required_extensions++; + } + /* Tessellation shaders must use the #extension directive. */ const char *const tess_ext_name = es_shader ? "GL_OES_tessellation_shader" @@ -522,10 +533,12 @@ piglit_init(int argc, char **argv) (void)!asprintf(&passthrough_version_string, "#version %s\n" + "%s" "#ifdef GL_ES\n" "precision mediump float;\n" "#endif\n", - required_glsl_version_string); + required_glsl_version_string, + extension_enables); /* Create the shaders that will be used for the real part of the test. -- 2.5.5 _______________________________________________ Piglit mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/piglit
