X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=simgear%2Fcompiler.h;h=1fa75a3fb9e3d124e1274d0f2ced42459cf0ef36;hb=d0d7878e0a4cc7871276db37517faf0c61693740;hp=c6294e0a87e6aaaae84b47e6711a1eb1141845c9;hpb=b8e93e60991d85cafe198b412f102805a8315159;p=simgear.git diff --git a/simgear/compiler.h b/simgear/compiler.h index c6294e0a..1fa75a3f 100644 --- a/simgear/compiler.h +++ b/simgear/compiler.h @@ -80,6 +80,7 @@ # define STL_FUNCTIONAL # define STL_IOMANIP # define STL_IOSTREAM +# define STL_ITERATOR # define STL_FSTREAM # define STL_STDEXCEPT # define STL_STRING @@ -105,17 +106,44 @@ # define STL_FUNCTIONAL # define STL_IOMANIP # define STL_IOSTREAM +# define STL_ITERATOR # define STL_FSTREAM # define STL_STDEXCEPT # define STL_STRING # define STL_STRSTREAM # endif +# elif __GNUC__ == 3 + // g++-3.0.x +# define SG_EXPLICIT_FUNCTION_TMPL_ARGS +# define SG_NEED_AUTO_PTR +# define SG_MEMBER_TEMPLATES +# define SG_NAMESPACES +# define SG_HAVE_STD +# define SG_HAVE_STREAMBUF +# define SG_CLASS_PARTIAL_SPECIALIZATION +# define SG_HAVE_STD_INCLUDES + +# define STL_ALGORITHM +# define STL_FUNCTIONAL +# define STL_IOMANIP +# define STL_IOSTREAM +# define STL_ITERATOR +# define STL_FSTREAM +# define STL_STDEXCEPT +# define STL_STRING +# define STL_STRSTREAM + # else # error Time to upgrade. GNU compilers < 2.7 not supported # endif #endif +#if defined( __MINGW32__ ) +# define bcopy(from, to, n) memcpy(to, from, n) +# define FG_MEM_COPY(to,from,n) memcpy(to, from, n) +#endif + /* KAI C++ */ #if defined(__KCC) @@ -129,6 +157,7 @@ # define STL_FUNCTIONAL # define STL_IOMANIP # define STL_IOSTREAM +# define STL_ITERATOR # define STL_FSTREAM # define STL_STDEXCEPT # define STL_STRING @@ -151,6 +180,7 @@ # define STL_FUNCTIONAL # define STL_IOMANIP # define STL_IOSTREAM +# define STL_ITERATOR # define STL_FSTREAM # define STL_STDEXCEPT # define STL_STRING @@ -182,6 +212,7 @@ # define STL_FUNCTIONAL # define STL_IOMANIP # define STL_IOSTREAM +# define STL_ITERATOR # define STL_FSTREAM # define STL_STDEXCEPT # define STL_STRING @@ -190,27 +221,6 @@ # pragma warning(disable: 4786) // identifier was truncated to '255' characters # pragma warning(disable: 4244) // conversion from double to float # pragma warning(disable: 4305) // - -# elif _MSC_VER == 1100 // msvc++ 5.0 -# define NEEDNAMESPACESTD -# define SG_NAMESPACES -# define SG_HAVE_STD -# define SG_HAVE_STD_INCLUDES -# define SG_HAVE_STREAMBUF - -# define STL_ALGORITHM -# define STL_FUNCTIONAL -# define STL_IOMANIP -# define STL_IOSTREAM -# define STL_FSTREAM -# define STL_STDEXCEPT -# define STL_STRING -# define STL_STRSTREAM - -# pragma warning(disable: 4786) // identifier was truncated to '255' characters -# pragma warning(disable: 4244) // conversion from double to float -# pragma warning(disable: 4305) // - # else # error What version of MSVC++ is this? # endif @@ -239,6 +249,7 @@ # endif // HAVE_SGI_STL_PORT # define STL_IOSTREAM +# define STL_ITERATOR # define STL_FSTREAM # define STL_STRING # define SG_NO_DEFAULT_TEMPLATE_ARGS @@ -266,11 +277,25 @@ # define STL_FUNCTIONAL # define STL_IOMANIP # define STL_IOSTREAM +# define STL_ITERATOR # define STL_FSTREAM # define STL_STDEXCEPT # define STL_STRING # define STL_STRSTREAM +// # define __STL_FUNCTION_TMPL_PARTIAL_ORDER +// typedef void PFNGLPOINTPARAMETERFEXTPROC + +#define glPointParameterfEXT glPointParameterfSGIS +#define glPointParameterfvEXT glPointParameterfvSGIS + +#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 +#endif + #endif // Native SGI compilers @@ -287,6 +312,27 @@ # endif // __cplusplus #endif // sun +// +// Intel C++ Compiler +// +#if defined(__ICC) +# define SG_NAMESPACES +# define SG_HAVE_STD +# define SG_HAVE_STREAMBUF +# define SG_HAVE_TRAITS +# define SG_HAVE_STD_INCLUDES + +# define STL_ALGORITHM +# define STL_FUNCTIONAL +# define STL_IOMANIP +# define STL_IOSTREAM +# define STL_ITERATOR +# define STL_FSTREAM +# define STL_STDEXCEPT +# define STL_STRING +# define STL_STRSTREAM +#endif // __ICC + // // No user modifiable definitions beyond here. //