Get compiler version values

This commit is contained in:
John Zhao 2018-06-07 23:47:01 +08:00
parent ac88a68ebc
commit 209617dd24
2 changed files with 25 additions and 13 deletions

View File

@ -260,18 +260,30 @@ macro(set_default_value VARIABLE DEFAULT)
endif() endif()
endmacro() endmacro()
string(REPLACE "." ";" VERSION_LIST ${CMAKE_CXX_COMPILER_VERSION}) macro(set_version_values VARIABLE)
list(GET VERSION_LIST 0 CXX_COMPILER_VERSION_MAJOR) string(REPLACE "." ";" __version_list "${${VARIABLE}}")
list(GET VERSION_LIST 1 CXX_COMPILER_VERSION_MINOR) list(LENGTH __version_list __len)
list(GET VERSION_LIST 2 CXX_COMPILER_VERSION_PATCH) if(${__len} GREATER 0)
list(GET VERSION_LIST 3 CXX_COMPILER_VERSION_TWEAK) list(GET __version_list 0 ${VARIABLE}_MAJOR)
endif()
if(${__len} GREATER 1)
list(GET __version_list 1 ${VARIABLE}_MINOR)
endif()
if(${__len} GREATER 2)
list(GET __version_list 2 ${VARIABLE}_PATCH)
endif()
if(${__len} GREATER 3)
list(GET __version_list 3 ${VARIABLE}_TWEAK)
endif()
endmacro()
find_package(CUDA QUIET) find_package(CUDA QUIET)
set_default_value(CXX_COMPILER_VERSION_MAJOR 0) set_version_values(CMAKE_CXX_COMPILER_VERSION)
set_default_value(CXX_COMPILER_VERSION_MINOR 0) set_default_value(CMAKE_CXX_COMPILER_VERSION_MAJOR 0)
set_default_value(CXX_COMPILER_VERSION_PATCH 0) set_default_value(CMAKE_CXX_COMPILER_VERSION_MINOR 0)
set_default_value(CXX_COMPILER_VERSION_TWEAK 0) set_default_value(CMAKE_CXX_COMPILER_VERSION_PATCH 0)
set_default_value(CMAKE_CXX_COMPILER_VERSION_TWEAK 0)
set_default_value(CUDA_VERSION_MAJOR 0) set_default_value(CUDA_VERSION_MAJOR 0)
set_default_value(CUDA_VERSION_MINOR 0) set_default_value(CUDA_VERSION_MINOR 0)
set_default_value(OpenCV_VERSION_MAJOR 0) set_default_value(OpenCV_VERSION_MAJOR 0)

View File

@ -5,10 +5,10 @@ HOST_NAME: "@HOST_NAME@"
HOST_ARCH: "@HOST_ARCH@" HOST_ARCH: "@HOST_ARCH@"
HOST_COMPILER: "@CMAKE_CXX_COMPILER_ID@" HOST_COMPILER: "@CMAKE_CXX_COMPILER_ID@"
COMPILER_VERSION: "@CMAKE_CXX_COMPILER_VERSION@" COMPILER_VERSION: "@CMAKE_CXX_COMPILER_VERSION@"
COMPILER_VERSION_MAJOR: @CXX_COMPILER_VERSION_MAJOR@ COMPILER_VERSION_MAJOR: @CMAKE_CXX_COMPILER_VERSION_MAJOR@
COMPILER_VERSION_MINOR: @CXX_COMPILER_VERSION_MINOR@ COMPILER_VERSION_MINOR: @CMAKE_CXX_COMPILER_VERSION_MINOR@
COMPILER_VERSION_PATCH: @CXX_COMPILER_VERSION_PATCH@ COMPILER_VERSION_PATCH: @CMAKE_CXX_COMPILER_VERSION_PATCH@
COMPILER_VERSION_TWEAK: @CXX_COMPILER_VERSION_TWEAK@ COMPILER_VERSION_TWEAK: @CMAKE_CXX_COMPILER_VERSION_TWEAK@
CUDA_VERSION: "@CUDA_VERSION@" CUDA_VERSION: "@CUDA_VERSION@"
CUDA_VERSION_MAJOR: @CUDA_VERSION_MAJOR@ CUDA_VERSION_MAJOR: @CUDA_VERSION_MAJOR@
CUDA_VERSION_MINOR: @CUDA_VERSION_MINOR@ CUDA_VERSION_MINOR: @CUDA_VERSION_MINOR@