1 dnl GCC_CHECK_LIBM 2 dnl 3 dnl Check whether -lm is available. This is a pre-requisite for 4 dnl GCC_CHECK_MATH_FUNC so that it will link with -lm. 5 AC_DEFUN([GCC_CHECK_LIBM], 6 [AC_CHECK_LIB([m],[sin])]) 7 8 dnl GCC_CHECK_MATH_HEADERS 9 dnl 10 dnl Check for math.h and complex.h. This is a pre-requisite for 11 dnl GCC_CHECK_MATH_FUNC so that it includes the right headers. 12 dnl (Some systems, such as AIX or OpenVMS may define macro for math 13 dnl functions). 14 AC_DEFUN([GCC_CHECK_MATH_HEADERS], 15 [AC_CHECK_HEADERS_ONCE(math.h complex.h)]) 16 17 dnl GCC_CHECK_MATH_FUNC([name]) 18 dnl 19 dnl Check whether math function NAME is available on the system (by compiling 20 dnl and linking a C program) and run define HAVE_name on success. 21 dnl 22 dnl Note that OpenVMS system insists on including complex.h before math.h 23 AC_DEFUN([GCC_CHECK_MATH_FUNC], 24 [ 25 AC_REQUIRE([GCC_CHECK_LIBM]) 26 AC_REQUIRE([GCC_CHECK_MATH_HEADERS]) 27 AC_CACHE_CHECK([for $1], [gcc_cv_math_func_$1], 28 [AC_LINK_IFELSE([ 29 #ifdef HAVE_COMPLEX_H 30 #include <complex.h> 31 #endif 32 #ifdef HAVE_MATH_H 33 #include <math.h> 34 #endif 35 36 int (*ptr)() = (int (*)())$1; 37 38 int 39 main () 40 { 41 return 0; 42 } 43 ], 44 [gcc_cv_math_func_$1=yes], 45 [gcc_cv_math_func_$1=no])]) 46 if test $gcc_cv_math_func_$1 = yes; then 47 AC_DEFINE_UNQUOTED(AS_TR_CPP(HAVE_$1),[1], 48 [Define to 1 if you have the `$1' function.]) 49 fi 50 ]) 51