Skip to content

Further fixes for enabling warnings on cross-compartment void returns. #1679

Further fixes for enabling warnings on cross-compartment void returns.

Further fixes for enabling warnings on cross-compartment void returns. #1679

Workflow file for this run

name: CHERIoT RTOS Tests
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
merge_group:
workflow_dispatch:
inputs:
devcontainer:
description: 'Set to override default build container'
type: string
required: false
jobs:
run-tests:
strategy:
matrix:
build-type: [ debug, release ]
board: [ sail, ibex-safe-simulator ]
include:
- sonata: false
- build-type: debug
build-flags: --debug-loader=y --debug-scheduler=y --debug-allocator=y --allocator-rendering=y -m debug
- build-type: release
build-flags: --debug-loader=n --debug-scheduler=n --debug-allocator=n -m release --stack-usage-check-allocator=y --stack-usage-check-scheduler=y
- board: sonata-simulator
build-type: release
build-flags: --debug-loader=n --debug-scheduler=n --debug-allocator=n -m release --stack-usage-check-allocator=y --stack-usage-check-scheduler=y --testing-model-output=y
sonata: true
fail-fast: false
runs-on: ubuntu-latest
container:
image: ${{ inputs.devcontainer || 'ghcr.io/cheriot-platform/devcontainer:latest' }}
options: --user 1001
steps:
- name: Checkout repository and submodules
uses: actions/checkout@v4
with:
submodules: recursive
- name: Build tests
run: |
cd tests
xmake f --board=${{ matrix.board }} --sdk=/cheriot-tools/ ${{ matrix.build-flags }}
xmake
- name: Run tests
# Test suite needs HyperRAM support to be added to RTOS because SRAM is not big enough.
if: ${{ !matrix.sonata }}
run: |
cd tests
xmake run
- name: Build examples
run: |
set -e
for example_dir in $PWD/examples/*/; do
cd $example_dir
echo Building $example_dir
xmake f --board=${{ matrix.board }} --sdk=/cheriot-tools/ ${{ matrix.build-flags }}
xmake
done
- name: Run examples
run: |
set -e
for example_dir in $PWD/examples/*/; do
cd $example_dir
echo Running $example_dir
xmake run
done
- name: Build benchmarks
run: |
set -e
for example_dir in $PWD/benchmarks/*/; do
cd $example_dir
echo Building $example_dir
xmake f --board=${{ matrix.board }} --sdk=/cheriot-tools/ ${{ matrix.build-flags }}
xmake
done
check-format:
name: Check coding conventions
runs-on: ubuntu-latest
container:
image: ghcr.io/cheriot-platform/devcontainer:latest
options: --user 1001
steps:
- name: Checkout repository and submodules
uses: actions/checkout@v4
with:
submodules: recursive
- name: Generate compiler_commands.json files
run: ./scripts/generate_compile_commands.sh
- name: Run clang-format and clang-tidy
run: ./scripts/run_clang_tidy_format.sh /cheriot-tools/bin
all-checks:
needs: [run-tests, check-format]
runs-on: ubuntu-latest
steps:
- name: Dummy step
run: true