Feature/person hobby (#177) #134
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: clang | |
on: | |
push: | |
branches: | |
- 'main' | |
pull_request: | |
env: | |
BUILD_TYPE: Debug | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
with: | |
submodules: recursive | |
- name: Install apt-get dependencies | |
run: | | |
sudo add-apt-repository ppa:trebelnik-stefina/launchpad-getkeys \ | |
&& sudo apt-get update \ | |
&& sudo apt-get install launchpad-getkeys \ | |
&& sudo sudo apt-get update \ | |
&& sudo add-apt-repository 'deb http://apt.llvm.org/jammy/ llvm-toolchain-jammy-16 main' \ | |
&& sudo launchpad-getkeys \ | |
&& sudo apt-get update -y \ | |
&& sudo apt-get install -y lld-16 ninja-build build-essential libstdc++-13-dev \ | |
clang-16 clang-tools-16 llvm-16 lcov | |
- name: Initialize submodules | |
run: git submodule update --init --recursive | |
- name: Configure CMake | |
run: | | |
cmake -B ${{github.workspace}}/build \ | |
-DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} \ | |
-DCMAKE_CXX_COMPILER=/usr/bin/clang++-16 \ | |
-DCODE_COVERAGE:BOOL=ON \ | |
-GNinja | |
- name: Build | |
run: cmake --build ${{github.workspace}}/build --config ${{env.BUILD_TYPE}} | |
- name: Test | |
working-directory: ${{github.workspace}}/build | |
run: | | |
ninja faker-ccov-all \ | |
&& llvm-cov-16 show `cat ccov/binaries.list` -instr-profile=ccov/all-merged.profdata > coverage.txt | |
- name: Codecov | |
uses: codecov/[email protected] | |
with: | |
token: ${{ secrets.CODECOVTOKEN }} |