@@ -36,13 +36,15 @@ jobs:
36
36
CCACHE_BASEDIR : ${{ github.workspace }}
37
37
CCACHE_DIR : ${{ github.workspace }}/.ccache
38
38
CCACHE_MAXSIZE : 500M
39
+ TARGET : ${{ matrix.arch }}-w64-mingw32
40
+ RUST_TARGET : ${{ matrix.arch }}-pc-windows-gnu
39
41
strategy :
40
42
fail-fast : false
41
43
matrix :
42
44
include :
43
- - target : i686-w64-mingw32
45
+ - arch : i686
44
46
wine : wine32
45
- - target : x86_64-w64-mingw32
47
+ - arch : x86_64
46
48
wine : wine64
47
49
steps :
48
50
- uses : actions/checkout@v4
@@ -55,11 +57,12 @@ jobs:
55
57
uses : actions/cache/restore@v4
56
58
with :
57
59
path : ${{ env.CCACHE_DIR }}
58
- key : ${{ matrix.target }}-${{ steps.get_time.outputs.timestamp }}
59
- restore-keys : ${{ matrix.target }}-
60
+ key : ${{ env.TARGET }}-${{ steps.get_time.outputs.timestamp }}
61
+ restore-keys : ${{ env.TARGET }}-
60
62
61
63
- name : Install dependencies
62
64
run : |
65
+ rustup target add ${{ env.RUST_TARGET }}
63
66
sudo dpkg --add-architecture i386
64
67
sudo apt-get update
65
68
sudo apt-get install --no-install-recommends -y ccache g++-mingw-w64 gcc-multilib meson nasm ninja-build pkgconf ${{ matrix.wine }} wine
@@ -72,15 +75,11 @@ jobs:
72
75
- name : Build libraries
73
76
run : |
74
77
./ci/build-mingw64.sh
75
- env :
76
- TARGET : ${{ matrix.target }}
77
78
78
79
- name : Build with meson
79
80
id : build
80
81
run : |
81
82
./ci/build-mingw64.sh meson pack
82
- env :
83
- TARGET : ${{ matrix.target }}
84
83
85
84
- name : Print meson log
86
85
if : ${{ failure() && steps.build.outcome == 'failure' }}
@@ -105,25 +104,27 @@ jobs:
105
104
106
105
- uses : actions/upload-artifact@v4
107
106
with :
108
- name : mpv-${{ matrix.target }}
107
+ name : mpv-${{ env.TARGET }}
109
108
path : mpv-git-*.zip
110
109
111
110
- name : Save Cache
112
111
uses : actions/cache/save@v4
113
112
if : always()
114
113
with :
115
114
path : ${{ env.CCACHE_DIR }}
116
- key : ${{ matrix.target }}-${{ steps.get_time.outputs.timestamp }}
115
+ key : ${{ env.TARGET }}-${{ steps.get_time.outputs.timestamp }}
117
116
118
117
win32 :
119
118
runs-on : windows-latest
120
119
env :
121
120
VS : " C:\\ Program Files\\ Microsoft Visual Studio\\ 2022\\ Enterprise"
122
121
CC : " ccache clang"
123
122
CXX : " ccache clang++"
124
- CC_LD : " lld"
125
- CXX_LD : " lld"
123
+ CC_LD : " lld-link "
124
+ CXX_LD : " lld-link "
126
125
WINDRES : " llvm-rc"
126
+ RUST_LD : " lld-link"
127
+ RUSTC : " rustc --target x86_64-pc-windows-msvc"
127
128
CCACHE_BASEDIR : ${{ github.workspace }}
128
129
CCACHE_DIR : " ${{ github.workspace }}\\ .ccache"
129
130
CCACHE_MAXSIZE : 500M
@@ -247,7 +248,7 @@ jobs:
247
248
run : |
248
249
brew update
249
250
brew install -q autoconf automake pkgconf libtool python freetype fribidi little-cms2 \
250
- luajit libass ffmpeg meson uchardet mujs libplacebo molten-vk vulkan-loader vulkan-headers
251
+ luajit libass ffmpeg meson rust uchardet mujs libplacebo molten-vk vulkan-loader vulkan-headers
251
252
252
253
- name : Build with meson
253
254
id : build
@@ -305,6 +306,10 @@ jobs:
305
306
steps :
306
307
- uses : actions/checkout@v4
307
308
309
+ - name : Install dependencies
310
+ run : |
311
+ zypper --non-interactive install rust
312
+
308
313
- name : Build with meson
309
314
id : build
310
315
run : |
@@ -336,6 +341,10 @@ jobs:
336
341
steps :
337
342
- uses : actions/checkout@v4
338
343
344
+ - name : Install dependencies
345
+ run : |
346
+ zypper --non-interactive install rust
347
+
339
348
- name : Build with meson
340
349
id : build
341
350
run : |
@@ -379,6 +388,7 @@ jobs:
379
388
libxscrnsaver-dev \
380
389
meson \
381
390
musl-dev \
391
+ rust \
382
392
samurai
383
393
384
394
- name : Build with meson
@@ -432,6 +442,7 @@ jobs:
432
442
pulseaudio \
433
443
python3 \
434
444
rubberband \
445
+ rust \
435
446
sdl2 \
436
447
shaderc \
437
448
spirv-cross \
@@ -486,6 +497,7 @@ jobs:
486
497
pulseaudio \
487
498
python3 \
488
499
rubberband \
500
+ rust \
489
501
sekrit-twc-zimg \
490
502
sdl2 \
491
503
sndio \
@@ -543,6 +555,7 @@ jobs:
543
555
python:p
544
556
rst2pdf:p
545
557
rubberband:p
558
+ rust:p
546
559
shaderc:p
547
560
spirv-cross:p
548
561
uchardet:p
0 commit comments