XCFramework.sh 4.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. #!/bin/sh
  2. # XCFramework.sh
  3. # XCTreeLang
  4. #
  5. # Created by 邢铖 on 2023/6/18.
  6. #
  7. if [[ -a "buildxcf" ]];then
  8. rm -rf "buildxcf"
  9. fi;
  10. xcodebuild archive \
  11. -scheme "XCTreeLang" \
  12. -archivePath "buildxcf/ios_sim.xcarchive" \
  13. -sdk iphonesimulator \
  14. SKIP_INSTALL=NO
  15. xcodebuild archive \
  16. -scheme "XCTreeLang" \
  17. -archivePath "buildxcf/ios.xcarchive" \
  18. -sdk iphoneos \
  19. SKIP_INSTALL=NO
  20. xcodebuild archive \
  21. -scheme "XCTreeLang" \
  22. -archivePath "buildxcf/mac.xcarchive" \
  23. -destination 'platform=macOS,variant=Mac Catalyst' \
  24. SKIP_INSTALL=NO BUILD_LIBRARIES_FOR_DISTRIBUTION=YES SUPPORTS_MACCATALYST=YES
  25. xcodebuild -create-xcframework \
  26. -framework "buildxcf/ios_sim.xcarchive/Products/Library/Frameworks/XCTreeLang.framework" \
  27. -framework "buildxcf/ios.xcarchive/Products/Library/Frameworks/XCTreeLang.framework" \
  28. -framework "buildxcf/mac.xcarchive/Products/Library/Frameworks/XCTreeLang.framework" \
  29. -output "buildxcf/XCTreeLang.xcframework"
  30. pushd "buildxcf/XCTreeLang.xcframework/ios-arm64/XCTreeLang.framework/Modules/XCTreeLang.swiftmodule"
  31. cat arm64-apple-ios.private.swiftinterface | sed '/import XCTLRuntimeTypeInstanceModule/d' > arm64-apple-ios.private.swiftinterface.bak
  32. rm arm64-apple-ios.private.swiftinterface
  33. mv arm64-apple-ios.private.swiftinterface.bak arm64-apple-ios.private.swiftinterface
  34. cat arm64-apple-ios.swiftinterface | sed '/import XCTLRuntimeTypeInstanceModule/d' > arm64-apple-ios.swiftinterface.bak
  35. rm arm64-apple-ios.swiftinterface
  36. mv arm64-apple-ios.swiftinterface.bak arm64-apple-ios.swiftinterface
  37. popd
  38. pushd "buildxcf/XCTreeLang.xcframework/ios-arm64_x86_64-simulator/XCTreeLang.framework/Modules/XCTreeLang.swiftmodule"
  39. cat arm64-apple-ios-simulator.private.swiftinterface | sed '/import XCTLRuntimeTypeInstanceModule/d' > arm64-apple-ios-simulator.private.swiftinterface.bak
  40. rm arm64-apple-ios-simulator.private.swiftinterface
  41. mv arm64-apple-ios-simulator.private.swiftinterface.bak arm64-apple-ios-simulator.private.swiftinterface
  42. cat arm64-apple-ios-simulator.swiftinterface | sed '/import XCTLRuntimeTypeInstanceModule/d' > arm64-apple-ios-simulator.swiftinterface.bak
  43. rm arm64-apple-ios-simulator.swiftinterface
  44. mv arm64-apple-ios-simulator.swiftinterface.bak arm64-apple-ios-simulator.swiftinterface
  45. cat x86_64-apple-ios-simulator.private.swiftinterface | sed '/import XCTLRuntimeTypeInstanceModule/d' > x86_64-apple-ios-simulator.private.swiftinterface.bak
  46. rm x86_64-apple-ios-simulator.private.swiftinterface
  47. mv x86_64-apple-ios-simulator.private.swiftinterface.bak x86_64-apple-ios-simulator.private.swiftinterface
  48. cat x86_64-apple-ios-simulator.swiftinterface | sed '/import XCTLRuntimeTypeInstanceModule/d' > x86_64-apple-ios-simulator.swiftinterface.bak
  49. rm x86_64-apple-ios-simulator.swiftinterface
  50. mv x86_64-apple-ios-simulator.swiftinterface.bak x86_64-apple-ios-simulator.swiftinterface
  51. popd
  52. pushd "buildxcf/XCTreeLang.xcframework/ios-arm64_x86_64-maccatalyst/XCTreeLang.framework/Modules/XCTreeLang.swiftmodule"
  53. cat arm64-apple-ios-macabi.private.swiftinterface | sed '/import XCTLRuntimeTypeInstanceModule/d' > arm64-apple-ios-macabi.private.swiftinterface.bak
  54. rm arm64-apple-ios-macabi.private.swiftinterface
  55. mv arm64-apple-ios-macabi.private.swiftinterface.bak arm64-apple-ios-macabi.private.swiftinterface
  56. cat arm64-apple-ios-macabi.swiftinterface | sed '/import XCTLRuntimeTypeInstanceModule/d' > arm64-apple-ios-macabi.swiftinterface.bak
  57. rm arm64-apple-ios-macabi.swiftinterface
  58. mv arm64-apple-ios-macabi.swiftinterface.bak arm64-apple-ios-macabi.swiftinterface
  59. cat x86_64-apple-ios-macabi.private.swiftinterface | sed '/import XCTLRuntimeTypeInstanceModule/d' > x86_64-apple-ios-macabi.private.swiftinterface.bak
  60. rm x86_64-apple-ios-macabi.private.swiftinterface
  61. mv x86_64-apple-ios-macabi.private.swiftinterface.bak x86_64-apple-ios-macabi.private.swiftinterface
  62. cat x86_64-apple-ios-macabi.swiftinterface | sed '/import XCTLRuntimeTypeInstanceModule/d' > x86_64-apple-ios-macabi.swiftinterface.bak
  63. rm x86_64-apple-ios-macabi.swiftinterface
  64. mv x86_64-apple-ios-macabi.swiftinterface.bak x86_64-apple-ios-macabi.swiftinterface
  65. popd
  66. open "buildxcf"