diff --git a/cmake/OpenCVConfig.cmake b/cmake/OpenCVConfig.cmake index fa35b6fc3f..4c88611556 100644 --- a/cmake/OpenCVConfig.cmake +++ b/cmake/OpenCVConfig.cmake @@ -61,7 +61,9 @@ if(NOT DEFINED OpenCV_CUDA) endif() endif() -if(MSVC) +if(DEFINED OpenCV_ARCH AND DEFINED OpenCV_RUNTIME) + # custom overrided values +elseif(MSVC) if(CMAKE_CL_64) set(OpenCV_ARCH x64) set(OpenCV_TBB_ARCH intel64) @@ -81,7 +83,7 @@ if(MSVC) set(OpenCV_RUNTIME vc12) elseif(MSVC_VERSION EQUAL 1900) set(OpenCV_RUNTIME vc14) - elseif(MSVC_VERSION EQUAL 1910 OR MSVC_VERSION EQUAL 1911) + elseif(MSVC_VERSION MATCHES "^191[0-9]$") set(OpenCV_RUNTIME vc15) endif() elseif(MINGW) diff --git a/cmake/OpenCVDetectCXXCompiler.cmake b/cmake/OpenCVDetectCXXCompiler.cmake index 7ce78d23fb..23d493dd13 100644 --- a/cmake/OpenCVDetectCXXCompiler.cmake +++ b/cmake/OpenCVDetectCXXCompiler.cmake @@ -82,7 +82,9 @@ if(NOT DEFINED OpenCV_STATIC) endif() endif() -if(MSVC) +if(DEFINED OpenCV_ARCH AND DEFINED OpenCV_RUNTIME) + # custom overrided values +elseif(MSVC) if(CMAKE_CL_64) set(OpenCV_ARCH x64) else() @@ -100,7 +102,7 @@ if(MSVC) set(OpenCV_RUNTIME vc12) elseif(MSVC_VERSION EQUAL 1900) set(OpenCV_RUNTIME vc14) - elseif(MSVC_VERSION EQUAL 1910 OR MSVC_VERSION EQUAL 1911) + elseif(MSVC_VERSION MATCHES "^191[0-9]$") set(OpenCV_RUNTIME vc15) endif() elseif(MINGW)