Refactor Build System, Source Tree #74
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
# Collects inspiration from https://github.com/itzmeanjan/frodoPIR/blob/aa654db3d11384fce73086cbbd37c63e0cb30e33/.github/workflows/test_ci.yml | |
name: Test SHA3 Hash and Extendable Output Functions | |
on: | |
push: | |
branches: [ "master" ] | |
pull_request: | |
branches: [ "master" ] | |
jobs: | |
build: | |
runs-on: ${{matrix.os}} | |
strategy: | |
matrix: | |
os: [ubuntu-latest, macos-latest] | |
compiler: [g++, clang++] | |
build_type: [debug, release] | |
test_type: [standard, asan, ubsan] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Setup Google-Test | |
run: | | |
pushd ~ | |
git clone https://github.com/google/googletest.git -b v1.15.2 | |
pushd googletest | |
mkdir build | |
pushd build | |
cmake .. -DBUILD_GMOCK=OFF | |
make -j | |
sudo make -j install | |
popd | |
popd | |
popd | |
- name: Execute Tests on ${{matrix.os}}, compiled with ${{matrix.compiler}} | |
if: ${{matrix.test_type == 'standard'}} | |
run: | | |
CXX=${{matrix.compiler}} make -j | |
make clean | |
- name: Execute Tests with ${{matrix.test_type}}, in ${{matrix.build_type}} mode, on ${{matrix.os}}, compiled with ${{matrix.compiler}} | |
if: ${{matrix.test_type != 'standard'}} | |
run: | | |
CXX=${{matrix.compiler}} make ${{matrix.build_type}}_${{matrix.test_type}}_test -j | |
make clean | |
- name: Build and run examples | |
run: | | |
make example -j | |
make clean |