New in version 3.26.

USE_FOLDERS global property is treated as ON by default.

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

cmake_minimum_required(VERSION 3.25)
project(foobar LANGUAGES CXX)

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 cmake_policy() command to set it to OLD or NEW explicitly. Unlike many policies, CMake version 3.26.6 does not warn when this policy is not set and simply uses OLD behavior.


The OLD behavior of a policy is deprecated by definition and may be removed in a future version of CMake.