X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=m4%2Fcheck-math-lib.m4;h=30bd2e4acc871603d45f7ffe6a4e9cd8ba81bb8e;hb=cca883f60cf5e624b7752fa837548965512e2861;hp=fb9cb94454e23492997d702b4a8f0c2670f60550;hpb=7094a1e0d56aa303077cc0bccaa559a28e613ade;p=gnulib.git diff --git a/m4/check-math-lib.m4 b/m4/check-math-lib.m4 index fb9cb9445..30bd2e4ac 100644 --- a/m4/check-math-lib.m4 +++ b/m4/check-math-lib.m4 @@ -1,32 +1,31 @@ -# check-math-lib.m4 serial 1 -dnl Copyright (C) 2007 Free Software Foundation, Inc. +# check-math-lib.m4 serial 3 +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. dnl -dnl AC_CHECK_MATH_LIB (VARIABLE, EXPRESSION) +dnl gl_CHECK_MATH_LIB (VARIABLE, EXPRESSION) dnl -dnl Checks whether EXPRESSION requires -lm to compile and link. If so, sets -dnl the shell VARIABLE to -lm, otherwise to the empty string. +dnl Sets the shell VARIABLE according to the libraries needed by EXPRESSION +dnl to compile and link: to the empty string if no extra libraries are needed, +dnl to "-lm" if -lm is needed, or to "missing" if it does not compile and +dnl link either way. dnl -dnl Example: AC_CHECK_MATH_LIB([ROUNDF_LIBM], [x = roundf (x);]) +dnl Example: gl_CHECK_MATH_LIB([ROUNDF_LIBM], [x = roundf (x);]) AC_DEFUN([gl_CHECK_MATH_LIB], [ save_LIBS=$LIBS - $1=? + $1=missing for libm in "" "-lm"; do LIBS="$save_LIBS $libm" - AC_TRY_LINK([ - #ifndef __NO_MATH_INLINES - # define __NO_MATH_INLINES 1 /* for glibc */ - #endif - #include - double x;], - [$2], + AC_LINK_IFELSE([AC_LANG_PROGRAM([[ + #ifndef __NO_MATH_INLINES + # define __NO_MATH_INLINES 1 /* for glibc */ + #endif + #include + double x;]], + [$2])], [$1=$libm break]) done LIBS=$save_LIBS - if test "$$1" = "?"; then - $1= - fi ])