FetchContent: Deprecate FetchContent_Populate(depName)
Projects should use FetchContent_MakeAvailable(depName)
instead, which supports all options that FetchContent_Declare()
supports. The FetchContent_Populate()
function does not support some of the more recently added options which are specific to FetchContent_MakeAvailable()
, such as SYSTEM
, EXCLUDE_FROM_ALL
. More importantly though, using FetchContent_Populate(depName)
prevents users from using a dependency provider for that dependency. Therefore, deprecate the use of FetchContent_Populate()
where just the dependency name is passed as an argument (which is the form that uses previously recorded details from an earlier call to FetchContent_Declare()
). Policy CMP0169 provides backward compatibility for projects that still call FetchContent_Populate(depName)
.