lib: IEC559 tests are fragile, reduce to warning rather than error.

* {network,stream}.c: Weaken the compile time tests for IEEE754 / IEC-559
  binary floating point format from an error to a warning when not detected.

  I can't think of any platforms that are not IEEE-754 format, and as the
  testing for the defines appears to be fragile (often not set) the error
  just gives false positives.

  Even the warnings may be too much.  Those should probably be moved
  to some configure test.  Will do for now though, to fix compilation
  on CentOS and some BSDs.
diff --git a/lib/network.c b/lib/network.c
index b81d5f8..b982640 100644
--- a/lib/network.c
+++ b/lib/network.c
@@ -97,7 +97,9 @@
 float
 htonf (float host)
 {
-#ifdef __STDC_IEC_559__
+#if !defined(__STDC_IEC_559__) && __GCC_IEC_559 < 0
+#warning "Unknown floating-point format on platform, htonf may break"
+#endif
   u_int32_t lu1, lu2;
   float convert;
   
@@ -105,9 +107,6 @@
   lu2 = htonl (lu1);
   memcpy (&convert, &lu2, sizeof (u_int32_t));
   return convert;
-#else
-#error "Please supply htonf implementation for this platform"
-#endif 
 }
 
 float
diff --git a/lib/stream.c b/lib/stream.c
index 4d4f867..43575e1 100644
--- a/lib/stream.c
+++ b/lib/stream.c
@@ -498,33 +498,31 @@
 float
 stream_getf (struct stream *s)
 {
-#if defined(__STDC_IEC_559__) || __GCC_IEC_559 >= 1
-/* we can safely assume 'float' is in the single precision
-   IEC 60559 binary format in host order */
+#if !defined(__STDC_IEC_559__) && __GCC_IEC_559 < 1
+#warning "Unknown floating-point format, __func__ may be wrong"
+#endif
+/* we assume 'float' is in the single precision IEC 60559 binary
+   format, in host byte order */
   union {
     float r;
     uint32_t d;
   } u;
   u.d = stream_getl (s);
   return u.r;
-#else
-#error "Please supply stream_getf implementation for this platform"
-#endif
 }
 
 double
 stream_getd (struct stream *s)
 {
-#if defined(__STDC_IEC_559__) || __GCC_IEC_559 >= 1
+#if !defined(__STDC_IEC_559__) && __GCC_IEC_559 < 1
+#warning "Unknown floating-point format, __func__ may be wrong"
+#endif
   union {
     double r;
     uint64_t d;
   } u;
   u.d = stream_getq (s);
   return u.r;
-#else
-#error "Please supply stream_getd implementation for this platform"
-#endif
 }
 
 /* Copy to source to stream.
@@ -638,7 +636,10 @@
 int
 stream_putf (struct stream *s, float f)
 {
-#if defined(__STDC_IEC_559__) || __GCC_IEC_559 >= 1
+#if !defined(__STDC_IEC_559__) && __GCC_IEC_559 < 1
+#warning "Unknown floating-point format, __func__ may be wrong"
+#endif
+
 /* we can safely assume 'float' is in the single precision
    IEC 60559 binary format in host order */
   union {
@@ -647,24 +648,20 @@
   } u;
   u.i = f;
   return stream_putl (s, u.o);
-#else
-#error "Please supply stream_putf implementation for this platform"
-#endif
 }
 
 int
 stream_putd (struct stream *s, double d)
 {
-#if defined(__STDC_IEC_559__) || __GCC_IEC_559 >= 1
+#if !defined(__STDC_IEC_559__) && __GCC_IEC_559 < 1
+#warning "Unknown floating-point format, __func__ may be wrong"
+#endif
   union {
     double i;
     uint64_t o;
   } u;
   u.i = d;
   return stream_putq (s, u.o);
-#else
-#error "Please supply stream_putd implementation for this platform"
-#endif
 }
 
 int