X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=m4%2Ffloorf.m4;h=77f6a266a97b6538289584ea7368b145770e677a;hb=0918b47b06be41b037be7826c5de04d559026d3e;hp=aa76f8cae20e323285e2e8862e41834db5f7678e;hpb=e73e42a61d1dbf1a80ba2fd95fef2aa98de6f48b;p=gnulib.git diff --git a/m4/floorf.m4 b/m4/floorf.m4 index aa76f8cae..77f6a266a 100644 --- a/m4/floorf.m4 +++ b/m4/floorf.m4 @@ -1,5 +1,5 @@ -# floorf.m4 serial 10 -dnl Copyright (C) 2007, 2009-2011 Free Software Foundation, Inc. +# floorf.m4 serial 13 +dnl Copyright (C) 2007, 2009-2012 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -11,7 +11,7 @@ AC_DEFUN([gl_FUNC_FLOORF], dnl Persuade glibc to declare floorf(). AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS]) dnl Test whether floorf() is declared. - AC_CHECK_DECLS([floorf], , , [#include ]) + AC_CHECK_DECLS([floorf], , , [[#include ]]) if test "$ac_cv_have_decl_floorf" = yes; then dnl Test whether floorf() can be used without libm. gl_FUNC_FLOORF_LIBS @@ -22,6 +22,7 @@ AC_DEFUN([gl_FUNC_FLOORF], fi m4_ifdef([gl_FUNC_FLOORF_IEEE], [ if test $gl_floorf_required = ieee && test $REPLACE_FLOORF = 0; then + AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles AC_CACHE_CHECK([whether floorf works according to ISO C 99 with IEC 60559], [gl_cv_func_floorf_ieee], [ @@ -47,7 +48,13 @@ int main (int argc, char *argv[]) ]])], [gl_cv_func_floorf_ieee=yes], [gl_cv_func_floorf_ieee=no], - [gl_cv_func_floorf_ieee="guessing no"]) + [case "$host_os" in + # Guess yes on glibc systems. + *-gnu*) gl_cv_func_floorf_ieee="guessing yes" ;; + # If we don't know, assume the worst. + *) gl_cv_func_floorf_ieee="guessing no" ;; + esac + ]) LIBS="$save_LIBS" ]) case "$gl_cv_func_floorf_ieee" in @@ -78,8 +85,9 @@ AC_DEFUN([gl_FUNC_FLOORF_LIBS], # define __NO_MATH_INLINES 1 /* for glibc */ #endif #include + float (*funcptr) (float) = floorf; float x;]], - [[x = floorf(x);]])], + [[x = funcptr(x) + floorf(x);]])], [gl_cv_func_floorf_libm=]) if test "$gl_cv_func_floorf_libm" = "?"; then save_LIBS="$LIBS" @@ -90,8 +98,9 @@ AC_DEFUN([gl_FUNC_FLOORF_LIBS], # define __NO_MATH_INLINES 1 /* for glibc */ #endif #include + float (*funcptr) (float) = floorf; float x;]], - [[x = floorf(x);]])], + [[x = funcptr(x) + floorf(x);]])], [gl_cv_func_floorf_libm="-lm"]) LIBS="$save_LIBS" fi