CMAKE_WATCOM_RUNTIME_LIBRARY¶
在 3.24 版本中添加。
为以 Watcom ABI 为目标的编译器选择 Watcom 运行时库。此变量用于初始化所有目标创建时在其上的 WATCOM_RUNTIME_LIBRARY
属性。它也通过 try_compile()
命令传播到测试项目中。
允许的值为
SingleThreaded
不带额外标志进行编译,以使用单线程静态链接运行时库。
SingleThreadedDLL
带
-br
或等效标志进行编译,以使用单线程动态链接运行时库。这不适用于 Linux 目标。MultiThreaded
带
-bm
或等效标志进行编译,以使用多线程静态链接运行时库。MultiThreadedDLL
带
-bm -br
或等效标志进行编译,以使用多线程动态链接运行时库。这不适用于 Linux 目标。
此值在非 Watcom 编译器上会被忽略,但在使用以 Watcom ABI 为目标的编译器时,不受支持的值会被作为错误拒绝。
此值也可以是空字符串(""
),在这种情况下,CMake 不会显式添加任何运行时库选择标志。
使用 生成器表达式
来支持按配置指定。
例如,以下代码:
set(CMAKE_WATCOM_RUNTIME_LIBRARY "MultiThreaded")
为之后的所有目标选择多线程静态链接运行时库。
如果未设置此变量,则 WATCOM_RUNTIME_LIBRARY
目标属性将不会被自动设置。如果未设置该属性,则 CMake 在 Windows 上默认使用 MultiThreadedDLL
,在其他平台上默认使用 SingleThreaded
来选择 Watcom 运行时库。
注意
此变量仅在策略 CMP0136
设置为 NEW
且在第一次启用使用以 Watcom ABI 为目标的编译器的语言的 project()
或 enable_language()
命令之前有效。