Skip to content

IAR-CMSIS-DSP CI

IAR-CMSIS-DSP CI #167

Workflow file for this run

name: IAR-CMSIS-DSP CI
on:
schedule:
- cron: '45 4 * * *'
workflow_dispatch:
push:
paths-ignore:
- 'README.md'
# Set a new GitHub Actions Secret named IAR_LMS_BEARER_TOKEN
# for your repository. The secret is then propagated to an
# Environment variable used for all jobs within this workflow
env:
IAR_LMS_BEARER_TOKEN: ${{ secrets.IAR_LMS_BEARER_TOKEN }}
jobs:
build:
runs-on: ubuntu-latest
timeout-minutes: 30
strategy:
fail-fast: false
matrix:
tag:
- 9.70.4
- 9.70.2
- 9.70.1
- 9.60.4
arch:
- cortexM0l
- cortexM0b
- cortexM3l
- cortexM3b
- cortexM4l
- cortexM4b
- cortexM4lf
- cortexM4bf
- cortexM7l
- cortexM7ls
- cortexM7lf
- cortexM7b
- cortexM7bs
- cortexM7bf
- ARMv8MBLl
- ARMv8MMLl
- ARMv8MMLld
- ARMv8MMLlfsp
- ARMv8MMLlfdp
- ARMv8MMLldfsp
- ARMv8MMLldfdp
- ARMv81MMLld
- ARMv81MMLldfdp
- ARMv81MMLldfdph
container:
image: ghcr.io/iarsystems/arm:${{ matrix.tag }}-base
steps:
- uses: actions/checkout@v5
with:
submodules: 'true'
- name: Set environment
run: |
echo "IAR_CMSIS_DSP=${{ github.workspace }}" >> $GITHUB_ENV
- name: Build libraries
run: |
iarbuild Library/arm_cortexM_math.ewp \
-build ${{ matrix.arch }} \
-log info \
-parallel `nproc`
run:
runs-on: ubuntu-latest
timeout-minutes: 30
strategy:
fail-fast: false
matrix:
tag:
- 9.70.4
- 9.70.2
- 9.70.1
- 9.60.4
arch:
- cortexM4lf
example:
- arm_bayes_example
- arm_convolution_example
- arm_dotproduct_example
- arm_fft_bin_example
- arm_fir_example
- arm_graphic_equalizer_example
- arm_linear_interp_example
- arm_matrix_example
- arm_signal_converge_example
- arm_sin_cos_example
- arm_svm_example
- arm_variance_example
container:
image: ghcr.io/iarsystems/arm:${{ matrix.tag }}-base
steps:
- uses: actions/checkout@v5
with:
submodules: 'true'
- name: Set environment
run: |
echo "IAR_CMSIS_DSP=${{ github.workspace }}" >> $GITHUB_ENV
- name: Build libraries
run: |
iarbuild Library/arm_cortexM_math.ewp \
-build ${{ matrix.arch }} \
-log info \
-parallel `nproc`
- name: Build example ${{ matrix.example }}
run: |
iarbuild Examples/${{ matrix.example }}.ewp \
-build ${{ matrix.arch }} \
-log info \
-parallel `nproc`
- name: Run example ${{ matrix.example }}
run: |
CSpyBat \
$(find /opt/iar/cxarm/ -iname "libarmproc.so") \
$(find /opt/iar/cxarm/ -iname "libarmsim2.so") \
--plugin=$(find /opt/iar/cxarm/ -iname "libarmlibsupportuniversal.so") \
--debug_file=$(find Examples -iname "${{ matrix.example }}.out") \
--timeout=5000000 \
--backend \
--cpu=cortex-m4 \
--fpu=vfpv4_sp \
--endian=little \
--semihosting