MACOSX_PACKAGE_LOCATION.rst 1.7 KB

123456789101112131415161718192021222324252627282930
  1. MACOSX_PACKAGE_LOCATION
  2. -----------------------
  3. Place a source file inside a Application Bundle
  4. (:prop_tgt:`MACOSX_BUNDLE`), Core Foundation Bundle (:prop_tgt:`BUNDLE`),
  5. or Framework Bundle (:prop_tgt:`FRAMEWORK`). It is applicable for OS X
  6. and iOS.
  7. Executable targets with the :prop_tgt:`MACOSX_BUNDLE` property set are
  8. built as OS X or iOS application bundles on Apple platforms. Shared
  9. library targets with the :prop_tgt:`FRAMEWORK` property set are built as
  10. OS X or iOS frameworks on Apple platforms. Module library targets with
  11. the :prop_tgt:`BUNDLE` property set are built as OS X ``CFBundle`` bundles
  12. on Apple platforms. Source files listed in the target with this property
  13. set will be copied to a directory inside the bundle or framework content
  14. folder specified by the property value. For OS X Application Bundles the
  15. content folder is ``<name>.app/Contents``. For OS X Frameworks the
  16. content folder is ``<name>.framework/Versions/<version>``. For OS X
  17. CFBundles the content folder is ``<name>.bundle/Contents`` (unless the
  18. extension is changed). See the :prop_tgt:`PUBLIC_HEADER`,
  19. :prop_tgt:`PRIVATE_HEADER`, and :prop_tgt:`RESOURCE` target properties for
  20. specifying files meant for ``Headers``, ``PrivateHeaders``, or
  21. ``Resources`` directories.
  22. If the specified location is equal to ``Resources``, the resulting location
  23. will be the same as if the :prop_tgt:`RESOURCE` property had been used. If
  24. the specified location is a sub-folder of ``Resources``, it will be placed
  25. into the respective sub-folder. Note: For iOS Apple uses a flat bundle layout
  26. where no ``Resources`` folder exist. Therefore CMake strips the ``Resources``
  27. folder name from the specified location.