CMP0097 ------- .. versionadded:: 3.16 :command:`ExternalProject_Add` with ``GIT_SUBMODULES ""`` initializes no submodules. The policy also applies to :command:`FetchContent_Declare`, which uses the same download and update features as :command:`ExternalProject_Add`. The commands provide a ``GIT_SUBMODULES`` option which controls what submodules to initialize and update. Starting with CMake 3.16, explicitly setting ``GIT_SUBMODULES`` to an empty string means no submodules will be initialized or updated. This policy provides compatibility for projects that have not been updated to expect the new behavior. The ``OLD`` behavior for this policy is for ``GIT_SUBMODULES`` when set to an empty string to initialize and update all git submodules. The ``NEW`` behavior for this policy is for ``GIT_SUBMODULES`` when set to an empty string to initialize and update no git submodules. This policy was introduced in CMake version 3.16. Use the :command:`cmake_policy` command to set it to ``OLD`` or ``NEW`` explicitly. Unlike most policies, CMake version |release| does *not* warn when this policy is not set and simply uses ``OLD`` behavior.