You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
CI-mingw.yml: use pre-installed MinGW / also use lld and ccache for faster builds (#4400)
This used to be one of the longest running jobs because of the slow
setup and linking. Now it will take only ~2 minutes if everything is
cached with half the time taken up by the tests.
Copy file name to clipboardExpand all lines: .github/workflows/CI-mingw.yml
+37-9Lines changed: 37 additions & 9 deletions
Original file line number
Diff line number
Diff line change
@@ -18,27 +18,55 @@ permissions:
18
18
19
19
defaults:
20
20
run:
21
-
shell: cmd
21
+
shell: msys2 {0}
22
22
23
23
jobs:
24
24
build_mingw:
25
25
strategy:
26
26
matrix:
27
-
os: [windows-2019] # fails to download with "windows-2022"
28
-
arch: [x64] # TODO: fix x86 build?
27
+
# the MinGW installation in windows-2019 is supposed to be 8.1 but it is 12.2
28
+
# the MinGW installation in windows-2022 is not including all necessary packages by default, so just use the older image instead - package versions are he same
29
+
os: [windows-2019]
29
30
fail-fast: false
30
31
31
32
runs-on: ${{ matrix.os }}
32
33
33
34
steps:
34
35
- uses: actions/checkout@v3
35
36
36
-
- name: Set up MinGW
37
-
uses: egor-tensin/setup-mingw@v2
37
+
- name: Set up MSYS2
38
+
uses: msys2/setup-msys2@v2
38
39
with:
39
-
platform: ${{ matrix.arch }}
40
+
release: false # use pre-installed
41
+
install: >-
42
+
mingw-w64-x86_64-lld
43
+
mingw-w64-x86_64-ccache
40
44
41
-
# MinGW will always link the binaries even if they already exist. The linking is also extremely slow. So just run the "check" target which includes all the binaries.
0 commit comments