ФРЕЙМВОРК
Создать SHARED или STATIC библиотеку как пакет фреймворка на macOS и iOS.
Если для такой библиотеки-цели установлено это свойство в значение TRUE, она будет скомпилирована как фреймворк при построении на macOS и iOS. Она будет иметь необходимую для фреймворка структуру каталогов и будет пригодна для использования с опцией -framework. Это свойство инициализируется значением переменной CMAKE_FRAMEWORK, если она установлена при создании цели.
Чтобы настроить файл Info.plist в фреймворке, используйте свойство цели MACOSX_FRAMEWORK_INFO_PLIST.
Для macOS также см. свойство цели FRAMEWORK_VERSION.
Пример создания dynamicFramework:
add_library(dynamicFramework SHARED
dynamicFramework.c
dynamicFramework.h
)
set_target_properties(dynamicFramework PROPERTIES
FRAMEWORK TRUE
FRAMEWORK_VERSION C
MACOSX_FRAMEWORK_IDENTIFIER com.cmake.dynamicFramework
MACOSX_FRAMEWORK_INFO_PLIST Info.plist
# "current version" in semantic format in Mach-O binary file
VERSION 16.4.0
# "compatibility version" in semantic format in Mach-O binary file
SOVERSION 1.0.0
PUBLIC_HEADER dynamicFramework.h
XCODE_ATTRIBUTE_CODE_SIGN_IDENTITY "iPhone Developer"
)
© 2000–2021 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.20/prop_tgt/FRAMEWORK.html