2023-03-30 05:48:26 +00:00
|
|
|
|
name: MSYS2 MinGW-w64 Windows 64bit Build
|
2023-03-13 05:43:36 +00:00
|
|
|
|
|
2024-01-21 15:20:21 +01:00
|
|
|
|
concurrency:
|
|
|
|
|
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
|
|
|
|
|
cancel-in-progress: true
|
|
|
|
|
|
2023-03-13 05:43:36 +00:00
|
|
|
|
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:
|
|
|
|
|
|
2024-01-21 15:35:52 +01:00
|
|
|
|
permissions:
|
|
|
|
|
contents: read
|
|
|
|
|
|
2023-03-13 05:43:36 +00:00
|
|
|
|
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:
|
|
|
|
|
|
2023-10-01 19:50:29 +00:00
|
|
|
|
- uses: actions/checkout@v4
|
2023-03-13 05:43:36 +00:00
|
|
|
|
|
|
|
|
|
- name: Install core & build dependencies
|
|
|
|
|
uses: msys2/setup-msys2@v2
|
|
|
|
|
with:
|
|
|
|
|
msystem: UCRT64
|
|
|
|
|
install: base-devel
|
|
|
|
|
pacboy: >-
|
2024-01-29 06:36:45 +01:00
|
|
|
|
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
|
2023-03-13 05:43:36 +00:00
|
|
|
|
update: true
|
|
|
|
|
release: false
|
|
|
|
|
|
2024-03-01 19:54:22 +01:00
|
|
|
|
- name: Restore build cache
|
2024-03-02 12:07:46 +01:00
|
|
|
|
uses: actions/cache/restore@v4
|
2023-03-13 05:43:36 +00:00
|
|
|
|
with:
|
|
|
|
|
path: build
|
2024-03-02 08:10:31 +01:00
|
|
|
|
key: build-ccache-mingw64-msys2-${{ github.event.pull_request.base.ref || github.ref_name }}
|
2023-03-13 05:43:36 +00:00
|
|
|
|
restore-keys: |
|
2024-03-02 08:20:34 +01:00
|
|
|
|
build-ccache-mingw64-msys2-master
|
2023-03-13 05:43:36 +00:00
|
|
|
|
|
|
|
|
|
- name: Configure QGIS
|
|
|
|
|
run: |
|
|
|
|
|
cmake \
|
|
|
|
|
-G"Ninja" \
|
|
|
|
|
-DCMAKE_CXX_COMPILER_LAUNCHER=ccache \
|
|
|
|
|
-DPython_EXECUTABLE=${MINGW_PREFIX}/bin/python \
|
|
|
|
|
-DWITH_3D=ON \
|
2024-01-29 06:49:52 +01:00
|
|
|
|
-DWITH_DRACO=ON \
|
2024-05-08 06:51:18 +01:00
|
|
|
|
-DWITH_PDAL=ON \
|
2023-03-13 05:43:36 +00:00
|
|
|
|
-DWITH_CUSTOM_WIDGETS=ON \
|
|
|
|
|
-DWITH_BINDINGS=OFF \
|
|
|
|
|
-DWITH_GRASS=OFF \
|
|
|
|
|
-DUSE_CCACHE=ON \
|
|
|
|
|
-S . \
|
|
|
|
|
-B build
|
|
|
|
|
|
|
|
|
|
- name: Build QGIS
|
|
|
|
|
run: |
|
|
|
|
|
cmake --build build
|
2023-03-30 05:48:26 +00:00
|
|
|
|
ccache -s
|
2024-03-01 19:54:22 +01:00
|
|
|
|
|
|
|
|
|
- name: Save build cache for push only
|
2024-03-02 12:07:46 +01:00
|
|
|
|
uses: actions/cache/save@v4
|
2024-03-01 19:54:22 +01:00
|
|
|
|
if: ${{ github.event_name == 'push' }}
|
|
|
|
|
with:
|
|
|
|
|
path: build
|
2024-03-14 18:53:16 +01:00
|
|
|
|
key: build-ccache-mingw64-msys2-${{ github.ref_name }}-${{ github.run_id }}
|