Чтобы предотвратить повторную загрузку зависимостей с помощью FetchContent, можно использовать следующие опции:
- FETCHCONTENTFULLYDISCONNECTED. spec-zone.ru При включении этой опции не предпринимается попыток загрузить или обновить какое-либо содержимое. spec-zone.ru Предполагается, что всё содержимое уже было заполнено в предыдущем запуске или каталоги исходных файлов указывают на существующее содержимое, предоставленное разработчиком вручную. spec-zone.ru Однако эта опция не подходит для предотвращения доступа к сети при первом запуске в каталоге сборки. spec-zone.ru
- FETCHCONTENTUPDATESDISCONNECTED. spec-zone.ru stackoverflow.com Это менее жёсткий контроль за загрузкой/обновлением по сравнению с FETCHCONTENTFULLYDISCONNECTED. spec-zone.ru FETCHCONTENTUPDATESDISCONNECTED только предотвращает подключение к удалённым серверам на шаге обновления при использовании методов загрузки git или hg. spec-zone.ru Обновления всё ещё происходят, если меняются данные о шаге обновления, но обновление выполняется только с информацией, уже доступной локально. spec-zone.ru
Также существует модуль cmake-fetchcontent-offline, который позволяет автоматически отключить обновления FetchContent, если в данный момент нет подключения к интернету. github.com