CMP0011

警告

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

包含的腳本會自動執行 cmake_policy() PUSH 和 POP。

在 CMake 2.6.2 及更早版本中,由 include()find_package() 命令載入的腳本中的 CMake 策略設定會影響包含者。需要明確調用 cmake_policy(PUSH)cmake_policy(POP) 以隔離策略變更並保護包含者。雖然有些腳本旨在影響其包含者的策略,但大多數腳本並非如此。在 CMake 2.6.3 及更高版本中,include()find_package() 預設會在包含的腳本周圍 PUSHPOP 策略堆疊上的項目,但提供 NO_POLICY_SCOPE 選項以停用它。此策略決定是否為了相容性而暗示 NO_POLICY_SCOPE。此策略的 OLD 行為是針對 include()find_package() 命令暗示 NO_POLICY_SCOPE。此策略的 NEW 行為是允許命令執行其預設的 cmake_policy PUSHPOP

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