CMAKE_MAKE_PROGRAM¶
可以啟動原生建置系統的工具。該值可以是可執行檔的完整路徑,或者如果該工具預期在 PATH
中,則僅是工具名稱。
選擇的工具取決於用於設定專案的 CMAKE_GENERATOR
。
Makefile 產生器將此設定為
make
、gmake
或特定產生器的工具(例如,nmake
用於NMake Makefiles
)。這些產生器將
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 安裝程式來定位。這也是必要的,因為正確的建置工具可能取決於專案內容(例如,Intel Fortran 外掛程式到 Visual Studio 需要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
工具用來啟動原生建置程序。