From cdab46314ef271e8dc491739dddbaaa197ca3ede Mon Sep 17 00:00:00 2001 From: Bruno Haible Date: Fri, 7 Oct 2011 12:25:52 +0200 Subject: [PATCH] modff: Drop assumption about library that defines modff. * m4/modff.m4 (gl_FUNC_MODFF): Use gl_MATHFUNC macro instead of AC_CHECK_FUNCS. * modules/modff (Files): Add m4/mathfunc.m4. --- ChangeLog | 7 +++++++ m4/modff.m4 | 17 +++++++---------- modules/modff | 1 + 3 files changed, 15 insertions(+), 10 deletions(-) diff --git a/ChangeLog b/ChangeLog index e3ef62de8..6d43b9070 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2011-10-07 Bruno Haible + + modff: Drop assumption about library that defines modff. + * m4/modff.m4 (gl_FUNC_MODFF): Use gl_MATHFUNC macro instead of + AC_CHECK_FUNCS. + * modules/modff (Files): Add m4/mathfunc.m4. + 2011-10-07 Bernhard Voelker raise tests: Avoid a GCC warning. diff --git a/m4/modff.m4 b/m4/modff.m4 index 181c40637..faf58e353 100644 --- a/m4/modff.m4 +++ b/m4/modff.m4 @@ -1,4 +1,4 @@ -# modff.m4 serial 1 +# modff.m4 serial 2 dnl Copyright (C) 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, @@ -9,15 +9,12 @@ AC_DEFUN([gl_FUNC_MODFF], AC_REQUIRE([gl_MATH_H_DEFAULTS]) AC_REQUIRE([gl_FUNC_MODF]) - dnl Test whether modff() exists. Assume that modff(), if it exists, is - dnl defined in the same library as modf(). - save_LIBS="$LIBS" - LIBS="$LIBS $MODF_LIBM" - AC_CHECK_FUNCS([modff]) - LIBS="$save_LIBS" - if test $ac_cv_func_modff = yes; then - MODFF_LIBM="$MODF_LIBM" - else + dnl Test whether modff() exists. We cannot assume that modff(), if it + dnl exists, is defined in the same library as modf(). This is not the case + dnl on FreeBSD, NetBSD, OpenBSD. + gl_MATHFUNC([modff], [float], [(float, float *)]) + if test $gl_cv_func_modff_no_libm = no \ + && test $gl_cv_func_modff_in_libm = no; then HAVE_MODFF=0 MODFF_LIBM="$MODF_LIBM" fi diff --git a/modules/modff b/modules/modff index 891b01c1f..15512136f 100644 --- a/modules/modff +++ b/modules/modff @@ -4,6 +4,7 @@ modff() function: get signed integer and fractional parts. Files: lib/modff.c m4/modff.m4 +m4/mathfunc.m4 Depends-on: math -- 2.11.0