1
0
Fork 0
mirror of https://github.com/betaflight/betaflight.git synced 2025-07-13 11:29:58 +03:00

PICO: Adding PICO tooling to CI (#14503)

* PICO: Adding PICO tooling to CI

* Removing description

* Removing requirement for configs when installing pico_sdk

* Remove requirement for ARM when populating sdks

* Removing exclusion for RP2350 targets

* Adding recursive sub-modules checkout

* Allow for different outputs to only .hex

* Attempt to get SITL bin build to upload as an artifact
This commit is contained in:
Jay Blackman 2025-07-08 09:15:02 +10:00 committed by GitHub
parent 4985d315d5
commit babfff336d
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
5 changed files with 18 additions and 4 deletions

View file

@ -19,7 +19,10 @@ jobs:
outputs: outputs:
targets: ${{ steps.get-targets.outputs.targets }} targets: ${{ steps.get-targets.outputs.targets }}
steps: steps:
- uses: actions/checkout@v4 - name: Checkout code
uses: actions/checkout@v4
with:
submodules: recursive
- name: Cache build toolchain - name: Cache build toolchain
uses: actions/cache@v4 uses: actions/cache@v4
@ -32,6 +35,10 @@ jobs:
if: steps.cache-toolchain.outputs.cache-hit != 'true' if: steps.cache-toolchain.outputs.cache-hit != 'true'
run: make arm_sdk_install run: make arm_sdk_install
- name: Build pico tool and install
if: steps.cache-toolchain.outputs.cache-hit != 'true'
run: make picotool_install
- name: Hydrate configuration - name: Hydrate configuration
id: get-config id: get-config
run: make configs run: make configs
@ -50,6 +57,8 @@ jobs:
steps: steps:
- name: Checkout code - name: Checkout code
uses: actions/checkout@v4 uses: actions/checkout@v4
with:
submodules: recursive
- name: Fetch toolchain from cache - name: Fetch toolchain from cache
uses: actions/cache@v4 uses: actions/cache@v4
@ -74,7 +83,10 @@ jobs:
uses: actions/upload-artifact@v4 uses: actions/upload-artifact@v4
with: with:
name: ${{ matrix.target }} name: ${{ matrix.target }}
path: obj/*.hex path: |
obj/*.hex
obj/*.uf2
obj/*_${{ matrix.target }}*
retention-days: 60 retention-days: 60
test: test:

View file

@ -4,7 +4,7 @@ CONFIGS_REPO_URL ?= https://github.com/betaflight/config
CONFIGS_SUBMODULE_DIR = src/config CONFIGS_SUBMODULE_DIR = src/config
BASE_CONFIGS = $(sort $(notdir $(patsubst %/,%,$(dir $(wildcard $(CONFIG_DIR)/configs/*/config.h))))) BASE_CONFIGS = $(sort $(notdir $(patsubst %/,%,$(dir $(wildcard $(CONFIG_DIR)/configs/*/config.h)))))
ifneq ($(filter-out %_install test% %_clean clean% %-print %.hex %.h hex checks help configs $(BASE_TARGETS) $(BASE_CONFIGS),$(MAKECMDGOALS)),) ifneq ($(filter-out %_sdk %_install test% %_clean clean% %-print %.hex %.h hex checks help configs $(BASE_TARGETS) $(BASE_CONFIGS),$(MAKECMDGOALS)),)
ifeq ($(wildcard $(CONFIG_DIR)/configs/),) ifeq ($(wildcard $(CONFIG_DIR)/configs/),)
$(error `$(CONFIG_DIR)` not found. Have you hydrated configuration using: 'make configs'?) $(error `$(CONFIG_DIR)` not found. Have you hydrated configuration using: 'make configs'?)
endif endif

View file

@ -8,6 +8,8 @@
# #
# Release date: July 04, 2024 # Release date: July 04, 2024
# #
# PICO SDK Version: 2.X - July 03, 2025
#
############################################################### ###############################################################
############################## ##############################
@ -275,7 +277,7 @@ zip_clean:
ifeq ($(shell [ -d "$(ARM_SDK_DIR)" ] && echo "exists"), exists) ifeq ($(shell [ -d "$(ARM_SDK_DIR)" ] && echo "exists"), exists)
ARM_SDK_PREFIX := $(ARM_SDK_DIR)/bin/arm-none-eabi- ARM_SDK_PREFIX := $(ARM_SDK_DIR)/bin/arm-none-eabi-
else ifeq (,$(filter %_install test% clean% %-print checks help configs, $(MAKECMDGOALS))) else ifeq (,$(filter %_sdk %_install test% clean% %-print checks help configs, $(MAKECMDGOALS)))
GCC_VERSION = $(shell arm-none-eabi-gcc -dumpversion) GCC_VERSION = $(shell arm-none-eabi-gcc -dumpversion)
ifeq ($(GCC_VERSION),) ifeq ($(GCC_VERSION),)
$(error **ERROR** arm-none-eabi-gcc not in the PATH. Run 'make arm_sdk_install' to install automatically in the tools folder of this repo) $(error **ERROR** arm-none-eabi-gcc not in the PATH. Run 'make arm_sdk_install' to install automatically in the tools folder of this repo)