Fix checkapp crash #102
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: GitHub CI | |
on: [ push, pull_request, workflow_dispatch] | |
jobs: | |
build: | |
runs-on: ${{ matrix.os }} | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- os: windows-latest | |
os-name: windows | |
qt-version: '5.12' | |
mingw-short-version: 73 | |
qt5-extra-archives: 'qtwinextras opengl32sw i686' | |
- os: ubuntu-latest | |
os-name: linux | |
qt-version: '5.12' | |
qt5-extra-archives: 'qtx11extras icu' | |
- os: ubuntu-latest | |
os-name: linux | |
qt-version: '5.15' | |
qt5-extra-archives: 'qtx11extras icu' | |
- os: macos-12 | |
os-name: mac | |
qt-version: '5.12' | |
qt5-extra-archives: 'qtmacextras' | |
- os: ubuntu-latest | |
os-name: linux | |
qt-version: '6.5' | |
defaults: | |
run: | |
shell: bash | |
permissions: | |
contents: read | |
pull-requests: read | |
steps: | |
- name: Configure git | |
run: | | |
git config --global core.symlinks true | |
git config --global core.autocrlf input | |
cygpath -w /usr/bin >> $GITHUB_PATH || : | |
- uses: actions/checkout@v4 | |
- name: Install Qt | |
uses: jurplel/install-qt-action@v4 | |
with: | |
version: ${{ matrix.qt-version }} | |
host: ${{ matrix.os-name }} | |
modules: ${{ startsWith(matrix.qt-version, '6') && 'qt5compat qtmultimedia qtimageformats' || '' }} | |
arch: ${{ matrix.mingw-short-version != '' && format('win32_mingw{0}', matrix.mingw-short-version) || '' }} | |
tools: ${{ matrix.mingw-short-version != '' && format('tools_mingw,qt.tools.win32_mingw{0}0', matrix.mingw-short-version) || '' }} | |
archives: ${{ startsWith(matrix.qt-version, '5') && format('qttools qtsvg qtbase qttranslations qtmultimedia qtimageformats {0}', matrix.qt5-extra-archives) || '' }} | |
add-tools-to-path: true | |
# cache: true | |
- name: Check available tools | |
run: | | |
set -xueo pipefail | |
echo $PATH | |
uname -a | |
qmake --version | |
make --version | |
g++ --version | |
- name: Check translations | |
run: | | |
rm aqtinstall.log | |
lupdate trikCheckApp.pro | |
gitStatus=$(git status -s && git submodule --quiet foreach --recursive git status -s) | |
if [ ! -z "$gitStatus" ] | |
then | |
echo $gitStatus | |
echo git status must be clean | |
git diff | |
false | |
else | |
true | |
fi | |
- name: Install dependencies | |
if: ${{ matrix.os == 'ubuntu-latest' }} | |
run: sudo apt-get update && sudo apt-get install -y --no-install-recommends bear | |
- name: Create build dir | |
run: mkdir -p ../build | |
- name: QMake | |
run: qmake ../trik-checkapp/trikCheckApp.pro CONFIG+=release | |
working-directory: ../build | |
- name: QMake all | |
timeout-minutes: 1 | |
run: make -j $(nproc) qmake_all | |
working-directory: ../build | |
- name: Make all with bear | |
timeout-minutes: 10 | |
if: ${{ matrix.os == 'ubuntu-latest' }} | |
run: bear -- make -j $(nproc) all | |
working-directory: ../build | |
- name: Make all | |
timeout-minutes: 10 | |
if: ${{ matrix.os != 'ubuntu-latest' }} | |
run: make -j $(nproc) all | |
working-directory: ../build | |
- name: Lint | |
if: ${{ matrix.os == 'ubuntu-latest'}} | |
uses: cpp-linter/[email protected] | |
id: linter | |
with: | |
style: 'file' | |
tidy-checks: '' | |
version: 15 | |
database: '../build' | |
verbosity: 'info' | |
- name: Clang-tidy exit | |
if: ${{ matrix.os == 'ubuntu-latest' && steps.linter.outputs.checks-failed > 0 }} | |
run: exit 1 | |
- name: Clazy-standalone | |
if: ${{ matrix.os == 'ubuntu-latest'}} | |
uses: MinyazevR/[email protected] | |
with: | |
checks: 'level0,level1,no-connect-by-name,no-non-pod-global-static' | |
database: '../build' | |
install-stable: true | |