Update of termbench with scripts to create plots #54
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: Build | |
on: | |
push: | |
paths-ignore: | |
- 'docs/**' | |
- '.github/ISSUE_TEMPLATE/**' | |
- '.github/*.yml' | |
- 'LICENSE.txt' | |
- '*.md' | |
- '*.sh' | |
branches: | |
- master | |
pull_request: | |
branches: | |
- master | |
concurrency: | |
group: ${{ github.ref }} | |
cancel-in-progress: true | |
env: | |
CTEST_OUTPUT_ON_FAILURE: 1 | |
jobs: | |
check_clang_format: | |
name: "Check C++ style" | |
runs-on: ubuntu-22.04 | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Install clang | |
run: | | |
wget https://apt.llvm.org/llvm.sh | |
chmod +x llvm.sh | |
sudo ./llvm.sh 17 | |
sudo apt-get install clang-format-17 | |
- name: "Clang-format libtermbench" | |
run: find ./libtermbench -name "*.cpp" -o -name "*.h" | xargs clang-format-17 --Werror --dry-run | |
- name: "Clang-format tb1" | |
run: find ./tb -name "*.cpp" -o -name "*.h" | xargs clang-format-17 --Werror --dry-run | |
- name: "Check includes" | |
run: ./scripts/check-includes.sh | |
ubuntu_linux: | |
name: "Ubuntu Linux 22.04" | |
runs-on: ubuntu-22.04 | |
steps: | |
- uses: actions/checkout@v2 | |
- name: ccache | |
uses: hendrikmuhs/ccache-action@v1 | |
with: | |
key: "ccache-ubuntu_2204" | |
max-size: 256M | |
- name: set environment variables | |
id: set_vars | |
run: ./scripts/ci-set-vars.sh | |
env: | |
REPOSITORY: ${{ github.event.repository.name }} | |
- name: "install dependencies" | |
run: | | |
set -ex | |
sudo apt -q update | |
sudo ./scripts/install-deps.sh | |
- name: "Install GCC 13" | |
run: sudo apt install g++-13 | |
- name: "cmake" | |
run: cmake -S . -B build -DCMAKE_BUILD_TYPE="RelWithDebInfo" -D CMAKE_CXX_COMPILER="g++-13" | |
- name: "build" | |
run: cmake --build build/ -- -j3 | |
- name: "Install contour" | |
run: | | |
sudo apt install \ | |
libgl1-mesa-dev \ | |
libglvnd-dev \ | |
libqt6core5compat6-dev \ | |
libqt6opengl6-dev \ | |
qml6-module-qt-labs-platform \ | |
qml6-module-qtqml-workerscript \ | |
qml6-module-qtquick-controls \ | |
qml6-module-qtquick-layouts \ | |
qml6-module-qtmultimedia \ | |
qml6-module-qtquick-templates \ | |
qml6-module-qtquick-window \ | |
qml6-module-qt5compat-graphicaleffects \ | |
qt6-base-dev \ | |
qt6-base-dev-tools \ | |
qt6-declarative-dev \ | |
qt6-multimedia-dev \ | |
qt6-qpa-plugins \ | |
libyaml-cpp-dev | |
wget https://github.com/contour-terminal/contour/releases/download/v0.4.3.6442/contour-0.4.3.6442-ubuntu22.04-amd64.deb | |
sudo dpkg -i contour-0.4.3.6442-ubuntu22.04-amd64.deb | |
- name: "create and patch contour.yml config file" | |
run: | | |
set -ex | |
mkdir -p ~/.config/contour/ | |
contour generate config to ~/.config/contour/contour.yml | |
sed -i -e 's/locator: native/locator: mock/' ~/.config/contour/contour.yml | |
sed -i -e 's/strict_spacing: true/strict_spacing: false/' ~/.config/contour/contour.yml | |
cat .github/mock-font-locator.yml >> ~/.config/contour/contour.yml | |
cat ~/.config/contour/contour.yml | |
- name: "Install other terminals and dependencies" | |
run: sudo apt install -y kitty xterm xvfb | |
- name: "run benchmarks" | |
run: ./scripts/Xvfb-bench-run.sh |