RESOURCE¶
標記有 FRAMEWORK
或 BUNDLE
屬性的目標會產生框架或應用程式套件(同時支援 macOS 和 iOS),或其他平台上的普通共享程式庫。此屬性可以設定為要放置在套件內相應目錄(例如 macOS 的 Resources
目錄)中的檔案列表。在非 Apple 平台上,可以使用 install(TARGETS)
命令的 RESOURCE
選項來安裝這些檔案。
以下為應用程式套件的範例
add_executable(ExecutableTarget
addDemo.c
resourcefile.txt
appresourcedir/appres.txt)
target_link_libraries(ExecutableTarget heymath mul)
set(RESOURCE_FILES
resourcefile.txt
appresourcedir/appres.txt)
set_target_properties(ExecutableTarget PROPERTIES
MACOSX_BUNDLE TRUE
MACOSX_FRAMEWORK_IDENTIFIER org.cmake.ExecutableTarget
RESOURCE "${RESOURCE_FILES}")
將為 iOS 系統產生扁平結構
ExecutableTarget.app
appres.txt
ExecutableTarget
Info.plist
resourcefile.txt
對於 macOS 系統,它將產生以下目錄結構
ExecutableTarget.app/
Contents
Info.plist
MacOS
ExecutableTarget
Resources
appres.txt
resourcefile.txt
對於 Linux,此 CMake 腳本會產生以下檔案
ExecutableTarget
Resources
appres.txt
resourcefile.txt