From 75b6133098753a31b722f94b86e95b11323735f0 Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Tue, 29 May 2012 15:58:15 +0000 Subject: Resync config/ from GCC. --- config/math.m4 | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 config/math.m4 (limited to 'config/math.m4') diff --git a/config/math.m4 b/config/math.m4 new file mode 100644 index 000000000..23835f230 --- /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 +#endif +#ifdef HAVE_MATH_H +#include +#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 +]) -- cgit v1.2.3