1- name : Build MinGW and MSYS2 toolchain
1+ name : Build MinGW and MSYS2 toolchains
22
33on :
44 push :
1414 default : " woarm64"
1515
1616jobs :
17- mingw-w64-cross-headers :
18- uses : ./.github/workflows/build-package.yml
17+ mingw-cross-toolchain :
18+ name : MinGW cross-compilation toolchain
19+ uses : ./.github/workflows/mingw-cross-toolchain.yml
1920 with :
20- package_name : mingw-w64-cross-headers
21- packages_repository : Windows-on-ARM-Experiments/MSYS2-packages
22- packages_branch : ${{ github.event.inputs.msys2_packages_branch || 'woarm64' }}
23-
24- mingw-w64-cross-binutils :
25- needs : mingw-w64-cross-headers
26- uses : ./.github/workflows/build-package.yml
27- with :
28- package_name : mingw-w64-cross-binutils
29- needs : ${{ toJson(needs) }}
30- packages_repository : Windows-on-ARM-Experiments/MSYS2-packages
31- packages_branch : ${{ github.event.inputs.msys2_packages_branch || 'woarm64' }}
32-
33- mingw-w64-cross-gcc-stage1 :
34- needs : [mingw-w64-cross-headers, mingw-w64-cross-binutils]
35- uses : ./.github/workflows/build-package.yml
36- with :
37- package_name : mingw-w64-cross-gcc-stage1
38- needs : ${{ toJson(needs) }}
39- packages_repository : Windows-on-ARM-Experiments/MSYS2-packages
40- packages_branch : ${{ github.event.inputs.msys2_packages_branch || 'woarm64' }}
41-
42- mingw-w64-cross-windows-default-manifest :
43- needs : [mingw-w64-cross-binutils, mingw-w64-cross-gcc-stage1]
44- uses : ./.github/workflows/build-package.yml
45- with :
46- package_name : mingw-w64-cross-windows-default-manifest
47- needs : ${{ toJson(needs) }}
48- packages_repository : Windows-on-ARM-Experiments/MSYS2-packages
49- packages_branch : ${{ github.event.inputs.msys2_packages_branch || 'woarm64' }}
50-
51- mingw-w64-cross-crt :
52- needs :
53- [
54- mingw-w64-cross-headers,
55- mingw-w64-cross-binutils,
56- mingw-w64-cross-gcc-stage1
57- ]
58- uses : ./.github/workflows/build-package.yml
59- with :
60- package_name : mingw-w64-cross-crt
61- needs : ${{ toJson(needs) }}
62- dependencies : mingw-w64-cross-winpthreads
63- packages_repository : Windows-on-ARM-Experiments/MSYS2-packages
64- packages_branch : ${{ github.event.inputs.msys2_packages_branch || 'woarm64' }}
65-
66- mingw-w64-cross-winpthreads :
67- needs :
68- [
69- mingw-w64-cross-headers,
70- mingw-w64-cross-binutils,
71- mingw-w64-cross-gcc-stage1,
72- mingw-w64-cross-crt
73- ]
74- uses : ./.github/workflows/build-package.yml
75- with :
76- package_name : mingw-w64-cross-winpthreads
77- needs : ${{ toJson(needs) }}
78- packages_repository : Windows-on-ARM-Experiments/MSYS2-packages
79- packages_branch : ${{ github.event.inputs.msys2_packages_branch || 'woarm64' }}
80-
81- mingw-w64-cross-gcc :
82- needs :
83- [
84- mingw-w64-cross-headers,
85- mingw-w64-cross-binutils,
86- mingw-w64-cross-gcc-stage1,
87- mingw-w64-cross-windows-default-manifest,
88- mingw-w64-cross-crt,
89- mingw-w64-cross-winpthreads
90- ]
91- uses : ./.github/workflows/build-package.yml
92- with :
93- package_name : mingw-w64-cross-gcc
94- needs : ${{ toJson(needs) }}
95- packages_repository : Windows-on-ARM-Experiments/MSYS2-packages
96- packages_branch : ${{ github.event.inputs.msys2_packages_branch || 'woarm64' }}
97-
98- mingw-w64-cross-zlib :
99- needs : [
100- mingw-w64-cross-headers,
101- mingw-w64-cross-binutils,
102- mingw-w64-cross-windows-default-manifest,
103- mingw-w64-cross-crt,
104- mingw-w64-cross-winpthreads,
105- mingw-w64-cross-gcc
106- ]
107-
108- uses : ./.github/workflows/build-package.yml
109- with :
110- package_name : mingw-w64-cross-zlib
111- needs : ${{ toJson(needs) }}
112- packages_repository : Windows-on-ARM-Experiments/MSYS2-packages
113- packages_branch : ${{ github.event.inputs.msys2_packages_branch || 'woarm64' }}
21+ msys2_packages_branch : ${{ inputs.msys2_packages_branch || 'woarm64' }}
11422
11523 repository :
116- needs :
117- [
118- mingw-w64-cross-headers,
119- mingw-w64-cross-binutils,
120- mingw-w64-cross-gcc-stage1,
121- mingw-w64-cross-windows-default-manifest,
122- mingw-w64-cross-crt,
123- mingw-w64-cross-winpthreads,
124- mingw-w64-cross-gcc,
125- mingw-w64-cross-zlib
126- ]
24+ name : Create MSYS2 repository
25+ needs : mingw-cross-toolchain
12726 runs-on : windows-latest
12827
12928 defaults :
13029 run :
13130 shell : msys2 {0}
13231
32+ env :
33+ GH_TOKEN : ${{ secrets.GITHUB_TOKEN }}
34+
13335 steps :
13436 - uses : msys2/setup-msys2@v2
13537 with :
13638 msystem : MSYS
13739 update : true
13840
139- - name : Download mingw-w64-cross-headers
140- uses : actions/download-artifact@v4
141- with :
142- name : mingw-w64-cross-headers
143-
144- - name : Download mingw-w64-cross-binutils
145- uses : actions/download-artifact@v4
146- with :
147- name : mingw-w64-cross-binutils
41+ - name : Checkout repository
42+ uses : actions/checkout@v4
14843
149- - name : Download mingw-w64-cross-gcc-stage1
150- uses : actions/download-artifact@v4
151- with :
152- name : mingw-w64-cross-gcc-stage1
153-
154- - name : Download mingw-w64-cross-windows-default-manifest
155- uses : actions/download-artifact@v4
156- with :
157- name : mingw-w64-cross-windows-default-manifest
158-
159- - name : Download mingw-w64-cross-crt
160- uses : actions/download-artifact@v4
161- with :
162- name : mingw-w64-cross-crt
163-
164- - name : Download mingw-w64-cross-winpthreads
165- uses : actions/download-artifact@v4
166- with :
167- name : mingw-w64-cross-winpthreads
168-
169- - name : Download mingw-w64-cross-gcc
170- uses : actions/download-artifact@v4
171- with :
172- name : mingw-w64-cross-gcc
173-
174- - name : Download mingw-w64-cross-zlib
175- uses : actions/download-artifact@v4
176- with :
177- name : mingw-w64-cross-zlib
44+ - name : Install dependencies
45+ run : |
46+ pacman -S --noconfirm \
47+ git \
48+ mingw-w64-x86_64-github-cli \
49+ mingw-w64-x86_64-jq
17850
51+ - name : Download artifacts
52+ run : |
53+ `cygpath "${{ github.workspace }}"`/.github/scripts/download-artifacts.sh ${{ github.run_id }} \
54+ '${{ needs.mingw-cross-toolchain.outputs.artifacts }}'
55+
17956 - name : Setup MSYS2 packages repository
18057 run : |
18158 mkdir aarch64
19976
20077 deploy :
20178 if : github.ref == 'refs/heads/main'
202- needs : [repository]
79+ name : Deploy MSYS2 repository
80+ needs : repository
20381 runs-on : ubuntu-latest
20482
20583 permissions :
@@ -225,6 +103,7 @@ jobs:
225103 with :
226104 artifact_name : woarm64-msys2-repository
227105
228- check-repository :
229- needs : [deploy]
106+ check :
107+ name : Check MSYS2 repository
108+ needs : deploy
230109 uses : ./.github/workflows/check-repository.yml
0 commit comments