blob: aa7e0f7f8a235ffb83be0654c1c802ea1f985737 [file] [log] [blame]
Ryan Prichardf6283ab2022-01-13 17:30:19 -08001CMP0118
2-------
3
4.. versionadded:: 3.20
5
6The :prop_sf:`GENERATED` source file property is now visible in all directories.
7
8Whether or not a source file is generated is an all-or-nothing global
9property of the source. Consequently, the associated ``GENERATED``
10property is now visible from any directory scope, not only from the scope
11for which it was set.
12
13Additionally, the ``GENERATED`` property may now be set only to boolean
14values, and may not be turned off once turned on.
15
16The ``OLD`` behavior of this policy is to only allow ``GENERATED`` to be
17visible from the directory scope for which it was set. The ``NEW``
18behavior on the other hand allows it to be visible from any scope.
19
20This policy was introduced in CMake version 3.20. Use the
21:command:`cmake_policy` command to set it to ``OLD`` or ``NEW`` explicitly.
22Unlike many policies, CMake version |release| does *not* warn
23when this policy is not set and simply uses ``OLD`` behavior with regard
24to visibility of the ``GENERATED`` property. However, CMake does warn
25about setting the ``GENERATED`` property to a non-boolean value.