mirror of
https://github.com/hathach/tinyusb.git
synced 2025-01-17 05:32:55 +08:00
3e2ea77506
* change concurrency group to ${{ github.workflow }}-${{ github.ref }} * use argparse for build.py hil_test.py, remove the need to install click * move ci win/mac to build_cmake.yml * rename build_family.yml to build_util.yml * build_util.yml support esp32 * integrate build-espressif into build.yml * build.py support make with --board option * add get_deps action * update hil test to reuse action
60 lines
1.5 KiB
YAML
60 lines
1.5 KiB
YAML
name: Reusable build util
|
|
|
|
on:
|
|
workflow_call:
|
|
inputs:
|
|
build-system:
|
|
required: true
|
|
type: string
|
|
toolchain:
|
|
required: true
|
|
type: string
|
|
toolchain_url:
|
|
required: false
|
|
type: string
|
|
build-args:
|
|
required: true
|
|
type: string
|
|
os:
|
|
required: false
|
|
type: string
|
|
default: 'ubuntu-latest'
|
|
|
|
jobs:
|
|
family:
|
|
runs-on: ${{ inputs.os }}
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
arg: ${{ fromJSON(inputs.build-args) }}
|
|
steps:
|
|
- name: Checkout TinyUSB
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Setup Python
|
|
uses: actions/setup-python@v5
|
|
with:
|
|
python-version: '3.x'
|
|
|
|
- name: Setup Toolchain
|
|
id: setup-toolchain
|
|
uses: ./.github/actions/setup_toolchain
|
|
with:
|
|
toolchain: ${{ inputs.toolchain }}
|
|
toolchain_url: ${{ inputs.toolchain_url }}
|
|
|
|
- name: Get Dependencies
|
|
uses: ./.github/actions/get_deps
|
|
with:
|
|
arg: ${{ matrix.arg }}
|
|
|
|
- name: Build
|
|
if: inputs.toolchain != 'esp-idf'
|
|
run: |
|
|
python tools/build.py -s ${{ inputs.build-system }} ${{ steps.setup-toolchain.outputs.build_option }} ${{ matrix.arg }}
|
|
|
|
- name: Build using ESP-IDF docker
|
|
if: inputs.toolchain == 'esp-idf'
|
|
run: |
|
|
docker run --rm -v $PWD:/project -w /project espressif/idf:${{ inputs.toolchain_url }} python3 tools/build.py ${{ matrix.arg }}
|