X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=m4%2Ffloorl.m4;h=f21285d24ee3ed9ef5ebbd71339f69b4c3985616;hb=fb733077fcd97a36e1ffdb292387943df8e1b9b4;hp=ab54d939bd211b19046fa9cdda65d201ee04a11c;hpb=1fd8064a06ed3ca83f73c495e998e66c225e395b;p=gnulib.git diff --git a/m4/floorl.m4 b/m4/floorl.m4 index ab54d939b..f21285d24 100644 --- a/m4/floorl.m4 +++ b/m4/floorl.m4 @@ -1,5 +1,5 @@ -# floorl.m4 serial 2 -dnl Copyright (C) 2007 Free Software Foundation, Inc. +# floorl.m4 serial 8 +dnl Copyright (C) 2007, 2009-2011 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. @@ -15,14 +15,17 @@ AC_DEFUN([gl_FUNC_FLOORL], dnl Test whether floorl() can be used without libm. gl_FUNC_FLOORL_LIBS if test "$FLOORL_LIBM" = "?"; then - FLOORL_LIBM= + dnl Sun C 5.0 on Solaris declares floorl() and has it in the system-wide + dnl libm.so, but not in the libm.so that the compiler uses. + REPLACE_FLOORL=1 fi else HAVE_DECL_FLOORL=0 - AC_LIBOBJ([floorl]) + fi + if test $HAVE_DECL_FLOORL = 0 || test $REPLACE_FLOORL = 1; then + dnl No libraries are needed to link lib/floorl.c. FLOORL_LIBM= fi - AC_SUBST([HAVE_DECL_FLOORL]) AC_SUBST([FLOORL_LIBM]) ]) @@ -30,29 +33,31 @@ AC_DEFUN([gl_FUNC_FLOORL], # Sets FLOORL_LIBM. AC_DEFUN([gl_FUNC_FLOORL_LIBS], [ - AC_CACHE_VAL([gl_func_floorl_libm], [ - gl_func_floorl_libm=? - AC_TRY_LINK([ - #ifndef __NO_MATH_INLINES - # define __NO_MATH_INLINES 1 /* for glibc */ - #endif - #include - long double x;], - [x = floorl(x);], - [gl_func_floorl_libm=]) - if test "$gl_func_floorl_libm" = "?"; then + gl_CACHE_VAL_SILENT([gl_cv_func_floorl_libm], [ + gl_cv_func_floorl_libm=? + AC_LINK_IFELSE( + [AC_LANG_PROGRAM( + [[#ifndef __NO_MATH_INLINES + # define __NO_MATH_INLINES 1 /* for glibc */ + #endif + #include + long double x;]], + [[x = floorl(x);]])], + [gl_cv_func_floorl_libm=]) + if test "$gl_cv_func_floorl_libm" = "?"; then save_LIBS="$LIBS" LIBS="$LIBS -lm" - AC_TRY_LINK([ - #ifndef __NO_MATH_INLINES - # define __NO_MATH_INLINES 1 /* for glibc */ - #endif - #include - long double x;], - [x = floorl(x);], - [gl_func_floorl_libm="-lm"]) + AC_LINK_IFELSE( + [AC_LANG_PROGRAM( + [[#ifndef __NO_MATH_INLINES + # define __NO_MATH_INLINES 1 /* for glibc */ + #endif + #include + long double x;]], + [[x = floorl(x);]])], + [gl_cv_func_floorl_libm="-lm"]) LIBS="$save_LIBS" fi ]) - FLOORL_LIBM="$gl_func_floorl_libm" + FLOORL_LIBM="$gl_cv_func_floorl_libm" ])