CMP0095
-------

``RPATH`` entries are properly escaped in the intermediary CMake install script.

In CMake 3.15 and earlier, ``RPATH`` entries set via
:variable:`CMAKE_INSTALL_RPATH` or via :prop_tgt:`INSTALL_RPATH` have not been
escaped before being inserted into the ``cmake_install.cmake`` script. Dynamic
linkers on ELF-based systems (e.g. Linux and FreeBSD) allow certain keywords in
``RPATH`` entries, such as ``${ORIGIN}`` (More details are available in the
``ld.so`` man pages on those systems). The syntax of these keywords can match
CMake's variable syntax. In order to not be substituted (usually to an empty
string) already by the intermediary ``cmake_install.cmake`` script, the user had
to double-escape such ``RPATH`` keywords, e.g.
``set(CMAKE_INSTALL_RPATH "\\\${ORIGIN}/../lib")``. Since the intermediary
``cmake_install.cmake`` script is an implementation detail of CMake, CMake 3.16
and later will make sure ``RPATH`` entries are inserted literally by escaping
any coincidental CMake syntax.

The ``OLD`` behavior of this policy is to not escape ``RPATH`` entries in the
intermediary ``cmake_install.cmake`` script. The ``NEW`` behavior is to properly
escape coincidental CMake syntax in ``RPATH`` entries when generating the
intermediary ``cmake_install.cmake`` script.

This policy was introduced in CMake version 3.16. CMake version |release| warns
when the policy is not set and detected usage of CMake-like syntax and uses
``OLD`` behavior. Use the :command:`cmake_policy` command to set it to ``OLD``
or ``NEW`` explicitly.

.. include:: DEPRECATED.txt
