|
From 74f94b3e6ebf15b76f3b357e754095412b006e94 Mon Sep 17 00:00:00 2001
|
|
From: nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>
|
|
Date: Fri, 8 Feb 2019 07:22:55 +0000
|
|
Subject: [PATCH] configure.ac: check finite,isinf,isnan as macros first
|
|
|
|
[ruby-core:91487] [Bug #15595]
|
|
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67036 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
---
|
|
aclocal.m4 | 1 +
|
|
configure.ac | 13 ++++---------
|
|
tool/m4/ruby_replace_funcs.m4 | 13 +++++++++++++
|
|
3 files changed, 18 insertions(+), 9 deletions(-)
|
|
create mode 100644 tool/m4/ruby_replace_funcs.m4
|
|
|
|
--- a/aclocal.m4
|
|
+++ b/aclocal.m4
|
|
@@ -35,6 +35,7 @@ m4_include([tool/m4/ruby_func_attribute.
|
|
m4_include([tool/m4/ruby_mingw32.m4])
|
|
m4_include([tool/m4/ruby_prepend_option.m4])
|
|
m4_include([tool/m4/ruby_prog_gnu_ld.m4])
|
|
+m4_include([tool/m4/ruby_replace_funcs.m4])
|
|
m4_include([tool/m4/ruby_replace_type.m4])
|
|
m4_include([tool/m4/ruby_rm_recursive.m4])
|
|
m4_include([tool/m4/ruby_setjmp_type.m4])
|
|
--- a/configure.ac
|
|
+++ b/configure.ac
|
|
@@ -946,9 +946,6 @@ main()
|
|
ac_cv_func_fsync=yes
|
|
ac_cv_func_seekdir=yes
|
|
ac_cv_func_telldir=yes
|
|
- ac_cv_func_isinf=yes
|
|
- ac_cv_func_isnan=yes
|
|
- ac_cv_func_finite=yes
|
|
ac_cv_func_lchown=yes
|
|
ac_cv_func_link=yes
|
|
ac_cv_func_readlink=yes
|
|
@@ -999,9 +996,6 @@ main()
|
|
[netbsd*], [ LIBS="-lm $LIBS"
|
|
],
|
|
[dragonfly*], [ LIBS="-lm $LIBS"
|
|
- # isinf() and isnan() are macros on DragonFly.
|
|
- ac_cv_func_isinf=yes
|
|
- ac_cv_func_isnan=yes
|
|
],
|
|
[aix*],[ LIBS="-lm $LIBS"
|
|
ac_cv_func_round=no
|
|
@@ -1724,11 +1718,8 @@ AC_REPLACE_FUNCS(dup2)
|
|
AC_REPLACE_FUNCS(erf)
|
|
AC_REPLACE_FUNCS(explicit_bzero)
|
|
AC_REPLACE_FUNCS(ffs)
|
|
-AC_REPLACE_FUNCS(finite)
|
|
AC_REPLACE_FUNCS(flock)
|
|
AC_REPLACE_FUNCS(hypot)
|
|
-AC_REPLACE_FUNCS(isinf)
|
|
-AC_REPLACE_FUNCS(isnan)
|
|
AC_REPLACE_FUNCS(lgamma_r)
|
|
AC_REPLACE_FUNCS(memmove)
|
|
AC_REPLACE_FUNCS(nan)
|
|
@@ -1741,6 +1732,10 @@ AC_REPLACE_FUNCS(strlcpy)
|
|
AC_REPLACE_FUNCS(strstr)
|
|
AC_REPLACE_FUNCS(tgamma)
|
|
|
|
+RUBY_REPLACE_FUNC([finite], [@%:@include <math.h>])
|
|
+RUBY_REPLACE_FUNC([isinf], [@%:@include <math.h>])
|
|
+RUBY_REPLACE_FUNC([isnan], [@%:@include <math.h>])
|
|
+
|
|
# for missing/setproctitle.c
|
|
AS_CASE(["$target_os"],
|
|
[aix* | k*bsd*-gnu | kopensolaris*-gnu | linux* | darwin*], [AC_DEFINE(SPT_TYPE,SPT_REUSEARGV)],
|
|
--- /dev/null
|
|
+++ b/tool/m4/ruby_replace_funcs.m4
|
|
@@ -0,0 +1,13 @@
|
|
+# -*- Autoconf -*-
|
|
+dnl RUBY_REPLACE_FUNC [func] [included]
|
|
+AC_DEFUN([RUBY_REPLACE_FUNC], [dnl
|
|
+ AC_CHECK_DECL([$1],dnl
|
|
+ [AC_DEFINE(AS_TR_CPP(HAVE_[$1]))],dnl
|
|
+ [AC_REPLACE_FUNCS($1)],dnl
|
|
+ [$2])dnl
|
|
+])
|
|
+
|
|
+dnl RUBY_REPLACE_FUNCS [funcs] [included]
|
|
+AC_DEFUN([RUBY_REPLACE_FUNCS] [dnl
|
|
+ m4_map_args_w([$1], [RUBY_REPLACE_FUNC(], [), [$2]])dnl
|
|
+])
|