build_command

获取构建当前项目的命令行。这主要供 CTest 模块内部使用。

build_command(<variable>
              [CONFIGURATION <config>]
              [PARALLEL_LEVEL <parallel>]
              [TARGET <target>]
              [PROJECT_NAME <projname>] # legacy, causes warning
             )

将给定的 <variable> 设置为如下形式的命令行字符串

<cmake> --build . [--config <config>] [--parallel <parallel>] [--target <target>...]

其中 <cmake>cmake(1) 命令行工具的位置,而 <config><parallel><target> 是提供给 CONFIGURATIONPARALLEL_LEVELTARGET 选项的值(如果有)。在 4.0 之前的 CMake 版本中,如果策略 CMP0061 未设置为 NEW,则为 Makefile 生成器 添加了尾随的 -- -i 选项。

调用时,此 cmake --build 命令行将启动底层构建系统工具。

3.21 版本新增: PARALLEL_LEVEL 参数可用于设置 --parallel 标志。

build_command(<cachevariable> <makecommand>)

第二个签名已弃用,但仍可向后兼容使用。请改用第一个签名。

它将给定的 <cachevariable> 设置为如上的命令行字符串,但不包含 --target 选项。<makecommand> 被忽略,但应是 devenv、nmake、make 或最终用户构建工具之一的完整路径,以用于遗留调用。

注意

在 3.0 之前的 CMake 版本中,此命令返回直接调用当前生成器的本机构建工具的命令行。它们对 PROJECT_NAME 选项的实现没有实际效果,因此 CMake 现在在使用该选项时发出警告。