From 335fb1ab2991bf19bac3935ea471d12dcd7b1121 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mateusz=20Miku=C5=82a?= Date: Fri, 22 Dec 2023 22:22:10 +0100 Subject: [PATCH 1/2] Update mingw-w64 + GNU toolchain --- src/ci/scripts/install-mingw.sh | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/ci/scripts/install-mingw.sh b/src/ci/scripts/install-mingw.sh index 7eccb9b86502c..8adc5c3038ec3 100755 --- a/src/ci/scripts/install-mingw.sh +++ b/src/ci/scripts/install-mingw.sh @@ -9,8 +9,8 @@ IFS=$'\n\t' source "$(cd "$(dirname "$0")" && pwd)/../shared.sh" -MINGW_ARCHIVE_32="i686-12.2.0-release-posix-dwarf-rt_v10-rev0.7z" -MINGW_ARCHIVE_64="x86_64-12.2.0-release-posix-seh-rt_v10-rev0.7z" +MINGW_ARCHIVE_32="i686-w64-mingw32.tar.zst" +MINGW_ARCHIVE_64="x86_64-w64-mingw32.tar.zst" if isWindows; then case "${CI_JOB_NAME}" in @@ -41,13 +41,13 @@ if isWindows; then if [[ "${CUSTOM_MINGW-0}" -ne 1 ]]; then pacman -S --noconfirm --needed mingw-w64-$arch-toolchain mingw-w64-$arch-cmake \ mingw-w64-$arch-gcc \ - mingw-w64-$arch-python # the python package is actually for python3 + mingw-w64-$arch-python \ # the python package is actually for python3 + tar zstd ciCommandAddPath "$(ciCheckoutPath)/msys2/mingw${bits}/bin" else - mingw_dir="mingw${bits}" - - curl -o mingw.7z "${MIRRORS_BASE}/${mingw_archive}" - 7z x -y mingw.7z > /dev/null - ciCommandAddPath "$(pwd)/${mingw_dir}/bin" + curl -o mingw.tar.zst "https://github.com/mati865/mingw-build/releases/download/v0/${mingw_archive}" + tar -xf mingw.tar.zst > /dev/null + ciCommandAddPath "$(pwd)/${arch}-w64-mingw32/bin" + ciCommandAddPath "$(pwd)/${arch}-w64-mingw32/${arch}-w64-mingw32/bin" fi fi From a9d40880429dc9bde07e4419e1f620a662395940 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mateusz=20Miku=C5=82a?= Date: Fri, 22 Dec 2023 22:25:19 +0100 Subject: [PATCH 2/2] [WIP] i686-mingw as try --- .github/workflows/ci.yml | 9 ++++++--- src/ci/github-actions/ci.yml | 13 ++++++++----- 2 files changed, 14 insertions(+), 8 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 540e1eb157e2f..6b69cc75edd57 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -579,10 +579,13 @@ jobs: strategy: matrix: include: - - name: dist-x86_64-linux + - name: i686-mingw env: - CODEGEN_BACKENDS: "llvm,cranelift" - os: ubuntu-20.04-16core-64gb + RUST_CONFIGURE_ARGS: "--build=i686-pc-windows-gnu" + SCRIPT: make ci-mingw + NO_DOWNLOAD_CI_LLVM: 1 + CUSTOM_MINGW: 1 + os: windows-2019-8core-32gb timeout-minutes: 600 runs-on: "${{ matrix.os }}" steps: diff --git a/src/ci/github-actions/ci.yml b/src/ci/github-actions/ci.yml index 3af370bf006ad..e54339fad608f 100644 --- a/src/ci/github-actions/ci.yml +++ b/src/ci/github-actions/ci.yml @@ -732,12 +732,15 @@ jobs: strategy: matrix: include: - - &dist-x86_64-linux - name: dist-x86_64-linux + - name: i686-mingw env: - CODEGEN_BACKENDS: llvm,cranelift - <<: *job-linux-16c - + RUST_CONFIGURE_ARGS: --build=i686-pc-windows-gnu + SCRIPT: make ci-mingw + # We are intentionally allowing an old toolchain on this builder (and that's + # incompatible with LLVM downloads today). + NO_DOWNLOAD_CI_LLVM: 1 + CUSTOM_MINGW: 1 + <<: *job-windows-8c master: name: master