QGIS/.github/workflows/mingw-w64-msys2.yml

93 lines
2.5 KiB
YAML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

name: MSYS2 MinGW-w64 Windows 64bit Build
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
on:
push:
branches:
- master
- release-**
- queued_ltr_backports
paths:
- 'src/**'
- 'external/**'
- 'python/**'
- 'tests/**'
- 'ms-windows/**'
- 'CMakeLists.txt'
- '.github/workflows/mingw-w64-msys2.yml'
pull_request:
workflow_dispatch:
permissions:
contents: read
jobs:
mingw-w64-msys2-build:
name: MSYS2 MinGW-w64 Windows Build
runs-on: windows-latest
#strategy:
# fail-fast: false
# matrix:
# QT_VERSION: [qt5, qt6]
# MSYSTEM: [UCRT64, CLANG64]
env:
CCACHE_DIR: build/ccache
defaults:
run:
shell: msys2 {0}
steps:
- uses: actions/checkout@v4
- name: Install core & build dependencies
uses: msys2/setup-msys2@v2
with:
msystem: UCRT64
install: base-devel
pacboy: >-
draco:p exiv2:p gdal:p gsl:p hdf5:p libxml2:p libzip:p netcdf:p opencl-icd:p pdal:p
protobuf:p proj:p qca-qt5:p qscintilla-qt5:p qt5-3d:p qt5-base:p qt5-declarative:p
qt5-gamepad:p qt5-location:p qt5-serialport:p qt5-svg:p qtkeychain-qt5:p qtwebkit:p
qwt-qt5:p spatialindex:p cc:p cmake:p ninja:p opencl-clhpp:p qt5-tools:p python:p ccache:p
update: true
release: false
- name: Restore build cache
uses: actions/cache/restore@v4
with:
path: build
key: build-ccache-mingw64-msys2-${{ github.event.pull_request.base.ref || github.ref_name }}
restore-keys: |
build-ccache-mingw64-msys2-master
- name: Configure QGIS
run: |
cmake \
-G"Ninja" \
-DCMAKE_CXX_COMPILER_LAUNCHER=ccache \
-DPython_EXECUTABLE=${MINGW_PREFIX}/bin/python \
-DWITH_3D=ON \
-DWITH_DRACO=ON \
-DWITH_PDAL=ON \
-DWITH_CUSTOM_WIDGETS=ON \
-DWITH_BINDINGS=OFF \
-DWITH_GRASS=OFF \
-DUSE_CCACHE=ON \
-S . \
-B build
- name: Build QGIS
run: |
cmake --build build
ccache -s
- name: Save build cache for push only
uses: actions/cache/save@v4
if: ${{ github.event_name == 'push' }}
with:
path: build
key: build-ccache-mingw64-msys2-${{ github.ref_name }}-${{ github.run_id }}