INTERFACE_LINK_LIBRARIES_DIRECT_EXCLUDE¶
版本 3.24 新增。
此函式庫的消費者不應視為直接連結依賴項的函式庫列表。
此目標屬性可以設定為從依賴目標的最終直接連結依賴項集合中排除項目。此屬性會在所有其他依賴目標的 INTERFACE_LINK_LIBRARIES_DIRECT
目標屬性處理之後處理,因此從直接連結依賴項中排除的優先順序高於包含。
依賴目標的直接連結依賴項的初始集合由其 LINK_LIBRARIES
目標屬性指定。間接連結依賴項由直接連結依賴項的 INTERFACE_LINK_LIBRARIES
屬性的傳遞閉包指定。任何連結依賴項都可以使用 INTERFACE_LINK_LIBRARIES_DIRECT
目標屬性來指定其他直接連結依賴項。然後,直接連結依賴項的集合會被過濾,以排除任何依賴項的 INTERFACE_LINK_LIBRARIES_DIRECT_EXCLUDE
目標屬性命名的項目。
從依賴目標的直接連結依賴項中排除項目並不意味著依賴目標不會連結該項目。該項目仍然可能作為間接連結依賴項,透過其他依賴項上的 INTERFACE_LINK_LIBRARIES
屬性來連結。
INTERFACE_LINK_LIBRARIES_DIRECT_EXCLUDE
的值可以使用 generator expressions
。
注意
INTERFACE_LINK_LIBRARIES_DIRECT_EXCLUDE
目標屬性旨在用於進階使用案例,例如將靜態外掛程式注入到取用可執行檔中。它不應用作組織對 target_link_libraries()
的常規呼叫的替代品。
有關更多詳細資訊和範例,請參閱 INTERFACE_LINK_LIBRARIES_DIRECT
目標屬性文件。