]> Savannah Git Hosting - gnulib.git/commitdiff
roundl: Fix a link error on Linux/powerpc64le.
authorBruno Haible <bruno@clisp.org>
Fri, 5 Apr 2024 14:04:59 +0000 (16:04 +0200)
committerBruno Haible <bruno@clisp.org>
Mon, 8 Apr 2024 11:18:06 +0000 (13:18 +0200)
* m4/check-math-lib.m4 (gl_CHECK_MATH_LIB): Accept an additional TYPE
argument.
* m4/isfinite.m4 (gl_ISFINITE): Use the type 'double'.
* m4/isinf.m4 (gl_ISINF): Likewise.
* m4/round.m4 (gl_FUNC_ROUND): Likewise.
* m4/roundf.m4 (gl_FUNC_ROUNDF): Use the type 'float'.
* m4/roundl.m4 (gl_FUNC_ROUNDL): Use the type 'long double'.

ChangeLog
m4/check-math-lib.m4
m4/isfinite.m4
m4/isinf.m4
m4/round.m4
m4/roundf.m4
m4/roundl.m4

index d4d3831cac58759253a12010d2fac3ca6a70ddf7..42c86b1cda758e7cc551bc1052653fd3b5b6c4a1 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,14 @@
+2024-04-05  Bruno Haible  <bruno@clisp.org>
+
+       roundl: Fix a link error on Linux/powerpc64le.
+       * m4/check-math-lib.m4 (gl_CHECK_MATH_LIB): Accept an additional TYPE
+       argument.
+       * m4/isfinite.m4 (gl_ISFINITE): Use the type 'double'.
+       * m4/isinf.m4 (gl_ISINF): Likewise.
+       * m4/round.m4 (gl_FUNC_ROUND): Likewise.
+       * m4/roundf.m4 (gl_FUNC_ROUNDF): Use the type 'float'.
+       * m4/roundl.m4 (gl_FUNC_ROUNDL): Use the type 'long double'.
+
 2024-04-05  Bruno Haible  <bruno@clisp.org>
 
        expl tests: Avoid test failure on NetBSD 10.0/i386.
index 4c300e2c521db5ab67a25575f3d23c682f2a4a52..dbfab2a34976a2b6cdf98ea0761bd42c37177728 100644 (file)
@@ -1,17 +1,17 @@
-# check-math-lib.m4 serial 4
-dnl Copyright (C) 2007, 2009-2023 Free Software Foundation, Inc.
+# check-math-lib.m4 serial 4.1
+dnl Copyright (C) 2007, 2009-2024 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 gl_CHECK_MATH_LIB (VARIABLE, EXPRESSION [, EXTRA-CODE])
+dnl gl_CHECK_MATH_LIB (VARIABLE, TYPE, EXPRESSION [, EXTRA-CODE])
 dnl
 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 (that operates on a variable x of type TYPE) to compile and link: to the
+dnl empty string if no extra libraries are needed, to "-lm" if -lm is needed,
+dnl or to "missing" if it does not compile and link either way.
 dnl
-dnl Example: gl_CHECK_MATH_LIB([ROUNDF_LIBM], [x = roundf (x);])
+dnl Example: gl_CHECK_MATH_LIB([ROUNDF_LIBM], [float], [x = roundf (x);])
 AC_DEFUN([gl_CHECK_MATH_LIB], [
   save_LIBS=$LIBS
   $1=missing
@@ -22,9 +22,9 @@ AC_DEFUN([gl_CHECK_MATH_LIB], [
          # define __NO_MATH_INLINES 1 /* for glibc */
          #endif
          #include <math.h>
-         $3
-         double x;]],
-      [$2])],
+         $4
+         $2 x;]],
+      [$3])],
       [$1=$libm
 break])
   done
