aboutsummaryrefslogtreecommitdiffstats
path: root/configure.ac
diff options
context:
space:
mode:
authorngoto <ngoto@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2018-05-15 20:48:23 +0000
committerngoto <ngoto@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2018-05-15 20:48:23 +0000
commit0d204d6283d54e3d188f256ca0d81ae4b195b14d (patch)
tree75121c86eff601de683d07d496a03617b4dc246f /configure.ac
parentcf1a775a4b05a26b7624205b9ae20a359caf4d61 (diff)
downloadruby-0d204d6283d54e3d188f256ca0d81ae4b195b14d.tar.gz
Change logic to check _XOPEN_SOURCE on Solaris
* configure.ac: Change logic to check _XOPEN_SOURCE on Solaris. With _XOPEN_SOURCE, "-std=gnu99" may also be added to CPPFLAGS. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63438 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'configure.ac')
-rw-r--r--configure.ac23
1 files changed, 12 insertions, 11 deletions
diff --git a/configure.ac b/configure.ac
index f467a85ee9..09cf8687fa 100644
--- a/configure.ac
+++ b/configure.ac
@@ -836,16 +836,7 @@ main()
AS_IF([test x"$define_xopen_source" != x], [
break
])
- # Both AC_TRY_CPP and AC_TRY_COMPILE should pass
- # because some options may not be set to CPPFLAGS.
- AC_TRY_CPP([
- #define _XOPEN_SOURCE ${tmp_xpg}00
- #include <unistd.h>
- #ifndef _XPG${tmp_xpg}
- #error _XPG${tmp_xpg} should be defined by _XOPEN_SOURCE=${tmp_xpg}00
- #endif
- ], [
- AC_TRY_COMPILE([
+ RUBY_WERROR_FLAG([AC_TRY_COMPILE([
#define _XOPEN_SOURCE ${tmp_xpg}00
#include <unistd.h>
#ifndef _XPG${tmp_xpg}
@@ -853,7 +844,7 @@ main()
#endif
], [],
[define_xopen_source=${tmp_xpg}00], [])
- ], [])
+ ])
done
AS_IF([test x"$define_xopen_source" = x], [
define_xopen_source=no
@@ -861,6 +852,16 @@ main()
AC_MSG_RESULT($define_xopen_source)
AS_IF([test x"$define_xopen_source" != xno], [
RUBY_APPEND_OPTIONS(CPPFLAGS, -D_XOPEN_SOURCE=$define_xopen_source)
+ # On Solaris, with gcc, "-std=gnu99" would be needed
+ # for using "-D_XOPEN_SOURCE=nnn" when nnn >= 600.
+ # ("-std=gnu99" have been added to both $warnflags and
+ # $strict_warnflags. During the above AC_TRY_COMPILE,
+ # $warnflags is effective, but the value will later be
+ # replaced with $rb_cv_warnflags.)
+ AS_CASE(["${warnflags}"],
+ [*-std=gnu99*], [
+ RUBY_APPEND_OPTIONS(CPPFLAGS, -std=gnu99)
+ ])
])
])
],