ANDROID | 当目标系统(CMAKE_SYSTEM_NAME)为Android时,设置为1。 |
APPLE | 当目标系统是苹果平台(macOS、iOS、tvOS、visionOS或watchOS)时,设置为True。 |
BORLAND | 如果正在使用Borland编译器,则设置为true。 |
BSD | 当目标系统是BSD时,设置为字符串值。该值可以是以下值之一:DragonFlyBSD、FreeBSD、OpenBSD或NetBSD。 |
CMAKE_ANDROID_NDK_VERSION | 当使用NDK为Android进行交叉编译并使用Android NDK版本11或更高版本时,CMake提供此变量以报告NDK版本号。 |
CMAKE_CL_64 | 当使用以64位体系结构为目标的Microsoft Visual Studio cl编译器时,请设置为真值。 |
CMAKE_COMPILER_2005 | 使用Microsoft的Visual Studio 2005编译器时设置为true。 |
CMAKE_HOST_APPLE | 当主机系统为Apple macOS时,设置为true。 |
CMAKE_HOST_BSD | 当主机系统是BSD时,设置为字符串值。该值可以是以下值之一:DragonFlyBSD、FreeBSD、OpenBSD或NetBSD。 |
CMAKE_HOST_LINUX | 当主机系统为Linux时,设置为true。 |
CMAKE_HOST_SOLARIS | 当主机系统为Oracle Solaris时,设置为true。 |
CMAKE_HOST_SYSTEM | 正在运行的OS CMake的组合名称。 此变量是CMAKE_HOST_SYSTEM_NAME和CMAKE_HOST_SYSTEM_VERSION的组合,例如 C M A K E H O S T S Y S T E M N A M E − {CMAKE_HOST_SYSTEM_NAME}- CMAKEHOSTSYSTEMNAME−{CMAKE_HOST_SYSTEM_VERSION}。如果未设置CMAKE_HOST_SYSTEM_VERSION,则此变量与CMAKE_HOST_SYSTEM_NAME相同。 |
CMAKE_HOST_SYSTEM_NAME | 正在运行的操作系统CMake的名称。 在具有uname命令的系统上,此变量设置为uname-s的输出。Linux、Windows和Darwin for macOS是三大操作系统上的价值观。 |
CMAKE_HOST_SYSTEM_PROCESSOR | 在Windows上,此变量设置为环境变量PROCESSOR_ARCHITECTURE的值。在支持uname的系统上,此变量设置为的输出:在GNU、Linux、Cygwin、Android或在OpenBSD上的arch,或者 在其他系统上,uname-p,如果其退出代码为非零,或者 否则为uname-m。 默认情况下使用uname-m的值。 在Apple Silicon主机上,uname-m打印的体系结构可能会根据CMake自己的体系结构和调用过程树的体系结构而有所不同。 |
CMAKE_HOST_SYSTEM_VERSION | 系统的数字版本字符串。在支持uname的系统上,此变量设置为uname-r的输出。在其他系统上,此设置为主要次要版本号。 |
CMAKE_HOST_UNIX | 当主机系统是UNIX或类似UNIX(即APPLE和CYGWIN)时,设置为true。 |
CMAKE_HOST_WIN32 | 如果主机系统运行的是Windows,包括Windows 64位和MSYS,则为True。 在Cygwin上设置为false。 |
CMAKE_LIBRARY_ARCHITECTURE | 目标体系结构库目录名称(如果检测到)。 这是为某个启用的语言检测到的CMAKE__LIBRARY_ARCHITECTURE的值。 |
CMAKE_LIBRARY_ARCHITECTURE_REGEX | Regex匹配可能的目标体系结构库目录名。 这用于通过匹配名称,从隐式链接器搜索路径中检测CMAKE__LIBRARY_ARCHITECTURE。 |
CMAKE_OBJECT_PATH_MAX | 本机生成工具允许的最大对象文件完整路径长度。 CMake为每个源文件计算一个对象文件名,该名称对于源文件是唯一的,并且相对于源文件的完整路径是确定的。这允许目标中的多个源文件共享相同的名称,如果它们位于不同的目录中,则在添加或删除一个源文件时无需重新生成。然而,在少数情况下,它可能会产生长的完整路径,因此当对象文件的完整路径超过限制时,CMake会使用哈希方案缩短路径。CMake对每个平台都有一个内置的限制,这对于通用工具来说是足够的,但一些本地工具可能有一个下限。此变量可以设置为显式指定限制。该值必须是一个不小于128的整数。 |
CMAKE_SYSTEM | CMake正在为编译的操作系统的组合名称。 此变量是CMAKE_SYSTEM_NAME和CMAKE_SSYSTEM_VERSION的组合,例如 C M A K E S Y S T E M N A M E − {CMAKE_SYSTEM_NAME}- CMAKESYSTEMNAME−{CMAKE_SYSTEM_VERSION}。如果未设置CMAKE_SYSTEM_VERSION,则此变量与CMAKE_SYSTEM_NAME相同。 |
CMAKE_SYSTEM_NAME | 要为其生成CMake的操作系统的名称。有关操作系统版本,请参阅CMAKE_SYSTEM_VERSION变量。 请注意,在脚本模式下运行时,默认情况下CMAKE_SYSTEM_NAME不会设置为任何值,因为它不会构建任何内容。 |
CMAKE_SYSTEM_PROCESSOR | 不交叉编译时,此变量的值与CMAKE_HOST_SYSTEM_PROCESSOR变量的值相同。在许多情况下,这将对应于构建的目标体系结构,但这并不能保证。(例如,在Windows上,即使使用具有32位目标的MSVC cl编译器,主机也可能是AMD64。) 交叉编译时,CMAKE_TOOLCHAIN_FILE应将CMAKE_SYSTEM_PROCESSOR变量设置为与其指定的目标体系结构相匹配(通过CMAKE_COMPILER,或者通过CMAKE_COMPILER_target)。 |
CMAKE_SYSTEM_VERSION | CMake要为其构建的操作系统的版本。有关操作系统名称,请参阅CMAKE_SYSTEM_NAME变量。 |
CYGWIN | 使用Cygwin时设置为true。 |
GHSMULTI | 使用Green Hills MULTI生成器时为1。 此外,当目标系统是Green Hills平台时(即,当CMAKE_system_NAME为GHS-MULTI时),设置为1。 |
IOS | 当目标系统(CMAKE_SYSTEM_NAME)为iOS时,设置为1。 |
LINUX | 当目标系统是Linux时,设置为true。 |
MINGW | 当编译器在Windows(MinGW)上以GNU ABI为目标启用了至少一种语言时,设置为真值。 否则,CMake不会设置此变量。 |
MSVC | 当编译器是某个版本的Microsoft Visual C++或其他模拟Visual C++cl命令行语法的编译器时,请设置为true。 另请参见MSVC_VERSION变量。 |
MSVC10 | 使用Microsoft Visual Studio v100工具集(cl版本16)或其他模拟它的编译器时为True。 |
MSVC11 | 当使用Microsoft Visual Studio v110工具集(cl版本17)或其他模拟它的编译器时为True。 |
MSVC12 | 当使用Microsoft Visual Studio v120工具集(cl版本18)或其他模拟它的编译器时为True。 |
MSVC14 | 当使用Microsoft Visual Studio v130工具集(cl版本19)或其他模拟它的编译器时为True。 |
MSVC60 | 当编译器为Microsoft Visual C++6.0版本时,请设置为true。 |
MSVC70 | 当编译器为Microsoft Visual C++7.0版本时,请设置为true。 |
MSVC71 | 当编译器为Microsoft Visual C++7.1版本时,请设置为true。 |
MSVC80 | 当编译器为Microsoft Visual C++8.0版本时,请设置为true。 |
MSVC90 | 当编译器为Microsoft Visual C++9.0版本时,请设置为true。 |
MSVC_IDE | 当目标平台是Microsoft Visual C++IDE而不是命令行编译器时,设置为true。 |
MSVC_TOOLSET_VERSION | 正在使用的Microsoft Visual C/C++的工具集版本(如果有的话)。如果使用类似MSVC的变量,则会根据MSVC_version变量给出的编译器版本设置此变量。 80 = VS 2005 (8.0) 90 = VS 2008 (9.0) 100 = VS 2010 (10.0) 110 = VS 2012 (11.0) 120 = VS 2013 (12.0) 140 = VS 2015 (14.0) 141 = VS 2017 (15.0) 142 = VS 2019 (16.0) 143 = VS 2022 (17.0) |
MSVC_VERSION | 正在使用的Microsoft Visual C/C++版本(如果有)。如果使用模拟Visual C++的编译器,则此变量将设置为_MSC_VER预处理器定义所模拟的工具集版本。 1200 = VS 6.0 1300 = VS 7.0 1310 = VS 7.1 1400 = VS 8.0 (v80 toolset) 1500 = VS 9.0 (v90 toolset) 1600 = VS 10.0 (v100 toolset) 1700 = VS 11.0 (v110 toolset) 1800 = VS 12.0 (v120 toolset) 1900 = VS 14.0 (v140 toolset) 1910-1919 = VS 15.0 (v141 toolset) 1920-1929 = VS 16.0 (v142 toolset) 1930-1939 = VS 17.0 (v143 toolset) |
MSYS | 使用MSYS Makefiles生成器时为True。 |
UNIX | 当目标系统是UNIX或类似UNIX(例如APPLE和CYGWIN)时,设置为True。如果需要对目标系统有更具体的了解,则应查询CMAKE_SYSTEM_NAME变量。 |
WIN32 | 当目标系统为Windows(包括Win64)时,设置为True。 |
WINCE | 当CMAKE_SYSTEM_NAME变量设置为WindowsCE时为True。 |
WINDOWS_PHONE | 当CMAKE_SYSTEM_NAME变量设置为WindowsPhone时为True。 |
WINDOWS_STORE | 当CMAKE_SYSTEM_NAME变量设置为WindowsStore时为True。 |
XCODE | 使用Xcode生成器时为True。 |
XCODE_VERSION | 在Xcode生成器下,这是Xcode.app/Contents/version.plist中指定的Xcode版本(如3.1.2)。 |