CMP0005

警告

此策略的 OLD 行為已在 CMake 4.0 版本中移除。此策略必須透過呼叫 cmake_minimum_required()cmake_policy() 設定為 NEW

預處理器定義值現在會自動跳脫。

此策略決定 CMake 是否應產生透過 add_definitions 加入的跳脫後的預處理器定義值。CMake 2.4 及更早版本假設 add_definitions 呼叫中的巨集只會提供簡單的值。它不會嘗試跳脫非顯而易見的值,例如產生的建置規則中的字串文字。CMake 2.6 及更高版本支援跳脫大多數值,但不能假設使用者尚未為了規避早期版本的限制而加入跳脫。

此策略的 OLD 行為是將提供給 add_definitions 的定義值直接放置在產生的建置規則中,而不嘗試跳脫任何內容。此策略的 NEW 行為是自動為所有原生建置工具產生正確的跳脫。有關跳脫實作的限制,請參閱 COMPILE_DEFINITIONS 目標屬性的文件。

此策略在 CMake 2.6.0 版本中引入。在 CMake 4.0 版本中移除之前,可以透過 cmake_policy()cmake_minimum_required() 進行設定。如果未設定,CMake 會發出警告,並使用 OLD 行為。