Added the conditional compilation stuff for Windows DLL
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90
diff --git a/include/FTGL.h b/include/FTGL.h
index 789d33d..5d554d8 100755
--- a/include/FTGL.h
+++ b/include/FTGL.h
@@ -1,7 +1,84 @@
#ifndef __FTGL__
#define __FTGL__
-// For Future?
+
+#ifdef WIN32
+ // stl stuff
+ #pragma warning( disable : 4251 )
+ #pragma warning( disable : 4275 )
+ #pragma warning( disable : 4786 )
+
+#endif
+
+#ifndef WIN32
+
+ // non windows, doesn't require nonesense as seen below :-)
+ #ifndef __gl_h_
+ #include <GL/gl.h>
+ #endif
+
+ // required for compatibility with glext.h style function definitions of
+ // OpenGL extensions, such as in src/osg/Point.cpp.
+ #ifndef APIENTRY
+ #define APIENTRY
+ #endif
+
+#else
+
+ // Under windows avoid including <windows.h>
+ // to avoid name space pollution, but Win32's <GL/gl.h>
+ // needs APIENTRY and WINGDIAPI defined properly.
+ // F
+ # if 0
+ # define WIN32_LEAN_AND_MEAN
+ # include <windows.h>
+ # else
+ // XXX This is from Win32's <windef.h>
+ # ifndef APIENTRY
+ # define GLUT_APIENTRY_DEFINED
+ # if (_MSC_VER >= 800) || defined(_STDCALL_SUPPORTED)
+ # define APIENTRY __stdcall
+ # else
+ # define APIENTRY
+ # endif
+ # endif
+ // XXX This is from Win32's <winnt.h>
+ # ifndef CALLBACK
+ # if (defined(_M_MRX000) || defined(_M_IX86) || defined(_M_ALPHA) || defined(_M_PPC)) && !defined(MIDL_PASS)
+ # define CALLBACK __stdcall
+ # else
+ # define CALLBACK
+ # endif
+ # endif
+ // XXX This is from Win32's <wingdi.h> and <winnt.h>
+ # ifndef WINGDIAPI
+ # define GLUT_WINGDIAPI_DEFINED
+ # define WINGDIAPI __declspec(dllimport)
+ # endif
+ // XXX This is from Win32's <ctype.h>
+ # ifndef _WCHAR_T_DEFINED
+ typedef unsigned short wchar_t;
+ # define _WCHAR_T_DEFINED
+ # endif
+ # endif
+
+ #ifndef __gl_h_
+ #include <GL/gl.h>
+ #endif
+
+#endif
+
+#if defined(_MSC_VER)
+ # ifdef FTGL_LIBRARY_STATIC // staticLib
+ # define FTGL_EXPORT
+ # elif FTGL_LIBRARY // dynamicLib
+ # define FTGL_EXPORT __declspec(dllexport)
+ # else
+ # define FTGL_EXPORT __declspec(dllimport)
+ # endif /* FTGL_LIBRARY */
+#else
+ # define FTGL_EXPORT
+#endif
#endif // __FTGL__