Merge branch '7.8'
[mesa.git] / progs / tests / shader_api.c
index a513ca6ba1f5e7dd8917b7df2be16c3561261aa9..fa0a992540c73b19de2e1c18c4dc8d06a8a05ad8 100644 (file)
@@ -8,6 +8,10 @@
 #include <GL/glew.h>
 #include <GL/glut.h>
 
+#ifndef APIENTRY
+#define APIENTRY
+#endif
+
 static void assert_test(const char *file, int line, int cond, const char *msg)
 {
    if (!cond)
@@ -42,7 +46,7 @@ static void assert_error_test(const char *file, int line, GLenum expect)
 
 #define assert_error(err) assert_error_test(__FILE__, __LINE__, (err))
 
-static void check_status(GLuint id, GLenum pname, void (*query)(GLuint, GLenum, GLint *))
+static void check_status(GLuint id, GLenum pname, void (APIENTRY *query)(GLuint, GLenum, GLint *))
 {
     GLint status;
 
@@ -321,10 +325,18 @@ static void run_test(const char *name, void (*callback)(void))
 
 int main(int argc, char **argv)
 {
+   const char *version;
+
    glutInit(&argc, argv);
    glutCreateWindow("Mesa bug demo");
    glewInit();
 
+   version = (const char *) glGetString(GL_VERSION);
+   if (version[0] == '1') {
+      printf("Sorry, this test requires OpenGL 2.x GLSL support\n");
+      exit(0);
+   }
+
    RUN_TEST(test_uniform_size_type);
    RUN_TEST(test_attrib_size_type);
    RUN_TEST(test_uniform_array_overflow);