-
Notifications
You must be signed in to change notification settings - Fork 79
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
CI build by github actions #42
Open
chcg
wants to merge
1
commit into
Governikus:community
Choose a base branch
from
chcg:appveyor_qt_6
base: community
Could not load branches
Branch not found: {{ refName }}
Could not load tags
Nothing to show
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
File filter
Filter by extension
Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
There are no files selected for viewing
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
# To get started with Dependabot version updates, you'll need to specify which | ||
# package ecosystems to update and where the package manifests are located. | ||
# Please see the documentation for all configuration options: | ||
# https://help.github.com/github/administering-a-repository/configuration-options-for-dependency-updates | ||
|
||
version: 2 | ||
updates: | ||
|
||
# Maintain dependencies for GitHub Actions | ||
- package-ecosystem: "github-actions" | ||
directory: "/" | ||
schedule: | ||
interval: "monthly" |
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,120 @@ | ||
name: CI_build | ||
|
||
on: [push, pull_request] | ||
|
||
jobs: | ||
|
||
build_windows: | ||
|
||
runs-on: windows-latest | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
build_configuration: [Release] | ||
build_platform: ["Ninja"] | ||
|
||
steps: | ||
|
||
- name: Install openssl dev | ||
run: | | ||
choco install openssl --version=3.1.1 | ||
choco install ninja | ||
|
||
- name: Add nmake | ||
uses: ilammy/msvc-dev-cmd@v1 | ||
|
||
- name: Checkout repo | ||
uses: actions/checkout@v4 | ||
|
||
- name: Install Qt | ||
uses: jurplel/install-qt-action@v3 | ||
with: | ||
version: '6.5.*' | ||
modules: 'qtscxml qtwebsockets qtshadertools qtconnectivity qtimageformats' | ||
setup-python: 'false' | ||
|
||
- name: generate cmake | ||
run: | | ||
cmake -G "${{ matrix.build_platform }}" -DCMAKE_BUILD_TYPE="${{ matrix.build_configuration }}" -B _build | ||
|
||
- name: build cmake | ||
run: | | ||
cmake --build _build --config ${{ matrix.build_configuration }} --target package | ||
cmake --install _build | ||
|
||
- name: run ctest | ||
run: | | ||
ctest --test-dir _build --output-on-failure -C "${{ matrix.build_configuration }}" | ||
|
||
build_linux: | ||
|
||
runs-on: ubuntu-latest | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
build_configuration: [Release] | ||
build_platform: ["Unix Makefiles"] | ||
|
||
steps: | ||
- uses: actions/checkout@v4 | ||
|
||
- name: Install packages via apt | ||
run: | | ||
sudo apt update -qq && sudo apt install -y cmake pkg-config libssl-dev libudev-dev libhttp-parser-dev libpcsclite-dev libgl1-mesa-dev qt6-l10n-tools | ||
|
||
# ubuntu 22.04 comes just with QT 6.2.4 and Qt >= 6.4 is required | ||
- name: Install Qt | ||
uses: jurplel/install-qt-action@v3 | ||
with: | ||
version: '6.5.*' | ||
modules: 'qtscxml qtwebsockets qtshadertools qtconnectivity' | ||
setup-python: 'false' | ||
|
||
- name: generate cmake | ||
run: | | ||
cmake -G "${{ matrix.build_platform }}" -DCMAKE_BUILD_TYPE="${{ matrix.build_configuration }}" -B _build | ||
|
||
- name: build cmake | ||
run: | | ||
cmake --build _build --config ${{ matrix.build_configuration }} --target package | ||
sudo cmake --install _build | ||
|
||
- name: run ctest | ||
run: | | ||
ctest --test-dir _build --output-on-failure -C "${{ matrix.build_configuration }}" | ||
|
||
# due to https://bugreports.qt.io/browse/QTBUG-117765 QT 6.5.2 must be used instead of 6.5.3 | ||
build_macos: | ||
|
||
runs-on: macos-latest | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
build_configuration: [Release] | ||
build_platform: ["Unix Makefiles"] | ||
|
||
steps: | ||
- uses: actions/checkout@v4 | ||
|
||
- name: Install Qt | ||
uses: jurplel/install-qt-action@v3 | ||
with: | ||
version: '6.5.2' | ||
modules: 'qtscxml qtwebsockets qtshadertools qtconnectivity qtimageformats' | ||
setup-python: 'false' | ||
|
||
- name: generate cmake | ||
run: | | ||
export OPENSSL_ROOT=/usr/local/opt/openssl/bin | ||
export LDFLAGS=-L/usr/local/opt/openssl/lib | ||
export CPPFLAGS=-I/usr/local/opt/openssl/include | ||
export PKG_CONFIG_PATH=/usr/local/opt/openssl/lib/pkgconfig/ | ||
cmake -G "${{ matrix.build_platform }}" -DCMAKE_BUILD_TYPE="${{ matrix.build_configuration }}" -B _build | ||
|
||
- name: build cmake | ||
run: | | ||
cmake --build _build --config ${{ matrix.build_configuration }} | ||
|
||
- name: run ctest | ||
run: | | ||
ctest --test-dir _build --output-on-failure -C "${{ matrix.build_configuration }}" |
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,171 @@ | ||
name: CI_build_combined | ||
|
||
on: [push, pull_request] | ||
|
||
env: | ||
BUILD_DIR_LIBS_WIN: "c:/_build_libs" | ||
BUILD_DIR_APP_WIN: "c:/_build" | ||
BUILD_DIR_LIBS: "_build_libs" | ||
BUILD_DIR_APP: "_build" | ||
|
||
|
||
jobs: | ||
build_windows: | ||
|
||
runs-on: windows-latest | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
build_configuration: [Release] | ||
build_platform: ["Ninja"] | ||
|
||
steps: | ||
|
||
- name: Install nmake replacement jom, ninja | ||
run: | | ||
choco install jom ninja | ||
|
||
- name: Checkout repo | ||
uses: actions/checkout@v4 | ||
|
||
- name: Add nmake | ||
uses: ilammy/msvc-dev-cmd@v1 | ||
|
||
- name: generate cmake libs | ||
run: | | ||
cmake -G "${{ matrix.build_platform }}" -DCMAKE_BUILD_TYPE="${{ matrix.build_configuration }}" -B "${{ env.BUILD_DIR_LIBS_WIN }}" D:\a\AusweisApp\AusweisApp\libs | ||
|
||
- name: build cmake libs | ||
run: | | ||
cmake --build "${{ env.BUILD_DIR_LIBS_WIN }}" --config ${{ matrix.build_configuration }} | ||
|
||
- name: generate cmake | ||
run: | | ||
cmake -G "${{ matrix.build_platform }}" -DCMAKE_BUILD_TYPE="${{ matrix.build_configuration }}" -B "${{ env.BUILD_DIR_APP_WIN }}" -DCMAKE_PREFIX_PATH=c:\_build_libs\dist D:\a\AusweisApp\AusweisApp | ||
|
||
- name: build cmake | ||
run: | | ||
cmake --build "${{ env.BUILD_DIR_APP_WIN }}" --config ${{ matrix.build_configuration }} --target package | ||
cmake --install "${{ env.BUILD_DIR_APP_WIN }}" | ||
|
||
- name: run ctest | ||
run: | | ||
ctest --test-dir "${{ env.BUILD_DIR_APP_WIN }}" --output-on-failure -C "${{ matrix.build_configuration }}" | ||
|
||
|
||
|
||
build_linux: | ||
|
||
runs-on: ubuntu-latest | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
build_configuration: [Release] | ||
build_platform: ["Ninja"] | ||
|
||
steps: | ||
- uses: actions/checkout@v4 | ||
|
||
- name: Install packages via apt | ||
run: | | ||
sudo apt-get update -qq && sudo apt install -y cmake pkg-config libssl-dev libudev-dev libhttp-parser-dev libpcsclite-dev libgl1-mesa-dev libdbus-1-dev libclang-15-dev libclang-14-dev libclang-13-dev ninja-build | ||
|
||
- name: generate cmake libs | ||
run: | | ||
cmake -G "${{ matrix.build_platform }}" -DCMAKE_BUILD_TYPE="${{ matrix.build_configuration }}" -B ${{ env.BUILD_DIR_LIBS }} ./libs | ||
|
||
- name: build cmake libs | ||
run: | | ||
cmake --build ${{ env.BUILD_DIR_LIBS }} --config ${{ matrix.build_configuration }} | ||
|
||
- name: generate cmake | ||
run: | | ||
cmake -G "${{ matrix.build_platform }}" -DCMAKE_BUILD_TYPE="${{ matrix.build_configuration }}" -B ${{ env.BUILD_DIR_APP }} -DCMAKE_PREFIX_PATH=./_build_libs/dist | ||
|
||
- name: build cmake | ||
run: | | ||
cmake --build ${{ env.BUILD_DIR_APP }} --config ${{ matrix.build_configuration }} | ||
sudo cmake --install ${{ env.BUILD_DIR_APP }} | ||
|
||
- name: run ctest | ||
run: | | ||
ctest --test-dir ${{ env.BUILD_DIR_APP }} --output-on-failure -C "${{ matrix.build_configuration }}" | ||
|
||
|
||
build_linux_android: | ||
|
||
runs-on: ubuntu-latest | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
build_configuration: [Release] | ||
build_platform: ["Unix Makefiles"] | ||
|
||
steps: | ||
- uses: actions/checkout@v4 | ||
|
||
- name: Install packages via apt | ||
run: | | ||
sudo apt-get update -qq && sudo apt install -y cmake pkg-config libssl-dev libudev-dev libhttp-parser-dev libpcsclite-dev libgl1-mesa-dev libdbus-1-dev libclang-15-dev libclang-14-dev libclang-13-dev ninja-build | ||
sudo apt -y remove firefox microsoft-edge-stable google-chrome-stable kotlin libmono* mono-runtime | ||
|
||
- name: generate cmake libs | ||
run: | | ||
cmake -G "${{ matrix.build_platform }}" -DCMAKE_BUILD_TYPE="${{ matrix.build_configuration }}" -DCMAKE_TOOLCHAIN_FILE=../cmake/android.toolchain.cmake -B ${{ env.BUILD_DIR_LIBS }} ./libs | ||
|
||
- name: build cmake libs | ||
run: | | ||
cmake --build ${{ env.BUILD_DIR_LIBS }} --config ${{ matrix.build_configuration }} | ||
cmake --install ${{ env.BUILD_DIR_LIBS }} | ||
|
||
build_macos: | ||
|
||
runs-on: macos-latest | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
build_configuration: [Release] | ||
build_platform: ["Ninja"] | ||
|
||
steps: | ||
- uses: actions/checkout@v4 | ||
|
||
- name: install ninja | ||
run: | | ||
brew install ninja | ||
|
||
- name: generate cmake libs | ||
run: | | ||
cmake -G "${{ matrix.build_platform }}" -DCMAKE_BUILD_TYPE="${{ matrix.build_configuration }}" -B ${{ env.BUILD_DIR_LIBS }} ./libs | ||
|
||
- name: build cmake libs | ||
run: | | ||
cmake --build ${{ env.BUILD_DIR_LIBS }} --config ${{ matrix.build_configuration }} | ||
|
||
- name: generate cmake | ||
run: | | ||
cmake -G "${{ matrix.build_platform }}" -DCMAKE_BUILD_TYPE="${{ matrix.build_configuration }}" -DCMAKE_PREFIX_PATH=./_build_libs/dist -B ${{ env.BUILD_DIR_APP }} | ||
|
||
build_ios: | ||
|
||
runs-on: macos-latest | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
build_configuration: [Release] | ||
build_platform: ["Unix Makefiles"] | ||
|
||
steps: | ||
- uses: actions/checkout@v4 | ||
|
||
- name: install ninja | ||
run: | | ||
brew install ninja | ||
|
||
- name: generate cmake libs | ||
run: | | ||
cmake -G "${{ matrix.build_platform }}" -DCMAKE_BUILD_TYPE="${{ matrix.build_configuration }}" -DCMAKE_TOOLCHAIN_FILE=../cmake/iOS.toolchain.cmake -B ${{ env.BUILD_DIR_LIBS }} ./libs | ||
|
||
- name: build cmake libs | ||
run: | | ||
cmake --build ${{ env.BUILD_DIR_LIBS }} --config ${{ matrix.build_configuration }} |
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
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
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
is it possible to use the built libs from below as another matrix job?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@misery I added another workflow which combines the build of the libs and the direct use of it for the app. I think with that the extra workflow of the lib build is obsolete. What do you think?
The build of the app with pre build QT installations might be still of some interest for testing of newer QT versions..
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I used unix makefiles for android and ios as with ninja build the error:
appears.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, if we use a combined build there is no need for a separate lib build job.
Strange error. Did you just Multi-Config Ninja Genereator somewhere? Maybe you could remove --config Release as it is needed for Multi-Config only.