#include <String.h>
#include <GL/gl.h>
+#include <GL/glu.h>
+
+#define GLUT_INFO 1
+#ifdef GLUT_INFO
+ #include <GL/glut.h>
+#endif
class GLInfoWindow : public BWindow
// gl->LockGL();
- s = (char *) glGetString(GL_RENDERER);
- if (!s)
- goto error;
-
- list->AddItem(new BStringItem(s));
+ list->AddItem(new BStringItem("OpenGL", 0));
s = (char *) glGetString(GL_VENDOR);
if (s) {
s = (char *) glGetString(GL_EXTENSIONS);
if (s) {
- list->AddItem(new BStringItem("OpenGL Extensions", 1));
+ list->AddItem(new BStringItem("Extensions", 1));
while (*s) {
char extname[255];
int n = strcspn(s, " ");
}
}
+ list->AddItem(new BStringItem("GLU", 0));
+ s = (char *) gluGetString(GLU_VERSION);
+ if (s) {
+ l = ""; l << "Version: " << s;
+ list->AddItem(new BStringItem(l.String(), 1));
+ }
+
+ s = (char *) gluGetString(GLU_EXTENSIONS);
+ if (s) {
+ list->AddItem(new BStringItem("Extensions", 1));
+ while (*s) {
+ char extname[255];
+ int n = strcspn(s, " ");
+ strncpy(extname, s, n);
+ extname[n] = 0;
+ list->AddItem(new BStringItem(extname, 2));
+ if (! s[n])
+ break;
+ s += (n + 1); // next !
+ }
+ }
+
+#ifdef GLUT_INFO
+ list->AddItem(new BStringItem("GLUT", 0));
+ l = "API version: "; l << GLUT_API_VERSION;
+ list->AddItem(new BStringItem(l.String(), 1));
+#endif
+
// gl->UnlockGL();
-error:
UnlockLooper();
}
LDFLAGS += -soname=_APP_ $(APP_LIB_DEPS)
+INCLUDES = -I. -I- -I../../include
+
default: demo sample GLInfo
clean:
$(LD) sample.o $(LDFLAGS) -o $@
GTLInfo: GLInfo.o
- $(LD) GLInfo.o $(LDFLAGS) -o $@
+ $(LD) GLInfo.o $(INCLUDES) $(LDFLAGS) -o $@
.cpp.o:
- $(CC) -c $< $(CFLAGS) -o $@
+ $(CC) -c $< $(INCLUDES) $(CFLAGS) -o $@