FrameworkLayout.cmake 1.1 KB

12345678910111213141516171819202122232425
  1. cmake_minimum_required(VERSION 3.4)
  2. enable_language(C)
  3. set(CMAKE_CONFIGURATION_TYPES "Debug" CACHE INTERNAL "Supported configuration types")
  4. set(LIBRARY_OUTPUT_PATH ${CMAKE_BINARY_DIR}) # get rid of ${EFFECTIVE_PLATFORM_NAME}
  5. add_library(Framework ${FRAMEWORK_TYPE}
  6. foo.c
  7. foo.h
  8. res.txt
  9. flatresource.txt
  10. deepresource.txt
  11. some.txt)
  12. set_target_properties(Framework PROPERTIES
  13. FRAMEWORK TRUE
  14. PUBLIC_HEADER foo.h
  15. RESOURCE "res.txt")
  16. set_source_files_properties(flatresource.txt PROPERTIES MACOSX_PACKAGE_LOCATION Resources)
  17. set_source_files_properties(deepresource.txt PROPERTIES MACOSX_PACKAGE_LOCATION Resources/deep)
  18. set_source_files_properties(some.txt PROPERTIES MACOSX_PACKAGE_LOCATION somedir)
  19. add_custom_command(TARGET Framework POST_BUILD
  20. COMMAND /usr/bin/file $<TARGET_FILE:Framework>)
  21. file(GENERATE OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/FrameworkName.cmake CONTENT "set(framework-dir \"$<TARGET_BUNDLE_DIR:Framework>\")\n")