Merged changes in the trunk up to revision 26719.
[blender-staging.git] / source / creator / creator.c
index 69e2338f417fdfc5c9c403f27ca3c3a2c945c766..41bf88550c89b1ea8b13613a964c47899cde10a1 100644 (file)
  *
  * ***** END GPL LICENSE BLOCK *****
  */
+
+#if defined(__linux__) && defined(__GNUC__)
+#define _GNU_SOURCE
+#include <fenv.h>
+#endif
+
 #include <stdlib.h>
 #include <string.h>
 
 #include <unistd.h>
 #endif
 
-#ifdef __linux__
-#include <fenv.h>
-#endif
-
 /* This little block needed for linking to Blender... */
 
 #include "MEM_guardedalloc.h"
@@ -352,7 +354,7 @@ static int set_fpe(int argc, char **argv, void *data)
         * set breakpoints on fpe_handler */
        signal(SIGFPE, fpe_handler);
 
-#ifdef __linux__
+#if defined(__linux__) && defined(__GNUC__)
        feenableexcept(FE_DIVBYZERO | FE_INVALID | FE_OVERFLOW );
 #endif
 #endif