mirror of https://github.com/wolfSSL/wolfBoot.git
69 lines
1.6 KiB
YAML
69 lines
1.6 KiB
YAML
name: Wolfboot Reusable Build Workflow for Raspberry Pi Pico2 (rp2350)
|
|
|
|
on:
|
|
|
|
workflow_call:
|
|
inputs:
|
|
arch:
|
|
required: true
|
|
type: string
|
|
config-file:
|
|
required: true
|
|
type: string
|
|
make-args:
|
|
required: false
|
|
type: string
|
|
target:
|
|
required: true
|
|
type: string
|
|
|
|
jobs:
|
|
|
|
build:
|
|
runs-on: ubuntu-latest
|
|
container:
|
|
image: ghcr.io/wolfssl/wolfboot-ci-arm:v1.0
|
|
timeout-minutes: 30
|
|
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
with:
|
|
submodules: true
|
|
|
|
- uses: actions/checkout@main
|
|
with:
|
|
repository: raspberrypi/pico-sdk
|
|
path: pico-sdk
|
|
|
|
- name: Trust workspace
|
|
run: git config --global --add safe.directory "$GITHUB_WORKSPACE"
|
|
|
|
- name: pico-sdk submodules initialization
|
|
run: |
|
|
cd pico-sdk
|
|
git config --global --add safe.directory "$GITHUB_WORKSPACE/pico-sdk"
|
|
git submodule update --init --recursive
|
|
|
|
- name: make distclean
|
|
run: |
|
|
make distclean
|
|
|
|
- name: Select config
|
|
run: |
|
|
cp ${{inputs.config-file}} .config && make include/target.h
|
|
|
|
- name: Build tools
|
|
run: |
|
|
make -C tools/keytools && make -C tools/bin-assemble
|
|
|
|
- name: pre-build wolfboot
|
|
run: |
|
|
make
|
|
- name: build wolfboot with pico-sdk
|
|
run: |
|
|
cd IDE/pico-sdk/${{inputs.target}}/wolfboot
|
|
mkdir build
|
|
cd build
|
|
cmake ../ -DPICO_SDK_PATH="$GITHUB_WORKSPACE/pico-sdk" -DPICO_PLATFORM=${{inputs.target}}
|
|
make
|