summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIan Romanick <ian.d.romanick@intel.com>2019-03-08 17:25:05 -0800
committerIan Romanick <ian.d.romanick@intel.com>2022-05-31 07:34:31 -0700
commit8c4b978eca5798f362d1a405504c9d88067777a3 (patch)
treeb55592353101c3aaa0549beed259ac56bb80a1f8
parentfb27a7ce4cdf8700c37f7962f27f16d7c58cc26f (diff)
Fix many incorrect GLSL checks
piglit_require_GLSL() only checks that shader objects and the shading language exist. It does *NOT* check that any particular shader stage exists. It is perfectly valid to have an OpenGL 1.5 implementation that has only vertex shaders or only fragment shaders. piglit_require_GLSL_version(110) and piglit_require_GLSL_version(120) have the same failings as piglit_require_GLSL() and more. GLSL 1.10 is the minimum GLSL version that actually exists, so anything that has GLSL has version 1.10. GLSL 1.20 can be exposed by any implementation, so checking that version doesn't guarantee anything either. GLSL 1.30 implicitly requires OpenGL 3.0, so that is a strong check. All of the non-shader drivers in Mesa advertise shader objects and GLSL 1.20 and NEITHER vertex nor fragment stages. This fixes these tests to just skip on those drivers. Reviewed-by: David Heidelberg <david.heidelberg@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/piglit/-/merge_requests/686>
-rw-r--r--tests/fast_color_clear/read-after-clear.c3
-rw-r--r--tests/fast_color_clear/read-to-pbo-after-clear.c3
-rw-r--r--tests/general/getactiveattrib.c2
-rw-r--r--tests/shaders/glsl-bug-22603.c3
-rw-r--r--tests/shaders/glsl-cache-fallback-shader-source.c3
-rw-r--r--tests/shaders/glsl-fs-color-matrix.c3
-rw-r--r--tests/shaders/glsl-getactiveuniform-count.c4
-rw-r--r--tests/shaders/version-mixing.c5
-rw-r--r--tests/spec/arb_draw_elements_base_vertex/drawelements-instanced.c3
-rw-r--r--tests/spec/arb_instanced_arrays/instanced_arrays.c3
-rw-r--r--tests/spec/arb_pipeline_statistics_query/pipeline_stats_frag.c3
-rw-r--r--tests/spec/arb_sampler_objects/sampler-incomplete.c2
-rw-r--r--tests/spec/arb_shader_texture_lod/execution/texgrad.c2
-rw-r--r--tests/spec/arb_shader_texture_lod/execution/texgradcube.c2
-rw-r--r--tests/spec/arb_transform_feedback2/api-queries.c2
-rw-r--r--tests/spec/arb_transform_feedback2/cannot-bind-when-active.c2
-rw-r--r--tests/spec/arb_transform_feedback2/draw-auto.c2
-rw-r--r--tests/spec/arb_transform_feedback2/istransformfeedback.c1
-rw-r--r--tests/spec/arb_transform_feedback2/pause-counting.c2
-rw-r--r--tests/spec/arb_vertex_buffer_object/mixed-immediate-and-vbo.c2
-rw-r--r--tests/spec/ext_transform_feedback/api-errors.c2
-rw-r--r--tests/spec/ext_transform_feedback/builtin-varyings.c1
-rw-r--r--tests/spec/ext_transform_feedback/generatemipmap.c2
-rw-r--r--tests/spec/ext_transform_feedback/immediate-reuse.c3
-rw-r--r--tests/spec/ext_transform_feedback/interleaved.c2
-rw-r--r--tests/spec/ext_transform_feedback/intervening-read.c7
-rw-r--r--tests/spec/ext_transform_feedback/output-type.c6
-rw-r--r--tests/spec/ext_transform_feedback/overflow-edge-cases.c2
-rw-r--r--tests/spec/ext_transform_feedback/pipeline-basic-primgen.c2
-rw-r--r--tests/spec/ext_transform_feedback/points.c2
-rw-r--r--tests/spec/ext_transform_feedback/position.c2
-rw-r--r--tests/spec/ext_transform_feedback/primgen.c2
-rw-r--r--tests/spec/ext_transform_feedback/separate.c2
-rw-r--r--tests/spec/glsl-1.10/execution/clipping/clip-plane-transformation.c3
-rw-r--r--tests/spec/glsl-1.10/execution/glsl-render-after-bad-attach.c3
-rw-r--r--tests/spec/glsl-1.20/getactiveuniform-constant.c2
-rw-r--r--tests/spec/nv_primitive_restart/primitive-restart-draw-mode.c2
-rw-r--r--tests/spec/nv_texture_barrier/blending-in-shader.c2
-rw-r--r--tests/texturing/cubemap-shader.c1
-rw-r--r--tests/texturing/incomplete-texture.c2
-rw-r--r--tests/texturing/tex-upside-down-miptree.c2
-rw-r--r--tests/texturing/texsubimage.c5
-rw-r--r--tests/texturing/zero-tex-coord.c3
43 files changed, 72 insertions, 40 deletions
diff --git a/tests/fast_color_clear/read-after-clear.c b/tests/fast_color_clear/read-after-clear.c
index 390d5b7c0..52b33ef82 100644
--- a/tests/fast_color_clear/read-after-clear.c
+++ b/tests/fast_color_clear/read-after-clear.c
@@ -164,7 +164,8 @@ piglit_init(int argc, char **argv)
/* Requirements */
piglit_require_gl_version(11);
- piglit_require_GLSL_version(110);
+ piglit_require_vertex_shader();
+ piglit_require_fragment_shader();
piglit_require_extension("GL_ARB_framebuffer_object");
/* Compile shaders */
diff --git a/tests/fast_color_clear/read-to-pbo-after-clear.c b/tests/fast_color_clear/read-to-pbo-after-clear.c
index 87de9f3b9..2540d6f3f 100644
--- a/tests/fast_color_clear/read-to-pbo-after-clear.c
+++ b/tests/fast_color_clear/read-to-pbo-after-clear.c
@@ -80,7 +80,8 @@ piglit_init(int argc, char **argv)
/* Requirements */
piglit_require_gl_version(11);
- piglit_require_GLSL_version(110);
+ piglit_require_vertex_shader();
+ piglit_require_fragment_shader();
piglit_require_extension("GL_ARB_pixel_buffer_object");
/* Compile shaders */
diff --git a/tests/general/getactiveattrib.c b/tests/general/getactiveattrib.c
index 81c665743..0e73f4a3d 100644
--- a/tests/general/getactiveattrib.c
+++ b/tests/general/getactiveattrib.c
@@ -543,6 +543,8 @@ void piglit_init(int argc, char **argv)
usage_and_fail(argv[0]);
}
+ piglit_require_vertex_shader();
+
for (i = 1; i < argc; i++) {
if (strcmp("110", argv[i]) == 0) {
pass = do_test(glsl110_tests,
diff --git a/tests/shaders/glsl-bug-22603.c b/tests/shaders/glsl-bug-22603.c
index 74aeb7be5..8f995aa64 100644
--- a/tests/shaders/glsl-bug-22603.c
+++ b/tests/shaders/glsl-bug-22603.c
@@ -200,7 +200,8 @@ piglit_init(int argc, char **argv)
"}";
piglit_require_extension("GL_EXT_framebuffer_object");
- piglit_require_GLSL();
+ piglit_require_vertex_shader();
+ piglit_require_fragment_shader();
vs = piglit_compile_shader_text(GL_VERTEX_SHADER, vs_source);
fs = piglit_compile_shader_text(GL_FRAGMENT_SHADER, fs_source);
diff --git a/tests/shaders/glsl-cache-fallback-shader-source.c b/tests/shaders/glsl-cache-fallback-shader-source.c
index 5b7d26897..b367c5a64 100644
--- a/tests/shaders/glsl-cache-fallback-shader-source.c
+++ b/tests/shaders/glsl-cache-fallback-shader-source.c
@@ -173,7 +173,8 @@ piglit_display(void)
void
piglit_init(int argc, char **argv)
{
- piglit_require_GLSL();
+ piglit_require_vertex_shader();
+ piglit_require_fragment_shader();
vs = glCreateShaderObjectARB(GL_VERTEX_SHADER_ARB);
fs = glCreateShaderObjectARB(GL_FRAGMENT_SHADER_ARB);
diff --git a/tests/shaders/glsl-fs-color-matrix.c b/tests/shaders/glsl-fs-color-matrix.c
index 3b149932b..888ea3083 100644
--- a/tests/shaders/glsl-fs-color-matrix.c
+++ b/tests/shaders/glsl-fs-color-matrix.c
@@ -131,7 +131,8 @@ piglit_init(int argc, char **argv)
GLint loc;
GLboolean ok;
- piglit_require_GLSL();
+ piglit_require_vertex_shader();
+ piglit_require_fragment_shader();
vs = piglit_compile_shader_text(GL_VERTEX_SHADER, vs_text);
fs = piglit_compile_shader_text(GL_FRAGMENT_SHADER, fs_text);
diff --git a/tests/shaders/glsl-getactiveuniform-count.c b/tests/shaders/glsl-getactiveuniform-count.c
index 418b23364..9d5adbb05 100644
--- a/tests/shaders/glsl-getactiveuniform-count.c
+++ b/tests/shaders/glsl-getactiveuniform-count.c
@@ -65,7 +65,9 @@ piglit_init(int argc, char **argv)
expect = (int) strtol(argv[2], NULL, 0);
- piglit_require_GLSL();
+ piglit_require_vertex_shader();
+ piglit_require_fragment_shader();
+
vs = piglit_compile_shader(GL_VERTEX_SHADER, argv[1]);
fs = piglit_compile_shader(GL_FRAGMENT_SHADER,
"shaders/glsl-color.frag");
diff --git a/tests/shaders/version-mixing.c b/tests/shaders/version-mixing.c
index b4f7199b0..f24d06257 100644
--- a/tests/shaders/version-mixing.c
+++ b/tests/shaders/version-mixing.c
@@ -307,7 +307,10 @@ piglit_init(int argc, char **argv)
bool pass = true;
int max_glsl_version;
- piglit_require_GLSL();
+ piglit_require_vertex_shader();
+ if (test_type != test_type_intrastage)
+ piglit_require_fragment_shader();
+
max_glsl_version = get_max_glsl_version();
for (i = 0; i < ARRAY_SIZE(all_glsl_versions); i++) {
diff --git a/tests/spec/arb_draw_elements_base_vertex/drawelements-instanced.c b/tests/spec/arb_draw_elements_base_vertex/drawelements-instanced.c
index 5d134b792..46d175e3d 100644
--- a/tests/spec/arb_draw_elements_base_vertex/drawelements-instanced.c
+++ b/tests/spec/arb_draw_elements_base_vertex/drawelements-instanced.c
@@ -86,7 +86,8 @@ piglit_init(int argc, char **argv)
}
}
- piglit_require_GLSL();
+ piglit_require_vertex_shader();
+ piglit_require_fragment_shader();
if (!user_va)
piglit_require_extension("GL_ARB_vertex_buffer_object");
piglit_require_extension("GL_ARB_draw_instanced");
diff --git a/tests/spec/arb_instanced_arrays/instanced_arrays.c b/tests/spec/arb_instanced_arrays/instanced_arrays.c
index b28a58940..a9260b5db 100644
--- a/tests/spec/arb_instanced_arrays/instanced_arrays.c
+++ b/tests/spec/arb_instanced_arrays/instanced_arrays.c
@@ -197,7 +197,8 @@ piglit_display(void)
void
piglit_init(int argc, char **argv)
{
- piglit_require_GLSL();
+ piglit_require_vertex_shader();
+ piglit_require_fragment_shader();
piglit_require_extension("GL_ARB_instanced_arrays");
Program = piglit_build_simple_program(VertShaderText, FragShaderText);
diff --git a/tests/spec/arb_pipeline_statistics_query/pipeline_stats_frag.c b/tests/spec/arb_pipeline_statistics_query/pipeline_stats_frag.c
index 159536f77..a2cd444be 100644
--- a/tests/spec/arb_pipeline_statistics_query/pipeline_stats_frag.c
+++ b/tests/spec/arb_pipeline_statistics_query/pipeline_stats_frag.c
@@ -102,7 +102,8 @@ piglit_init(int argc, char *argv[])
GLuint prog;
piglit_require_gl_version(11);
- piglit_require_GLSL();
+ piglit_require_vertex_shader();
+ piglit_require_fragment_shader();
do_query_init(queries, ARRAY_SIZE(queries));
diff --git a/tests/spec/arb_sampler_objects/sampler-incomplete.c b/tests/spec/arb_sampler_objects/sampler-incomplete.c
index d357c2bab..bf16e2fb8 100644
--- a/tests/spec/arb_sampler_objects/sampler-incomplete.c
+++ b/tests/spec/arb_sampler_objects/sampler-incomplete.c
@@ -137,7 +137,7 @@ piglit_display(void)
void
piglit_init(int argc, char**argv)
{
- piglit_require_GLSL();
piglit_require_extension("GL_ARB_sampler_objects");
+ piglit_require_fragment_shader();
setup();
}
diff --git a/tests/spec/arb_shader_texture_lod/execution/texgrad.c b/tests/spec/arb_shader_texture_lod/execution/texgrad.c
index f8ba2844c..1390dcff0 100644
--- a/tests/spec/arb_shader_texture_lod/execution/texgrad.c
+++ b/tests/spec/arb_shader_texture_lod/execution/texgrad.c
@@ -81,7 +81,7 @@ void piglit_init(int argc, char **argv)
GLenum status;
int i, dim;
- piglit_require_GLSL();
+ piglit_require_fragment_shader();
piglit_require_extension("GL_EXT_framebuffer_object");
piglit_require_extension("GL_ARB_shader_texture_lod");
diff --git a/tests/spec/arb_shader_texture_lod/execution/texgradcube.c b/tests/spec/arb_shader_texture_lod/execution/texgradcube.c
index d0ed36e01..7d2e6c07c 100644
--- a/tests/spec/arb_shader_texture_lod/execution/texgradcube.c
+++ b/tests/spec/arb_shader_texture_lod/execution/texgradcube.c
@@ -80,7 +80,7 @@ void piglit_init(int argc, char **argv)
GLenum status;
int i, j, dim;
- piglit_require_GLSL();
+ piglit_require_fragment_shader();
piglit_require_extension("GL_EXT_framebuffer_object");
piglit_require_extension("GL_ARB_shader_texture_lod");
diff --git a/tests/spec/arb_transform_feedback2/api-queries.c b/tests/spec/arb_transform_feedback2/api-queries.c
index b2147d54f..03b39e124 100644
--- a/tests/spec/arb_transform_feedback2/api-queries.c
+++ b/tests/spec/arb_transform_feedback2/api-queries.c
@@ -98,8 +98,8 @@ void piglit_init(int argc, char **argv)
const char *varyings[] = {"x"};
bool pass = true;
+ piglit_require_vertex_shader();
piglit_require_transform_feedback();
- piglit_require_GLSL();
piglit_require_extension("GL_ARB_transform_feedback2");
pass = check_int(GL_TRANSFORM_FEEDBACK_BINDING, 0) && pass;
diff --git a/tests/spec/arb_transform_feedback2/cannot-bind-when-active.c b/tests/spec/arb_transform_feedback2/cannot-bind-when-active.c
index 754b48dac..5fa2d8062 100644
--- a/tests/spec/arb_transform_feedback2/cannot-bind-when-active.c
+++ b/tests/spec/arb_transform_feedback2/cannot-bind-when-active.c
@@ -60,8 +60,8 @@ void piglit_init(int argc, char **argv)
bool pass = true;
static const char *varyings[] = {"x"};
+ piglit_require_vertex_shader();
piglit_require_transform_feedback();
- piglit_require_GLSL();
piglit_require_extension("GL_ARB_transform_feedback2");
/* This is all just the boot-strap work for the test.
diff --git a/tests/spec/arb_transform_feedback2/draw-auto.c b/tests/spec/arb_transform_feedback2/draw-auto.c
index 856d29975..ccf409313 100644
--- a/tests/spec/arb_transform_feedback2/draw-auto.c
+++ b/tests/spec/arb_transform_feedback2/draw-auto.c
@@ -78,7 +78,7 @@ void piglit_init(int argc, char **argv)
/* Check the driver. */
piglit_require_gl_version(15);
- piglit_require_GLSL();
+ piglit_require_vertex_shader();
piglit_require_extension("GL_EXT_transform_feedback");
piglit_require_extension("GL_ARB_transform_feedback2");
if (instanced)
diff --git a/tests/spec/arb_transform_feedback2/istransformfeedback.c b/tests/spec/arb_transform_feedback2/istransformfeedback.c
index c1d8c217e..bd53e1894 100644
--- a/tests/spec/arb_transform_feedback2/istransformfeedback.c
+++ b/tests/spec/arb_transform_feedback2/istransformfeedback.c
@@ -67,7 +67,6 @@ piglit_init(int argc, char **argv)
GLuint id;
piglit_require_gl_version(15);
- piglit_require_GLSL();
piglit_require_extension("GL_EXT_transform_feedback");
piglit_require_extension("GL_ARB_transform_feedback2");
diff --git a/tests/spec/arb_transform_feedback2/pause-counting.c b/tests/spec/arb_transform_feedback2/pause-counting.c
index 947cc7412..99b55f2ce 100644
--- a/tests/spec/arb_transform_feedback2/pause-counting.c
+++ b/tests/spec/arb_transform_feedback2/pause-counting.c
@@ -64,8 +64,8 @@ void piglit_init(int argc, char **argv)
GLuint generated;
GLuint written;
+ piglit_require_vertex_shader();
piglit_require_transform_feedback();
- piglit_require_GLSL();
piglit_require_extension("GL_ARB_transform_feedback2");
/* This is all just the boot-strap work for the test.
diff --git a/tests/spec/arb_vertex_buffer_object/mixed-immediate-and-vbo.c b/tests/spec/arb_vertex_buffer_object/mixed-immediate-and-vbo.c
index 0e65b1bb4..5f43942ab 100644
--- a/tests/spec/arb_vertex_buffer_object/mixed-immediate-and-vbo.c
+++ b/tests/spec/arb_vertex_buffer_object/mixed-immediate-and-vbo.c
@@ -47,7 +47,7 @@ void
piglit_init(int argc, char **argv)
{
piglit_require_extension("GL_ARB_vertex_buffer_object");
- piglit_require_GLSL();
+ piglit_require_vertex_shader();
}
const char *vs_source = {
diff --git a/tests/spec/ext_transform_feedback/api-errors.c b/tests/spec/ext_transform_feedback/api-errors.c
index 0bbcd66e2..b5437776c 100644
--- a/tests/spec/ext_transform_feedback/api-errors.c
+++ b/tests/spec/ext_transform_feedback/api-errors.c
@@ -448,7 +448,7 @@ piglit_init(int argc, char **argv)
print_usage_and_exit(argv[0]);
test = find_matching_test(argv[0], argv[1]);
- piglit_require_GLSL();
+ piglit_require_vertex_shader();
piglit_require_transform_feedback();
if (test->bind_mode == OFFSET) {
/* BindBufferOffset only exists in the EXT specification */
diff --git a/tests/spec/ext_transform_feedback/builtin-varyings.c b/tests/spec/ext_transform_feedback/builtin-varyings.c
index 1413a5bf3..29d84fe96 100644
--- a/tests/spec/ext_transform_feedback/builtin-varyings.c
+++ b/tests/spec/ext_transform_feedback/builtin-varyings.c
@@ -478,6 +478,7 @@ piglit_init(int argc, char **argv)
test_to_run = find_matching_test(argv[0], argv[1]);
/* Set up test */
+ piglit_require_vertex_shader();
piglit_require_GLSL_version(test_to_run->version);
piglit_require_transform_feedback();
vs = piglit_compile_shader_text(GL_VERTEX_SHADER, test_to_run->vs);
diff --git a/tests/spec/ext_transform_feedback/generatemipmap.c b/tests/spec/ext_transform_feedback/generatemipmap.c
index dfd394670..37f0ac749 100644
--- a/tests/spec/ext_transform_feedback/generatemipmap.c
+++ b/tests/spec/ext_transform_feedback/generatemipmap.c
@@ -285,7 +285,7 @@ void piglit_init(int argc, char **argv)
if (buffer || prims_written) {
GLuint vs;
- piglit_require_GLSL();
+ piglit_require_vertex_shader();
vs = piglit_compile_shader_text(GL_VERTEX_SHADER, vstext);
xfb_prog = glCreateProgram();
glAttachShader(xfb_prog, vs);
diff --git a/tests/spec/ext_transform_feedback/immediate-reuse.c b/tests/spec/ext_transform_feedback/immediate-reuse.c
index 8d8b0693b..c4289bbd9 100644
--- a/tests/spec/ext_transform_feedback/immediate-reuse.c
+++ b/tests/spec/ext_transform_feedback/immediate-reuse.c
@@ -82,7 +82,8 @@ piglit_init(int argc, char **argv)
{
GLuint vs, fs;
- piglit_require_GLSL();
+ piglit_require_vertex_shader();
+ piglit_require_fragment_shader();
piglit_require_transform_feedback();
vs = piglit_compile_shader_text(GL_VERTEX_SHADER, vstext);
diff --git a/tests/spec/ext_transform_feedback/interleaved.c b/tests/spec/ext_transform_feedback/interleaved.c
index 0d237d7e0..292f90096 100644
--- a/tests/spec/ext_transform_feedback/interleaved.c
+++ b/tests/spec/ext_transform_feedback/interleaved.c
@@ -66,7 +66,7 @@ void piglit_init(int argc, char **argv)
/* Check the driver. */
piglit_require_gl_version(15);
- piglit_require_GLSL();
+ piglit_require_vertex_shader();
piglit_require_transform_feedback();
glGetIntegerv(GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS_EXT, &maxcomps);
diff --git a/tests/spec/ext_transform_feedback/intervening-read.c b/tests/spec/ext_transform_feedback/intervening-read.c
index 7b8417f08..ef622b70f 100644
--- a/tests/spec/ext_transform_feedback/intervening-read.c
+++ b/tests/spec/ext_transform_feedback/intervening-read.c
@@ -208,8 +208,11 @@ piglit_init(int argc, char **argv)
else
print_usage_and_exit(argv[0]);
- piglit_require_GLSL();
- piglit_require_transform_feedback();
+ if (!use_gs) {
+ piglit_require_vertex_shader();
+ piglit_require_fragment_shader();
+ piglit_require_transform_feedback();
+ }
if (use_gs) {
vs = piglit_compile_shader_text(GL_VERTEX_SHADER, vstext_gs);
diff --git a/tests/spec/ext_transform_feedback/output-type.c b/tests/spec/ext_transform_feedback/output-type.c
index 0dba71127..011a17a1e 100644
--- a/tests/spec/ext_transform_feedback/output-type.c
+++ b/tests/spec/ext_transform_feedback/output-type.c
@@ -1492,10 +1492,14 @@ test_ready:
/* Check the driver. */
piglit_require_gl_version(15);
- piglit_require_GLSL();
piglit_require_transform_feedback();
if (!test->is_floating_point)
piglit_require_GLSL_version(130);
+ else {
+ piglit_require_vertex_shader();
+ piglit_require_fragment_shader();
+ }
+
if (test->is_transform_feedback3)
piglit_require_extension("GL_ARB_transform_feedback3");
diff --git a/tests/spec/ext_transform_feedback/overflow-edge-cases.c b/tests/spec/ext_transform_feedback/overflow-edge-cases.c
index 0249c6739..9e940948f 100644
--- a/tests/spec/ext_transform_feedback/overflow-edge-cases.c
+++ b/tests/spec/ext_transform_feedback/overflow-edge-cases.c
@@ -142,7 +142,7 @@ piglit_init(int argc, char **argv)
int num_varyings;
int mode;
- piglit_require_GLSL();
+ piglit_require_vertex_shader();
piglit_require_transform_feedback();
for (mode = 0; mode < ARRAY_SIZE(modes); mode++) {
diff --git a/tests/spec/ext_transform_feedback/pipeline-basic-primgen.c b/tests/spec/ext_transform_feedback/pipeline-basic-primgen.c
index 162f78dd8..e6d17d74e 100644
--- a/tests/spec/ext_transform_feedback/pipeline-basic-primgen.c
+++ b/tests/spec/ext_transform_feedback/pipeline-basic-primgen.c
@@ -52,7 +52,7 @@ void piglit_init(int argc, char **argv)
/* Check the driver. */
piglit_require_gl_version(15);
- piglit_require_GLSL();
+ piglit_require_vertex_shader();
piglit_require_transform_feedback();
glGenQueries(1, &q);
diff --git a/tests/spec/ext_transform_feedback/points.c b/tests/spec/ext_transform_feedback/points.c
index 7c7ce6c8a..ef7604bdf 100644
--- a/tests/spec/ext_transform_feedback/points.c
+++ b/tests/spec/ext_transform_feedback/points.c
@@ -68,7 +68,7 @@ piglit_init(int argc, char **argv)
/* Check the driver. */
piglit_require_gl_version(15);
- piglit_require_GLSL();
+ piglit_require_vertex_shader();
piglit_require_transform_feedback();
/* Create shaders. */
diff --git a/tests/spec/ext_transform_feedback/position.c b/tests/spec/ext_transform_feedback/position.c
index ff4470b13..8be422480 100644
--- a/tests/spec/ext_transform_feedback/position.c
+++ b/tests/spec/ext_transform_feedback/position.c
@@ -104,7 +104,7 @@ void piglit_init(int argc, char **argv)
/* Check the driver. */
piglit_require_gl_version(15);
- piglit_require_GLSL();
+ piglit_require_vertex_shader();
piglit_require_transform_feedback();
/* Create shaders. */
diff --git a/tests/spec/ext_transform_feedback/primgen.c b/tests/spec/ext_transform_feedback/primgen.c
index 4e1d2be70..f432ee4c0 100644
--- a/tests/spec/ext_transform_feedback/primgen.c
+++ b/tests/spec/ext_transform_feedback/primgen.c
@@ -57,7 +57,7 @@ void piglit_init(int argc, char **argv)
/* Check the driver. */
piglit_require_gl_version(15);
- piglit_require_GLSL();
+ piglit_require_vertex_shader();
piglit_require_transform_feedback();
glGenQueries(1, &q);
diff --git a/tests/spec/ext_transform_feedback/separate.c b/tests/spec/ext_transform_feedback/separate.c
index d4865cd57..77bb6af96 100644
--- a/tests/spec/ext_transform_feedback/separate.c
+++ b/tests/spec/ext_transform_feedback/separate.c
@@ -66,7 +66,7 @@ void piglit_init(int argc, char **argv)
/* Check the driver. */
piglit_require_gl_version(15);
- piglit_require_GLSL();
+ piglit_require_vertex_shader();
piglit_require_transform_feedback();
glGetIntegerv(GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS_EXT, &maxattrs);
diff --git a/tests/spec/glsl-1.10/execution/clipping/clip-plane-transformation.c b/tests/spec/glsl-1.10/execution/clipping/clip-plane-transformation.c
index 346a9ef4d..a7205e51e 100644
--- a/tests/spec/glsl-1.10/execution/clipping/clip-plane-transformation.c
+++ b/tests/spec/glsl-1.10/execution/clipping/clip-plane-transformation.c
@@ -304,8 +304,9 @@ piglit_init(int argc, char **argv)
piglit_require_extension("GL_ARB_vertex_program");
setup_arb_program();
} else if (use_glsl) {
- piglit_require_GLSL();
piglit_require_GLSL_version(use_glsl_130 ? 130 : 110);
+ piglit_require_vertex_shader();
+ piglit_require_fragment_shader();
setup_glsl_programs();
}
}
diff --git a/tests/spec/glsl-1.10/execution/glsl-render-after-bad-attach.c b/tests/spec/glsl-1.10/execution/glsl-render-after-bad-attach.c
index b3b08a585..a59419826 100644
--- a/tests/spec/glsl-1.10/execution/glsl-render-after-bad-attach.c
+++ b/tests/spec/glsl-1.10/execution/glsl-render-after-bad-attach.c
@@ -107,5 +107,6 @@ piglit_display(void)
void
piglit_init(int argc, char **argv)
{
- piglit_require_GLSL();
+ piglit_require_vertex_shader();
+ piglit_require_fragment_shader();
}
diff --git a/tests/spec/glsl-1.20/getactiveuniform-constant.c b/tests/spec/glsl-1.20/getactiveuniform-constant.c
index 4742ae77c..e493c7486 100644
--- a/tests/spec/glsl-1.20/getactiveuniform-constant.c
+++ b/tests/spec/glsl-1.20/getactiveuniform-constant.c
@@ -99,6 +99,8 @@ piglit_init(int argc, char **argv)
int i;
piglit_require_GLSL_version(120);
+ piglit_require_vertex_shader();
+ piglit_require_fragment_shader();
vs = piglit_compile_shader_text(GL_VERTEX_SHADER, vs_code);
fs = piglit_compile_shader_text(GL_FRAGMENT_SHADER, fs_code);
diff --git a/tests/spec/nv_primitive_restart/primitive-restart-draw-mode.c b/tests/spec/nv_primitive_restart/primitive-restart-draw-mode.c
index 5a1379748..e4626a50a 100644
--- a/tests/spec/nv_primitive_restart/primitive-restart-draw-mode.c
+++ b/tests/spec/nv_primitive_restart/primitive-restart-draw-mode.c
@@ -181,7 +181,7 @@ piglit_init(int argc, char **argv)
if (test == NULL)
print_usage_and_exit(argv[0]);
- piglit_require_GLSL_version(110);
+ piglit_require_vertex_shader();
if (!piglit_is_extension_supported("GL_NV_primitive_restart") &&
piglit_get_gl_version() < 31) {
printf("GL_NV_primitive_restart or GL 3.1 required\n");
diff --git a/tests/spec/nv_texture_barrier/blending-in-shader.c b/tests/spec/nv_texture_barrier/blending-in-shader.c
index c9d35f16d..3b38fffff 100644
--- a/tests/spec/nv_texture_barrier/blending-in-shader.c
+++ b/tests/spec/nv_texture_barrier/blending-in-shader.c
@@ -86,7 +86,7 @@ void piglit_init(int argc, char **argv)
piglit_require_extension("GL_EXT_framebuffer_object");
piglit_require_extension("GL_NV_texture_barrier");
- piglit_require_GLSL();
+ piglit_require_fragment_shader();
srand(0);
for (i = 0; i < 16 * 16 * 4; ++i) {
diff --git a/tests/texturing/cubemap-shader.c b/tests/texturing/cubemap-shader.c
index c5870334c..2e399d217 100644
--- a/tests/texturing/cubemap-shader.c
+++ b/tests/texturing/cubemap-shader.c
@@ -340,6 +340,7 @@ piglit_init(int argc, char **argv)
{
int i;
+ piglit_require_fragment_shader();
piglit_require_extension("GL_ARB_texture_cube_map");
max_size = 64;
diff --git a/tests/texturing/incomplete-texture.c b/tests/texturing/incomplete-texture.c
index 7731e09e0..633c0a1f5 100644
--- a/tests/texturing/incomplete-texture.c
+++ b/tests/texturing/incomplete-texture.c
@@ -212,7 +212,7 @@ piglit_display(void)
}
if (Tests & TEST_GLSL) {
- piglit_require_GLSL_version(110);
+ piglit_require_fragment_shader();
pass = test_glsl() && pass;
}
diff --git a/tests/texturing/tex-upside-down-miptree.c b/tests/texturing/tex-upside-down-miptree.c
index 0c8e89013..edbc4ab7c 100644
--- a/tests/texturing/tex-upside-down-miptree.c
+++ b/tests/texturing/tex-upside-down-miptree.c
@@ -163,7 +163,7 @@ piglit_init(int argc, char **argv)
piglit_report_result(PIGLIT_SKIP);
}
- piglit_require_GLSL_version(110);
+ piglit_require_fragment_shader();
prog = piglit_build_simple_program(NULL, fragShaderText);
setup_texture();
}
diff --git a/tests/texturing/texsubimage.c b/tests/texturing/texsubimage.c
index 67dc543f6..b00b2dcd7 100644
--- a/tests/texturing/texsubimage.c
+++ b/tests/texturing/texsubimage.c
@@ -738,12 +738,13 @@ piglit_init(int argc, char **argv)
for (i = 1; i < argc; i++) {
if (!strcmp(argv[i], "array")) {
piglit_require_extension("GL_EXT_texture_array");
- piglit_require_GLSL();
+ piglit_require_fragment_shader();
test_targets = array_targets;
} else if (!strcmp(argv[i], "cube_map_array")) {
piglit_require_extension
("GL_ARB_texture_cube_map_array");
- piglit_require_GLSL();
+ piglit_require_vertex_shader();
+ piglit_require_fragment_shader();
test_targets = cube_map_array_targets;
} else if (!strcmp(argv[i], "pbo")) {
piglit_require_extension("GL_ARB_pixel_buffer_object");
diff --git a/tests/texturing/zero-tex-coord.c b/tests/texturing/zero-tex-coord.c
index 98f3629b9..b81eac119 100644
--- a/tests/texturing/zero-tex-coord.c
+++ b/tests/texturing/zero-tex-coord.c
@@ -181,6 +181,9 @@ make_program(void)
if (glsl_version > 0) {
p += sprintf(p, "#version %i\n", glsl_version);
piglit_require_GLSL_version(glsl_version);
+ } else {
+ piglit_require_vertex_shader();
+ piglit_require_fragment_shader();
}
if (sample_function->extension) {