Update work_with_examples.md (#81) #136
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: Build - USB | |
on: | |
workflow_dispatch: | |
pull_request: | |
paths: | |
- '.ci/USB/**' | |
- .github/workflows/build_usb.yml | |
- 'Examples/USB/**' | |
- 'Components/USB/**' | |
push: | |
branches: [main] | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: true | |
env: | |
TARGET_TYPE: CM4 | |
TARGET_DEVICE: ARMCM4 | |
TARGET_LAYER: $SolutionDir()$/../../../.ci/Board/Board.clayer.yml | |
jobs: | |
Build: | |
strategy: | |
fail-fast: false | |
matrix: | |
compiler: [AC6, GCC] | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout MDK-Middleware | |
uses: actions/checkout@v4 | |
with: | |
path: ./MDK-Middleware | |
- name: Setup board layer | |
working-directory: ./MDK-Middleware | |
run: | | |
sed -i "s|target-types:|&\n - type: $TARGET_TYPE\n device: $TARGET_DEVICE\n variables:\n - Board-Layer: $TARGET_LAYER|" ./Examples/USB/Device/USB_Device.csolution.yml | |
sed -i "s|target-types:|&\n - type: $TARGET_TYPE\n device: $TARGET_DEVICE\n variables:\n - Board-Layer: $TARGET_LAYER|" ./Examples/USB/Host/USB_Host.csolution.yml | |
- name: Cache packs | |
uses: actions/cache@v4 | |
with: | |
key: cmsis-packs-${{ hashFiles('**/*.csolution.yml', '**/*.cproject.yml', '**/*.clayer.yml') }} | |
restore-keys: | | |
cmsis-packs- | |
path: /home/runner/.cache/arm/packs | |
- name: Prepare vcpkg env | |
uses: ARM-software/cmsis-actions/vcpkg@main | |
with: | |
config: ./MDK-Middleware/.ci/vcpkg-configuration.json | |
- name: Initialize CMSIS pack root folder | |
run: | | |
cpackget init https://www.keil.com/pack/index.pidx | |
cpackget update-index | |
- name: Use local MDK-Middleware pack | |
working-directory: ./MDK-Middleware/ | |
run: | | |
cpackget rm Keil.MDK-Middleware || true | |
cpackget add ./Keil.MDK-Middleware.pdsc | |
- name: Activate Arm tool license | |
run: | | |
armlm activate --server https://mdk-preview.keil.arm.com --product KEMDK-COM0 | |
- uses: ammaraskar/gcc-problem-matcher@master | |
- name: Build USB Device sources | |
working-directory: ./MDK-Middleware | |
run: | | |
cbuild ./.ci/Library.csolution.yml --packs --update-rte --context USB_Device --toolchain ${{ matrix.compiler }} | |
- name: Build USB Device examples | |
working-directory: ./MDK-Middleware/ | |
if: always() | |
run: | | |
cbuild ./Examples/USB/Device/USB_Device.csolution.yml --packs --update-rte --toolchain ${{ matrix.compiler }} | |
- name: Build USB Host sources | |
working-directory: ./MDK-Middleware | |
if: always() | |
run: | | |
cbuild ./.ci/Library.csolution.yml --packs --update-rte --context USB_Host --toolchain ${{ matrix.compiler }} | |
- name: Build USB Host examples | |
working-directory: ./MDK-Middleware/ | |
if: always() | |
run: | | |
cbuild ./Examples/USB/Host/USB_Host.csolution.yml --packs --update-rte --toolchain ${{ matrix.compiler }} | |
- name: Deactivate Arm tool license | |
if: always() | |
run: | | |
armlm deactivate --product KEMDK-COM0 |