CMAKE_MAKE_PROGRAM¶
可启动原生构建系统的工具。该值可以是可执行文件的完整路径,也可以是工具名称(如果预期在 PATH
中)。
所选工具取决于用于配置项目的 CMAKE_GENERATOR
。
Makefile 生成器 将此变量设置为
make
、gmake
或特定于生成器的工具(例如,NMake Makefiles
的nmake
)。这些生成器将
CMAKE_MAKE_PROGRAM
存储在 CMake 缓存中,以便用户可以对其进行编辑。Ninja
生成器将此变量设置为ninja
。此生成器将
CMAKE_MAKE_PROGRAM
存储在 CMake 缓存中,以便用户可以对其进行编辑。Xcode
生成器将此变量设置为xcodebuild
。此生成器倾向于在构建时查找构建工具,而不是提前将
CMAKE_MAKE_PROGRAM
存储在 CMake 缓存中。这是因为xcodebuild
很容易找到。为了与 3.2 之前的 CMake 版本兼容,如果用户或项目明确将
CMAKE_MAKE_PROGRAM
添加到 CMake 缓存中,则 CMake 将使用指定的值。Visual Studio 生成器 将此变量设置为
MSBuild.exe
或devenv.com
的完整路径。(另请参阅变量CMAKE_VS_MSBUILD_COMMAND
和CMAKE_VS_DEVENV_COMMAND
。)这些生成器倾向于在构建时查找构建工具,而不是提前将
CMAKE_MAKE_PROGRAM
存储在 CMake 缓存中。这是因为这些工具是特定于版本的,并且可以使用 Visual Studio 安装程序定位。这也是必要的,因为正确的构建工具可能取决于项目内容(例如,Visual Studio 的 Intel Fortran 插件需要devenv.com
来构建其.vfproj
项目文件,尽管通常首选MSBuild.exe
来支持CMAKE_GENERATOR_TOOLSET
)。为了与 3.0 之前的 CMake 版本兼容,如果用户或项目明确将
CMAKE_MAKE_PROGRAM
添加到 CMake 缓存中,则 CMake 将尽可能使用指定的值。Green Hills MULTI
生成器根据所使用的工具集将此变量设置为gbuild.exe(Windows)
或gbuild(Linux)
的完整路径。一旦生成器为该变量初始化了特定值,更改该值将导致未定义的行为。
CMAKE_MAKE_PROGRAM
变量设置为供项目代码使用。该值也由 cmake --build
和 ctest --build-and-test
工具用于启动原生构建过程。