2003-07-06 15:01:13 +00:00
|
|
|
/*
|
|
|
|
** The OpenGL Extension Wrangler Library
|
2004-02-01 20:03:26 +00:00
|
|
|
** Copyright (C) 2004, 2003, 2002, Milan Ikits <milan ikits[at]ieee org>
|
|
|
|
** Copyright (C) 2004, 2003, 2002, Marcelo E. Magallon <mmagallo[at]debian org>
|
|
|
|
** Copyright (C) 2002, Lev Povalahev
|
2003-07-06 15:01:13 +00:00
|
|
|
** All rights reserved.
|
|
|
|
**
|
|
|
|
** Redistribution and use in source and binary forms, with or without
|
|
|
|
** modification, are permitted provided that the following conditions are met:
|
|
|
|
**
|
|
|
|
** * Redistributions of source code must retain the above copyright notice,
|
|
|
|
** this list of conditions and the following disclaimer.
|
|
|
|
** * Redistributions in binary form must reproduce the above copyright notice,
|
|
|
|
** this list of conditions and the following disclaimer in the documentation
|
|
|
|
** and/or other materials provided with the distribution.
|
|
|
|
** * The name of the author may be used to endorse or promote products
|
|
|
|
** derived from this software without specific prior written permission.
|
|
|
|
**
|
|
|
|
** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
|
|
|
** AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
|
|
|
** IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
|
|
|
** ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
|
|
|
|
** LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
|
|
|
** CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
|
|
|
** SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
|
|
|
** INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
|
|
|
** CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
|
|
|
** ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
|
|
|
|
** THE POSSIBILITY OF SUCH DAMAGE.
|
|
|
|
*/
|
|
|
|
|
|
|
|
#include <stdio.h>
|
2004-02-01 21:26:11 +00:00
|
|
|
#include <stdlib.h>
|
2003-07-06 15:01:13 +00:00
|
|
|
#include <string.h>
|
|
|
|
#include <GL/glew.h>
|
2003-10-27 02:34:05 +00:00
|
|
|
#if defined(_WIN32)
|
2003-07-06 15:01:13 +00:00
|
|
|
#include <GL/wglew.h>
|
2003-10-27 02:34:05 +00:00
|
|
|
#elif !defined(__APPLE__) || defined(GLEW_APPLE_GLX)
|
2003-07-06 15:01:13 +00:00
|
|
|
#include <GL/glxew.h>
|
2003-09-26 13:49:28 +00:00
|
|
|
#endif
|
|
|
|
|
2003-07-06 15:01:13 +00:00
|
|
|
static FILE* f;
|
|
|
|
|
2004-02-01 21:26:11 +00:00
|
|
|
GLboolean glewCreateContext (const char* display, int* visual);
|
|
|
|
GLboolean glewParseArgs (int argc, char** argv, char** display, int* visual);
|
2003-09-26 13:49:28 +00:00
|
|
|
void glewDestroyContext ();
|
|
|
|
|
|
|
|
/* ------------------------------------------------------------------------- */
|
|
|
|
|
2003-10-27 02:34:05 +00:00
|
|
|
static void glewPrintExt (const GLubyte* name, GLint def1, GLint def2)
|
2003-07-06 15:01:13 +00:00
|
|
|
{
|
|
|
|
unsigned int i;
|
|
|
|
fprintf(f, "\n%s:", name);
|
2003-09-15 17:01:44 +00:00
|
|
|
for (i=0; i<62-strlen((const char*)name); i++) fprintf(f, " ");
|
2003-10-27 03:11:08 +00:00
|
|
|
fprintf(f, "%s ", def1 ? "OK" : "MISSING");
|
|
|
|
if (def1 != def2)
|
|
|
|
fprintf(f, "[%s]\n", def2 ? "OK" : "MISSING");
|
|
|
|
else
|
|
|
|
fprintf(f, "\n");
|
2003-09-15 17:01:44 +00:00
|
|
|
for (i=0; i<strlen((const char*)name)+1; i++) fprintf(f, "-");
|
2003-07-06 15:01:13 +00:00
|
|
|
fprintf(f, "\n");
|
|
|
|
fflush(f);
|
|
|
|
}
|
|
|
|
|
2003-09-15 17:19:48 +00:00
|
|
|
static void glewInfoFunc (const GLubyte* name, GLint undefined)
|
2003-07-06 15:01:13 +00:00
|
|
|
{
|
|
|
|
unsigned int i;
|
|
|
|
fprintf(f, " %s:", name);
|
2003-09-15 17:01:44 +00:00
|
|
|
for (i=0; i<60-strlen((const char*)name); i++) fprintf(f, " ");
|
2003-07-06 15:01:13 +00:00
|
|
|
fprintf(f, "%s\n", undefined ? "MISSING" : "OK");
|
|
|
|
fflush(f);
|
|
|
|
}
|
|
|
|
|
|
|
|
/* ----------------------------- GL_VERSION_1_1 ---------------------------- */
|
|
|
|
|
|
|
|
#ifdef GL_VERSION_1_1
|
|
|
|
|
|
|
|
static void _glewInfo_GL_VERSION_1_1 (void)
|
|
|
|
{
|
2003-10-27 05:28:55 +00:00
|
|
|
glewPrintExt((const GLubyte*)"GL_VERSION_1_1", GLEW_VERSION_1_1, GLEW_VERSION_1_1);
|
2003-07-06 15:01:13 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
#endif /* GL_VERSION_1_1 */
|
|
|
|
|