Add check for C99 round function to configure, and define

a fallback function if round doesn't exist.
This commit is contained in:
Mark Dickinson 2009-04-18 13:58:18 +00:00
parent f498113f3f
commit f253786a80
5 changed files with 24 additions and 3 deletions

View File

@ -22,6 +22,10 @@ functions and constants
extern double copysign(double, double);
#endif
#ifndef HAVE_ROUND
extern double round(double);
#endif
#ifndef HAVE_ACOSH
extern double acosh(double);
#endif

View File

@ -69,6 +69,19 @@ copysign(double x, double y)
}
#endif /* HAVE_COPYSIGN */
#ifndef HAVE_ROUND
double
round(double x)
{
double absx, y;
absx = fabs(x);
y = floor(absx);
if (absx - y >= 0.5)
y += 1.0;
return copysign(y, x);
}
#endif /* HAVE_ROUND */
#ifndef HAVE_LOG1P
#include <float.h>

5
configure vendored
View File

@ -1,5 +1,5 @@
#! /bin/sh
# From configure.in Revision: 71274 .
# From configure.in Revision: 71663 .
# Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.61 for python 3.1.
#
@ -22310,7 +22310,8 @@ fi
for ac_func in acosh asinh atanh copysign expm1 finite hypot log1p
for ac_func in acosh asinh atanh copysign expm1 finite hypot log1p round
do
as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
{ echo "$as_me:$LINENO: checking for $ac_func" >&5

View File

@ -3337,7 +3337,7 @@ then
[Define if tanh(-0.) is -0., or if platform doesn't have signed zeros])
fi
AC_CHECK_FUNCS([acosh asinh atanh copysign expm1 finite hypot log1p])
AC_CHECK_FUNCS([acosh asinh atanh copysign expm1 finite hypot log1p round])
AC_CHECK_DECLS([isinf, isnan, isfinite], [], [], [[#include <math.h>]])
LIBS=$LIBS_SAVE

View File

@ -521,6 +521,9 @@
/* Define if you have readline 4.0 */
#undef HAVE_RL_PRE_INPUT_HOOK
/* Define to 1 if you have the `round' function. */
#undef HAVE_ROUND
/* Define to 1 if you have the `select' function. */
#undef HAVE_SELECT