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 选项的值(如果有)。在 CMake 4.0 之前的版本中,如果策略 CMP0061 未设置为 NEW,则会为 Makefile 生成器 添加一个尾随的 -- -i 选项。

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

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

build_command(<cachevariable> <makecommand>)

此第二种签名已弃用,但仍可用于向后兼容性。请改用第一种签名。

它将给定的 <cachevariable> 设置为如上所述的命令行字符串,但没有 --target 选项。<makecommand> 被忽略,但对于旧式调用,它应该是 devenv、nmake、make 或其中一个最终用户构建工具的完整路径。

注意

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