Added command M181. #186
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: CI | |
on: | |
push: | |
branches: | |
- main | |
pull_request: | |
jobs: | |
build-and-test: | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
compiler: | |
- g++ | |
- clang++ | |
optimization: [ 0, 1, 2, 3] | |
name: Test ${{matrix.compiler}} -O${{matrix.optimization}} | |
steps: | |
- name: Prepare | |
run: | | |
sudo apt-get update -qq | |
sudo apt install -y g++ clang pkg-config libgtest-dev libgmock-dev valgrind | |
- uses: actions/checkout@v2 | |
with: | |
submodules: recursive | |
fetch-depth: 0 | |
- name: Configure shell | |
# Since we're not compiling on the Beaglebone, disable arm specifics | |
run: | | |
echo "ARM_COMPILE_FLAGS=" >> $GITHUB_ENV | |
echo "CXX=${{ matrix.compiler }}" >> $GITHUB_ENV | |
echo "BEAGLEG_OPT_CFLAGS=-O${{ matrix.optimization }} -Werror" >> $GITHUB_ENV | |
- name: Build | |
run: | | |
make | |
- name: Test | |
run: | | |
make test | |
- name: Valgrind Test | |
run: | | |
make valgrind-test | |
hardware-targets: | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
hardware: # TODO: can the matrix be derived from directory hardware/* ? | |
- BUMPS | |
- CRAMPS | |
- Pockegotion | |
- VGEN5 | |
name: Hardware ${{matrix.hardware}} | |
steps: | |
- uses: actions/checkout@v2 | |
with: | |
submodules: recursive | |
fetch-depth: 0 | |
- name: Configure shell | |
# Since we're not compiling on the Beaglebone, disable arm specifics | |
run: | | |
echo "ARM_COMPILE_FLAGS=" >> $GITHUB_ENV | |
echo BEAGLEG_HARDWARE_TARGET="${{matrix.hardware}}" >> $GITHUB_ENV | |
- name: Build | |
run: | | |
make | |
Coverage: | |
runs-on: ubuntu-latest | |
name: Coverage prepare | |
steps: | |
- name: Prepare | |
run: | | |
sudo apt-get update -qq | |
sudo apt install -y g++ pkg-config libgtest-dev libgmock-dev lcov | |
- uses: actions/checkout@v2 | |
with: | |
submodules: recursive | |
fetch-depth: 0 | |
- name: Configure shell | |
# Since we're not compiling on the Beaglebone, disable arm specifics | |
run: | | |
echo 'ARM_COMPILE_FLAGS=' >> $GITHUB_ENV | |
- name: Coverage run | |
run: | | |
make -C src beagleg.coverage | |
- name: Upload coverage | |
uses: codecov/codecov-action@v2 | |
with: | |
files: src/beagleg.coverage | |
fail_ci_if_error: true | |
verbose: true | |
CodeFormatting: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v2 | |
with: | |
fetch-depth: 0 | |
- name: Install Dependencies | |
run: | | |
sudo apt-get install clang-format-11 | |
clang-format --version | |
- name: Run formatting style check | |
run: ./.github/bin/run-clang-format.sh | |
ClangTidy: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v2 | |
with: | |
submodules: recursive | |
fetch-depth: 0 | |
- name: Install Dependencies | |
run: | | |
sudo apt-get install pkg-config libgtest-dev libgmock-dev bear clang-tidy-11 | |
- name: Configure shell | |
# Since we're not compiling on the Beaglebone, disable arm specifics | |
run: | | |
echo 'ARM_COMPILE_FLAGS=' >> $GITHUB_ENV | |
- name: Run clang tidy | |
run: ./.github/bin/run-clang-tidy.sh |