aboutsummaryrefslogtreecommitdiffstats
path: root/package/libs/libjson-c/patches/000-libm.patch
diff options
context:
space:
mode:
Diffstat (limited to 'package/libs/libjson-c/patches/000-libm.patch')
-rw-r--r--package/libs/libjson-c/patches/000-libm.patch50
1 files changed, 50 insertions, 0 deletions
diff --git a/package/libs/libjson-c/patches/000-libm.patch b/package/libs/libjson-c/patches/000-libm.patch
new file mode 100644
index 0000000..45adb05
--- /dev/null
+++ b/package/libs/libjson-c/patches/000-libm.patch
@@ -0,0 +1,50 @@
+--- a/configure.ac
++++ b/configure.ac
+@@ -43,12 +43,6 @@
+ AC_FUNC_MALLOC
+ AC_FUNC_REALLOC
+ AC_CHECK_FUNCS(strcasecmp strdup strerror snprintf vsnprintf vasprintf open vsyslog strncasecmp setlocale)
+-AC_CHECK_DECLS([INFINITY], [], [], [[#include <math.h>]])
+-AC_CHECK_DECLS([nan], [], [], [[#include <math.h>]])
+-AC_CHECK_DECLS([isnan], [], [], [[#include <math.h>]])
+-AC_CHECK_DECLS([isinf], [], [], [[#include <math.h>]])
+-AC_CHECK_DECLS([_isnan], [], [], [[#include <float.h>]])
+-AC_CHECK_DECLS([_finite], [], [], [[#include <float.h>]])
+
+ #check if .section.gnu.warning accepts long strings (for __warn_references)
+ AC_LANG_PUSH([C])
+--- a/math_compat.h
++++ b/math_compat.h
+@@ -1,28 +1,9 @@
+ #ifndef __math_compat_h
+ #define __math_compat_h
+
+-/* Define isnan and isinf on Windows/MSVC */
+-
+-#ifndef HAVE_DECL_ISNAN
+-# ifdef HAVE_DECL__ISNAN
+-#include <float.h>
+-#define isnan(x) _isnan(x)
+-# endif
+-#endif
+-
+-#ifndef HAVE_DECL_ISINF
+-# ifdef HAVE_DECL__FINITE
+-#include <float.h>
+-#define isinf(x) (!_finite(x))
+-# endif
+-#endif
+-
+-#ifndef HAVE_DECL_NAN
+-#error This platform does not have nan()
+-#endif
+-
+-#ifndef HAVE_DECL_INFINITY
+-#error This platform does not have INFINITY
+-#endif
++#undef isnan
++#define isnan(x) __builtin_isnan(x)
++#undef isinf
++#define isinf(x) __builtin_isinf(x)
+
+ #endif