Skip to content

Windows MSYS2 Build Tools #4394

Windows MSYS2 Build Tools

Windows MSYS2 Build Tools #4394

name: Windows MSYS2 Build Tools
on:
push:
branches:
- '*'
schedule:
- cron: '30 0,6,12,18 * * *'
workflow_dispatch:
jobs:
msys2:
name: >-
${{ matrix.name }} tools
#env:
# FORCE_UPDATE: true
permissions:
contents: write
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
include:
- { os: windows-2022, ruby: ucrt, name: msys2 }
- { os: windows-11-arm, ruby: 3.4, name: msys2-arm64 }
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Copy msys2 files to temp dir
run: |
if (Test-Path -LiteralPath C:\msys64 -PathType Container) {
$temp = $env:RUNNER_TEMP
md $temp\msys64
# copy current msys2 to temp folder, needed to determine what files to include
# in zip file (only newer files)
xcopy C:\msys64 $temp\msys64 /s /q
}
timeout-minutes: 15
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby }}
timeout-minutes: 7
- name: Update msys2 tools 7z and Upload
run: ruby create_msys2_pkg.rb ${{ matrix.name }}
env:
GITHUB_TOKEN: ${{ github.token }}
timeout-minutes: 10
gcc-mingw:
if: ${{ always() }}
needs: msys2
name: >-
${{ matrix.gcc }} gcc
#env:
# FORCE_UPDATE: true
permissions:
contents: write
runs-on: windows-2022
strategy:
fail-fast: false
matrix:
include:
- { gcc: mingw64 , ruby: '3.0' }
- { gcc: mingw64-3.0, ruby: mingw }
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby }}
timeout-minutes: 7
- name: Update ${{ matrix.gcc }} gcc 7z and Upload
run: ruby create_gcc_pkg.rb ${{ matrix.gcc }}
env:
GITHUB_TOKEN: ${{ github.token }}
timeout-minutes: 13
gcc-ucrt:
if: ${{ always() }}
needs: msys2
name: >-
${{ matrix.gcc }} gcc
#env:
# FORCE_UPDATE: true
permissions:
contents: write
runs-on: windows-2022
strategy:
fail-fast: false
matrix:
include:
- { gcc: ucrt64 , ruby: 3.1 }
- { gcc: ucrt64-3.0 , ruby: ucrt }
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby }}
timeout-minutes: 7
- name: Update ${{ matrix.gcc }} gcc 7z and Upload
run: ruby create_gcc_pkg.rb ${{ matrix.gcc }}
env:
GITHUB_TOKEN: ${{ github.token }}
timeout-minutes: 13
gcc-clangarm64:
if: ${{ always() }}
needs: msys2
name: >-
${{ matrix.gcc }} gcc
#env:
# FORCE_UPDATE: true
permissions:
contents: write
runs-on: windows-11-arm
strategy:
fail-fast: false
matrix:
include:
- { gcc: clangarm64-3.0 , ruby: 3.4 }
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby }}
timeout-minutes: 7
- name: Update ${{ matrix.gcc }} gcc 7z and Upload
run: ruby create_gcc_pkg.rb ${{ matrix.gcc }}
env:
GITHUB_TOKEN: ${{ github.token }}
timeout-minutes: 13