SOVERSION
Номер версии этого целевого объекта.
Для общих библиотек можно использовать VERSION и SOVERSION для указания соответственно версии сборки и версии API. При построении или установке создаются соответствующие символические ссылки, если платформа поддерживает символические ссылки, а компоновщик поддерживает имена типа «so». Если указан только один из них, предполагается, что отсутствующий имеет тот же номер версии. SOVERSION игнорируется, если свойство NO_SONAME установлено.
Версии 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–2021 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.20/prop_tgt/SOVERSION.html