// swift-tools-version:6.1 // (Xcode16.3+) import PackageDescription let package = Package( name: "LiveKit", platforms: [ .iOS(.v13), .macOS(.v10_15), .macCatalyst(.v14), .tvOS(.v17), ], products: [ .library( name: "LiveKit", targets: ["LiveKit"], ), ], dependencies: [ // LK-Prefixed Dynamic WebRTC XCFramework .package(url: "https://github.com/livekit/webrtc-xcframework.git", exact: "144.7559.11"), .package(url: "https://github.com/livekit/livekit-uniffi-xcframework.git", exact: "0.0.6"), .package(url: "https://github.com/apple/swift-protobuf.git", from: "1.31.0"), // Only used for DocC generation .package(url: "https://github.com/apple/swift-docc-plugin.git", from: "1.3.0"), ], targets: [ .target( name: "LKObjCHelpers", publicHeadersPath: "include", ), .target( name: "LiveKit", dependencies: [ .product(name: "LiveKitWebRTC", package: "webrtc-xcframework"), .product(name: "LiveKitUniFFI", package: "livekit-uniffi-xcframework"), .product(name: "SwiftProtobuf", package: "swift-protobuf"), "LKObjCHelpers", ], exclude: [ "Broadcast/NOTICE", ], resources: [ .process("PrivacyInfo.xcprivacy"), ], ), .target( name: "LiveKitTestSupport", dependencies: [ "LiveKit", ], path: "Tests/LiveKitTestSupport", ), .testTarget( name: "LiveKitCoreTests", dependencies: [ "LiveKit", "LiveKitTestSupport", ], ), .testTarget( name: "LiveKitAudioTests", dependencies: [ "LiveKit", "LiveKitTestSupport", ], ), .testTarget( name: "LiveKitObjCTests", dependencies: [ "LiveKit", "LiveKitTestSupport", ], ), ], swiftLanguageModes: [.v5, .v6], )