summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2013-04-01 05:22:57 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2013-04-01 05:22:57 +0000
commit90e8a9b4bd583d7b65edf97343dd7d8317f091a6 (patch)
tree2508b9952e3d843bde22de715d0702c99194c1b5
parent92f59c6d7937b14bb5eefb052099ef0a3ef3bcd0 (diff)
configure.in: clang check
* configure.in: check clang version by predefined macro values. [Bug #8192] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40030 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog5
-rw-r--r--configure.in9
2 files changed, 11 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index b2207a41ae..4cd868504e 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Mon Apr 1 14:22:52 2013 Nobuyoshi Nakada <nobu@ruby-lang.org>
+
+ * configure.in: check clang version by predefined macro values.
+ [Bug #8192]
+
Mon Apr 1 12:05:15 2013 Tanaka Akira <akr@fsij.org>
* numeric.c (check_uint): Take the 1st argument as unsigned long,
diff --git a/configure.in b/configure.in
index 3e436c4b92..3a9a14aa42 100644
--- a/configure.in
+++ b/configure.in
@@ -396,9 +396,12 @@ AS_CASE(["$host_os:$build_os"],
# clang version 1.0 (http://llvm.org/svn/llvm-project/cfe/tags/Apple/clang-23 exported)
# Apple clang version 2.0 (tags/Apple/clang-137) (based on LLVM 2.9svn)
# Apple clang version 2.1 (tags/Apple/clang-163.7.1) (based on LLVM 3.0svn)
- if test "$CC" = "clang" && $CC --version | grep 'clang version @<:@12 @:>@\.' ; then
- AC_MSG_ERROR([clang version 3.0 or later is required])
- fi
+ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([
+ @%:@if defined __APPLE_CC__ && defined __clang_major__ && __clang_major__ < 3
+ @%:@error premature clang
+ @%:@endif])],
+ [],
+ [AC_MSG_ERROR([clang version 3.0 or later is required])])
])
if test x"${build}" != x"${host}"; then
AC_CHECK_TOOL(CC, gcc)