Help: Fix inaccuracies in INSTALL_REMOVE_ENVIRONMENT_RPATH docs

The previous docs assumed one had to set INSTALL_RPATH for
this target property to have an effect, but the actual condition is
only that the install rpath is different to the build rpath. Even if
the install rpath is empty, it is possible that CMake will rewrite
the rpath during install because the build rpath could be
non-empty.
This commit is contained in:
Craig Scott
2019-11-04 17:02:57 +11:00
parent ac8de0dbcf
commit dd05ef429a
2 changed files with 17 additions and 11 deletions

View File

@@ -1,10 +1,16 @@
INSTALL_REMOVE_ENVIRONMENT_RPATH INSTALL_REMOVE_ENVIRONMENT_RPATH
-------------------------------- --------------------------------
Removes compiler defined rpaths durimg installation. Controls whether toolchain-defined rpaths should be removed during installation.
``INSTALL_REMOVE_ENVIRONMENT_RPATH`` is a boolean that if set to ``True`` will When a target is being installed, CMake may need to rewrite its rpath
remove compiler defined rpaths from the project if the user also defines rpath information. This occurs when the install rpath (as specified by the
with :prop_tgt:`INSTALL_RPATH`. This property is initialized by whether the :prop_tgt:`INSTALL_RPATH` target property) has different contents to the rpath
value of :variable:`CMAKE_INSTALL_REMOVE_ENVIRONMENT_RPATH` is set when a that the target was built with. Some toolchains insert their own rpath
target is created. contents into the binary as part of the build. By default, CMake will
preserve those extra inserted contents in the install rpath. For those
scenarios where such toolchain-inserted entries need to be discarded during
install, set the ``INSTALL_REMOVE_ENVIRONMENT_RPATH`` target property to true.
This property is initialized by the value of
:variable:`CMAKE_INSTALL_REMOVE_ENVIRONMENT_RPATH` when the target is created.

View File

@@ -1,9 +1,9 @@
CMAKE_INSTALL_REMOVE_ENVIRONMENT_RPATH CMAKE_INSTALL_REMOVE_ENVIRONMENT_RPATH
-------------------------------------- --------------------------------------
Removes compiler defined rpaths durimg installation. Sets the default for whether toolchain-defined rpaths should be removed during
installation.
``CMAKE_INSTALL_REMOVE_ENVIRONMENT_RPATH`` is a boolean that if set to ``true`` ``CMAKE_INSTALL_REMOVE_ENVIRONMENT_RPATH`` is a boolean that provides the
removes compiler defined rpaths from the project if the user also defines rpath default value for the :prop_tgt:`INSTALL_REMOVE_ENVIRONMENT_RPATH` property
with :prop_tgt:`INSTALL_RPATH`. This is used to initialize the target property of all subsequently created targets.
:prop_tgt:`INSTALL_REMOVE_ENVIRONMENT_RPATH` for all targets.