forked from mpvkit/MPVKit
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathPackage.swift
More file actions
299 lines (274 loc) · 13.1 KB
/
Copy pathPackage.swift
File metadata and controls
299 lines (274 loc) · 13.1 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
// swift-tools-version:5.8
import PackageDescription
let package = Package(
name: "MPVKit",
platforms: [.macOS(.v10_15), .iOS(.v13), .tvOS(.v13)],
products: [
.library(
name: "MPVKit",
targets: ["_MPVKit"]
),
.library(
name: "MPVKit-GPL",
targets: ["_MPVKit-GPL"]
),
],
targets: [
.target(
name: "_MPVKit",
dependencies: [
"Libmpv", "_FFmpeg", "Libuchardet", "Libbluray",
.target(name: "Libluajit", condition: .when(platforms: [.macOS])),
],
path: "Sources/_MPVKit",
linkerSettings: [
.linkedFramework("AVFoundation"),
.linkedFramework("CoreAudio"),
]
),
.target(
name: "_FFmpeg",
dependencies: [
"Libavcodec", "Libavfilter", "Libavformat", "Libavutil", "Libswresample", "Libswscale",
"Libssl", "Libcrypto", "Libass", "Libfreetype", "Libfribidi", "Libharfbuzz",
"MoltenVK", "Libshaderc_combined", "lcms2", "Libplacebo", "Libdovi", "Libunibreak",
"gmp", "nettle", "hogweed", "gnutls", "Libdav1d", "Libuavs3d"
],
path: "Sources/_FFmpeg",
linkerSettings: [
.linkedFramework("AudioToolbox"),
.linkedFramework("CoreVideo"),
.linkedFramework("CoreFoundation"),
.linkedFramework("CoreMedia"),
.linkedFramework("Metal"),
.linkedFramework("VideoToolbox"),
.linkedLibrary("bz2"),
.linkedLibrary("iconv"),
.linkedLibrary("expat"),
.linkedLibrary("resolv"),
.linkedLibrary("xml2"),
.linkedLibrary("z"),
.linkedLibrary("c++"),
]
),
.target(
name: "_MPVKit-GPL",
dependencies: [
"Libmpv-GPL", "_FFmpeg-GPL", "Libuchardet", "Libbluray",
.target(name: "Libluajit", condition: .when(platforms: [.macOS])),
],
path: "Sources/_MPVKit-GPL",
linkerSettings: [
.linkedFramework("AVFoundation"),
.linkedFramework("CoreAudio"),
]
),
.target(
name: "_FFmpeg-GPL",
dependencies: [
"Libavcodec-GPL", "Libavfilter-GPL", "Libavformat-GPL", "Libavutil-GPL", "Libswresample-GPL", "Libswscale-GPL",
"Libssl", "Libcrypto", "Libass", "Libfreetype", "Libfribidi", "Libharfbuzz",
"MoltenVK", "Libshaderc_combined", "lcms2", "Libplacebo", "Libdovi", "Libunibreak",
"Libsmbclient", "gmp", "nettle", "hogweed", "gnutls", "Libdav1d", "Libuavs3d"
],
path: "Sources/_FFmpeg-GPL",
linkerSettings: [
.linkedFramework("AudioToolbox"),
.linkedFramework("CoreVideo"),
.linkedFramework("CoreFoundation"),
.linkedFramework("CoreMedia"),
.linkedFramework("Metal"),
.linkedFramework("VideoToolbox"),
.linkedLibrary("bz2"),
.linkedLibrary("iconv"),
.linkedLibrary("expat"),
.linkedLibrary("resolv"),
.linkedLibrary("xml2"),
.linkedLibrary("z"),
.linkedLibrary("c++"),
]
),
.binaryTarget(
name: "Libmpv-GPL",
url: "https://github.com/sbenmeddour/MPVKit/releases/download/0.39.0-no-av-device/Libmpv-GPL.xcframework.zip",
checksum: "86a115ce1d32229d982e9d78d8ff9ade9bf460a3d807313a2547e78fdfc299ff"
),
.binaryTarget(
name: "Libavcodec-GPL",
url: "https://github.com/sbenmeddour/MPVKit/releases/download/0.39.0-no-av-device/Libavcodec-GPL.xcframework.zip",
checksum: "a3484bbf2615c51cb5b0717adc0d1b824de7b7d70823691887054b60fb3a2334"
),
.binaryTarget(
name: "Libavformat-GPL",
url: "https://github.com/sbenmeddour/MPVKit/releases/download/0.39.0-no-av-device/Libavformat-GPL.xcframework.zip",
checksum: "9f66af5fbce3196a6766efba15ff33dd8c44c30fd6b2de99936d5508619a5000"
),
.binaryTarget(
name: "Libavfilter-GPL",
url: "https://github.com/sbenmeddour/MPVKit/releases/download/0.39.0-no-av-device/Libavfilter-GPL.xcframework.zip",
checksum: "5ce31e703b12ba11da404d3f37f75fd632397b21f666b821390a2b200f72dc02"
),
.binaryTarget(
name: "Libavutil-GPL",
url: "https://github.com/sbenmeddour/MPVKit/releases/download/0.39.0-no-av-device/Libavutil-GPL.xcframework.zip",
checksum: "74dc667373f85b4f2049fd224c2c12c59c1a9c39b40b65a57523262069e1de36"
),
.binaryTarget(
name: "Libswresample-GPL",
url: "https://github.com/sbenmeddour/MPVKit/releases/download/0.39.0-no-av-device/Libswresample-GPL.xcframework.zip",
checksum: "926e711a8e6737bb7287299c273bbc75c7ba5ddf548ee5e6af194a163d2d66b6"
),
.binaryTarget(
name: "Libswscale-GPL",
url: "https://github.com/sbenmeddour/MPVKit/releases/download/0.39.0-no-av-device/Libswscale-GPL.xcframework.zip",
checksum: "0c283830ab267bd821c5e660ae06a2139103931eeeacb47c60c85e202fc79b78"
),
//AUTO_GENERATE_TARGETS_BEGIN//
.binaryTarget(
name: "Libcrypto",
url: "https://github.com/mpvkit/openssl-build/releases/download/3.2.0/Libcrypto.xcframework.zip",
checksum: "89989ea14f7297d98083eb8adfba9b389f5b4886cb54fb3d5b6e8b915b7adf1d"
),
.binaryTarget(
name: "Libssl",
url: "https://github.com/mpvkit/openssl-build/releases/download/3.2.0/Libssl.xcframework.zip",
checksum: "46ad8e8fa5a6efe7bd31c9b3c56b20c1bc29a581083588d86e941d261d7dbe98"
),
.binaryTarget(
name: "gmp",
url: "https://github.com/mpvkit/gnutls-build/releases/download/3.8.3/gmp.xcframework.zip",
checksum: "defd5623e6786543588001b8f33026395960a561540738deb6df6996d39f957d"
),
.binaryTarget(
name: "nettle",
url: "https://github.com/mpvkit/gnutls-build/releases/download/3.8.3/nettle.xcframework.zip",
checksum: "c3b8f506fa32bcb3f9bf65096b0556c4f5973f846ee964577d783edbe8e6969d"
),
.binaryTarget(
name: "hogweed",
url: "https://github.com/mpvkit/gnutls-build/releases/download/3.8.3/hogweed.xcframework.zip",
checksum: "47a34e7877f7ebd9175f5645059030e553276faa9a21b91e29fb7463b94e8daf"
),
.binaryTarget(
name: "gnutls",
url: "https://github.com/mpvkit/gnutls-build/releases/download/3.8.3/gnutls.xcframework.zip",
checksum: "5f5cf903a2d52157c29ad304260709f618ce086afea02061241982f8425a6fb0"
),
.binaryTarget(
name: "Libunibreak",
url: "https://github.com/mpvkit/libass-build/releases/download/0.17.3/Libunibreak.xcframework.zip",
checksum: "430ed1a8ff1a230bd93b6868021cde2aafb23c8cb2d586525836cac47c4f310f"
),
.binaryTarget(
name: "Libfreetype",
url: "https://github.com/mpvkit/libass-build/releases/download/0.17.3/Libfreetype.xcframework.zip",
checksum: "300d2966c914e06f0211d8da0ea6208a345709b888e9cbbf1cdd94df26330359"
),
.binaryTarget(
name: "Libfribidi",
url: "https://github.com/mpvkit/libass-build/releases/download/0.17.3/Libfribidi.xcframework.zip",
checksum: "4a3122a2027f021937ed0fa07173dca7f2c1c4c4202b7caf8043fa80408c0953"
),
.binaryTarget(
name: "Libharfbuzz",
url: "https://github.com/mpvkit/libass-build/releases/download/0.17.3/Libharfbuzz.xcframework.zip",
checksum: "f607773598caa72435d8b19ce6a9d54fa7f26cde126b6b66c0a3d2804f084c68"
),
.binaryTarget(
name: "Libass",
url: "https://github.com/mpvkit/libass-build/releases/download/0.17.3/Libass.xcframework.zip",
checksum: "af24cd1429069153f0ca5c650e0b374c27ae38283aca47cbbbc9edb3165b182e"
),
.binaryTarget(
name: "Libsmbclient",
url: "https://github.com/mpvkit/libsmbclient-build/releases/download/4.15.13/Libsmbclient.xcframework.zip",
checksum: "589db9c241e6cc274f2825bee542add273febd0666ebd7ea8a402574ed76e9af"
),
.binaryTarget(
name: "Libbluray",
url: "https://github.com/mpvkit/libbluray-build/releases/download/1.3.4/Libbluray.xcframework.zip",
checksum: "68540747670e734e9b9063da3e5ccb139d34e8b40e1d5ec3177392603d93dfec"
),
.binaryTarget(
name: "Libuavs3d",
url: "https://github.com/mpvkit/libuavs3d-build/releases/download/1.2.1/Libuavs3d.xcframework.zip",
checksum: "893257fc73c61b87fb45ee9de7df6ac4a6967062d7cac2c8d136cd2774a04971"
),
.binaryTarget(
name: "Libdovi",
url: "https://github.com/mpvkit/libdovi-build/releases/download/3.3.0/Libdovi.xcframework.zip",
checksum: "ca4382ea4e17103fbcc979d0ddee69a6eb8967c0ab235cb786ffa96da5f512ed"
),
.binaryTarget(
name: "MoltenVK",
url: "https://github.com/mpvkit/moltenvk-build/releases/download/1.2.9-fix/MoltenVK.xcframework.zip",
checksum: "63836d61deceb5721ff0790dac651890e44ef770ab7b971fb83cc1b2524d1025"
),
.binaryTarget(
name: "Libshaderc_combined",
url: "https://github.com/mpvkit/libshaderc-build/releases/download/2024.2.0/Libshaderc_combined.xcframework.zip",
checksum: "1ccd9fce68ea29af030dceb824716fc16d1f4dcdc0b912ba366d5cb91d7b1add"
),
.binaryTarget(
name: "lcms2",
url: "https://github.com/mpvkit/libplacebo-build/releases/download/7.349.0/lcms2.xcframework.zip",
checksum: "bd2c27366f8b7adfe7bf652a922599891c55b82f5c519bcc4eece1ccff57c889"
),
.binaryTarget(
name: "Libplacebo",
url: "https://github.com/mpvkit/libplacebo-build/releases/download/7.349.0/Libplacebo.xcframework.zip",
checksum: "f32d20351289a080cd7288742747cd927553fde8c217f63263b838083d07a01a"
),
.binaryTarget(
name: "Libdav1d",
url: "https://github.com/mpvkit/libdav1d-build/releases/download/1.4.3/Libdav1d.xcframework.zip",
checksum: "eccfe37da9418e350bc6c1566890fa5b9585fbb87b8ceb664de77800ef17fe04"
),
.binaryTarget(
name: "Libavcodec",
url: "https://github.com/sbenmeddour/MPVKit/releases/download/0.39.0-no-av-device/Libavcodec.xcframework.zip",
checksum: "10aa4815de7b6ed1551f4a0d5f3f772a28bad63e35387330d0995317f451879b"
),
.binaryTarget(
name: "Libavformat",
url: "https://github.com/sbenmeddour/MPVKit/releases/download/0.39.0-no-av-device/Libavformat.xcframework.zip",
checksum: "66dcd7e778e2ddf5b25b193705340c42bf8727af47540f97851041df83357778"
),
.binaryTarget(
name: "Libavfilter",
url: "https://github.com/sbenmeddour/MPVKit/releases/download/0.39.0-no-av-device/Libavfilter.xcframework.zip",
checksum: "ffd9116c152557c7a7b3756ed0c73d3518fa83ffeacaaacc3ff2f2fca0d95f99"
),
.binaryTarget(
name: "Libavutil",
url: "https://github.com/sbenmeddour/MPVKit/releases/download/0.39.0-no-av-device/Libavutil.xcframework.zip",
checksum: "9368eaa98e27b913f3a198e5efefbd53f55591a6414b9e5a587a07593c12eed8"
),
.binaryTarget(
name: "Libswresample",
url: "https://github.com/sbenmeddour/MPVKit/releases/download/0.39.0-no-av-device/Libswresample.xcframework.zip",
checksum: "293e6ca57928339402f5f6d3d4d33d0940707e353dea69172c824ec0eeb56742"
),
.binaryTarget(
name: "Libswscale",
url: "https://github.com/sbenmeddour/MPVKit/releases/download/0.39.0-no-av-device/Libswscale.xcframework.zip",
checksum: "0eb71732174b236d927f7a0b93209dc96eef903e0d3aeb15400231b0c8347865"
),
.binaryTarget(
name: "Libuchardet",
url: "https://github.com/mpvkit/libuchardet-build/releases/download/0.0.8/Libuchardet.xcframework.zip",
checksum: "80b14d8080c2531ced6d6b234a826c13f0be459a8c751815f68e0eefd34afa30"
),
.binaryTarget(
name: "Libluajit",
url: "https://github.com/mpvkit/libluajit-build/releases/download/2.1.0/Libluajit.xcframework.zip",
checksum: "3765d7c6392b4f9a945b334ed593747b8adb9345078717ecfb6d7d12114a0f9e"
),
.binaryTarget(
name: "Libmpv",
url: "https://github.com/sbenmeddour/MPVKit/releases/download/0.39.0-no-av-device/Libmpv.xcframework.zip",
checksum: "fbe5241930ef6a2460e065ad223d4abe6d1fec2fb4c599ee2abcc96ca3d44a0e"
),
//AUTO_GENERATE_TARGETS_END//
]
)