summaryrefslogtreecommitdiffstats
path: root/Help/policy
diff options
context:
space:
mode:
authorChuck Atkins <chuck.atkins@kitware.com>2015-08-24 18:33:31 (GMT)
committerBrad King <brad.king@kitware.com>2015-09-21 14:12:13 (GMT)
commit9784af1b50a142c0160058734c7e12cee5f2a15e (patch)
tree864a958bf6accb58c6d9de434e1675f4addd38b7 /Help/policy
parent402bf096ec4aac75af096c3708ce51efaf4589d0 (diff)
downloadCMake-9784af1b50a142c0160058734c7e12cee5f2a15e.zip
CMake-9784af1b50a142c0160058734c7e12cee5f2a15e.tar.gz
CMake-9784af1b50a142c0160058734c7e12cee5f2a15e.tar.bz2
CMP0065: Restrict the use of CMAKE_SHARED_LIBRARY_LINK_<LANG>_FLAGS
This new policy restricts the addition of the shared library link flags to executables only when the ENABLE_EXPORTS property is set to True.
Diffstat (limited to 'Help/policy')
-rw-r--r--Help/policy/CMP0065.rst27
1 files changed, 27 insertions, 0 deletions
diff --git a/Help/policy/CMP0065.rst b/Help/policy/CMP0065.rst
new file mode 100644
index 0000000..2ed775d
--- /dev/null
+++ b/Help/policy/CMP0065.rst
@@ -0,0 +1,27 @@
+CMP0065
+-------
+
+Do not add flags to export symbols from executables without
+the :prop_tgt:`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 :prop_tgt:`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
+:prop_tgt:`ENABLE_EXPORTS` target property.
+
+The ``NEW`` behavior of this policy is to only use the additional link
+flags when linking executables if the :prop_tgt:`ENABLE_EXPORTS` target
+property is set to ``True``.
+
+This policy was introduced in CMake version 3.4. Unlike most policies,
+CMake version |release| does *not* warn by default when this policy
+is not set and simply uses OLD behavior. See documentation of the
+:variable:`CMAKE_POLICY_WARNING_CMP0065 <CMAKE_POLICY_WARNING_CMP<NNNN>>`
+variable to control the warning.
+
+.. include:: DEPRECATED.txt