Skip to content

CircleCI Commit

CircleCI Commit #7

Workflow file for this run

name: CMake Build & Test
on: [push, pull_request]
jobs:
build:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [windows-latest, ubuntu-latest]
config: [Debug, Release]
steps:
- uses: actions/checkout@v4
- name: Install dependencies (Ubuntu)
if: runner.os == 'Linux'
run: sudo apt-get update && DEBIAN_FRONTEND=noninteractive sudo apt install -y libusb-1.0-0-dev libfuse-dev liblz4-dev
- name: Add msbuild to PATH
if: runner.os == 'Windows'
uses: microsoft/setup-msbuild@v2
with:
msbuild-architecture: x64
- name: Setup cmake
if: runner.os == 'Linux'
uses: jwlawson/actions-setup-cmake@v2
with:
cmake-version: '3.25.x'
- name: Create Build Environment
run: cmake -E make_directory ${{runner.workspace}}/build
- name: Configure CMake
shell: bash
working-directory: ${{runner.workspace}}/build
run: cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=${{ matrix.config }}
- name: Build
working-directory: ${{runner.workspace}}/build
shell: bash
run: cmake --build . --config ${{ matrix.config }} --parallel
- name: Test
working-directory: ${{runner.workspace}}/build
shell: bash
run: ctest -C ${{ matrix.config }}
- name: Install
working-directory: ${{runner.workspace}}/build
shell: bash
run: |
if [[ "${{ runner.os }}" == "Windows" ]]; then
cmake --build . --config ${{ matrix.config }} --target install
else
sudo cmake --build . --config ${{ matrix.config }} --target install
fi;
- name: Test installation
shell: bash
run: |
ceserver-pcileech --version