vpglsl: build with scons and glew
diff --git a/progs/SConscript b/progs/SConscript
index 544ea64..1670f97 100644
--- a/progs/SConscript
+++ b/progs/SConscript
@@ -5,5 +5,6 @@
     'samples/SConscript',
     'trivial/SConscript',
     'vp/SConscript',
+    'vpglsl/SConscript',
     'fp/SConscript',
 ])
diff --git a/progs/vpglsl/Makefile b/progs/vpglsl/Makefile
index 313b4df..3982aca 100644
--- a/progs/vpglsl/Makefile
+++ b/progs/vpglsl/Makefile
@@ -7,7 +7,7 @@
 TOP = ../..
 include $(TOP)/configs/current
 
-LIBS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) $(APP_LIB_DEPS)
+LIBS = -L$(TOP)/$(LIB_DIR) -l$(GLUT_LIB)  -l$(GLEW_LIB) -l$(GLU_LIB) -l$(GL_LIB) $(APP_LIB_DEPS)
 
 SOURCES = \
 	vp-tris.c
diff --git a/progs/vpglsl/vp-tris.c b/progs/vpglsl/vp-tris.c
index 9108d3f..9ae410b 100644
--- a/progs/vpglsl/vp-tris.c
+++ b/progs/vpglsl/vp-tris.c
@@ -4,7 +4,8 @@
 #include <stdio.h>
 #include <stdlib.h>
 #include <math.h>
-#define GL_GLEXT_PROTOTYPES
+
+#include <GL/glew.h>
 #include <GL/glut.h>
 
 static const char *filename = NULL;
@@ -99,27 +100,29 @@
 
    }
 
-   GLuint loc1f = glGetUniformLocationARB(program, "KernelValue1f");
-   GLuint loc2f = glGetUniformLocationARB(program, "KernelValue2f");
-   GLuint loc4f = glGetUniformLocationARB(program, "KernelValue4f");
-   GLfloat vecKer[] =
-      { 1.0, 0.0, 0.0,  0.25,
-        0.0, 1.0, 0.0,  0.25,
-        0.0, 0.0, 1.0,  0.25,
-        0.0, 0.0, 0.0,  0.25,
-        0.5, 0.0, 0.0,  0.35,
-        0.0, 0.5, 0.0,  0.35,
-        0.0, 0.0, 0.5,  0.35,
-        0.0, 0.0, 0.0,  0.35
-      };
-   if (loc1f >= 0)
-      glUniform1fv(loc1f, 16, vecKer);
+   {
+      GLuint loc1f = glGetUniformLocationARB(program, "KernelValue1f");
+      GLuint loc2f = glGetUniformLocationARB(program, "KernelValue2f");
+      GLuint loc4f = glGetUniformLocationARB(program, "KernelValue4f");
+      GLfloat vecKer[] =
+         { 1.0, 0.0, 0.0,  0.25,
+           0.0, 1.0, 0.0,  0.25,
+           0.0, 0.0, 1.0,  0.25,
+           0.0, 0.0, 0.0,  0.25,
+           0.5, 0.0, 0.0,  0.35,
+           0.0, 0.5, 0.0,  0.35,
+           0.0, 0.0, 0.5,  0.35,
+           0.0, 0.0, 0.0,  0.35
+         };
+      if (loc1f >= 0)
+         glUniform1fv(loc1f, 16, vecKer);
 
-   if (loc2f >= 0)
-      glUniform2fv(loc2f, 8, vecKer);
+      if (loc2f >= 0)
+         glUniform2fv(loc2f, 8, vecKer);
 
-   if (loc4f >= 0)
-      glUniform4fv(loc4f, 4, vecKer);
+      if (loc4f >= 0)
+         glUniform4fv(loc4f, 4, vecKer);
+   }
 }
 
 static void prepare_shaders()
@@ -303,6 +306,7 @@
    glutInitWindowSize( 250, 250 );
    glutInitDisplayMode( GLUT_RGB | GLUT_SINGLE | GLUT_DEPTH );
    glutCreateWindow(argv[0]);
+   glewInit();
    glutReshapeFunc( Reshape );
    glutKeyboardFunc( Key );
    glutDisplayFunc( Display );