diff --git a/Help/release/3.30.rst b/Help/release/3.30.rst index 50fefe295c..30d23bbc16 100644 --- a/Help/release/3.30.rst +++ b/Help/release/3.30.rst @@ -258,8 +258,25 @@ Changes made since CMake 3.30.0 include the following. 3.30.3 ------ +* The :command:`project()` command now sets + :variable:`_SOURCE_DIR`, :variable:`_BINARY_DIR`, + and :variable:`_IS_TOP_LEVEL` as normal variables in addition + to setting them as cache entries. This is needed to preserve support for + some :module:`FetchContent` use cases under policy :policy:`CMP0169`'s + NEW behavior. + * The :module:`FindPython` and :module:`FindPython3` modules now define, respectively, the ``Python_DEFINITIONS`` and ``Python3_DEFINITIONS`` variables on Windows to support development with the free threaded version of Python. The :prop_tgt:`INTERFACE_COMPILE_DEFINITIONS` target property is also defined for the various targets provided by these modules. + +.. 3.30.4 (unreleased) + + * The :command:`project()` command now sets + :variable:`_SOURCE_DIR`, :variable:`_BINARY_DIR`, + and :variable:`_IS_TOP_LEVEL` as normal variables only if they + are already set as normal variables when :command:`project` is invoked. + Cache entries by the same names are always set as before. + This refines 3.30.3's behavior change to restore behavior of nested + directories that call :command:`project` with the same project name.