Skip to content

Merge pull request #1062 from pennam/formatter-2 #1334

Merge pull request #1062 from pennam/formatter-2

Merge pull request #1062 from pennam/formatter-2 #1334

name: Compile Examples
on:
pull_request:
paths:
- ".github/workflows/compile-examples.yml"
- "cores/**"
- "libraries/**"
- "variants/**"
- "boards.txt"
- "platform.txt"
push:
paths:
- ".github/workflows/compile-examples.yml"
- "cores/**"
- "libraries/**"
- "variants/**"
- "boards.txt"
- "platform.txt"
jobs:
compile-examples:
runs-on: ubuntu-latest
env:
# sketch paths to compile (recursive) compatible with all boards
UNIVERSAL_SKETCH_PATHS: |
- libraries/Scheduler
SKETCHES_REPORTS_PATH: sketches-reports
strategy:
fail-fast: false
matrix:
board:
- fqbn: arduino:mbed:nano33ble
id: nano33ble
- fqbn: arduino:mbed:envie_m7
id: envie_m7
- fqbn: arduino:mbed:envie_m7:target_core=cm4
id: envie_m7_core_cm4
- fqbn: arduino:mbed:nanorp2040connect
id: nanorp2040connect
- fqbn: arduino:mbed:nicla_sense
id: nicla_sense
- fqbn: arduino:mbed:nicla_vision
id: nicla_vision
- fqbn: arduino:mbed:opta
id: opta
- fqbn: arduino:mbed:giga
id: giga
- fqbn: arduino:mbed:nicla_voice
id: nicla_voice
- fqbn: arduino:mbed:edge_control
id: edge_control
# compile only the examples compatible with each board
include:
- board:
fqbn: arduino:mbed:nano33ble
additional-libraries: |
- name: ArduinoBLE
additional-sketch-paths: |
- libraries/PDM
- libraries/ThreadDebug
- libraries/USBHID
- libraries/USBMSD/examples/Nano33BLE_FlashMassStorage
- ~/Arduino/libraries/ArduinoBLE
- board:
fqbn: arduino:mbed:envie_m7:target_core=cm4
additional-sketch-paths: |
- libraries/KernelDebug
- libraries/Portenta_SDCARD
- libraries/Portenta_SDRAM
- libraries/RPC
- board:
fqbn: arduino:mbed:envie_m7
additional-libraries: |
- name: lvgl
version: 8.3.5
- name: MicroNMEA
- name: ArduinoBLE
- name: ArduinoGraphics
- name: Arduino_GigaDisplayTouch
- name: emWin
- name: Arduino_DebugUtils
additional-sketch-paths: |
- libraries/PDM
- libraries/doom
- libraries/KernelDebug
- libraries/MCUboot
- libraries/Camera/examples/CameraCaptureRawBytes
- libraries/Camera/examples/CameraMotionDetect
- libraries/Portenta_SDCARD
- libraries/Portenta_SDRAM
- libraries/STM32H747_System
- libraries/Arduino_H7_Video
- libraries/RPC
- libraries/ThreadDebug
- libraries/USBHID
- libraries/USBHOST
- libraries/USBMSD/examples/AccessFlashAsUSBDisk
- libraries/WiFi
- libraries/GSM
- ~/Arduino/libraries/ArduinoBLE
- board:
fqbn: arduino:mbed:nanorp2040connect
additional-libraries: |
- name: ArduinoBLE
- name: STM32duino LSM6DSOX
additional-sketch-paths: |
- libraries/MLC/examples/RP2040_DataLogger_FIFO
- libraries/PDM
- libraries/USBHID
- ~/Arduino/libraries/WiFiNINA
- ~/Arduino/libraries/ArduinoBLE
- board:
fqbn: arduino:mbed:nicla_sense
additional-sketch-paths: |
- libraries/Nicla_System
- ~/Arduino/libraries/Arduino_BHY2
additional-libraries: |
- name: Arduino_BHY2
- name: ArduinoBLE
- name: PacketSerial
- board:
fqbn: arduino:mbed:nicla_vision
additional-sketch-paths: |
- libraries/PDM
- libraries/Camera/examples/CameraCaptureRawBytes
- libraries/Camera/examples/CameraCaptureZoomPan
- libraries/SE05X
- libraries/STM32H747_System
- libraries/ThreadDebug
- libraries/USBHID
- libraries/USBHOST
- libraries/USBMSD/examples/AccessFlashAsUSBDisk
- libraries/WiFi
- board:
fqbn: arduino:mbed:opta
additional-sketch-paths: |
- libraries/Ethernet
- libraries/STM32H747_System
- libraries/ThreadDebug
- libraries/USBHID
- libraries/USBMSD/examples/AccessFlashAsUSBDisk
- libraries/WiFi
- board:
fqbn: arduino:mbed:giga
additional-libraries: |
- name: lvgl
version: 8.3.5
- name: MicroNMEA
- name: ArduinoBLE
- name: ArduinoGraphics
- name: Arduino_GigaDisplayTouch
- name: arducam_dvp
- name: emWin
additional-sketch-paths: |
- libraries/PDM
- libraries/MCUboot
- libraries/Camera/examples/CameraCaptureRawBytes
- libraries/Camera/examples/CameraMotionDetect
- libraries/Camera/examples/GigaCameraDisplay
- libraries/Portenta_SDCARD
- libraries/Portenta_SDRAM
- libraries/Arduino_H7_Video
- libraries/RPC
- libraries/ThreadDebug
- libraries/USBHID
- libraries/USBHOST
- libraries/USBMSD/examples/AccessFlashAsUSBDisk
- libraries/WiFi
- ~/Arduino/libraries/ArduinoBLE
- board:
fqbn: arduino:mbed:nicla_voice
additional-sketch-paths: |
- libraries/Nicla_System
- libraries/NDP
additional-libraries: |
- name: Arduino_BHY2
- name: ArduinoBLE
- name: arduino-audio-tools
source-url: https://github.com/pschatzmann/arduino-audio-tools.git
version: v0.9.6
- name: arduino-libg722
source-url: https://github.com/pschatzmann/arduino-libg722.git
- board:
fqbn: arduino:mbed:edge_control
additional-libraries: |
- name: MicroNMEA
- name: Arduino_DebugUtils
additional-sketch-paths: |
- libraries/GSM
- libraries/USBHID
- libraries/USBMSD/examples/Nano33BLE_FlashMassStorage
- libraries/ThreadDebug
steps:
- name: Checkout repository
uses: actions/checkout@v4
# The source files are in a subfolder of the ArduinoCore-API repository, so it's not possible to clone it directly to the final destination in the core
- name: Checkout ArduinoCore-API
uses: actions/checkout@v4
with:
repository: arduino/ArduinoCore-API
path: ArduinoCore-API
- name: Install ArduinoCore-API
run: mv "$GITHUB_WORKSPACE/ArduinoCore-API/api" "$GITHUB_WORKSPACE/cores/arduino"
- name: Compile examples
uses: arduino/compile-sketches@v1
with:
cli-compile-flags: |
# Use build path containing spaces to check for path quoting problems in compilation patterns
- --build-path
- ${{ runner.temp }}/path with spaces
github-token: ${{ secrets.GITHUB_TOKEN }}
fqbn: ${{ matrix.board.fqbn }}
libraries: |
- name: WiFiNINA
${{ matrix.additional-libraries }}
platforms: |
# Use Board Manager to install the latest release of Arduino mbed Boards to get the toolchain
- name: "arduino:mbed"
# Overwrite the Board Manager installation with the local platform
- source-path: "./"
name: "arduino:mbed"
sketch-paths: |
${{ env.UNIVERSAL_SKETCH_PATHS }}
${{ matrix.additional-sketch-paths }}
verbose: 'false'
enable-deltas-report: true
sketches-report-path: ${{ env.SKETCHES_REPORTS_PATH }}
- name: Save memory usage change report as artifact
if: github.event_name == 'pull_request'
uses: actions/upload-artifact@v4
with:
path: ${{ env.SKETCHES_REPORTS_PATH }}
name: ${{ env.SKETCHES_REPORTS_PATH }}-${{ matrix.board.id }}
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy