IRSL: Add support for non-x86/x64 architectures such as arm64

Implement `CMAKE_MSVC_ARCH` determination for more architectures.

Fixes: #16734
This commit is contained in:
pastdue
2021-01-22 16:07:21 -05:00
committed by Brad King
parent 6bd251ace7
commit 9c5cf0c1af

View File

@@ -101,16 +101,18 @@ endforeach()
if(MSVC)
file(TO_CMAKE_PATH "$ENV{SYSTEMROOT}" SYSTEMROOT)
if(CMAKE_CL_64)
if(MSVC_VERSION GREATER 1599)
# VS 10 and later:
set(CMAKE_MSVC_ARCH x64)
else()
if(MSVC_C_ARCHITECTURE_ID)
string(TOLOWER "${MSVC_C_ARCHITECTURE_ID}" CMAKE_MSVC_ARCH)
elseif(MSVC_CXX_ARCHITECTURE_ID)
string(TOLOWER "${MSVC_CXX_ARCHITECTURE_ID}" CMAKE_MSVC_ARCH)
else()
set(CMAKE_MSVC_ARCH x86)
endif()
if(CMAKE_MSVC_ARCH STREQUAL "x64")
if(MSVC_VERSION LESS 1600)
# VS 9 and earlier:
set(CMAKE_MSVC_ARCH amd64)
endif()
else()
set(CMAKE_MSVC_ARCH x86)
endif()
get_filename_component(devenv_dir "${CMAKE_MAKE_PROGRAM}" PATH)