MACOSX_PACKAGE_LOCATION

將原始檔放置在應用程式套件(Application Bundle)(MACOSX_BUNDLE)、核心架構套件(Core Foundation Bundle)(BUNDLE) 或架構套件(Framework Bundle)(FRAMEWORK) 內。此屬性適用於 macOS 和 iOS。

設定了 MACOSX_BUNDLE 屬性的可執行目標,在 Apple 平台上會被建置為 macOS 或 iOS 應用程式套件。設定了 FRAMEWORK 屬性的共享程式庫目標,在 Apple 平台上會被建置為 macOS 或 iOS 架構。設定了 BUNDLE 屬性的模組程式庫目標,在 Apple 平台上會被建置為 macOS CFBundle 套件。目標中列出的原始檔,若設定此屬性,將會被複製到由屬性值指定的套件或架構內容資料夾內的目錄中。對於 macOS 應用程式套件,內容資料夾為 <name>.app/Contents。對於 macOS 架構,內容資料夾為 <name>.framework/Versions/<version>。對於 macOS CFBundles,內容資料夾為 <name>.bundle/Contents (除非副檔名已變更)。請參閱 PUBLIC_HEADERPRIVATE_HEADERRESOURCE 目標屬性,以指定用於 HeadersPrivateHeadersResources 目錄的檔案。

如果指定的位置等於 Resources,則產生的位置將與使用 RESOURCE 屬性時相同。如果指定的位置是 Resources 的子資料夾,則將會放置到各自的子資料夾中。注意:對於 iOS,Apple 使用扁平的套件配置,其中不存在 Resources 資料夾。因此,CMake 會從指定的位置中刪除 Resources 資料夾名稱。