CMP0065

添加到版本 3.4 中。

在不添加 ENABLE_EXPORTS 目标属性的情况下,不要向可执行文件添加标志来导出符号。

出于历史原因,CMake 3.3 及更低版本始终在某些平台上使用诸如 -rdynamic 等标志链接可执行文件,以便通过 dlopen 加载的任何插件使用可执行文件的符号。CMake 3.4 及更高版本更愿意仅对使用 ENABLE_EXPORTS 目标属性显式标记的可执行文件执行此操作。

此策略的 OLD 行为是在链接可执行文件时始终使用附加链接标志,而不管 ENABLE_EXPORTS 目标属性的值如何。

此策略的 NEW 行为是仅当将 ENABLE_EXPORTS 目标属性设置为 True 时,才在链接可执行文件时使用附加链接标志。

此策略是在 CMake 版本 3.4 中引入的。它可以由 cmake_policy()cmake_minimum_required() 设置。如果未设置,CMake 在默认情况下不会发出警告,并使用 OLD 行为。

请参见变量 CMAKE_POLICY_WARNING_CMP0065 的文档,以控制警告。

注意

根据定义,策略的 OLD 行为 已弃用 by definition,并且可能会在未来版本的 CMake 中移除。