diff --git a/.github/workflows/Build.yml b/.github/workflows/Build.yml new file mode 100644 index 0000000..8bf406f --- /dev/null +++ b/.github/workflows/Build.yml @@ -0,0 +1,62 @@ +name: Build example + +on: + workflow_dispatch: + pull_request: + push: + branches: [main] + +permissions: + contents: read + +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + +jobs: + build: + name: ${{ matrix.solution }} (${{ matrix.toolchain }}) + + runs-on: ubuntu-latest + + strategy: + fail-fast: false + matrix: + include: + - { solution: Test-Ethos-U55, toolchain: AC6 } + - { solution: Test-Ethos-U55, toolchain: GCC } + - { solution: Test-Ethos-U85, toolchain: AC6 } + - { solution: Test-Ethos-U85, toolchain: GCC } + + steps: + - name: Checkout this repository + uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 + + - name: Checkout Ethos-U pack repository + uses: actions/checkout@v7 + with: + repository: VladimirUmek/Ethos-U + path: CMSIS-Ethos-U + + - name: Install vcpkg + uses: ARM-software/cmsis-actions/setup-vcpkg@8a50b77681a484568e08f31fb7c2285c4735f682 # v1.3 + + - name: Install tools + uses: ARM-software/cmsis-actions/vcpkg@8a50b77681a484568e08f31fb7c2285c4735f682 # v1.3 + with: + config: "./vcpkg-configuration.json" + cache: "Tools" + + - name: Activate Arm tool license + uses: ARM-software/cmsis-actions/armlm@8a50b77681a484568e08f31fb7c2285c4735f682 # v1.3 + + - name: Initialize CMSIS pack root folder + run: | + cpackget init https://www.keil.com/pack/index.pidx + cpackget update-index + + - name: Register local pack + run: cpackget add ./CMSIS-Ethos-U/ARM.CMSIS-Ethos-U.pdsc + + - name: Build ${{ matrix.solution }} + run: cbuild "${{ matrix.solution }}.csolution.yml" --packs --toolchain "${{ matrix.toolchain }}" diff --git a/README.md b/README.md index e04e6f3..f79c1d8 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,5 @@ [![License](https://img.shields.io/github/license/Arm-Examples/CMSIS-Ethos-Integration?label=License)](./LICENSE) +[![Build](https://img.shields.io/github/actions/workflow/status/Arm-Examples/CMSIS-Ethos-Integration/Build.yml?logo=arm&logoColor=0091bd&label=Build%20example)](https://github.com/Arm-Examples/CMSIS-Ethos-Integration/tree/main/.github/workflows/Build.yml) # CMSIS-Ethos-Integration