mirror of
https://github.com/m5stack/M5GFX.git
synced 2026-05-20 10:32:05 -07:00
a36a3d15cd
Use correct board IDs from boards.txt (m5stack_core, m5stack_cores3) instead of display names from package index (M5Core, M5CoreS3). Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
103 lines
3.8 KiB
YAML
103 lines
3.8 KiB
YAML
name: Arduino Build
|
|
|
|
on:
|
|
push:
|
|
paths:
|
|
- '**.ino'
|
|
- '**.cpp'
|
|
- '**.hpp'
|
|
- '**.h'
|
|
- '**.c'
|
|
- '.github/workflows/ArduinoBuild.yml'
|
|
pull_request:
|
|
workflow_dispatch:
|
|
|
|
jobs:
|
|
build:
|
|
name: ${{ matrix.board }} (${{ matrix.esp32_version }})
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
include:
|
|
# ===================
|
|
# Espressif Board Manager
|
|
# ===================
|
|
# ESP32
|
|
- board: esp32:esp32:esp32
|
|
esp32_version: 2.0.17
|
|
board_manager_url: https://espressif.github.io/arduino-esp32/package_esp32_index.json
|
|
- board: esp32:esp32:esp32
|
|
esp32_version: 3.1.1
|
|
board_manager_url: https://espressif.github.io/arduino-esp32/package_esp32_index.json
|
|
# ESP32-S3
|
|
- board: esp32:esp32:esp32s3
|
|
esp32_version: 2.0.17
|
|
board_manager_url: https://espressif.github.io/arduino-esp32/package_esp32_index.json
|
|
- board: esp32:esp32:esp32s3
|
|
esp32_version: 3.1.1
|
|
board_manager_url: https://espressif.github.io/arduino-esp32/package_esp32_index.json
|
|
# ESP32-C3
|
|
- board: esp32:esp32:esp32c3
|
|
esp32_version: 2.0.17
|
|
board_manager_url: https://espressif.github.io/arduino-esp32/package_esp32_index.json
|
|
- board: esp32:esp32:esp32c3
|
|
esp32_version: 3.1.1
|
|
board_manager_url: https://espressif.github.io/arduino-esp32/package_esp32_index.json
|
|
# ESP32-C6 (v3 only)
|
|
- board: esp32:esp32:esp32c6
|
|
esp32_version: 3.1.1
|
|
board_manager_url: https://espressif.github.io/arduino-esp32/package_esp32_index.json
|
|
# ESP32-P4 (v3 only)
|
|
- board: esp32:esp32:esp32p4
|
|
esp32_version: 3.1.1
|
|
board_manager_url: https://espressif.github.io/arduino-esp32/package_esp32_index.json
|
|
# ESP32-H2 (v3 only)
|
|
- board: esp32:esp32:esp32h2
|
|
esp32_version: 3.1.1
|
|
board_manager_url: https://espressif.github.io/arduino-esp32/package_esp32_index.json
|
|
# ===================
|
|
# M5Stack Board Manager
|
|
# ===================
|
|
# M5Core (ESP32)
|
|
- board: m5stack:esp32:m5stack_core
|
|
esp32_version: 2.1.4
|
|
board_manager_url: https://static-cdn.m5stack.com/resource/arduino/package_m5stack_index.json
|
|
- board: m5stack:esp32:m5stack_core
|
|
esp32_version: 3.2.5
|
|
board_manager_url: https://static-cdn.m5stack.com/resource/arduino/package_m5stack_index.json
|
|
# M5CoreS3 (ESP32-S3, v3 only)
|
|
- board: m5stack:esp32:m5stack_cores3
|
|
esp32_version: 3.2.5
|
|
board_manager_url: https://static-cdn.m5stack.com/resource/arduino/package_m5stack_index.json
|
|
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Install arduino-cli
|
|
run: |
|
|
curl -fsSL https://raw.githubusercontent.com/arduino/arduino-cli/master/install.sh | sh -s 1.1.1
|
|
echo "$PWD/bin" >> $GITHUB_PATH
|
|
|
|
- name: Configure arduino-cli
|
|
run: |
|
|
arduino-cli config init
|
|
arduino-cli config add board_manager.additional_urls ${{ matrix.board_manager_url }}
|
|
|
|
- name: Install board package
|
|
run: |
|
|
arduino-cli core update-index
|
|
# Extract core (package:architecture) from FQBN (package:architecture:board)
|
|
CORE=$(echo "${{ matrix.board }}" | cut -d: -f1,2)
|
|
arduino-cli core install "${CORE}@${{ matrix.esp32_version }}"
|
|
|
|
- name: Install library
|
|
run: |
|
|
mkdir -p "$HOME/Arduino/libraries"
|
|
ln -s "$GITHUB_WORKSPACE" "$HOME/Arduino/libraries/M5GFX"
|
|
|
|
- name: Build
|
|
run: |
|
|
arduino-cli compile --fqbn ${{ matrix.board }} examples/Test/build_test/build_test.ino
|