diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 6afcbe8..2bd3dc0 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -34,6 +34,7 @@ jobs: channel: 'stable' cache: true # - run: flutter config --enable-macos-desktop + - run: flutter config --enable-swift-package-manager - run: flutter doctor --verbose - run: flutter pub get - run: flutter build macos --verbose @@ -62,6 +63,7 @@ jobs: channel: 'stable' cache: true - run: flutter doctor --verbose + - run: flutter config --enable-swift-package-manager - run: flutter pub get - run: flutter build ios --release --no-codesign --verbose - run: | diff --git a/darwin/Package.swift b/darwin/Package.swift new file mode 100644 index 0000000..394cc12 --- /dev/null +++ b/darwin/Package.swift @@ -0,0 +1,46 @@ +// swift-tools-version: 5.9 +// The swift-tools-version declares the minimum version of Swift required to build this package. +import PackageDescription + +let package = Package( + name: "fvp", + platforms: [ + .iOS("12.0"), + .macOS("10.13"), + ], + products: [ + .library(name: "fvp", targets: ["fvp"]), + ], + targets: [ + .target( + name: "fvp", + dependencies: [.target(name: "mdk")], + path: ".", + sources: [ + "Classes/FvpPlugin.mm", + "Classes/callbacks.cpp", + ], + resources: [ + .process("PrivacyInfo.xcprivacy"), + ], + publicHeadersPath: "Classes", + cSettings: [ + .headerSearchPath("Classes"), + ], + cxxSettings: [ + .unsafeFlags(["-Wno-documentation"]), + ], + linkerSettings: [ + .linkedFramework("AVFoundation"), + .linkedFramework("CoreVideo"), + .linkedFramework("Metal"), + ] + ), + .binaryTarget( + name: "mdk", + url: "https://github.com/wang-bin/mdk-sdk/releases/download/v0.35.1/mdk-sdk-apple.zip", + checksum: "510698c65c0851940e1b8872e7b713a0fb0f258b6266b0c4aa057e0d0523d937" + ), + ], + cxxLanguageStandard: .cxx20 +) diff --git a/darwin/fvp.podspec b/darwin/fvp.podspec index 7bec450..b6b61fe 100644 --- a/darwin/fvp.podspec +++ b/darwin/fvp.podspec @@ -20,7 +20,7 @@ Flutter video player plugin. #s.osx.pod_target_xcconfig = { 'OTHER_LDFLAGS' => '-framework FlutterMacOS' } s.source = { :path => '.' } s.source_files = 'Classes/**/*' - s.public_header_files = 'Classes/**/*.h' + #s.public_header_files = 'Classes/**/*.h' s.ios.dependency 'Flutter' s.osx.dependency 'FlutterMacOS' s.ios.deployment_target = '12.0'