Index: config/math.m4 |
diff --git a/config/math.m4 b/config/math.m4 |
new file mode 100644 |
index 0000000000000000000000000000000000000000..23835f230cb42ecb05612590708551bc8646a86c |
--- /dev/null |
+++ b/config/math.m4 |
@@ -0,0 +1,50 @@ |
+dnl GCC_CHECK_LIBM |
+dnl |
+dnl Check whether -lm is available. This is a pre-requisite for |
+dnl GCC_CHECK_MATH_FUNC so that it will link with -lm. |
+AC_DEFUN([GCC_CHECK_LIBM], |
+[AC_CHECK_LIB([m],[sin])]) |
+ |
+dnl GCC_CHECK_MATH_HEADERS |
+dnl |
+dnl Check for math.h and complex.h. This is a pre-requisite for |
+dnl GCC_CHECK_MATH_FUNC so that it includes the right headers. |
+dnl (Some systems, such as AIX or OpenVMS may define macro for math |
+dnl functions). |
+AC_DEFUN([GCC_CHECK_MATH_HEADERS], |
+[AC_CHECK_HEADERS_ONCE(math.h complex.h)]) |
+ |
+dnl GCC_CHECK_MATH_FUNC([name]) |
+dnl |
+dnl Check whether math function NAME is available on the system (by compiling |
+dnl and linking a C program) and run define HAVE_name on success. |
+dnl |
+dnl Note that OpenVMS system insists on including complex.h before math.h |
+AC_DEFUN([GCC_CHECK_MATH_FUNC], |
+[ |
+ AC_REQUIRE([GCC_CHECK_LIBM]) |
+ AC_REQUIRE([GCC_CHECK_MATH_HEADERS]) |
+ AC_CACHE_CHECK([for $1], [gcc_cv_math_func_$1], |
+ [AC_LINK_IFELSE([ |
+#ifdef HAVE_COMPLEX_H |
+#include <complex.h> |
+#endif |
+#ifdef HAVE_MATH_H |
+#include <math.h> |
+#endif |
+ |
+int (*ptr)() = (int (*)())$1; |
+ |
+int |
+main () |
+{ |
+ return 0; |
+} |
+], |
+[gcc_cv_math_func_$1=yes], |
+[gcc_cv_math_func_$1=no])]) |
+ if test $gcc_cv_math_func_$1 = yes; then |
+ AC_DEFINE_UNQUOTED(AS_TR_CPP(HAVE_$1),[1], |
+ [Define to 1 if you have the `$1' function.]) |
+ fi |
+]) |