Browse Source

github/workflows: Add qemu-riscv port to CI.

Signed-off-by: Alessandro Gatti <a.gatti@frob.it>
pull/12853/head
Alessandro Gatti 5 months ago
committed by Damien George
parent
commit
1b10cb843c
  1. 33
      .github/workflows/ports_qemu-riscv.yml
  2. 24
      tools/ci.sh

33
.github/workflows/ports_qemu-riscv.yml

@ -0,0 +1,33 @@
name: qemu-riscv port
on:
push:
pull_request:
paths:
- '.github/workflows/*.yml'
- 'tools/**'
- 'py/**'
- 'extmod/**'
- 'shared/**'
- 'lib/**'
- 'drivers/**'
- 'ports/qemu-arm/main.c'
- 'ports/qemu-riscv/**'
- 'tests/**'
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
build_and_test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install packages
run: source tools/ci.sh && ci_qemu_riscv_setup
- name: Build and run test suite
run: source tools/ci.sh && ci_qemu_riscv_build
- name: Print failures
if: failure()
run: grep --before-context=100 --text "FAIL" ports/qemu-riscv/build/console.out

24
tools/ci.sh

@ -17,6 +17,11 @@ function ci_gcc_arm_setup {
arm-none-eabi-gcc --version
}
function ci_gcc_riscv_setup {
sudo apt-get install gcc-riscv64-unknown-elf picolibc-riscv64-unknown-elf
riscv64-unknown-elf-gcc --version
}
########################################################################################
# c code formatting
@ -259,6 +264,25 @@ function ci_qemu_arm_build {
make ${MAKEOPTS} -C ports/qemu-arm -f Makefile.test BOARD=sabrelite test
}
########################################################################################
# ports/qemu-riscv
function ci_qemu_riscv_setup {
ci_gcc_riscv_setup
sudo apt-get update
sudo apt-get install qemu-system
qemu-system-riscv32 --version
}
function ci_qemu_riscv_build {
make ${MAKEOPTS} -C mpy-cross
make ${MAKEOPTS} -C ports/qemu-riscv submodules
make ${MAKEOPTS} -C ports/qemu-riscv
make ${MAKEOPTS} -C ports/qemu-riscv clean
make ${MAKEOPTS} -C ports/qemu-riscv -f Makefile.test submodules
make ${MAKEOPTS} -C ports/qemu-riscv -f Makefile.test test
}
########################################################################################
# ports/renesas-ra

Loading…
Cancel
Save