summaryrefslogtreecommitdiff
path: root/aclocal.m4
diff options
context:
space:
mode:
authorBen Gamari <bgamari.foss@gmail.com>2017-10-10 16:09:39 -0400
committerBen Gamari <ben@smart-cactus.org>2017-10-16 17:24:49 -0400
commit71a423562a555ef0805bba546a3a42d437803842 (patch)
tree32f8e150395ddf20a287fe4117d66915994e2413 /aclocal.m4
parent6cc232ae925bc6fc88229d96589a851068a9cace (diff)
downloadhaskell-71a423562a555ef0805bba546a3a42d437803842.tar.gz
configure: Fix CC version check on Apple compilers
It seems that some Apple LLVM wrappers emit multiple messages containing the string "version", which we previously used to find the version number. For instance, Configured with: --prefix=/Applications/Xcode.app/Contents/... Apple LLVM version 9.0.0 (clang-900.0.37) Target: x86_64-apple-darwin16.7.0 Thread model: posix InstalledDir: /Applications/Xcode.app/Contents/Developer/... Found CUDA installation: /usr/local/cuda, version 8.0 We now take care to only look at the first occurrence of this string. New `sed` command due to @merijn. Test Plan: Validate on all the compilers Reviewers: austin, hvr Subscribers: rwbarton, thomie, merijn, erikd Differential Revision: https://phabricator.haskell.org/D4069
Diffstat (limited to 'aclocal.m4')
-rw-r--r--aclocal.m44
1 files changed, 3 insertions, 1 deletions
diff --git a/aclocal.m4 b/aclocal.m4
index 7e1e3e1f0b..64fa8bf708 100644
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -1234,7 +1234,9 @@ GccLT44=NO
GccLT46=NO
AC_CACHE_CHECK([version of gcc], [fp_cv_gcc_version],
[
- fp_cv_gcc_version="`$CC -v 2>&1 | grep 'version ' | sed -e 's/.*version [[^0-9]]*\([[0-9.]]*\).*/\1/g'`"
+ # Be sure only to look at the first occurrence of the "version " string;
+ # Some Apple compilers emit multiple messages containing this string.
+ fp_cv_gcc_version="`$CC -v 2>&1 | sed -n -e '1,/version /s/.*version [[^0-9]]*\([[0-9.]]*\).*/\1/p'`"
FP_COMPARE_VERSIONS([$fp_cv_gcc_version], [-lt], [3.0],
[AC_MSG_ERROR([Need at least gcc version 3.0 (3.4+ recommended)])])
# See #2770: gcc 2.95 doesn't work any more, apparently. There probably