You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@arrow.apache.org by we...@apache.org on 2017/05/01 20:38:30 UTC
arrow git commit: ARROW-928: [C++] Detect supported MSVC versions
Repository: arrow
Updated Branches:
refs/heads/master c9e61cd77 -> da523ce72
ARROW-928: [C++] Detect supported MSVC versions
Author: Max Risuhin <ri...@gmail.com>
Closes #625 from MaxRis/ARROW-928 and squashes the following commits:
db81a27 [Max Risuhin] ARROW-928: [C++] Detect supported MSVC versions
Project: http://git-wip-us.apache.org/repos/asf/arrow/repo
Commit: http://git-wip-us.apache.org/repos/asf/arrow/commit/da523ce7
Tree: http://git-wip-us.apache.org/repos/asf/arrow/tree/da523ce7
Diff: http://git-wip-us.apache.org/repos/asf/arrow/diff/da523ce7
Branch: refs/heads/master
Commit: da523ce72524de6243b8ea3c40cf50f92d60ac3e
Parents: c9e61cd
Author: Max Risuhin <ri...@gmail.com>
Authored: Mon May 1 16:38:21 2017 -0400
Committer: Wes McKinney <we...@twosigma.com>
Committed: Mon May 1 16:38:21 2017 -0400
----------------------------------------------------------------------
cpp/cmake_modules/CompilerInfo.cmake | 13 ++++++++++++-
1 file changed, 12 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/arrow/blob/da523ce7/cpp/cmake_modules/CompilerInfo.cmake
----------------------------------------------------------------------
diff --git a/cpp/cmake_modules/CompilerInfo.cmake b/cpp/cmake_modules/CompilerInfo.cmake
index 3c60391..21e2daf 100644
--- a/cpp/cmake_modules/CompilerInfo.cmake
+++ b/cpp/cmake_modules/CompilerInfo.cmake
@@ -17,7 +17,11 @@
#
# Sets COMPILER_FAMILY to 'clang' or 'gcc'
# Sets COMPILER_VERSION to the version
-execute_process(COMMAND "${CMAKE_CXX_COMPILER}" -v
+if (NOT MSVC)
+ set(COMPILER_GET_VERSION_SWITCH "-v")
+endif()
+
+execute_process(COMMAND "${CMAKE_CXX_COMPILER}" ${COMPILER_GET_VERSION_SWITCH}
ERROR_VARIABLE COMPILER_VERSION_FULL)
message(INFO "Compiler version: ${COMPILER_VERSION_FULL}")
message(INFO "Compiler id: ${CMAKE_CXX_COMPILER_ID}")
@@ -25,6 +29,13 @@ string(TOLOWER "${COMPILER_VERSION_FULL}" COMPILER_VERSION_FULL_LOWER)
if(MSVC)
set(COMPILER_FAMILY "msvc")
+ if ("${COMPILER_VERSION_FULL}" MATCHES ".*Microsoft \\(R\\) C/C\\+\\+ Optimizing Compiler Version 19.*x64")
+ string(REGEX REPLACE ".*Optimizing Compiler Version ([0-9]+\\.[0-9]+\\.[0-9]+\\.[0-9]+).*" "\\1"
+ COMPILER_VERSION "${COMPILER_VERSION_FULL}")
+ elseif(NOT "${COMPILER_VERSION_FULL}" STREQUAL "")
+ message(FATAL_ERROR "Not supported MSVC compiler:\n${COMPILER_VERSION_FULL}\n"
+ "Supported MSVC versions: Visual Studio 2015 2017 x64")
+ endif()
# clang on Linux and Mac OS X before 10.9
elseif("${COMPILER_VERSION_FULL}" MATCHES ".*clang version.*")