X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=m4%2Fremainder.m4;h=c6abf95616061c81fe9aa5774b9d3e55d4fddc1d;hb=133948aba19552e7bc92aa38a667347791da7e86;hp=855c1bb3f218dd0d327f82cdede9d48febc63320;hpb=ea346fbdca66ab2d3bca40f65def36014ba6e432;p=gnulib.git diff --git a/m4/remainder.m4 b/m4/remainder.m4 index 855c1bb3f..c6abf9561 100644 --- a/m4/remainder.m4 +++ b/m4/remainder.m4 @@ -1,5 +1,5 @@ -# remainder.m4 serial 2 -dnl Copyright (C) 2012 Free Software Foundation, Inc. +# remainder.m4 serial 4 +dnl Copyright (C) 2012-2013 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. @@ -56,6 +56,7 @@ AC_DEFUN([gl_FUNC_REMAINDER], : m4_ifdef([gl_FUNC_REMAINDER_IEEE], [ if test $gl_remainder_required = ieee && test $REPLACE_REMAINDER = 0; then + AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles AC_CACHE_CHECK([whether remainder works according to ISO C 99 with IEC 60559], [gl_cv_func_remainder_ieee], [ @@ -90,7 +91,13 @@ int main (int argc, char *argv[]) ]])], [gl_cv_func_remainder_ieee=yes], [gl_cv_func_remainder_ieee=no], - [gl_cv_func_remainder_ieee="guessing no"]) + [case "$host_os" in + # Guess yes on glibc systems. + *-gnu*) gl_cv_func_remainder_ieee="guessing yes" ;; + # If we don't know, assume the worst. + *) gl_cv_func_remainder_ieee="guessing no" ;; + esac + ]) LIBS="$save_LIBS" ]) case "$gl_cv_func_remainder_ieee" in @@ -104,18 +111,24 @@ int main (int argc, char *argv[]) fi if test $HAVE_REMAINDER = 0 || test $REPLACE_REMAINDER = 1; then dnl Find libraries needed to link lib/remainder.c. - AC_REQUIRE([gl_FUNC_ROUND]) - AC_REQUIRE([gl_FUNC_FMA]) + AC_REQUIRE([gl_FUNC_FABS]) + AC_REQUIRE([gl_FUNC_FMOD]) + AC_REQUIRE([gl_FUNC_ISNAND]) REMAINDER_LIBM= - dnl Append $ROUND_LIBM to REMAINDER_LIBM, avoiding gratuitous duplicates. + dnl Append $FABS_LIBM to REMAINDER_LIBM, avoiding gratuitous duplicates. case " $REMAINDER_LIBM " in - *" $ROUND_LIBM "*) ;; - *) REMAINDER_LIBM="$REMAINDER_LIBM $ROUND_LIBM" ;; + *" $FABS_LIBM "*) ;; + *) REMAINDER_LIBM="$REMAINDER_LIBM $FABS_LIBM" ;; esac - dnl Append $FMA_LIBM to REMAINDER_LIBM, avoiding gratuitous duplicates. + dnl Append $FMOD_LIBM to REMAINDER_LIBM, avoiding gratuitous duplicates. case " $REMAINDER_LIBM " in - *" $FMA_LIBM "*) ;; - *) REMAINDER_LIBM="$REMAINDER_LIBM $FMA_LIBM" ;; + *" $FMOD_LIBM "*) ;; + *) REMAINDER_LIBM="$REMAINDER_LIBM $FMOD_LIBM" ;; + esac + dnl Append $ISNAND_LIBM to REMAINDER_LIBM, avoiding gratuitous duplicates. + case " $REMAINDER_LIBM " in + *" $ISNAND_LIBM "*) ;; + *) REMAINDER_LIBM="$REMAINDER_LIBM $ISNAND_LIBM" ;; esac fi AC_SUBST([REMAINDER_LIBM])