5656 - os : macos-latest
5757 env :
5858 TARGET_TRIPLE : x86_64-apple-darwin
59- # cross-compile from Linux to Windows using mingw
60- - os : ubuntu-latest
61- env :
62- TARGET_TRIPLE : x86_64-pc-windows-gnu
63- apt_deps : gcc-mingw-w64-x86-64 wine-stable
6459 - os : ubuntu-latest
6560 env :
6661 TARGET_TRIPLE : aarch64-unknown-linux-gnu
@@ -113,15 +108,6 @@ jobs:
113108 - name : Prepare dependencies
114109 run : ./y.sh prepare
115110
116- # The Wine version shipped with Ubuntu 22.04 doesn't implement bcryptprimitives.dll
117- - name : Build bcryptprimitives.dll shim for Wine
118- if : matrix.os == 'ubuntu-latest' && matrix.env.TARGET_TRIPLE == 'x86_64-pc-windows-gnu'
119- run : |
120- rustup target add x86_64-pc-windows-gnu
121- mkdir wine_shims
122- rustc patches/bcryptprimitives.rs -Copt-level=3 -Clto=fat --out-dir wine_shims --target x86_64-pc-windows-gnu
123- echo "WINEPATH=$(pwd)/wine_shims" >> $GITHUB_ENV
124-
125111 - name : Build
126112 run : ./y.sh build --sysroot none
127113
@@ -135,9 +121,6 @@ jobs:
135121
136122 # This is roughly config rust-lang/rust uses for testing
137123 - name : Test with LLVM sysroot
138- # Skip native x86_64-pc-windows-gnu. It is way too slow and cross-compiled
139- # x86_64-pc-windows-gnu covers at least part of the tests.
140- if : matrix.os != 'windows-latest' || matrix.env.TARGET_TRIPLE != 'x86_64-pc-windows-gnu'
141124 env :
142125 TARGET_TRIPLE : ${{ matrix.env.TARGET_TRIPLE }}
143126 run : ./y.sh test --sysroot llvm --no-unstable-features
@@ -215,10 +198,6 @@ jobs:
215198 - os : macos-latest
216199 env :
217200 TARGET_TRIPLE : aarch64-apple-darwin
218- # cross-compile from Linux to Windows using mingw
219- - os : ubuntu-latest
220- env :
221- TARGET_TRIPLE : x86_64-pc-windows-gnu
222201 - os : windows-latest
223202 env :
224203 TARGET_TRIPLE : x86_64-pc-windows-msvc
@@ -243,12 +222,6 @@ jobs:
243222 if : matrix.os == 'macos-latest' && matrix.env.TARGET_TRIPLE == 'x86_64-apple-darwin'
244223 run : rustup set default-host x86_64-apple-darwin
245224
246- - name : Install MinGW toolchain
247- if : matrix.os == 'ubuntu-latest' && matrix.env.TARGET_TRIPLE == 'x86_64-pc-windows-gnu'
248- run : |
249- sudo apt-get update
250- sudo apt-get install -y gcc-mingw-w64-x86-64
251-
252225 - name : Prepare dependencies
253226 run : ./y.sh prepare
254227
@@ -262,19 +235,11 @@ jobs:
262235 run : tar cvfJ cg_clif.tar.xz dist
263236
264237 - name : Upload prebuilt cg_clif
265- if : matrix.os == 'windows-latest' || matrix.env.TARGET_TRIPLE != 'x86_64-pc-windows-gnu'
266238 uses : actions/upload-artifact@v4
267239 with :
268240 name : cg_clif-${{ matrix.env.TARGET_TRIPLE }}
269241 path : cg_clif.tar.xz
270242
271- - name : Upload prebuilt cg_clif (cross compile)
272- if : matrix.os != 'windows-latest' && matrix.env.TARGET_TRIPLE == 'x86_64-pc-windows-gnu'
273- uses : actions/upload-artifact@v4
274- with :
275- name : cg_clif-${{ runner.os }}-cross-x86_64-mingw
276- path : cg_clif.tar.xz
277-
278243 release :
279244 runs-on : ubuntu-latest
280245 timeout-minutes : 10
0 commit comments