diff -Nur numpy-1.0.4.old/numpy/core/include/numpy/ufuncobject.h numpy-1.0.4/numpy/core/include/numpy/ufuncobject.h --- numpy-1.0.4.old/numpy/core/include/numpy/ufuncobject.h 2007-11-07 15:05:15 -0700 +++ numpy-1.0.4/numpy/core/include/numpy/ufuncobject.h 2007-11-20 18:10:46 -0700 @@ -223,6 +223,10 @@ /* This code checks the IEEE status flags in a platform-dependent way */ /* Adapted from Numarray */ +#if (defined(__unix__) || defined(unix)) && !defined(USG) +#include +#endif + /* OSF/Alpha (Tru64) ---------------------------------------------*/ #if defined(__osf__) && defined(__alpha) @@ -267,7 +271,7 @@ /* Solaris --------------------------------------------------------*/ /* --------ignoring SunOS ieee_flags approach, someone else can ** deal with that! */ -#elif defined(sun) || defined(__BSD__) || defined(__OpenBSD__) || defined(__FreeBSD__) || defined(__NetBSD__) +#elif defined(sun) || defined(__BSD__) || defined(__OpenBSD__) || (defined(__FreeBSD__) && (__FreeBSD_version < 502114)) || defined(__NetBSD__) #include #define UFUNC_CHECK_STATUS(ret) { \ @@ -281,9 +285,9 @@ (void) fpsetsticky(0); \ } -#elif defined(__GLIBC__) || defined(__APPLE__) || defined(__CYGWIN__) || defined(__MINGW32__) +#elif defined(__GLIBC__) || defined(__APPLE__) || defined(__CYGWIN__) || defined(__MINGW32__) || (defined(__FreeBSD__) && (__FreeBSD_version >= 502114)) -#if defined(__GLIBC__) || defined(__APPLE__) || defined(__MINGW32__) +#if defined(__GLIBC__) || defined(__APPLE__) || defined(__MINGW32__) || defined(__FreeBSD__) #include #elif defined(__CYGWIN__) #include "fenv/fenv.c" diff -Nur numpy-1.0.4.old/numpy/numarray/_capi.c numpy-1.0.4/numpy/numarray/_capi.c --- numpy-1.0.4.old/numpy/numarray/_capi.c 2007-11-07 15:05:16 -0700 +++ numpy-1.0.4/numpy/numarray/_capi.c 2007-11-20 18:05:20 -0700 @@ -4,7 +4,11 @@ #include "numpy/libnumarray.h" #include -#if defined(__GLIBC__) || defined(__APPLE__) || defined(__MINGW32__) +#if (defined(__unix__) || defined(unix)) && !defined(USG) +#include +#endif + +#if defined(__GLIBC__) || defined(__APPLE__) || defined(__MINGW32__) || (defined(__FreeBSD__) && (__FreeBSD_version >= 502114)) #include #elif defined(__CYGWIN__) #include "numpy/fenv/fenv.h" @@ -231,7 +235,7 @@ } /* Likewise for Integer overflows */ -#if defined(__GLIBC__) || defined(__APPLE__) || defined(__CYGWIN__) || defined(__MINGW32__) +#if defined(__GLIBC__) || defined(__APPLE__) || defined(__CYGWIN__) || defined(__MINGW32__) || (defined(__FreeBSD__) && (__FreeBSD_version >= 502114)) static int int_overflow_error(Float64 value) { /* For x86_64 */ feraiseexcept(FE_OVERFLOW); return (int) value; @@ -2939,7 +2943,7 @@ return retstatus; } -#elif defined(__GLIBC__) || defined(__APPLE__) || defined(__CYGWIN__) || defined(__MINGW32__) +#elif defined(__GLIBC__) || defined(__APPLE__) || defined(__CYGWIN__) || defined(__MINGW32__) || (defined(__FreeBSD__) && (__FreeBSD_version >= 502114)) static int NA_checkFPErrors(void)