summaryrefslogtreecommitdiff
path: root/Help/policy/CMP0142.rst
blob: 1f928f0797f894416b221b9685f471a3acd79073 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
CMP0142
-------

.. versionadded:: 3.25

The :generator:`Xcode` generator does not append per-config suffixes to
library search paths.

In CMake 3.24 and below, the :generator:`Xcode` generator preceded each
entry of a library search path with a copy of itself appended with
``$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)``.  This was left from
very early versions of CMake in which per-config directories were not well
modeled.  Such paths often do not exist, resulting in warnings from the
toolchain.  CMake 3.25 and above prefer to not add such library search
paths.  This policy provides compatibility for projects that may have been
accidentally relying on the old behavior.

The ``OLD`` behavior for this policy is to append
``$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)`` to all library search paths.
The ``NEW`` behavior is to not modify library search paths.

This policy was introduced in CMake version 3.25.  Use the
:command:`cmake_policy` command to set it to ``OLD`` or ``NEW`` explicitly.
Unlike many policies, CMake version |release| does *not* warn
when this policy is not set and simply uses ``OLD`` behavior.

.. include:: DEPRECATED.txt