summaryrefslogtreecommitdiff
path: root/.github/workflows
diff options
context:
space:
mode:
Diffstat (limited to '.github/workflows')
-rw-r--r--.github/workflows/build_iar.yml59
1 files changed, 59 insertions, 0 deletions
diff --git a/.github/workflows/build_iar.yml b/.github/workflows/build_iar.yml
new file mode 100644
index 000000000..9c1bfa18a
--- /dev/null
+++ b/.github/workflows/build_iar.yml
@@ -0,0 +1,59 @@
+name: Build IAR
+
+on:
+ push:
+ paths:
+ - 'src/**'
+ - 'examples/**'
+ - 'lib/**'
+ - 'hw/**'
+ pull_request:
+ branches: [ master ]
+ paths:
+ - 'src/**'
+ - 'examples/**'
+ - 'lib/**'
+ - 'hw/**'
+
+concurrency:
+ group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
+ cancel-in-progress: true
+
+jobs:
+ build-arm:
+ runs-on: [self-hosted, Linux, X64, hifiphile]
+ strategy:
+ fail-fast: false
+ matrix:
+ family:
+ # Alphabetical order
+ - 'stm32f0'
+ - 'stm32f1'
+ - 'stm32f4'
+ - 'stm32f7'
+ - 'stm32g4'
+ - 'stm32h7'
+ - 'stm32l4'
+ steps:
+ - name: Clean workspace
+ run: |
+ echo "Cleaning up previous run"
+ rm -rf "${{ github.workspace }}"
+ mkdir -p "${{ github.workspace }}"
+
+ - name: Checkout TinyUSB
+ uses: actions/checkout@v3
+
+ - name: Checkout submodules and dependencies
+ run: |
+ git submodule update --init lib/FreeRTOS-Kernel lib/lwip lib/sct_neopixel
+ python3 tools/get_dependencies.py ${{ matrix.family }}
+
+ - name: Checkout pico-sdk for rp2040
+ if: matrix.family == 'rp2040'
+ run: |
+ git clone --depth 1 -b develop https://github.com/raspberrypi/pico-sdk ~/pico-sdk
+ echo >> $GITHUB_ENV PICO_SDK_PATH=~/pico-sdk
+
+ - name: Build
+ run: python3 tools/build_family.py ${{ matrix.family }} CC=iccarm