Skip to content

windows.yml, badd exe #20

windows.yml, badd exe

windows.yml, badd exe #20

Workflow file for this run

name: Ubuntu
on:
push:
branches:
- '**'
pull_request:
branches:
- '**'
permissions:
contents: read
checks: write
pull-requests: write
jobs:
build-test:
runs-on: ${{ matrix.os }}
strategy:
matrix:
include:
- os: ubuntu-22.04
compiler: gcc
c_compiler: gcc
cxx_compiler: g++
name: Ubuntu-22.04-GCC
packages: gcc g++
- os: ubuntu-22.04
compiler: clang
c_compiler: clang
cxx_compiler: clang++
name: Ubuntu-22.04-Clang
packages: clang
- os: ubuntu-24.04
compiler: gcc
c_compiler: gcc
cxx_compiler: g++
name: Ubuntu-24.04-GCC-Sanitizers
packages: gcc g++
extra_cmake: '-DENCODEC_ENABLE_SANITIZERS=ON'
- os: ubuntu-24.04
compiler: clang
c_compiler: clang
cxx_compiler: clang++
name: Ubuntu-24.04-Clang-Sanitizers
packages: clang
extra_cmake: '-DENCODEC_ENABLE_SANITIZERS=ON'
name: ${{ matrix.name }}
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Install dependencies
run: |
sudo apt update
sudo apt install -y ninja-build cmake ${{ matrix.packages }}
- name: Run CMake configuration and build
run: |
cmake . -B build -G Ninja \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_C_COMPILER=${{ matrix.c_compiler }} \
-DCMAKE_CXX_COMPILER=${{ matrix.cxx_compiler }} \
${{ matrix.extra_cmake }}
cmake --build build --parallel
- name: Run unit tests
run: |
mkdir -p build/test-results
./build/encodec_tests --reporters=junit --out=build/test-results/encodec-tests-${{ matrix.name }}.xml
- name: Upload JUnit XML artifact
if: always()
uses: actions/upload-artifact@v4
with:
name: junit-${{ matrix.name }}
path: build/test-results/*.xml
- name: Publish test results
if: (!cancelled())
uses: EnricoMi/publish-unit-test-result-action@v2
with:
files: build/test-results/*.xml
check_name: Test Results - ${{ matrix.name }}