CMAKE_NINJA_OUTPUT_PATH_PREFIX

版本 3.6 新增。

告知 Ninja 產生器build.ninja 中的每個輸出路徑添加前綴。如果缺少,則在前綴後附加斜線。

當產生的 ninja 檔案旨在作為 subninja 檔案嵌入到 super ninja 專案中時,這非常有用。例如,以下指令

cd super-build-dir &&
cmake -G Ninja -S /path/to/src -B sub -DCMAKE_NINJA_OUTPUT_PATH_PREFIX=sub/
#                                 ^^^---------- these match -----------^^^

super-build-dir/sub 中產生一個包含頂層 (CMAKE_BINARY_DIR) 的建置目錄。建置目錄的路徑以前綴結尾。這使其適用於在單獨編寫的 super-build-dir/build.ninja 檔案中使用,並帶有如下指令

subninja sub/build.ninja

super-build-dir/build.ninja 中的 auto-regeneration 規則必須對 sub/build.ninja 具有僅順序相依性。

版本 3.27 新增:Ninja Multi-Config 產生器支援此變數。

注意

當設定 CMAKE_NINJA_OUTPUT_PATH_PREFIX 時,CMake 產生的專案不能作為獨立專案使用。未指定預設目標。

CMAKE_NINJA_OUTPUT_PATH_PREFIX 的值必須與 CMAKE_BINARY_DIR *結尾* 的一個或多個路徑組件相符,否則行為未定義。但是,此要求不會自動檢查。