XcodeIOSInstallCombinedPrune.cmake 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. enable_language(CXX)
  2. if(XCODE_VERSION VERSION_GREATER_EQUAL 9)
  3. set(CMAKE_OSX_DEPLOYMENT_TARGET 10)
  4. endif()
  5. set(CMAKE_XCODE_ATTRIBUTE_CODE_SIGNING_ALLOWED "NO")
  6. set(CMAKE_XCODE_ATTRIBUTE_CODE_SIGNING_REQUIRED "NO")
  7. set(CMAKE_XCODE_ATTRIBUTE_CODE_SIGN_IDENTITY "")
  8. set(CMAKE_XCODE_ATTRIBUTE_DEBUG_INFORMATION_FORMAT "dwarf")
  9. add_library(foo SHARED foo.cpp)
  10. install(TARGETS foo DESTINATION lib)
  11. add_library(baz SHARED foo.cpp)
  12. set_target_properties(
  13. foo baz
  14. PROPERTIES
  15. XCODE_ATTRIBUTE_ARCHS[sdk=iphoneos*] armv7
  16. XCODE_ATTRIBUTE_VALID_ARCHS[sdk=iphoneos*] armv7
  17. XCODE_ATTRIBUTE_ARCHS[sdk=iphonesimulator*] x86_64
  18. XCODE_ATTRIBUTE_VALID_ARCHS[sdk=iphonesimulator*] x86_64
  19. )
  20. add_library(boo SHARED foo.cpp)
  21. set_target_properties(
  22. boo
  23. PROPERTIES
  24. XCODE_ATTRIBUTE_ARCHS[sdk=iphoneos*] arm64
  25. XCODE_ATTRIBUTE_VALID_ARCHS[sdk=iphoneos*] arm64
  26. XCODE_ATTRIBUTE_ARCHS[sdk=iphonesimulator*] i386
  27. XCODE_ATTRIBUTE_VALID_ARCHS[sdk=iphonesimulator*] i386
  28. )
  29. add_custom_command(
  30. TARGET foo
  31. POST_BUILD
  32. COMMAND lipo -create $<TARGET_FILE:baz> $<TARGET_FILE:boo> -output $<TARGET_FILE:foo>
  33. )