fbt: updater over USB (#1344)

* Scripts: added update package uploader over USB; fbt: added flash_usb target
* fbt: additional dependencies for flash_usb
* Cli: fix cursor_position corruption

Co-authored-by: あく <alleteam@gmail.com>
This commit is contained in:
hedger
2022-06-28 16:03:49 +03:00
committed by GitHub
parent e6f18cc322
commit 8b988e2b17
7 changed files with 188 additions and 13 deletions

View File

@@ -84,6 +84,16 @@ if GetOption("fullenv"):
debug_updater_elf = distenv.AddDebugTarget(updater_out, False)
Alias("updater_debug", debug_updater_elf)
# Installation over USB & CLI
usb_update_package = distenv.UsbInstall(
"usbinstall.flag",
(distenv["DIST_DEPENDS"], firmware_out["FW_RESOURCES"], selfupdate_dist),
)
if distenv["FORCE"]:
AlwaysBuild(usb_update_package)
Depends(usb_update_package, selfupdate_dist)
Alias("flash_usb", usb_update_package)
# Target for copying & renaming binaries to dist folder
basic_dist = distenv.DistBuilder("dist.pseudo", distenv["DIST_DEPENDS"])
@@ -92,6 +102,7 @@ AlwaysBuild(basic_dist)
Alias("fw_dist", basic_dist)
Default(basic_dist)
# Target for bundling core2 package for qFlipper
copro_dist = distenv.CoproBuilder(
Dir("assets/core2_firmware"),
@@ -113,7 +124,7 @@ debug_other = distenv.GDBPy(
None,
GDBPYOPTS=
# '-ex "source ${ROOT_DIR.abspath}/debug/FreeRTOS/FreeRTOS.py" '
'-ex "source debug/PyCortexMDebug/PyCortexMDebug.py" '
'-ex "source debug/PyCortexMDebug/PyCortexMDebug.py" ',
)
distenv.Pseudo("debugother.pseudo")
AlwaysBuild(debug_other)