about summary refs log tree commit diff
path: root/src/ci/github-actions
diff options
context:
space:
mode:
authorMatt Harding <majaharding@gmail.com>2024-02-13 04:37:31 +0000
committerMatt Harding <majaharding@gmail.com>2024-02-16 09:26:30 +0000
commit80459c14a4a6d9613d2bc07f5f0df905e8f99a0d (patch)
treeab71a467b26e45475e0fd42685d3f95e91a45d8f /src/ci/github-actions
parente3450ad19b6b5a6a67ba5bfdae53ac826953ba2a (diff)
downloadrust-80459c14a4a6d9613d2bc07f5f0df905e8f99a0d.tar.gz
rust-80459c14a4a6d9613d2bc07f5f0df905e8f99a0d.zip
Changes to CI related to mingw and MSYS
Diffstat (limited to 'src/ci/github-actions')
-rw-r--r--src/ci/github-actions/ci.yml21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/ci/github-actions/ci.yml b/src/ci/github-actions/ci.yml
index 43e48c01176..51d9dea5a0b 100644
--- a/src/ci/github-actions/ci.yml
+++ b/src/ci/github-actions/ci.yml
@@ -111,10 +111,31 @@ x--expand-yaml-anchors--remove:
     if: success() && !env.SKIP_JOB
 
   - &base-ci-job
+    defaults:
+      run:
+        shell: ${{ contains(matrix.os, 'windows') && 'msys2 {0}' || 'bash' }}
     timeout-minutes: 600
     runs-on: "${{ matrix.os }}"
     env: *shared-ci-variables
     steps:
+      - if: contains(matrix.os, 'windows')
+        uses: msys2/setup-msys2@v2.22.0
+        with:
+          # i686 jobs use mingw32. x86_64 and cross-compile jobs use mingw64.
+          msystem: ${{ contains(matrix.name, 'i686') && 'mingw32' || 'mingw64' }}
+          # don't try to download updates for already installed packages
+          update: false
+          # don't try to use the msys that comes built-in to the github runner,
+          # so we can control what is installed (i.e. not python)
+          release: true
+          # Inherit the full path from the Windows environment, with MSYS2's */bin/
+          # dirs placed in front. This lets us run Windows-native Python etc.
+          path-type: inherit
+          install: >
+            make
+            dos2unix
+            diffutils
+
       - name: disable git crlf conversion
         run: git config --global core.autocrlf false