CMP0041¶
使用生成器表達式時,相對包含路徑會產生錯誤。
在 CMake 2.8.12 及更低版本中,如果目標的 INTERFACE_INCLUDE_DIRECTORIES
中的任何位置包含生成器表達式,則會靜默忽略該條目。
該目標屬性中的路徑條目不應是相對路徑。高階 API 應確保添加源目錄或安裝目錄前綴(視情況而定)。
作為額外的診斷,在 IMPORTED
目標上為安裝位置生成的 INTERFACE_INCLUDE_DIRECTORIES
不應包含源目錄或建置目錄中的路徑。
此政策的 OLD
行為是忽略包含生成器表達式的相對路徑條目。此政策的 NEW
行為是,如果生成器表達式出現在其他位置且路徑為相對路徑,則報告錯誤。
此政策在 CMake 3.0 版本中引入。可以通過 cmake_policy()
或 cmake_minimum_required()
設定。如果未設定,CMake 會發出警告,並使用 OLD
行為。
注意
根據定義,政策的 OLD
行為已被 棄用
,並可能在未來的 CMake 版本中移除。