summaryrefslogtreecommitdiff
path: root/Utilities/cmjsoncpp
diff options
context:
space:
mode:
authorEarle Lowe <elowe@elowe.com>2019-07-02 18:20:41 -0400
committerBrad King <brad.king@kitware.com>2019-09-20 10:30:01 -0400
commit1059f9a96da377af771fe643abc1d060db6d64bb (patch)
treeb81f7f6fde0092e65f77bb31abbc6fd024575b8b /Utilities/cmjsoncpp
parentdf0586d8d5c99d870369f1f60f63431deb98a6ba (diff)
downloadcmake-1059f9a96da377af771fe643abc1d060db6d64bb.tar.gz
jsoncpp: Fix compilation on HP-UX 11.31 ia64 with GCC 4.9.3
In particular, fix the `isfinite` definition.
Diffstat (limited to 'Utilities/cmjsoncpp')
-rw-r--r--Utilities/cmjsoncpp/src/lib_json/json_writer.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/Utilities/cmjsoncpp/src/lib_json/json_writer.cpp b/Utilities/cmjsoncpp/src/lib_json/json_writer.cpp
index 6e6e57e1f8..fc86505983 100644
--- a/Utilities/cmjsoncpp/src/lib_json/json_writer.cpp
+++ b/Utilities/cmjsoncpp/src/lib_json/json_writer.cpp
@@ -30,7 +30,7 @@
#define isfinite finite
#endif
#elif defined(__hpux)
-#if !defined(isfinite)
+#if !defined(isfinite) && !defined(__GNUC__)
#if defined(__ia64) && !defined(finite)
#define isfinite(x) ((sizeof(x) == sizeof(float) ? \
_Isfinitef(x) : _IsFinite(x)))
@@ -86,10 +86,11 @@
// HP-UX
#if defined(__hpux)
# if !defined(isfinite)
-# if defined(__ia64) && !defined(finite)
+# if defined(__ia64) && !defined(finite) && !defined(__GNUC__)
# define isfinite(x) ((sizeof(x) == sizeof(float) ? \
_Isfinitef(x) : _Isfinite(x)))
# else
+# include <math.h>
# define isfinite finite
# endif
# endif