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 不会明确添加运行时库选择标记。
使用 generator expressions
支持按配置进行指定。
例如,以下代码
set(CMAKE_WATCOM_RUNTIME_LIBRARY "MultiThreaded")
为所有后续目标选择链接到静态库中的多线程运行时库。
如果未设置此变量,则不会自动设置 WATCOM_RUNTIME_LIBRARY
目标属性。如果未设置该属性,则 CMake 使用 Windows 上的默认值 MultiThreadedDLL
和其他平台上的 SingleThreaded
选择 Watcom 运行库。
注意
此变量仅在策略 CMP0136
在启用使用针对 Watcom ABI 的编译器的第一个 project()
或 enable_language()
命令之前设置为 NEW
时才有效。