summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDamien George <damien@micropython.org>2025-04-05 22:53:25 +1100
committerDamien George <damien@micropython.org>2025-04-07 13:53:38 +1000
commite34412f0f49032fcd3a08317c8f2e01c7bdae24f (patch)
tree7a94e2c63a9a385f9c5a75154aba87b57756ec76
parent3805e65ed3b7306329bf0305d5b46f08d7619a11 (diff)
tools/ci.sh: Manually install picotool for rp2 builds.
If picotool is not installed, it's fetched and built when compiling each rp2 board. And the "develop" branch of picotool is used instead of a release. Installing it manually using the "master" branch means the latest released version is used (instead of a possibly unstable development version), and also makes building each rp2 board a little faster. Signed-off-by: Damien George <damien@micropython.org>
-rwxr-xr-xtools/ci.sh11
1 files changed, 11 insertions, 0 deletions
diff --git a/tools/ci.sh b/tools/ci.sh
index c7a6db79d..948eeeaef 100755
--- a/tools/ci.sh
+++ b/tools/ci.sh
@@ -22,6 +22,15 @@ function ci_gcc_riscv_setup {
riscv64-unknown-elf-gcc --version
}
+function ci_picotool_setup {
+ # Manually installing picotool ensures we use a release version, and speeds up the build.
+ git clone https://github.com/raspberrypi/pico-sdk.git
+ (cd pico-sdk && git submodule update --init lib/mbedtls)
+ git clone https://github.com/raspberrypi/picotool.git
+ (cd picotool && mkdir build && cd build && cmake -DPICO_SDK_PATH=../../pico-sdk .. && make && sudo make install)
+ picotool version
+}
+
########################################################################################
# c code formatting
@@ -62,6 +71,7 @@ function ci_code_size_setup {
gcc --version
ci_gcc_arm_setup
ci_gcc_riscv_setup
+ ci_picotool_setup
}
function ci_code_size_build {
@@ -355,6 +365,7 @@ function ci_renesas_ra_board_build {
function ci_rp2_setup {
ci_gcc_arm_setup
+ ci_picotool_setup
}
function ci_rp2_build {