Skip to content

Add a bunch of helpful pakfs macros #53

Add a bunch of helpful pakfs macros

Add a bunch of helpful pakfs macros #53

Workflow file for this run

name: Build ESP32 Examples
# Build only when the shared code, the esp32 backend, or the ESP32 examples change
on:
pull_request:
branches: [main]
paths:
- "src/*.c"
- "src/host/**"
- "src/target/**"
- "src/backend/esp32/**"
- "include/joybus/**"
- "CMakeLists.txt"
- "cmake/sources.cmake"
- "Kconfig"
- "idf_component.yml"
- "examples/esp32/**"
- ".github/workflows/esp32_examples.yml"
workflow_dispatch:
jobs:
build-esp32-examples:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
idf: [release-v6.0]
example: [gcn-host, gcn-target, n64-host, n64-target]
target: [esp32c3, esp32s3, esp32c6, esp32h2]
include:
# USB HID needs native USB-OTG, so these examples are ESP32-S3 only
- idf: release-v6.0
example: gcn-adapter-usb-hid
target: esp32s3
- idf: release-v6.0
example: n64-adapter-usb-hid
target: esp32s3
# Also exercise the ESP-IDF v5 compatibility path
- idf: release-v5.5
example: n64-host
target: esp32c3
steps:
- name: Checkout repository
uses: actions/checkout@v6
# The esp-idf-ci-action builds inside the pinned espressif/idf Docker
# image, so it carries its own toolchain and needs no SDK cache. It sets
# the target and runs idf.py build in the example directory.
- name: Build project
uses: espressif/esp-idf-ci-action@v1
with:
esp_idf_version: ${{ matrix.idf }}
target: ${{ matrix.target }}
path: examples/esp32/${{ matrix.example }}