| @@ -1,4 +1,4 @@ | |||
| /* $Id: glheader.h,v 1.7 2000/03/22 23:20:12 brianp Exp $ */ | |||
| /* $Id: glheader.h,v 1.8 2000/05/22 16:30:47 brianp Exp $ */ | |||
| /* | |||
| * Mesa 3-D graphics library | |||
| @@ -63,8 +63,15 @@ | |||
| #include "conf.h" | |||
| #endif | |||
| /* Make sure we include glext.h */ | |||
| #if 0 | |||
| #define GL_GLEXT_LEGACY | |||
| #include "GL/gl.h" | |||
| #include "glext_proto.h" | |||
| #else | |||
| #include "GL/gl.h" | |||
| #include "GL/glext.h" | |||
| #endif | |||
| /* | |||
| @@ -73,6 +80,92 @@ | |||
| */ | |||
| /* | |||
| * XXX move as many of these pragma's and MS Windows-isms into | |||
| * the new src/glheader.h file. | |||
| */ | |||
| #if defined(_WIN32) && !defined(__WIN32__) | |||
| # define __WIN32__ | |||
| #endif | |||
| #if !defined(OPENSTEP) && (defined(__WIN32__) || defined(__CYGWIN32__)) | |||
| # pragma warning( disable : 4068 ) /* unknown pragma */ | |||
| # pragma warning( disable : 4710 ) /* function 'foo' not inlined */ | |||
| # pragma warning( disable : 4711 ) /* function 'foo' selected for automatic inline expansion */ | |||
| # pragma warning( disable : 4127 ) /* conditional expression is constant */ | |||
| # if defined(MESA_MINWARN) | |||
| # pragma warning( disable : 4244 ) /* '=' : conversion from 'const double ' to 'float ', possible loss of data */ | |||
| # pragma warning( disable : 4018 ) /* '<' : signed/unsigned mismatch */ | |||
| # pragma warning( disable : 4305 ) /* '=' : truncation from 'const double ' to 'float ' */ | |||
| # pragma warning( disable : 4550 ) /* 'function' undefined; assuming extern returning int */ | |||
| # pragma warning( disable : 4761 ) /* integral size mismatch in argument; conversion supplied */ | |||
| # endif | |||
| # if defined(_MSC_VER) && defined(BUILD_GL32) /* tag specify we're building mesa as a DLL */ | |||
| # define GLAPI __declspec(dllexport) | |||
| # define WGLAPI __declspec(dllexport) | |||
| # elif defined(_MSC_VER) && defined(_DLL) /* tag specifying we're building for DLL runtime support */ | |||
| # define GLAPI __declspec(dllimport) | |||
| # define WGLAPI __declspec(dllimport) | |||
| # else /* for use with static link lib build of Win32 edition only */ | |||
| # define GLAPI extern | |||
| # define WGLAPI __declspec(dllimport) | |||
| # endif /* _STATIC_MESA support */ | |||
| # define GLAPIENTRY __stdcall | |||
| # define GLAPIENTRYP __stdcall * | |||
| # define GLCALLBACK __stdcall | |||
| # define GLCALLBACKP __stdcall * | |||
| # if defined(__CYGWIN32__) | |||
| # define GLCALLBACKPCAST * | |||
| # else | |||
| # define GLCALLBACKPCAST __stdcall * | |||
| # endif | |||
| # define GLWINAPI __stdcall | |||
| # define GLWINAPIV __cdecl | |||
| #else | |||
| /* non-Windows compilation */ | |||
| # define GLAPI extern | |||
| # define GLAPIENTRY | |||
| # define GLAPIENTRYP * | |||
| # define GLCALLBACK | |||
| # define GLCALLBACKP * | |||
| # define GLCALLBACKPCAST * | |||
| # define GLWINAPI | |||
| # define GLWINAPIV | |||
| #endif /* WIN32 / CYGWIN32 bracket */ | |||
| /* compatability guard so we don't need to change client code */ | |||
| #if defined(_WIN32) && !defined(_WINDEF_) && !defined(_GNU_H_WINDOWS32_BASE) && !defined(OPENSTEP) | |||
| # define CALLBACK GLCALLBACK | |||
| typedef int (GLAPIENTRY *PROC)(); | |||
| typedef void *HGLRC; | |||
| typedef void *HDC; | |||
| typedef unsigned long COLORREF; | |||
| #endif | |||
| #if defined(_WIN32) && !defined(_WINGDI_) && !defined(_GNU_H_WINDOWS32_DEFINES) && !defined(OPENSTEP) | |||
| # define WGL_FONT_LINES 0 | |||
| # define WGL_FONT_POLYGONS 1 | |||
| #ifndef _GNU_H_WINDOWS32_FUNCTIONS | |||
| # ifdef UNICODE | |||
| # define wglUseFontBitmaps wglUseFontBitmapsW | |||
| # define wglUseFontOutlines wglUseFontOutlinesW | |||
| # else | |||
| # define wglUseFontBitmaps wglUseFontBitmapsA | |||
| # define wglUseFontOutlines wglUseFontOutlinesA | |||
| # endif /* !UNICODE */ | |||
| #endif /* _GNU_H_WINDOWS32_FUNCTIONS */ | |||
| typedef struct tagLAYERPLANEDESCRIPTOR LAYERPLANEDESCRIPTOR, *PLAYERPLANEDESCRIPTOR, *LPLAYERPLANEDESCRIPTOR; | |||
| typedef struct _GLYPHMETRICSFLOAT GLYPHMETRICSFLOAT, *PGLYPHMETRICSFLOAT, *LPGLYPHMETRICSFLOAT; | |||
| typedef struct tagPIXELFORMATDESCRIPTOR PIXELFORMATDESCRIPTOR, *PPIXELFORMATDESCRIPTOR, *LPPIXELFORMATDESCRIPTOR; | |||
| #include <gl/mesa_wgl.h> | |||
| #endif | |||
| /* Disable unreachable code warnings for Watcom C++ */ | |||
| #ifdef __WATCOMC__ | |||
| #pragma disable_message(201) | |||