# define STL_STRSTREAM <strstream>
# endif
-# elif __GNUC__ == 3
+# elif __GNUC__ >= 3
// g++-3.0.x
# define SG_EXPLICIT_FUNCTION_TMPL_ARGS
# define SG_NEED_AUTO_PTR
# define STL_STDEXCEPT <stdexcept>
# define STL_STRING <string>
# define STL_STRSTREAM <strstream>
-
# else
# error Time to upgrade. GNU compilers < 2.7 not supported
# endif
#endif // __GNUC__
-#if defined( __MINGW32__ )
-# define bcopy(from, to, n) memcpy(to, from, n)
-# define FG_MEM_COPY(to,from,n) memcpy(to, from, n)
-# define snprintf _snprintf
-#endif
-
/* KAI C++ */
#if defined(__KCC)
# define bcopy(from, to, n) memcpy(to, from, n)
# define FG_MEM_COPY(to,from,n) memcpy(to, from, n)
-# if _MSC_VER == 1200 // msvc++ 6.0
+# if _MSC_VER >= 1200 // msvc++ 6.0 or greater
# define SG_NAMESPACES
# define SG_HAVE_STD
# define SG_HAVE_STD_INCLUDES
# define STL_STRING <string>
# define STL_STRSTREAM <strstream>
+# define isnan _isnan
# define snprintf _snprintf
# pragma warning(disable: 4786) // identifier was truncated to '255' characters
# define SG_HAVE_NATIVE_SGI_COMPILERS
# define SG_EXPLICIT_FUNCTION_TMPL_ARGS
+# define SG_CLASS_PARTIAL_SPECIALIZATION
# define SG_NEED_AUTO_PTR
# define SG_MEMBER_TEMPLATES
# define SG_NAMESPACES
# define SG_HAVE_STD
-# define SG_CLASS_PARTIAL_SPECIALIZATION
+# define SG_HAVE_STREAMBUF
# define SG_HAVE_TRAITS
+# define SG_HAVE_STD_INCLUDES
# define STL_ALGORITHM <algorithm>
# define STL_FUNCTIONAL <functional>
-# define STL_IOMANIP <iomanip.h>
-# define STL_IOSTREAM <iostream.h>
-# define STL_ITERATOR <iterator.h>
-# define STL_FSTREAM <fstream.h>
+# define STL_IOMANIP <iomanip>
+# define STL_IOSTREAM <iostream>
+# define STL_ITERATOR <iterator>
+# define STL_FSTREAM <fstream>
# define STL_STDEXCEPT <stdexcept>
+#if (_COMPILER_VERSION < 740)
+# define STL_STRING <irix_string>
+#else
# define STL_STRING <string>
-# define STL_STRSTREAM <strstream.h>
-
-// # define __STL_FUNCTION_TMPL_PARTIAL_ORDER
-// typedef void PFNGLPOINTPARAMETERFEXTPROC
-
-#define glPointParameterfEXT glPointParameterfSGIS
-#define glPointParameterfvEXT glPointParameterfvSGIS
+#endif
+# define STL_STRSTREAM <strstream>
#pragma set woff 1001,1012,1014,1116,1155,1172,1174
#pragma set woff 1401,1460,1551,1552,1681
#ifdef __cplusplus
#pragma set woff 1682,3303
+#if (_COMPILER_VERSION >= 740)
+# pragma set woff 3624
+#endif
#endif
-# define SG_COMPILER_STR "SGI Irix compiler version " SG_STRINGIZE(_COMPILER_VERSION)
+# define SG_COMPILER_STR "SGI MipsPro compiler version " SG_STRINGIZE(_COMPILER_VERSION)
#endif // Native SGI compilers
extern void *memmove(void *, const void *, size_t);
# endif // __cplusplus
-# define SG_COMPILER_STR "Sun compiler version " SG_STRINGIZE(__SUNPRO_CC)
+# if !defined( __GNUC__ )
+# define SG_COMPILER_STR "Sun compiler version " SG_STRINGIZE(__SUNPRO_CC)
+# endif
#endif // sun
//
// Intel C++ Compiler
//
-#if defined(__ICC)
+#if defined(__ICC) || defined (__ECC)
# define SG_NAMESPACES
# define SG_HAVE_STD
# define SG_HAVE_STREAMBUF
#endif // __ICC
+//
+// Platform dependent gl.h and glut.h definitions
+//
+
+#ifdef __APPLE__
+# define SG_GL_H <OpenGL/gl.h>
+# define SG_GLX_H <OpenGL/glx.h>
+# define SG_GLU_H <OpenGL/glu.h>
+# define SG_GLEXT_H <OpenGL/glext.h>
+# define SG_GLUT_H <GLUT/glut.h>
+#else
+# define SG_GL_H <GL/gl.h>
+# define SG_GLX_H <GL/glx.h>
+# define SG_GLU_H <GL/glu.h>
+# define SG_GLEXT_H <GL/glext.h>
+# define SG_GLUT_H <GL/glut.h>
+#endif
+
+
//
// No user modifiable definitions beyond here.
//