]> git.donarmstrong.com Git - lilypond.git/blobdiff - flower/libc-extension.cc
($(outdir)/%.pdf): add DVIPS_FLAGS. This will
[lilypond.git] / flower / libc-extension.cc
index 198ecbb7fe31cc3d3f6d0f4d5a17ef6f6c6371d5..e072826d302f3bfdce97239e5629c02d95337bbc 100644 (file)
@@ -4,18 +4,17 @@
 
   source file of the flowerlib
 
-  (c)  1997--2003 Han-Wen Nienhuys <hanwen@cs.uu.nl>
+  (c) 1997--2004 Han-Wen Nienhuys <hanwen@cs.uu.nl>
          Jan Nieuwenhuizen <janneke@gnu.org>
 */
 
+#include <math.h>
+
 #include <stdio.h>
 #include <string.h>
 #include <ctype.h>
 #include "libc-extension.hh"
 
-/*
-  urg: why soo wierd?
- */
 char* 
 strnlwr (char* start ,int n)
 {
@@ -38,6 +37,24 @@ strnupr (char* start, int n)
   return start;
 }
 
+/*
+  There are some strange problems with round() on early glibcs.
+ */
+double
+my_round (double x)
+{
+  return floor (x -0.5)+ 1.0 ;
+}
+
+#ifndef isinf
+#if !HAVE_ISINF
+int
+isinf (double x)
+{
+  return x && ( x == x/ 2) ;
+}
+#endif
+#endif
 
 #if !HAVE_MEMMEM
 
@@ -64,7 +81,7 @@ _memmem (Byte const *haystack, int haystack_len,
         if (*subneedle++ != *subhaystack++)
          goto next;
        
-      // completed the needle. Gotcha.
+      /* Completed the needle.  Gotcha.  */
       return (Byte *) haystack;
       next:
        haystack++;
@@ -120,10 +137,6 @@ strrev (Byte* byte, int length_i)
   return byte;
 }
 
-#if ! HAVE_LRINT
-#define lrint(__x) ((long)(double) __x)
-#endif
-
 #if ! HAVE_SNPRINTF
 int 
 snprintf (char *str, size_t, char const *format, ...)
@@ -144,13 +157,3 @@ vsnprintf (char *str, size_t, char const *format, va_list args)
   return i;
 }
 #endif
-
-
-#if !HAVE_ISINF
-int
-isinf (double x)
-{
-  return x && ( x == x/ 2) ;
-}
-
-#endif