FetchContent is now disabled by default, when the project is included as an subproject by another top-level project. Also, every usage of FetchContent is behind a separate flag to enable and disable the usage with granular control.
project() should only be called if the subdirectory, in fact, can be built standalone.