]> Savannah Git Hosting - gnulib.git/commitdiff
Extend gl_MATHFUNC.
authorBruno Haible <bruno@clisp.org>
Sun, 6 Nov 2011 01:14:43 +0000 (02:14 +0100)
committerBruno Haible <bruno@clisp.org>
Sun, 6 Nov 2011 01:36:13 +0000 (02:36 +0100)
* m4/mathfunc.m4 (gl_MATHFUNC): Accept an 4th parameter of INCLUDES.
Support 'void' as argument type.
* m4/rint.m4 (gl_FUNC_RINT): Update gl_MATHFUNC invocation.

ChangeLog
m4/mathfunc.m4
m4/rint.m4

index 07d0fbd698d2a6128f0152af93c6cd438be0e101..f46a0a38da670b4ebcaea5198d62d9e04d7d6f2b 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2011-11-05  Bruno Haible  <bruno@clisp.org>
+
+       Extend gl_MATHFUNC.
+       * m4/mathfunc.m4 (gl_MATHFUNC): Accept an 4th parameter of INCLUDES.
+       Support 'void' as argument type.
+       * m4/rint.m4 (gl_FUNC_RINT): Update gl_MATHFUNC invocation.
+
 2011-11-05  Jim Meyering  <meyering@redhat.com>
 
        maint.mk: also prohibit inclusion of dirent.h without use
index b7a1239f74a82ee40ba39205a45ad00cd2ba9b68..c75e7b939f1d1cfc80ee7f7d75727e55cfdbadb3 100644 (file)
@@ -1,11 +1,11 @@
-# mathfunc.m4 serial 9
+# mathfunc.m4 serial 10
 dnl Copyright (C) 2010-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.
 
-# gl_MATHFUNC(FUNC, RETTYPE, PARAMTYPES [, EXTRA-CODE])
-# -----------------------------------------------------
+# gl_MATHFUNC(FUNC, RETTYPE, PARAMTYPES [, INCLUDES] [, EXTRA-CODE])
+# ------------------------------------------------------------------
 # tests whether the function FUNC is available in libc or libm.
 # RETTYPE is the return type. PARAMTYPES is a parameter list, with parentheses.
 # It sets FUNC_LIBM to empty or "-lm" accordingly.
@@ -38,15 +38,17 @@ AC_DEFUN([gl_MATHFUNC],
                                     [m4_bpatsubst(
                                        [m4_bpatsubst(
                                           [m4_bpatsubst(
-                                             [$3],
-                                             [int \*], [&i_ret])],
-                                          [float \*], [&f_ret])],
-                                       [double \*], [&d_ret])],
-                                    [long double \*], [&l_ret])],
-                                 [int], [2])],
-                              [float], [1.618034f])],
-                           [long double], [1.618033988749894848L])],
-                        [double], [1.6180339887])])
+                                             [m4_bpatsubst(
+                                                [$3],
+                                                [int \*], [&i_ret])],
+                                             [float \*], [&f_ret])],
+                                          [double \*], [&d_ret])],
+                                       [long double \*], [&l_ret])],
+                                    [int], [2])],
+                                 [float], [1.618034f])],
+                              [long double], [1.618033988749894848L])],
+                           [double], [1.6180339887])],
+                        [void], [])])
   FUNC[]_LIBM=
   AC_CACHE_CHECK([whether func() can be used without linking with libm],
     [gl_cv_func_]func[_no_libm],
@@ -57,13 +59,14 @@ AC_DEFUN([gl_MATHFUNC],
              # define __NO_MATH_INLINES 1 /* for glibc */
              #endif
              #include <math.h>
+             $4
              $2 (*funcptr) $3 = ]func[;
              int i_ret;
              float f_ret;
              double d_ret;
              long double l_ret;]],
            [[$2 y = funcptr ]ARGS[ + ]func[ ]ARGS[;
-             $4
+             $5
              return y < 0.3 || y > 1.7;
            ]])],
         [gl_cv_func_]func[_no_libm=yes],
@@ -81,13 +84,14 @@ AC_DEFUN([gl_MATHFUNC],
                # define __NO_MATH_INLINES 1 /* for glibc */
                #endif
                #include <math.h>
+               $4
                $2 (*funcptr) $3 = ]func[;
                int i_ret;
                float f_ret;
                double d_ret;
                long double l_ret;]],
              [[$2 y = funcptr ]ARGS[ + ]func[ ]ARGS[;
-               $4
+               $5
                return y < 0.3 || y > 1.7;
              ]])],
           [gl_cv_func_]func[_in_libm=yes],
index 2a0913659d724fe5583587608e3bc1e936bb7393..410db8bdd98eb07729af1b7f75e593ef8b0a96ae 100644 (file)
@@ -1,4 +1,4 @@
-# rint.m4 serial 3
+# rint.m4 serial 4
 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,
@@ -13,7 +13,7 @@ AC_DEFUN([gl_FUNC_RINT],
   dnl In AIX 7.1 with gcc 4.2, when optimization is turned on, calls to
   dnl rint() with simple arguments are turned into rintf() calls by the
   dnl compiler. But while rint() is resides in libc, rintf() is in libm.
-  gl_MATHFUNC([rint], [double], [(double)], [y += rint (2.0);])
+  gl_MATHFUNC([rint], [double], [(double)], [], [y += rint (2.0);])
   if test $gl_cv_func_rint_no_libm = no \
      && test $gl_cv_func_rint_in_libm = no; then
     HAVE_RINT=0