index f70181e77890109302750b622bfb431a4e2be224..8db9b66dd82ed7f8edd5724ad347815246c12610 100644 (file)
@@ -1,5 +1,5 @@
-# isfinite.m4 serial 17.1
-dnl Copyright (C) 2007-2023 Free Software Foundation, Inc.
+# isfinite.m4 serial 17.2
+dnl Copyright (C) 2007-2024 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.
@@ -12,8 +12,8 @@ AC_DEFUN([gl_ISFINITE],
   AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS])
   AC_CHECK_DECLS([isfinite], , , [[#include <math.h>]])
   if test "$ac_cv_have_decl_isfinite" = yes; then
-    gl_CHECK_MATH_LIB([ISFINITE_LIBM],
-     [x = isfinite (x) + isfinite ((float) x);])
+    gl_CHECK_MATH_LIB([ISFINITE_LIBM], [double],
+      [x = isfinite (x) + isfinite ((float) x);])
     if test "$ISFINITE_LIBM" != missing; then
       dnl Test whether isfinite() on 'long double' works.
       gl_ISFINITEL_WORKS
index 2b5ebdf9d4f16bc7bf3781e8a5d8a32bf7496da6..dd82b0678b4ffe763f867ccd19b0b6454391c86c 100644 (file)
@@ -1,5 +1,5 @@
-# isinf.m4 serial 13
-dnl Copyright (C) 2007-2023 Free Software Foundation, Inc.
+# isinf.m4 serial 13.1
+dnl Copyright (C) 2007-2024 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.
@@ -17,7 +17,8 @@ AC_DEFUN([gl_ISINF],
       #endif
     ]])
   if test "$ac_cv_have_decl_isinf" = yes; then
-    gl_CHECK_MATH_LIB([ISINF_LIBM], [x = isinf (x) + isinf ((float) x);])
+    gl_CHECK_MATH_LIB([ISINF_LIBM], [double],
+      [x = isinf (x) + isinf ((float) x);])
     if test "$ISINF_LIBM" != missing; then
       dnl Test whether isinf() on 'long double' works.
       gl_ISINFL_WORKS
index febc098ef9ac12c139ef4f9761c9fe788e0cabfe..f2e1263854f1b07a46793a1e3fe3c70073085012 100644 (file)
@@ -1,5 +1,5 @@
-# round.m4 serial 24
-dnl Copyright (C) 2007, 2009-2023 Free Software Foundation, Inc.
+# round.m4 serial 24.1
+dnl Copyright (C) 2007, 2009-2024 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.
@@ -12,7 +12,7 @@ AC_DEFUN([gl_FUNC_ROUND],
   dnl Persuade glibc <math.h> to declare round().
   AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS])
 
-  gl_CHECK_MATH_LIB([ROUND_LIBM], [x = round (x);],
+  gl_CHECK_MATH_LIB([ROUND_LIBM], [double], [x = round (x);],
     [extern
      #ifdef __cplusplus
      "C"
index ca8f6398b4ce50a2da08479380706509e508b4ff..24fb38a250daf511a830b02e6c1de628a9eb0665 100644 (file)
@@ -1,5 +1,5 @@
-# roundf.m4 serial 25
-dnl Copyright (C) 2007-2023 Free Software Foundation, Inc.
+# roundf.m4 serial 25.1
+dnl Copyright (C) 2007-2024 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.
@@ -12,7 +12,7 @@ AC_DEFUN([gl_FUNC_ROUNDF],
   dnl Persuade glibc <math.h> to declare roundf().
   AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS])
 
-  gl_CHECK_MATH_LIB([ROUNDF_LIBM], [x = roundf (x);],
+  gl_CHECK_MATH_LIB([ROUNDF_LIBM], [float], [x = roundf (x);],
     [extern
      #ifdef __cplusplus
      "C"
index f23378cfb5227c990869b9332458728b79123493..16105e2f855881a55829e06714ee8e307fa75339 100644 (file)
@@ -1,5 +1,5 @@
-# roundl.m4 serial 21
-dnl Copyright (C) 2007, 2009-2023 Free Software Foundation, Inc.
+# roundl.m4 serial 21.1
+dnl Copyright (C) 2007, 2009-2024 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.
@@ -13,7 +13,7 @@ AC_DEFUN([gl_FUNC_ROUNDL],
   dnl Persuade glibc <math.h> to declare roundl().
   AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS])
 
-  gl_CHECK_MATH_LIB([ROUNDL_LIBM], [x = roundl (x);],
+  gl_CHECK_MATH_LIB([ROUNDL_LIBM], [long double], [x = roundl (x);],
     [extern
      #ifdef __cplusplus
      "C"