MACHO_COMPATIBILITY_VERSION
Какой номер версии совместимости предназначен для бинарных файлов Mach-O?
Для общих библиотек на системах Mach-O (например, macOS, iOS) свойство MACHO_COMPATIBILITY_VERSION соответствует версии совместимости, а MACHO_CURRENT_VERSION соответствует текущей версии. Оба они встроены в бинарный файл общей библиотеки и могут быть проверены с помощью команды otool -L <binary>.
Следует отметить, что свойства MACHO_CURRENT_VERSION и MACHO_COMPATIBILITY_VERSION не влияют на имена файлов или символические ссылки, связанные с версиями, которые генерирует CMake для библиотеки. Свойства целевого объекта VERSION и SOVERSION по-прежнему управляют именами файлов и символических ссылок. install_name также по-прежнему контролируется SOVERSION.
Когда MACHO_CURRENT_VERSION и MACHO_COMPATIBILITY_VERSION не заданы, VERSION и SOVERSION используются для встраивания сведений о версии в бинарные файлы соответственно. Свойства MACHO_CURRENT_VERSION и MACHO_COMPATIBILITY_VERSION необходимо задавать только в том случае, если проекту нужно отделить именование файлов и символических ссылок от сведений о версии, встроенных в бинарные файлы (например, для соответствия соглашениям libtool).
© 2000–2020 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.18/prop_tgt/MACHO_COMPATIBILITY_VERSION.html