Spec-Zone.ru › CMake

VERSION

Номер версии целевой библиотеки общего использования.

Для библиотек общего использования VERSION и SOVERSION могут быть использованы для указания версии сборки и версии ABI соответственно. При компиляции или установке, если платформа поддерживает символические ссылки и компоновщик поддерживает имена so, создаются соответствующие символические ссылки. Если указан только один из них, предполагается, что у отсутствующего номер версии такой же.

Для исполняемых файлов VERSION может быть использован для указания версии сборки. При компиляции или установке, если платформа поддерживает символические ссылки, создаются соответствующие символические ссылки.

Распространённая конвенция заключается в указании как VERSION , так и SOVERSION таким образом, что SOVERSION соответствует первой составляющей VERSION.

set_target_properties(mylib PROPERTIES VERSION 1.2.3 SOVERSION 1)

Идея заключается в том, что изменения, влияющие на ABI, увеличивают как SOVERSION , так и основной номер VERSION.

Версии Windows

Для библиотек общего использования и исполняемых файлов в Windows атрибут VERSION анализируется для извлечения номера версии <major>.<minor>. Эти числа используются как версия изображения двоичного файла.

Версии Mach-O

Для библиотек общего использования и исполняемых файлов на системах Mach-O (например, macOS, iOS), свойство SOVERSION соответствует версии совместимости, а VERSION соответствует текущей версии (если не указаны специфичные для Mach-O переопределения, как обсуждается ниже). См. свойство целевого объекта FRAMEWORK для примера.

Для библиотек общего использования свойства MACHO_COMPATIBILITY_VERSION и MACHO_CURRENT_VERSION могут быть использованы для переопределения версии совместимости и текущей версии соответственно. Обратите внимание, что SOVERSION всё ещё используется для формирования install_name и оба SOVERSION и VERSION также могут влиять на имена файлов и символических ссылок.

Версии двоичных файлов Mach-O могут быть проверены командой otool -L <binary>.

© 2000–2024 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/latest/prop_tgt/VERSION.html

Spec-Zone.ru

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