111
|
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 ])
|