$NetBSD$

Add ifdef(__NetBSD__) and definitions of FP_* constants on NetBSD.

--- icc11/include/mathimf.h.orig	2009-10-03 22:44:32.000000000 +0100
+++ icc11/include/mathimf.h
@@ -53,7 +53,7 @@
 # define __IMFCOMPLEXON
 #endif
 
-#if defined(__linux__) || defined(__APPLE__) || defined(__FreeBSD__) || defined(__QNX__)
+#if defined(__linux__) || defined(__APPLE__) || defined(__FreeBSD__) || defined(__NetBSD__) || defined(__QNX__)
 # if defined(fpclassify)
 #  undef fpclassify
 # endif
@@ -77,7 +77,7 @@
 # endif
 #endif /* __linux__ */
 
-#if defined(__linux__) || defined(__APPLE__) || defined(__FreeBSD__) || defined(__QNX__)
+#if defined(__linux__) || defined(__APPLE__) || defined(__FreeBSD__) || defined(__NetBSD__) || defined(__QNX__)
 # if defined(isgreater)
 #  undef isgreater
 # endif
@@ -99,7 +99,7 @@
 #endif /* __linux__ || __APPLE__ */
 
 #if !(defined(__unix__) || defined(__APPLE__) || defined(__QNX__)) /* We need to define FP_ILOGB0, FP_ILOGBNAN */
-#if (defined(__FreeBSD__)) && !(defined(__ECL) || defined(__ECC))   /* FreeBSD - for other unix macro are defined in included math.h*/           
+#if (defined(__FreeBSD__) || defined(__NetBSD__)) && !(defined(__ECL) || defined(__ECC))   /* FreeBSD & NetBSD - for other unix macro are defined in included math.h*/ 
 #define FP_ILOGB0	(-2147483647 - 1)
 #define FP_ILOGBNAN (-2147483647 - 1)
 #else /* Windows */
@@ -108,7 +108,7 @@
 #endif
 #endif
 
-#if !defined(__linux__) && !defined(__APPLE__) && !defined(__FreeBSD__) && !defined(__QNX__)
+#if !defined(__linux__) && !defined(__APPLE__) && !defined(__FreeBSD__) && !defined(__NetBSD__) && !defined(__QNX__)
 static unsigned int __huge_valf[] = {0x7f800000};
 #define HUGE_VALF (*(double *) __huge_valf)
 static unsigned int __huge_vall[] = {0, 0, 0x00007f80, 0};
@@ -172,6 +172,15 @@ extern "C" {
 # define FP_ZERO        (16)
 # define FP_SUBNORMAL   (8)
 # define FP_NORMAL      (4)
+#elif defined(__NetBSD__)
+#define	FP_INFINITE	0x00
+#define	FP_NAN		0x01
+#define	FP_NORMAL	0x02
+#define	FP_SUBNORMAL	0x03
+#define	FP_ZERO		0x04
+/* NetBSD extensions */
+#define	_FP_LOMD	0x80		/* range for machine-specific classes */
+#define	_FP_HIMD	0xff
 #else
 # define FP_NAN       (0)
 # define FP_INFINITE  (1)
@@ -286,7 +295,7 @@ _LIBIMF_EXT _LIBIMF_INT __signbitl     (
     )
 
 
-#if defined (__FreeBSD__)
+#if defined (__FreeBSD__) || defined(__NetBSD__)
 
 #define fpclassify( __x__ ) __IMFC99MACRO1ARG_ALL( __x__, fpclassify, __, f, __, d, __, l)
 #define isinf( __x__ )      __IMFC99MACRO1ARG_ALL( __x__, isinf,      __, f,   ,  , __, l)
