Spec-Zone.ru › CMake

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 в одном из следующих форматов:

  • location
  • location[,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/latest/variable/CMAKE_GENERATOR_INSTANCE.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API