@@ -151,10 +151,23 @@ function build_for_port {
151151 fi
152152 echo " Building $( basename $board ) "
153153
154+ # Construct make arguments
154155 BOARD_TO_BUILD=${SPARKFUN_PREFIX}${board# $SPARKFUN_BOARD_PREFIX }
155- make ${MAKEOPTS} -C ports/${TARGET_PORT_NAME} BOARD=$BOARD_TO_BUILD BOARD_VARIANT=$BOARD_VARIANT FROZEN_MANIFEST=$FROZEN_MANIFEST USER_C_MODULES=$USER_C_MODULES clean
156- make ${MAKEOPTS} -C ports/${TARGET_PORT_NAME} BOARD=$BOARD_TO_BUILD BOARD_VARIANT=$BOARD_VARIANT FROZEN_MANIFEST=$FROZEN_MANIFEST USER_C_MODULES=$USER_C_MODULES submodules
157- make ${MAKEOPTS} -C ports/${TARGET_PORT_NAME} BOARD=$BOARD_TO_BUILD BOARD_VARIANT=$BOARD_VARIANT FROZEN_MANIFEST=$FROZEN_MANIFEST USER_C_MODULES=$USER_C_MODULES
156+ MAKE_ARGS=" -C ports/${TARGET_PORT_NAME} BOARD=$BOARD_TO_BUILD "
157+ if [ -n " $BOARD_VARIANT " ]; then
158+ MAKE_ARGS+=" BOARD_VARIANT=${BOARD_VARIANT} "
159+ fi
160+ if [ -n " $FROZEN_MANIFEST " ]; then
161+ MAKE_ARGS+=" FROZEN_MANIFEST=${FROZEN_MANIFEST} "
162+ fi
163+ if [ -n " $USER_C_MODULES " ]; then
164+ MAKE_ARGS+=" USER_C_MODULES=${USER_C_MODULES} "
165+ fi
166+ echo " MAKE_ARGS: ${MAKE_ARGS} "
167+
168+ make ${MAKE_ARGS} ${MAKEOPTS} clean
169+ make ${MAKE_ARGS} ${MAKEOPTS} submodules
170+ make ${MAKE_ARGS} ${MAKEOPTS}
158171 done
159172}
160173
@@ -302,17 +315,23 @@ function build_micropython_red_vision_rp2 {
302315 # https://stackoverflow.com/a/246128/4783963
303316 SCRIPT_DIR=$( cd -- " $( dirname -- " ${BASH_SOURCE[0]} " ) " & > /dev/null && pwd )
304317 if [ -n " $GITHUB_WORKSPACE " ]; then
305- export PICO_SDK_PATH=" $GITHUB_WORKSPACE /lib/pico-sdk"
318+ export PICO_SDK_PATH=" $GITHUB_WORKSPACE /micropython/ lib/pico-sdk"
306319 else
307320 export PICO_SDK_PATH=" $SCRIPT_DIR /lib/pico-sdk"
308321 fi
309322
310323 # Clone the Red Vision submodule
311- # git submodule update --init --recursive lib/red_vision
324+ git submodule update --init --recursive lib/red_vision
325+
326+ # Clone the Pico SDK submodule
327+ git submodule update --init --recursive lib/pico-sdk
312328
313329 # Build OpenCV
314330 make -C lib/red_vision/micropython-opencv PLATFORM=rp2350 --no-print-directory ${MAKEOPTS}
315331
332+ # install freezefs if not already installed
333+ pip install freezefs
334+
316335 # Archive the examples directory
317336 python3 -m freezefs lib/red_vision/red_vision_examples lib/red_vision/extract_red_vision_examples.py --on-import=extract --compress --overwrite always
318337
@@ -420,7 +439,7 @@ function build_sparkfun {
420439 # Copy all mimxrt teensy binary files to the output directory
421440 copy_all_for_prefix ${OUTPUT_DIRECTORY} " ports/mimxrt" " build-TEENSY" " firmware" " elf" " ${OUTPUT_FILE_PREFIX} TEENSY_" true
422441
423- Remove all builds to prepare for Red Vision build
442+ # Remove all builds to prepare for Red Vision build
424443 delete_build_directories_for_port esp32
425444 delete_build_directories_for_port rp2
426445 delete_build_directories_for_port mimxrt
0 commit comments