CMAKE_GENERATOR_INSTANCE
Новое в версии 3.11.
Указание экземпляра, специфичного для генератора, предоставленное пользователем.
Некоторые генераторы CMake поддерживают выбор экземпляра родной системы сборки, когда доступно несколько экземпляров. Если пользователь указывает экземпляр (например, установив эту запись кэша или с помощью переменной среды CMAKE_GENERATOR_INSTANCE), или после выбора экземпляра по умолчанию при первой конфигурации дерева сборки, значение будет доступно в этой переменной.
Значение этой переменной никогда не должно изменяться кодом проекта. Файл цепочки инструментов, указанный переменной CMAKE_TOOLCHAIN_FILE, может инициализировать CMAKE_GENERATOR_INSTANCE в качестве записи кэша. После инициализации заданного дерева сборки определенным значением для этой переменной, изменение значения имеет неопределённое поведение.
Поддержка указания экземпляра поддерживается только определёнными генераторами.
Выбор экземпляра Visual Studio
Генераторы Visual Studio поддерживают указание экземпляра для Visual Studio 2017 и выше. Переменная CMAKE_GENERATOR_INSTANCE может быть установлена как запись кэша, выбирающая экземпляр Visual Studio в одном из следующих форматов:
locationlocation[,key=value]*key=value[,key=value]*
location указывает абсолютный путь к директории верхнего уровня установки VS.
key=value пары формируют список параметров через запятую для указания деталей выбора экземпляра. Поддерживаемые пары:
-
version=<major>.<minor>.<date>.<build> -
Новое в версии 3.23.
Укажите 4-компонентную версию сборки VS, также известную как номер сборки.
Компоненты:
<major>.<minor>Номера основных и второстепенных версий VS. Они совпадают с номерами версий выпуска.
<date>Дата сборки в формате
MMMDD, гдеMMM- индекс месяца с момента эпохи, используемой Microsoft, аDD- день в этом месяце.<build>Индекс сборки в день, представленный
<date>.Номер сборки сообщается
vswhereкакinstallationVersion. Например, VS 16.11.10 имеет номер сборки16.11.32126.315.
Новое в версии 3.23: Портабельный экземпляр VS, который не известен установщику Visual Studio, может быть указан, предоставив как location, так и version=.
Если значение CMAKE_GENERATOR_INSTANCE не указано явно пользователем или файлом цепочки инструментов, CMake запрашивает у установщика Visual Studio расположение экземпляров VS, выбирает один и устанавливает переменную в качестве записи кэша для сохранения значения. Если переменная среды в формате VS##0COMNTOOLS, где ## номер основной версии Visual Studio, установлена и указывает на директорию Common7/Tools в одном из экземпляров VS, этот экземпляр будет использован. В противном случае, если установлено более одного экземпляра VS, мы не определяем, какой из них выбран по умолчанию.
Номер сборки версии VS выбранного экземпляра VS предоставляется в переменной CMAKE_VS_VERSION_BUILD_NUMBER.
© 2000–2024 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.28/variable/CMAKE_GENERATOR_INSTANCE.html