XcodeIOSInstallCombined.cmake 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. enable_language(CXX)
  2. set(maybe_armv7 armv7)
  3. set(maybe_i386 i386)
  4. if(XCODE_VERSION VERSION_GREATER_EQUAL 14)
  5. set(CMAKE_OSX_DEPLOYMENT_TARGET 16)
  6. set(maybe_armv7 "")
  7. set(maybe_i386 "")
  8. elseif(XCODE_VERSION VERSION_GREATER_EQUAL 9)
  9. set(CMAKE_OSX_DEPLOYMENT_TARGET 10)
  10. endif()
  11. if(NOT IOS)
  12. message(FATAL_ERROR "IOS variable is not set")
  13. endif()
  14. set(CMAKE_XCODE_ATTRIBUTE_CODE_SIGNING_ALLOWED "NO")
  15. set(CMAKE_XCODE_ATTRIBUTE_CODE_SIGNING_REQUIRED "NO")
  16. set(CMAKE_XCODE_ATTRIBUTE_CODE_SIGN_IDENTITY "")
  17. set(CMAKE_XCODE_ATTRIBUTE_DEBUG_INFORMATION_FORMAT "dwarf")
  18. set(CMAKE_XCODE_ATTRIBUTE_ENABLE_BITCODE "NO")
  19. set(CMAKE_OSX_ARCHITECTURES ${maybe_armv7} arm64 ${maybe_i386} x86_64)
  20. add_executable(foo_app MACOSX_BUNDLE main.cpp)
  21. install(TARGETS foo_app BUNDLE DESTINATION bin)
  22. add_library(foo_static STATIC foo.cpp)
  23. install(TARGETS foo_static ARCHIVE DESTINATION lib)
  24. add_library(foo_shared SHARED foo.cpp)
  25. install(TARGETS foo_shared LIBRARY DESTINATION lib)
  26. add_library(foo_bundle MODULE foo.cpp)
  27. set_target_properties(foo_bundle PROPERTIES BUNDLE TRUE)
  28. install(TARGETS foo_bundle LIBRARY DESTINATION lib)
  29. add_library(foo_framework SHARED foo.cpp)
  30. set_target_properties(foo_framework PROPERTIES FRAMEWORK TRUE)
  31. install(TARGETS foo_framework FRAMEWORK DESTINATION lib)