]> git.mxchange.org Git - simgear.git/blobdiff - simgear/compiler.h
fix #314: Nasal not working on i386/32bit systems with gcc>=4.5.x
[simgear.git] / simgear / compiler.h
index 6a9ec5d84587f6ada8228eabfb6b6db83cf1e5ba..372f571d9d7dd1fa5e0fb4a15d87bf2d2fef8cee 100644 (file)
 
 
 #if defined (__sun)
+#  define SG_UNIX
 #  include <strings.h>
 #  include <memory.h>
 #  if defined ( __cplusplus )
 //
 
 #ifdef __APPLE__
+#  define SG_MAC
+#  define SG_UNIX
 #  ifdef __GNUC__
 #    if ( __GNUC__ > 3 ) || ( __GNUC__ == 3 && __GNUC_MINOR__ >= 3 )
 inline int (isnan)(double r) { return !(r <= 0 || r >= 0); }
@@ -154,6 +157,7 @@ inline int (isnan)(double r) { return !(r <= 0 || r >= 0); }
 #endif
 
 #if defined (__FreeBSD__)
+#  define SG_UNIX
 #include <sys/param.h>
 #  if __FreeBSD_version < 500000
      extern "C" {
@@ -163,9 +167,19 @@ inline int (isnan)(double r) { return !(r <= 0 || r >= 0); }
 #endif
 
 #if defined (__CYGWIN__)
+#  define SG_WINDOWS
+#  define SG_UNIX
 #  include <ieeefp.h>          // isnan
 #endif
 
+// includes both MSVC and mingw compilers
+#if defined(_WIN32) || defined(__WIN32__)
+#  define SG_WINDOWS
+#endif
+
+#if defined(__linux__) || defined(_AIX) || defined ( sgi )
+#  define SG_UNIX
+#endif
 
 //
 // No user modifiable definitions beyond here.