summaryrefslogtreecommitdiff
path: root/Help/policy/CMP0143.rst
blob: 24fdc27ea827a0daccfeac2267ff9feb29349165 (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
28
29
30
CMP0143
-------

.. versionadded:: 3.26

:prop_gbl:`USE_FOLDERS` global property is treated as ``ON`` by default.

When using CMake 3.25 or earlier, :prop_gbl:`USE_FOLDERS` is treated
as ``OFF`` by default unless projects enable the feature.  For example:

.. code-block:: cmake

  cmake_minimum_required(VERSION 3.25)
  project(foobar LANGUAGES CXX)
  set_property(GLOBAL PROPERTY USE_FOLDERS ON)

CMake 3.26 and later prefer to enable the feature by default.

Note that it is the policy setting at the `end` of the top level
``CMakeLists.txt`` file that matters.  The policy setting applies globally
to the whole project.

This policy provides compatibility with projects that have not been updated
to expect enabling of folders.  Enabling folders causes projects to appear
differently in IDEs.  The policy was introduced in CMake version 3.26.  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