X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=m4%2Ffloor.m4;h=ad6a1e49fb0d8f62dff524b9765b1a0e8e020544;hb=a7d7f459f75a5f4323cd95b4963fff8965b922b1;hp=dd1e6f6e251c093af31914c81796a653c5db7160;hpb=93ac3c97f65305215855750c72024a3745948aaf;p=gnulib.git diff --git a/m4/floor.m4 b/m4/floor.m4 index dd1e6f6e2..ad6a1e49f 100644 --- a/m4/floor.m4 +++ b/m4/floor.m4 @@ -1,5 +1,5 @@ -# floor.m4 serial 1 -dnl Copyright (C) 2007 Free Software Foundation, Inc. +# floor.m4 serial 3 +dnl Copyright (C) 2007, 2009, 2010 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. @@ -7,18 +7,19 @@ dnl with or without modifications, as long as this notice is preserved. AC_DEFUN([gl_FUNC_FLOOR], [ dnl Test whether floor() can be used without libm. - FLOOR_LIBM=? - AC_TRY_LINK([ - #ifndef __NO_MATH_INLINES - # define __NO_MATH_INLINES 1 /* for glibc */ - #endif - #include - double x;], - [x = floor(x);], - [FLOOR_LIBM=]) + gl_FUNC_FLOOR_LIBS if test "$FLOOR_LIBM" = "?"; then - save_LIBS="$LIBS" - LIBS="$LIBS -lm" + FLOOR_LIBM= + fi + AC_SUBST([FLOOR_LIBM]) +]) + +# Determines the libraries needed to get the floor() function. +# Sets FLOOR_LIBM. +AC_DEFUN([gl_FUNC_FLOOR_LIBS], +[ + gl_CACHE_VAL_SILENT([gl_cv_func_floor_libm], [ + gl_cv_func_floor_libm=? AC_TRY_LINK([ #ifndef __NO_MATH_INLINES # define __NO_MATH_INLINES 1 /* for glibc */ @@ -26,11 +27,20 @@ AC_DEFUN([gl_FUNC_FLOOR], #include double x;], [x = floor(x);], - [FLOOR_LIBM="-lm"]) - LIBS="$save_LIBS" - fi - if test "$FLOOR_LIBM" = "?"; then - FLOOR_LIBM= - fi - AC_SUBST([FLOOR_LIBM]) + [gl_cv_func_floor_libm=]) + if test "$gl_cv_func_floor_libm" = "?"; then + save_LIBS="$LIBS" + LIBS="$LIBS -lm" + AC_TRY_LINK([ + #ifndef __NO_MATH_INLINES + # define __NO_MATH_INLINES 1 /* for glibc */ + #endif + #include + double x;], + [x = floor(x);], + [gl_cv_func_floor_libm="-lm"]) + LIBS="$save_LIBS" + fi + ]) + FLOOR_LIBM="$gl_cv_func_floor_libm" ])