CMake NMake 生成器不生成 ${PlatformToolset} 变量

CMake NMake generator not generating ${PlatformToolset} variable

我有一个 find_package 脚本,它使用 ${PlatformToolset}${Platform} 来查找正确的目录。但是,在使用 nmake 生成器时,似乎没有设置这些。我认为这些变量没有设置是正确的,还是我做错了什么?这些变量有替代品吗?

NMake 设置 MSVC_VERSION 和其他 MSVC 变量,因此 Platformtoolset 和 Platform 可以从中派生:

if(MSVC_VERSION GREATER 1900)
    set(PlatformToolSet v141)
else()
    set(PlatformToolSet v140)
endif()

if(CMAKE_SIZEOF_VOID_P GREATER 4)
  set(Platform x64)
else()
  set(Platform Win32)
endif()