Browse Source

expose multiplatform spine-engine target (#2806)

Byeong Gwan 3 months ago
parent
commit
f04382bacd
2 changed files with 35 additions and 2 deletions
  1. 21 2
      Package.swift
  2. 14 0
      spine-ios/Sources/SpineModule/SpineModule.swift

+ 21 - 2
Package.swift

@@ -6,16 +6,35 @@ import PackageDescription
 let package = Package(
     name: "spine-ios",
     platforms: [
-        .iOS(.v13)
+        .iOS(.v13),
+        .tvOS(.v13),
+        .macCatalyst(.v13),
+        .visionOS(.v1),
+        .macOS(.v10_15),
+        .watchOS(.v6),
     ],
     products: [
         // Products define the executables and libraries a package produces, making them visible to other packages.
         .library(
             name: "Spine",
-            targets: ["Spine"]
+            targets: ["SpineModule"]
         )
     ],
     targets: [
+        .target(
+            name: "SpineModule",
+            dependencies: [
+                .byName(
+                    name: "Spine",
+                    condition: .when(platforms: [
+                        .iOS,
+                    ])
+                ),
+                "SpineCppLite",
+                "SpineShadersStructs",
+            ],
+            path: "spine-ios/Sources/SpineModule"
+        ),
         .target(
             name: "Spine",
             dependencies: [

+ 14 - 0
spine-ios/Sources/SpineModule/SpineModule.swift

@@ -0,0 +1,14 @@
+//
+//  SpineModule.swift
+//  spine-ios
+//
+//  Created by 박병관 on 3/7/25.
+//
+
+
+#if canImport(Spine)
+@_exported import Spine
+#endif
+
+@_exported import SpineCppLite
+@_exported import SpineShadersStructs