CMAKE_POLICY_DEFAULT_CMP<NNNN>

当 CMake 策略 CMP<NNNN> 保持未设置状态时的默认值。

命令 cmake_minimum_required(VERSION)cmake_policy(VERSION) 默认情况下,会将给定版本之后引入的策略保持未设置状态。将 CMAKE_POLICY_DEFAULT_CMP<NNNN> 设置为 OLDNEW 以指定策略 CMP<NNNN> 的默认行为,其中 <NNNN> 是策略编号。

此变量不应由 CMake 代码中的项目设置,以此作为设置其自身策略的方式;请改用 cmake_policy(SET)。此变量旨在外部设置项目本身尚未更新的策略。

  • 运行 CMake 的用户可以在缓存中设置此变量(例如 -DCMAKE_POLICY_DEFAULT_CMP<NNNN>=<OLD|NEW>)。将其设置为 OLD 以在使用旧行为时消除策略警告,或设置为 NEW 以尝试使用新行为构建项目。

  • 项目可以在调用 add_subdirectory() 添加第三方项目之前设置此变量,以便在不修改第三方代码的情况下设置其策略。

请参阅 CMAKE_POLICY_VERSION_MINIMUM,以根据引入策略的 CMake 版本将策略设置为 NEW