progs: Make fp-tri use glew and add scons target
authorJakob Bornecrantz <jakob@vmware.com>
Sat, 14 Feb 2009 00:05:13 +0000 (01:05 +0100)
committerJakob Bornecrantz <jakob@vmware.com>
Sat, 14 Feb 2009 06:04:01 +0000 (07:04 +0100)
progs/SConscript
progs/fp/Makefile
progs/fp/SConscript [new file with mode: 0644]
progs/fp/fp-tri.c

index 6484c761fc5b253876fe7b017e094b9c8fe56103..544ea6475047433e879f611b28e3371d1aae9f0c 100644 (file)
@@ -5,4 +5,5 @@ SConscript([
     'samples/SConscript',
     'trivial/SConscript',
     'vp/SConscript',
+    'fp/SConscript',
 ])
index ef6644cce27cdd13a1a162da6c40bfa567c3ed84..681928cf26022a227224d70eab79fdcf3ad35829 100755 (executable)
@@ -8,7 +8,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 = \
        tri-tex.c \
diff --git a/progs/fp/SConscript b/progs/fp/SConscript
new file mode 100644 (file)
index 0000000..e31fa32
--- /dev/null
@@ -0,0 +1,13 @@
+Import('env')
+
+if not env['GLUT']:
+    Return()
+
+env = env.Clone()
+
+env.Prepend(LIBS = ['$GLUT_LIB'])
+
+env.Program(
+        target = 'fp-tri',
+        source = ['fp-tri.c'],
+    )
index 843f897871b4f865a652499ab2ddc014955ed342..b695901bcddf443d5797f54b96d3bd66820e819b 100644 (file)
@@ -2,10 +2,14 @@
 #include <stdio.h>
 #include <string.h>
 #include <stdlib.h>
-#define GL_GLEXT_PROTOTYPES
-#include <GL/glut.h>
+
+#ifndef WIN32
 #include <unistd.h>
 #include <signal.h>
+#endif
+
+#include <GL/glew.h>
+#include <GL/glut.h>
 
 unsigned show_fps = 0;
 unsigned int frame_cnt = 0;
@@ -15,11 +19,14 @@ static const char *filename = NULL;
 static void usage(char *name)
 {
    fprintf(stderr, "usage: %s [ options ] shader_filename\n", name);
+#ifndef WIN32
    fprintf(stderr, "\n" );
    fprintf(stderr, "options:\n");
    fprintf(stderr, "    -fps  show frames per second\n");
+#endif
 }
 
+#ifndef WIN32
 void alarmhandler (int sig)
 {
    if (sig == SIGALRM) {
@@ -31,6 +38,7 @@ void alarmhandler (int sig)
    signal(SIGALRM, alarmhandler);
    alarm(5);
 }
+#endif
 
 static void args(int argc, char *argv[])
 {
@@ -142,7 +150,6 @@ static void Display(void)
    glEnd();
 
    glFlush();
-
    if (show_fps) {
       ++frame_cnt;
       glutPostRedisplay();
@@ -158,14 +165,17 @@ int main(int argc, char **argv)
    glutInitDisplayMode(GLUT_RGB | GLUT_SINGLE | GLUT_DEPTH);
    args(argc, argv);
    glutCreateWindow(filename);
+   glewInit();
    glutReshapeFunc(Reshape);
    glutKeyboardFunc(Key);
    glutDisplayFunc(Display);
    Init();
+#ifndef WIN32
    if (show_fps) {
       signal(SIGALRM, alarmhandler);
       alarm(5);
    }
+#endif
    glutMainLoop();
    return 0;
 }