Skip to content

Bump gtk4 from 0.11.2 to 0.11.3 #6

Bump gtk4 from 0.11.2 to 0.11.3

Bump gtk4 from 0.11.2 to 0.11.3 #6

Workflow file for this run

name: Windows Build
on:
pull_request:
jobs:
build:
strategy:
fail-fast: false
matrix:
include:
- runner: windows-latest
msystem: UCRT64
package_prefix: mingw-w64-ucrt-x86_64
rust_target: x86_64-pc-windows-gnu
cargo_target_flag: "--target x86_64-pc-windows-gnu"
arch: x86_64
- runner: windows-11-arm
msystem: CLANGARM64
package_prefix: mingw-w64-clang-aarch64
rust_target: aarch64-pc-windows-gnullvm
cargo_target_flag: "--target aarch64-pc-windows-gnullvm"
arch: aarch64
runs-on: ${{ matrix.runner }}
steps:
- name: Setup MSYS2
uses: msys2/setup-msys2@v2
with:
msystem: ${{ matrix.msystem }}
update: true
- name: Set MSYS2 mirror for ARM64
if: matrix.msystem == 'CLANGARM64'
shell: msys2 {0}
run: |
echo 'Server = https://repo.msys2.org/mingw/$repo/' > /etc/pacman.d/mirrorlist.mingw
- name: Install MSYS2 packages (UCRT64)
if: matrix.msystem == 'UCRT64'
shell: msys2 {0}
run: |
pacman -S --noconfirm ${{ matrix.package_prefix }}-gtk4 ${{ matrix.package_prefix }}-gtksourceview5 ${{ matrix.package_prefix }}-pkgconf ${{ matrix.package_prefix }}-gcc
- name: Install MSYS2 packages (CLANGARM64)
if: matrix.msystem == 'CLANGARM64'
shell: msys2 {0}
run: |
pacman -S --noconfirm ${{ matrix.package_prefix }}-gtk4 ${{ matrix.package_prefix }}-gtksourceview5 ${{ matrix.package_prefix }}-pkgconf ${{ matrix.package_prefix }}-clang
- uses: actions/checkout@v6
- name: Install Rust
shell: msys2 {0}
run: |
export CARGO_HOME="$(pwd)/.cargo"
export RUSTUP_HOME="$(pwd)/.rustup"
rm -rf "$RUSTUP_HOME"
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y --default-toolchain stable
export PATH="$(pwd)/.cargo/bin:$PATH"
if [ "${{ matrix.msystem }}" = "CLANGARM64" ]; then
rustup set default-host aarch64-pc-windows-gnullvm
rustup toolchain install stable-aarch64-pc-windows-gnullvm
rustup default stable-aarch64-pc-windows-gnullvm
fi
rustup target add ${{ matrix.rust_target }}
- name: Configure cargo linker
shell: msys2 {0}
run: |
mkdir -p .cargo
printf '[target.x86_64-pc-windows-gnu]\nlinker = "gcc"\n[target.aarch64-pc-windows-gnullvm]\nlinker = "clang"\n' > .cargo/config.toml
- name: Build release binary
shell: msys2 {0}
run: |
export CARGO_HOME="$(pwd)/.cargo"
export RUSTUP_HOME="$(pwd)/.rustup"
export PATH="$(pwd)/.cargo/bin:/$MSYSTEM/bin:/usr/bin"
export PKG_CONFIG_ALLOW_CROSS=1
cargo build --release ${{ matrix.cargo_target_flag }}
windows:
needs: build
if: always()
runs-on: ubuntu-latest
steps:
- name: Verify all matrix builds passed
run: |
if [ "${{ needs.build.result }}" != "success" ]; then
echo "One or more matrix builds failed"
exit 1
fi