Better detection of clang in ./configure. Issue #7678.
authorAustin Seipp <aseipp@pobox.com>
Sun, 10 Feb 2013 08:24:28 +0000 (02:24 -0600)
committerAustin Seipp <aseipp@pobox.com>
Sun, 10 Feb 2013 08:39:28 +0000 (02:39 -0600)
Signed-off-by: Austin Seipp <aseipp@pobox.com>
aclocal.m4
configure.ac
mk/config.mk.in

index 837eea0..32af656 100644 (file)
@@ -1136,19 +1136,30 @@ AC_SUBST(GccLT34)
 AC_SUBST(GccLT46)
 ])# FP_GCC_VERSION
 
-dnl Check to see if the C compiler uses an LLVM back end
+dnl Check to see if the C compiler is clang or llvm-gcc
 dnl
 AC_DEFUN([FP_CC_LLVM_BACKEND],
 [AC_REQUIRE([AC_PROG_CC])
-AC_MSG_CHECKING([whether C compiler has an LLVM back end])
+AC_MSG_CHECKING([whether C compiler is clang])
 $CC -x c /dev/null -dM -E > conftest.txt 2>&1
-if grep "__llvm__" conftest.txt >/dev/null 2>&1; then
+if grep "__clang__" conftest.txt >/dev/null 2>&1; then
+  AC_SUBST([CC_CLANG_BACKEND], [1])
   AC_SUBST([CC_LLVM_BACKEND], [1])
   AC_MSG_RESULT([yes])
 else
-  AC_SUBST([CC_LLVM_BACKEND], [0])
   AC_MSG_RESULT([no])
+  AC_MSG_CHECKING([whether C compiler has an LLVM back end])
+  if grep "__llvm__" conftest.txt >/dev/null 2>&1; then
+    AC_SUBST([CC_CLANG_BACKEND], [0])
+    AC_SUBST([CC_LLVM_BACKEND], [1])
+    AC_MSG_RESULT([yes])
+  else
+    AC_SUBST([CC_CLANG_BACKEND], [0])
+    AC_SUBST([CC_LLVM_BACKEND], [0])
+    AC_MSG_RESULT([no])
+  fi
 fi
+
 rm -f conftest.txt
 ])
 
index c27b49f..fa01e88 100644 (file)
@@ -986,8 +986,14 @@ echo ["\
 "]
 fi
 
+if test "$CC_CLANG_BACKEND" = "1"; then
+CNAME="clang "
+else
+CNAME="gcc   "
+fi
+
 echo ["\
-   Using GCC                 : $WhatGccIsCalled
+   Using $CNAME              : $WhatGccIsCalled
       which is version       : $GccVersion
    Building a cross compiler : $CrossCompiling
 
index e40f569..20eadc3 100644 (file)
@@ -46,6 +46,10 @@ NO_INCLUDE_PKGDATA = NO
 # Should we build latex docs?
 LATEX_DOCS = NO
 
+# Is the global compiler clang, llvm, or something neither?
+CC_CLANG_BACKEND = @CC_CLANG_BACKEND@
+CC_LLVM_BACKEND  = @CC_LLVM_BACKEND@
+
 # Mac OS X deployment target (to cross-compile for older OS versions)
 #
 MACOSX_DEPLOYMENT_VERSION = @MACOSX_DEPLOYMENT_VERSION@