CMP0027¶
有條件連結的導入目標缺少包含目錄。
CMake 2.8.11 引入了 INTERFACE_INCLUDE_DIRECTORIES
的概念,並在 cmake 時檢查 INTERFACE_INCLUDE_DIRECTORIES
中 IMPORTED
目標的條目是否實際存在。CMake 2.8.11 也引入了 target_link_libraries()
命令中的產生器表達式支援。然而,如果導入目標是透過產生器表達式評估的結果進行連結,則該目標的 INTERFACE_INCLUDE_DIRECTORIES
中的條目並未按照應有的方式檢查是否存在。
此策略的 OLD
行為是,如果產生器表達式有條件連結的 IMPORTED
目標的 INTERFACE_INCLUDE_DIRECTORIES
中的條目不存在,則會回報警告。
此策略的 NEW
行為是,如果產生器表達式有條件連結的 IMPORTED
目標的 INTERFACE_INCLUDE_DIRECTORIES
中的條目不存在,則會回報錯誤。
此策略在 CMake 版本 3.0 中引入。它可以使用 cmake_policy()
或 cmake_minimum_required()
進行設定。如果未設定,CMake 會發出警告,並使用 OLD
行為。
注意
策略的 OLD
行為依定義 已被棄用
,並可能在未來的 CMake 版本中移除。