New in version 3.4.
Do not add flags to export symbols from executables without the ENABLE_EXPORTS
target property.
CMake 3.3 and below, for historical reasons, always linked executables on some platforms with flags like -rdynamic
to export symbols from the executables for use by any plugins they may load via dlopen
. CMake 3.4 and above prefer to do this only for executables that are explicitly marked with the ENABLE_EXPORTS
target property.
The OLD
behavior of this policy is to always use the additional link flags when linking executables regardless of the value of the ENABLE_EXPORTS
target property.
The NEW
behavior of this policy is to only use the additional link flags when linking executables if the ENABLE_EXPORTS
target property is set to True
.
This policy was introduced in CMake version 3.4. Unlike most policies, CMake version 3.19.0-rc3 does not warn by default when this policy is not set and simply uses OLD
behavior. See documentation of the CMAKE_POLICY_WARNING_CMP0065
variable to control the warning.
Note
The OLD
behavior of a policy is deprecated by definition
and may be removed in a future version of CMake.
© 2000–2020 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.19/policy/CMP0065.html