132001f49Smrg
232001f49Smrg/*
332001f49Smrg * Print GL, GLU and GLUT version and extension info
432001f49Smrg *
532001f49Smrg * Brian Paul  This file in public domain.
632001f49Smrg * October 3, 1997
732001f49Smrg */
832001f49Smrg
932001f49Smrg
1032001f49Smrg#include <stdio.h>
1132001f49Smrg#include "glut_wrap.h"
1232001f49Smrg
1332001f49Smrg
1432001f49Smrgint main( int argc, char *argv[] )
1532001f49Smrg{
1632001f49Smrg   glutInit( &argc, argv );
1732001f49Smrg   glutInitDisplayMode( GLUT_RGB );
1832001f49Smrg   glutCreateWindow(argv[0]);
1932001f49Smrg
2032001f49Smrg   printf("GL_VERSION: %s\n", (char *) glGetString(GL_VERSION));
2132001f49Smrg   printf("GL_RENDERER: %s\n", (char *) glGetString(GL_RENDERER));
2232001f49Smrg   printf("GL_VENDOR: %s\n", (char *) glGetString(GL_VENDOR));
2332001f49Smrg   printf("GL_EXTENSIONS: %s\n", (char *) glGetString(GL_EXTENSIONS));
2432001f49Smrg
2532001f49Smrg#ifdef GL_VERSION_2_0
2632001f49Smrg   {
2732001f49Smrg      const GLubyte *v = glGetString(GL_VERSION);
2832001f49Smrg      if (v[0] * 10 + v[2] >= 20) {
2932001f49Smrg         const GLubyte *slv = glGetString(GL_SHADING_LANGUAGE_VERSION);
3032001f49Smrg         printf("GL_SHADING_LANGUAGE_VERSION = %s\n", slv);
3132001f49Smrg      }
3232001f49Smrg   }
3332001f49Smrg#endif
3432001f49Smrg
3532001f49Smrg   printf("GLU_VERSION: %s\n", (char *) gluGetString(GLU_VERSION));
3632001f49Smrg   printf("GLU_EXTENSIONS: %s\n", (char *) gluGetString(GLU_EXTENSIONS));
3732001f49Smrg   printf("GLUT_API_VERSION: %d\n", GLUT_API_VERSION);
3832001f49Smrg#ifdef GLUT_XLIB_IMPLEMENTATION
3932001f49Smrg   printf("GLUT_XLIB_IMPLEMENTATION: %d\n", GLUT_XLIB_IMPLEMENTATION);
4032001f49Smrg#endif
4132001f49Smrg
4232001f49Smrg   return 0;
4332001f49Smrg}
44