github build action for Linux and Windows (#175)

* initial github build action

* Github actions: Install Qt 5.15

... We use a specific Github Action for this, since the current Qt
version shipping with Ubuntu is too old.

* Github Action: Cache Qt installation

* Github Action: Build on Linux and Windows

Co-authored-by: Richard Spindler <oracle@propirate.net>
This commit is contained in:
Peter Hartmann 2022-04-13 07:23:36 +02:00 committed by GitHub
parent 3a88045f80
commit b8a9264c4f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 87 additions and 0 deletions

85
.github/workflows/qmake.yml vendored Normal file
View File

@ -0,0 +1,85 @@
name: CI
on:
push:
branches: [ master ]
pull_request:
branches: [ master ]
jobs:
build-linux:
name: Linux build
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Cache Qt
id: cache-qt
uses: actions/cache@v1 # not v2!
with:
path: ../Qt
key: ${{ runner.os }}-QtCache
- name: Install Qt
uses: jurplel/install-qt-action@v2
with:
version: '5.15.2'
host: 'linux'
target: 'desktop'
install-deps: 'true'
modules: 'qtwebengine'
cached: ${{ steps.cache-qt.outputs.cache-hit }}
setup-python: 'true'
tools: ''
set-env: 'true'
tools-only: 'false'
- name: Ubuntu and Qt version
run: |
cat /etc/issue
echo number of processors: $(nproc)
qmake -v
- name: qmake
run: qmake qskinny.pro
- name: make
run: make -j$(nproc)
build-windows:
name: Windows build
runs-on: windows-latest
steps:
- uses: actions/checkout@v2
- name: Cache Qt
id: cache-qt
uses: actions/cache@v1 # not v2!
with:
path: ../Qt
key: ${{ runner.os }}-QtCache
- name: Install Qt
uses: jurplel/install-qt-action@v2
with:
version: '5.15.2'
host: 'windows'
target: 'desktop'
arch: 'win64_msvc2019_64'
install-deps: 'true'
modules: 'qtwebengine'
cached: ${{ steps.cache-qt.outputs.cache-hit }}
setup-python: 'true'
tools: ''
set-env: 'true'
tools-only: 'false'
- uses: ilammy/msvc-dev-cmd@v1
- name: Qt version
run: qmake -v
shell: cmd
- name: qmake
run: qmake qskinny.pro
shell: cmd
- name: nmake
run: nmake
shell: cmd

View File

@ -1,5 +1,7 @@
# QSkinny
![](https://github.com/uwerat/qskinny/workflows/CI/badge.svg)
The (Q)Skinny library is a framework built on top of the Qt scene graph
and very few core classes from Qt/Quick. It offers a set of lightweight controls,
that can be used from C++ and/or QML.