add_dependencies¶
在頂層目標之間新增依賴關係。
add_dependencies(<target> <target-dependency>...)
使頂層 <target>
依賴於其他頂層目標,以確保它們在 <target>
之前構建。頂層目標是由 add_executable()
、 add_library()
或 add_custom_target()
命令之一建立的目標(但不包括 CMake 生成的目標,例如 install
)。必須至少給定一個 <target-dependency>
。
新增至匯入目標或介面函式庫的依賴關係會在其位置被遞迴追蹤,因為目標本身不會構建。
在版本 3.3 中新增:允許將依賴關係新增至介面函式庫。
在版本 3.8 中新增:依賴關係將會填充 <target>
的 MANUALLY_ADDED_DEPENDENCIES
屬性。
在版本 3.9 中變更:Ninja 產生器為了提高可用的並行性,使用的排序弱於其他產生器。它們僅保證在 <target>
中的來源開始編譯之前,依賴關係的自訂命令已完成;這確保了產生的來源可用。
參見¶
add_custom_target()
和add_custom_command()
命令的DEPENDS
選項,用於在自訂規則中新增檔案層級的依賴關係。用於將檔案層級的依賴關係新增至物件檔案的
OBJECT_DEPENDS
原始檔屬性。