框架

在 macOS 和 iOS 上將 SHAREDSTATIC 函式庫建置為框架套件。

如果此類函式庫目標的這個屬性設定為 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"
)