Help/prop_tgt/FRAMEWORK.rst
Build SHARED or STATIC library as Framework Bundle on the macOS and iOS.
If such a library target has this property set to TRUE it will be
built as a framework when built on the macOS and iOS. It will have the
directory structure required for a framework and will be suitable to
be used with the -framework option. This property is initialized by the
value of the :variable:CMAKE_FRAMEWORK variable if it is set when a target is
created.
To customize Info.plist file in the framework, use
:prop_tgt:MACOSX_FRAMEWORK_INFO_PLIST target property.
For macOS see also the :prop_tgt:FRAMEWORK_VERSION target property.
Example of creation dynamicFramework:
.. code-block:: cmake
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" )