X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?a=blobdiff_plain;f=include%2FGL%2Ffreeglut_std.h;h=15b113f90b5145ea5f9cdb42ae1cae54128de30d;hb=81f7f85ade2f873ebee9afa3ad810046771cb5c3;hp=2acbabd1e938b10347dbcc72031cb2930e47e894;hpb=d67937396dc33c86017012859b2d9ed010fc6c88;p=freeglut diff --git a/include/GL/freeglut_std.h b/include/GL/freeglut_std.h index 2acbabd..15b113f 100644 --- a/include/GL/freeglut_std.h +++ b/include/GL/freeglut_std.h @@ -35,61 +35,65 @@ /* * Under windows, we have to differentiate between static and dynamic libraries */ -#if defined(_MSC_VER) || defined(__CYGWIN__) || defined(__MINGW32__) - +#ifdef _WIN32 /* #pragma may not be supported by some compilers. * Discussion by FreeGLUT developers suggests that * Visual C++ specific code involving pragmas may * need to move to a separate header. 24th Dec 2003 - */ + */ + +/* Define FREEGLUT_LIB_PRAGMAS to 1 to include library + * pragmas or to 1 to exclude library pragmas. + * The default behavior depends on the compiler/platform. + */ +# ifndef FREEGLUT_LIB_PRAGMAS +# if ( defined(_MSC_VER) || defined(__WATCOMC__) ) && !defined(_WIN32_WCE) +# define FREEGLUT_LIB_PRAGMAS 1 +# else +# define FREEGLUT_LIB_PRAGMAS 0 +# endif +# endif # define WIN32_LEAN_AND_MEAN -# define NO_MIN_MAX -# include -# undef min -# undef max +# define NOMINMAX +# include /* Windows static library */ # ifdef FREEGLUT_STATIC -# define FGAPI -# define FGAPIENTRY +# define FGAPI +# define FGAPIENTRY /* Link with Win32 static freeglut lib */ -# if defined(_MSC_VER) +# if FREEGLUT_LIB_PRAGMAS # pragma comment (lib, "freeglut_static.lib") # endif /* Windows shared library (DLL) */ # else -# if defined(FREEGLUT_EXPORTS) -# define FGAPI __declspec(dllexport) -# else -# define FGAPI __declspec(dllimport) +# define FGAPIENTRY __stdcall +# if defined(FREEGLUT_EXPORTS) +# define FGAPI __declspec(dllexport) +# else +# define FGAPI __declspec(dllimport) - /* link with Win32 shared freeglut lib */ -# if defined(_MSC_VER) -# ifndef _WIN32_WCE -# pragma comment (lib, "freeglut.lib") -# endif -# endif + /* Link with Win32 shared freeglut lib */ +# if FREEGLUT_LIB_PRAGMAS +# pragma comment (lib, "freeglut.lib") +# endif # endif -# define FGAPIENTRY __stdcall - # endif /* Drag in other Windows libraries as required by FreeGLUT */ -# if defined(_MSC_VER) -# ifndef _WIN32_WCE -# pragma comment (lib, "winmm.lib") /* link Windows MultiMedia lib */ -# pragma comment (lib, "user32.lib") /* link Windows user lib */ -# pragma comment (lib, "gdi32.lib") /* link Windows GDI lib */ -# pragma comment (lib, "opengl32.lib") /* link Microsoft OpenGL lib */ -# pragma comment (lib, "glu32.lib") /* link OpenGL Utility lib */ -# endif //_WIN32_WCE +# if FREEGLUT_LIB_PRAGMAS +# pragma comment (lib, "glu32.lib") /* link OpenGL Utility lib */ +# pragma comment (lib, "opengl32.lib") /* link Microsoft OpenGL lib */ +# pragma comment (lib, "gdi32.lib") /* link Windows GDI lib */ +# pragma comment (lib, "winmm.lib") /* link Windows MultiMedia lib */ +# pragma comment (lib, "user32.lib") /* link Windows user lib */ # endif #else @@ -106,6 +110,7 @@ #define FREEGLUT 1 #define GLUT_API_VERSION 4 #define FREEGLUT_VERSION_2_0 1 +#define GLUT_XLIB_IMPLEMENTATION 13 /* * Always include OpenGL and GLU headers @@ -182,7 +187,7 @@ * * Steve Baker suggested to make it binary compatible with GLUT: */ -#if defined(_MSC_VER) || defined(__CYGWIN__) || defined(__MINGW32__) +#if defined(_MSC_VER) || defined(__CYGWIN__) || defined(__MINGW32__) || defined(__WATCOMC__) # define GLUT_STROKE_ROMAN ((void *)0x0000) # define GLUT_STROKE_MONO_ROMAN ((void *)0x0001) # define GLUT_BITMAP_9_BY_15 ((void *)0x0002) @@ -260,7 +265,6 @@ #define GLUT_INIT_DISPLAY_MODE 0x01F8 #define GLUT_ELAPSED_TIME 0x02BC #define GLUT_WINDOW_FORMAT_ID 0x007B -#define GLUT_INIT_STATE 0x007C /* * GLUT API macro definitions -- the glutDeviceGet parameters @@ -557,7 +561,7 @@ FGAPI void FGAPIENTRY glutCopyColormap( int window ); * Misc keyboard and joystick functions, see freeglut_misc.c */ FGAPI void FGAPIENTRY glutIgnoreKeyRepeat( int ignore ); -FGAPI void FGAPIENTRY glutSetKeyRepeat( int repeatMode ); /* DEPRECATED 11/4/02 - Do not use */ +FGAPI void FGAPIENTRY glutSetKeyRepeat( int repeatMode ); FGAPI void FGAPIENTRY glutForceJoystickFunc( void ); /*