Spec-Zone.ru › CMake 3.29

VERSION

Номер версии целевого разделяемой библиотеки.

Для разделяемых библиотек VERSION и SOVERSION могут использоваться для указания версии сборки и версии ABI соответственно. При сборке или установке создаются соответствующие символические ссылки, если платформа поддерживает символические ссылки, а компоновщик поддерживает имена со-имен. Если указан только один из них, пропущенный предполагается иметь тот же номер версии. Для исполняемых файлов 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/v3.29/prop_tgt/VERSION.html

Spec-Zone.ru

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