Explorar el Código

jsoncpp: Fix compilation on HP-UX 11.31 ia64 with GCC 4.9.3

In particular, fix the `isfinite` definition.
Earle Lowe hace 6 años
padre
commit
1059f9a96d
Se han modificado 1 ficheros con 3 adiciones y 2 borrados
  1. 3 2
      Utilities/cmjsoncpp/src/lib_json/json_writer.cpp

+ 3 - 2
Utilities/cmjsoncpp/src/lib_json/json_writer.cpp

@@ -30,7 +30,7 @@
 #define isfinite finite
 #define isfinite finite
 #endif
 #endif
 #elif defined(__hpux)
 #elif defined(__hpux)
-#if !defined(isfinite)
+#if !defined(isfinite) && !defined(__GNUC__)
 #if defined(__ia64) && !defined(finite)
 #if defined(__ia64) && !defined(finite)
 #define isfinite(x) ((sizeof(x) == sizeof(float) ? \
 #define isfinite(x) ((sizeof(x) == sizeof(float) ? \
                      _Isfinitef(x) : _IsFinite(x)))
                      _Isfinitef(x) : _IsFinite(x)))
@@ -86,10 +86,11 @@
 // HP-UX
 // HP-UX
 #if defined(__hpux)
 #if defined(__hpux)
 # if !defined(isfinite)
 # if !defined(isfinite)
-#  if defined(__ia64) && !defined(finite)
+#  if defined(__ia64) && !defined(finite) && !defined(__GNUC__)
 #   define isfinite(x) ((sizeof(x) == sizeof(float) ? \
 #   define isfinite(x) ((sizeof(x) == sizeof(float) ? \
                         _Isfinitef(x) : _Isfinite(x)))
                         _Isfinitef(x) : _Isfinite(x)))
 #  else
 #  else
+#   include <math.h>
 #   define isfinite finite
 #   define isfinite finite
 #  endif
 #  endif
 # endif
 # endif