Spec-Zone.ru › CMake 3.30

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/v3.30/variable/CMAKE_GENERATOR_INSTANCE.html

Spec-Zone.ru

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