Spec-Zone.ru › CMake 3.30

RESOURCE

Укажите файлы ресурсов в FRAMEWORK или BUNDLE.

Целевые файлы, помеченные свойством FRAMEWORK или BUNDLE, генерируют фреймворк или пакет приложения (поддерживаются macOS и iOS) или обычные общие библиотеки на других платформах. Это свойство может быть установлено в список файлов, которые будут помещены в соответствующий каталог (например, каталог Resources для macOS) внутри пакета. На платформах, не являющихся Apple, эти файлы могут быть установлены с помощью параметра RESOURCE для команды install(TARGETS).

Следующий пример пакета приложения:

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

© 2000–2024 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/latest/prop_tgt/RESOURCE.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API