run all #8
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: run all | |
on: | |
pull_request: | |
branches: [ main ] | |
workflow_dispatch: | |
push: | |
branches: | |
- main | |
jobs: | |
build-linux: | |
# You can find specific tool versions for Windows builds in the Runner specification: | |
# https://github.com/actions/runner-images/blob/main/images/ubuntu/Ubuntu2204-Readme.md | |
# In particular, this build uses: | |
# cmake: | |
# g++: | |
# Ruby: | |
runs-on: ubuntu-22.04 | |
steps: | |
- uses: actions/checkout@v4 | |
- name: update package index | |
run: sudo apt-get -y update | |
- name: setup environment | |
run: | | |
sudo apt-get -y install --no-install-recommends \ | |
gcovr \ | |
libboost-program-options-dev \ | |
libboost-regex-dev \ | |
libboost-system-dev \ | |
libboost-test-dev \ | |
ninja-build \ | |
qtbase5-dev | |
# ruby-dev | |
- name: install ruby tools | |
run: | | |
sudo gem install bundler | |
sudo bundle install | |
- name: install gtest | |
run: | | |
git clone https://github.com/google/googletest.git | |
cd googletest | |
mkdir build | |
cd build | |
cmake ../ | |
cmake --build . --parallel | |
sudo cmake --install . | |
- name: build and run | |
run: | | |
export DISPLAY=:99 | |
./run-linux.sh | |
# - name: code coverage summary report | |
# uses: irongut/[email protected] | |
# with: | |
# filename: coverage/cobertura.xml | |
# indicators: false | |
# hide_complexity: true | |
# format: markdown | |
# output: file | |
# - name: publish code coverage summary | |
# run: | | |
# echo '# Code Coverage Report' >> $GITHUB_STEP_SUMMARY | |
# cat code-coverage-results.md >> $GITHUB_STEP_SUMMARY | |
build-windows: | |
# You can find specific tool versions for Windows builds in the Runner specification: | |
# https://github.com/actions/runner-images/blob/main/images/windows/Windows2022-Readme.md | |
# In particular, this build uses: | |
# cmake: 3.27.9 | |
# VSCode: 2022 Enterprise Edition (corresponding C++ version: https://blog.knatten.org/2022/08/26/microsoft-c-versions-explained/) | |
# Ruby: 3.0.6p216 | |
# boost: 1.82.0 | |
runs-on: windows-2022 | |
env: | |
BOOST_VERSION: 1.82.0 | |
steps: | |
- uses: actions/checkout@v4 | |
- name: install ruby tools | |
run: | | |
gem install bundler | |
bundle install | |
- name: Install Google Test | |
uses: MarkusJx/[email protected] | |
- name: install boost | |
run: | | |
$boost_version_str = ${Env:BOOST_VERSION}.Replace(".","_") | |
$ProgressPreference = 'SilentlyContinue' | |
Invoke-WebRequest -Uri https://boostorg.jfrog.io/artifactory/main/release/1.82.0/source/boost_1_82_0.zip -OutFile boost_${boost_version_str}.zip | |
7z x boost_{$boost_version_str}.zip | |
cd boost_{$boost_version_str} | |
cmd /C bootstrap | |
./b2.exe --build-type=complete toolset=msvc --with-regex --with-program_options --with-system --with-test | |
# - name: install Qt5 # only qtbase, containing (among other things) qtcore, qttest, qtgui, qtwidgets | |
# run: | | |
# git clone --depth 1 --branch 5.15.2 [email protected]:qt/qt5.git | |
# cd qt5 | |
# git submodule update --init --recursive | |
# cd .. | |
# mkdir build | |
# cd build | |
# ..\qt5\configure.bat -opensource -nomake tests -nomake examples -confirm-license -shared -c++std c++17 -mp -no-opengl | |
# mingw32-make module-qtbase | |
- name: build and run | |
run: | | |
./run-windows.ps1 | |
# - name: code coverage summary report | |
# uses: irongut/[email protected] | |
# with: | |
# filename: coverage/cobertura.xml | |
# indicators: false | |
# hide_complexity: true | |
# format: markdown | |
# output: file | |
# - name: publish code coverage summary | |
# run: | | |
# echo '# Code Coverage Report' >> $GITHUB_STEP_SUMMARY | |
# cat code-coverage-results.md >> $GITHUB_STEP_SUMMARY |