1
# We check two things: where the include file is for cmath. We
2
# include AC_TRY_COMPILE for all the combinations we've seen in the
3
# wild. We define one of HAVE_CMATH or HAVE_TR1_CMATH or
4
# HAVE_BOOST_CMATH depending
7
AC_DEFUN([AC_CXX_CMATH],
8
[AC_MSG_CHECKING(the location of cmath)
12
ac_cv_cxx_cmath_namespace=""
13
for location in tr1/cmath boost/cmath cmath; do
14
for namespace in __gnu_cxx "" std stdext std::tr1; do
15
if test -z "$ac_cv_cxx_cmath"; then
16
AC_TRY_COMPILE([#include <$location>],
17
[$namespace::isfinite(1)],
18
[ac_cv_cxx_cmath="<$location>";
19
ac_cv_cxx_cmath_namespace="$namespace";])
23
if test -n "$ac_cv_cxx_cmath"; then
24
AC_MSG_RESULT([$ac_cv_cxx_cmath])
26
ac_cv_cxx_cmath="<math.h>"
27
ac_cv_cxx_cmath_namespace=""
29
AC_MSG_WARN([Could not find a cmath header.])
31
AC_DEFINE_UNQUOTED(CMATH_H,$ac_cv_cxx_cmath,
32
[the location of <cmath>])
33
AC_DEFINE_UNQUOTED(CMATH_NAMESPACE,$ac_cv_cxx_cmath_namespace,
34
[the namespace of C99 math extensions])