changeset 13460:54037f4be4a4

Unify tests that set gl_cv_func_frexp_no_libm.
author Bruno Haible <bruno@clisp.org>
date Mon, 12 Jul 2010 23:08:21 +0200
parents 0a02e7a4ac23
children b9e80fe39af5
files ChangeLog m4/frexp.m4 m4/printf-frexp.m4
diffstat 3 files changed, 30 insertions(+), 32 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2010-07-12  Bruno Haible  <bruno@clisp.org>
+
+	Unify tests that set gl_cv_func_frexp_no_libm.
+	* m4/frexp.m4 (gl_CHECK_FREXP_NO_LIBM): New macro, extracted from
+	gl_FUNC_FREXP_NO_LIBM.
+	(gl_FUNC_FREXP, gl_FUNC_FREXP_NO_LIBM): Require it.
+	* m4/printf-frexp.m4 (gl_FUNC_PRINTF_FREXP): Likewise.
+
 2010-07-12  Paul R. Eggert  <eggert@cs.ucla.edu>
 
 	memcoll: clarify sizes versus lengths, document better, and tweak perf
--- a/m4/frexp.m4
+++ b/m4/frexp.m4
@@ -1,5 +1,5 @@
-# frexp.m4 serial 7
-dnl Copyright (C) 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
+# frexp.m4 serial 8
+dnl Copyright (C) 2007-2010 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.
@@ -7,16 +7,8 @@
 AC_DEFUN([gl_FUNC_FREXP],
 [
   AC_REQUIRE([gl_MATH_H_DEFAULTS])
+  AC_REQUIRE([gl_CHECK_FREXP_NO_LIBM])
   FREXP_LIBM=
-  AC_CACHE_CHECK([whether frexp() can be used without linking with libm],
-    [gl_cv_func_frexp_no_libm],
-    [
-      AC_TRY_LINK([#include <math.h>
-                   double x;],
-                  [int e; return frexp (x, &e) > 0;],
-        [gl_cv_func_frexp_no_libm=yes],
-        [gl_cv_func_frexp_no_libm=no])
-    ])
   if test $gl_cv_func_frexp_no_libm = no; then
     AC_CACHE_CHECK([whether frexp() can be used with libm],
       [gl_cv_func_frexp_in_libm],
@@ -59,15 +51,7 @@
 AC_DEFUN([gl_FUNC_FREXP_NO_LIBM],
 [
   AC_REQUIRE([gl_MATH_H_DEFAULTS])
-  AC_CACHE_CHECK([whether frexp() can be used without linking with libm],
-    [gl_cv_func_frexp_no_libm],
-    [
-      AC_TRY_LINK([#include <math.h>
-                   double x;],
-                  [int e; return frexp (x, &e) > 0;],
-        [gl_cv_func_frexp_no_libm=yes],
-        [gl_cv_func_frexp_no_libm=no])
-    ])
+  AC_REQUIRE([gl_CHECK_FREXP_NO_LIBM])
   if test $gl_cv_func_frexp_no_libm = yes; then
     gl_FUNC_FREXP_WORKS
     case "$gl_cv_func_frexp_works" in
@@ -87,6 +71,21 @@
   fi
 ])
 
+dnl Test whether frexp() can be used without linking with libm.
+dnl Set gl_cv_func_frexp_no_libm to 'yes' or 'no' accordingly.
+AC_DEFUN([gl_CHECK_FREXP_NO_LIBM],
+[
+  AC_CACHE_CHECK([whether frexp() can be used without linking with libm],
+    [gl_cv_func_frexp_no_libm],
+    [
+      AC_TRY_LINK([#include <math.h>
+                   double x;],
+                  [int e; return frexp (x, &e) > 0;],
+        [gl_cv_func_frexp_no_libm=yes],
+        [gl_cv_func_frexp_no_libm=no])
+    ])
+])
+
 dnl Test whether frexp() works also on denormalized numbers (this fails e.g. on
 dnl NetBSD 3.0), on infinite numbers (this fails e.g. on IRIX 6.5 and mingw),
 dnl and on negative zero (this fails e.g. on NetBSD 4.99).
--- a/m4/printf-frexp.m4
+++ b/m4/printf-frexp.m4
@@ -1,5 +1,5 @@
-# printf-frexp.m4 serial 3
-dnl Copyright (C) 2007, 2009, 2010 Free Software Foundation, Inc.
+# printf-frexp.m4 serial 4
+dnl Copyright (C) 2007, 2009-2010 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.
@@ -8,16 +8,7 @@
 
 AC_DEFUN([gl_FUNC_PRINTF_FREXP],
 [
-  AC_CACHE_CHECK([whether frexp can be used without linking with libm],
-    [gl_cv_func_frexp_no_libm],
-    [
-      AC_TRY_LINK([#include <math.h>
-                   double x;
-                   int y;],
-                  [return frexp (x, &y) < 1;],
-        [gl_cv_func_frexp_no_libm=yes],
-        [gl_cv_func_frexp_no_libm=no])
-    ])
+  AC_REQUIRE([gl_CHECK_FREXP_NO_LIBM])
   if test $gl_cv_func_frexp_no_libm = yes; then
     gl_FUNC_FREXP_WORKS
     case "$gl_cv_func_frexp_works" in