SingleApplication/.github/workflows/main.yml
Benjamin Buch 565ebd1c3d
Some checks failed
CI: Build Test / Build (-Wall -Wextra -pedantic -Werror, -j2, -D QT_DEFAULT_MAJOR_VERSION=6, make, ubuntu-20.04, 6.2.4) (push) Failing after 1m7s
CI: Build Test / Build (-Wall -Wextra -pedantic -Werror, -j2, -D QT_DEFAULT_MAJOR_VERSION=6, make, ubuntu-20.04, 6.5.0) (push) Failing after 10s
CI: Build Test / Build (-Wall -Wextra -pedantic -Werror, -j2, make, ubuntu-20.04, 5.15.0) (push) Failing after 10s
Documentation / Doxygen (push) Failing after 3h9m57s
CI: Build Test / Build (-Wall -Wextra -pedantic -Werror, -j3, -D QT_DEFAULT_MAJOR_VERSION=6, make, macos-13, 6.2.4) (push) Has been cancelled
CI: Build Test / Build (-Wall -Wextra -pedantic -Werror, -j3, -D QT_DEFAULT_MAJOR_VERSION=6, make, macos-13, 6.5.0) (push) Has been cancelled
CI: Build Test / Build (-Wall -Wextra -pedantic -Werror, -j3, make, macos-13, 5.15.0) (push) Has been cancelled
CI: Build Test / Build (/W4 /WX /MP, -D QT_DEFAULT_MAJOR_VERSION=6, nmake, windows-latest, 6.2.4) (push) Has been cancelled
CI: Build Test / Build (/W4 /WX /MP, -D QT_DEFAULT_MAJOR_VERSION=6, nmake, windows-latest, 6.5.0) (push) Has been cancelled
CI: Build Test / Build (/W4 /WX /MP, nmake, windows-latest, 5.15.0) (push) Has been cancelled
fix Qt5 build on CI for MacOS which requires x86_64 (#204)
The Qt5 build in the CI is broken, because Qt5 is provided for x86_64
only, while current macos runners support arm64 only. Setting MacOS to
version 13 should fix this until it falls out of GitHub Support.

References:
- https://github.com/jurplel/install-qt-action/issues/238
- https://github.com/faaxm/spix/blob/master/.github/workflows/build.yml
2025-01-23 19:24:19 +02:00

116 lines
3.1 KiB
YAML

name: "CI: Build Test"
on:
push:
branches-ignore:
- "releases/**"
paths-ignore:
- "**.md"
pull_request:
paths-ignore:
- "**.md"
jobs:
build:
name: Build
strategy:
matrix:
qt_version:
- 5.15.0
- 6.2.4
- 6.5.0
platform:
- ubuntu-20.04
- windows-latest
- macos-13
include:
- qt_version: 6.2.4
additional_arguments: -D QT_DEFAULT_MAJOR_VERSION=6
- qt_version: 6.5.0
additional_arguments: -D QT_DEFAULT_MAJOR_VERSION=6
- platform: ubuntu-20.04
make: make
CXXFLAGS: -Wall -Wextra -pedantic -Werror
MAKEFLAGS: -j2
- platform: macos-13
make: make
CXXFLAGS: -Wall -Wextra -pedantic -Werror
MAKEFLAGS: -j3
- platform: windows-latest
make: nmake
CXXFLAGS: /W4 /WX /MP
runs-on: ${{ matrix.platform }}
env:
CXXFLAGS: ${{ matrix.CXXFLAGS }}
MAKEFLAGS: ${{ matrix.MAKEFLAGS }}
steps:
- name: Clone repo
uses: actions/checkout@v3
- name: Install Qt
uses: jurplel/install-qt-action@v3
with:
version: ${{ matrix.qt_version }}
- name: Setup MSVC environment for QMake
uses: ilammy/msvc-dev-cmd@v1
- name: Build library with CMake
run: |
cmake . ${{ matrix.additional_arguments }}
cmake --build .
- name: Build basic example with CMake
working-directory: examples/basic/
run: |
cmake . ${{ matrix.additional_arguments }}
cmake --build .
- name: Build calculator example with CMake
working-directory: examples/calculator/
run: |
cmake . ${{ matrix.additional_arguments }}
cmake --build .
- name: Build sending_arguments example with CMake
working-directory: examples/sending_arguments/
run: |
cmake . ${{ matrix.additional_arguments }}
cmake --build .
- name: Build windows_raise_widget example with CMake
working-directory: examples/windows_raise_widget/
run: |
cmake . ${{ matrix.additional_arguments }}
cmake --build .
- name: Build basic example with QMake
if: ${{ !contains(matrix.platform, 'macos') }}
working-directory: examples/basic/
run: |
qmake
${{ matrix.make }}
- name: Build calculator example with QMake
if: ${{ !contains(matrix.platform, 'macos') }}
working-directory: examples/calculator/
run: |
qmake
${{ matrix.make }}
- name: Build sending_arguments example with QMake
if: ${{ !contains(matrix.platform, 'macos') }}
working-directory: examples/sending_arguments/
run: |
qmake
${{ matrix.make }}
- name: Build windows_raise_widget example with QMake
if: ${{ !contains(matrix.platform, 'macos') }}
working-directory: examples/windows_raise_widget/
run: |
qmake
${{ matrix.make }}