a91d319839
* scripts: moved ufbt code * ufbt: fixed tool path * ufbt: fixed linter/formatter target descriptions * scripts: ufbt: cleanup * fbt: moved fap launch target to tools; ufbt fixes * fbt: fixed missing headers from SDK * ufbt: removed debug output * ufbt: moved project template to main codebase * ufbt: fixed vscode_dist * ufbt: path naming changes * fbt: error message for older ufbt versions * ufbt: docs fixes * ufbt: fixed build dir location * fbt: fixes for extapps objcopy * fbt: extapps: removed extra debug output; fixed formatting * ufbt: handle launch target for multiple known apps * ufbt: dropping wrapper; linter fixes * ufbt: fixed boostrap path * ufbt: renamed entrypoint * ufbt: updated vscode config * ufbt: moved sconsign db location * ufbt: fixed sconsign path * fbt: SDK builders rework * fbt: reworked sdk packaging * ufbt: additional checks and state processing * ufbt: fixed sdk state file location * dist: not packaging pycache * dump commit json content * Github: more workflow debug prints * Github: fix incorrect commit meta extraction in get_env.py * ufbt, fbt: changed SConsEnvironmentError->StopError * fbtenv: no longer needs SCRIPT_PATH pre-set * ufbt: fixed sdk state check * scripts: exception fixes for storage.py * scripts: fbtenv: added FBT_TOOLCHAIN_PATH for on Windows for compat * ufbt: app template: creating .gitkeep for images folder * ufbt: app template: fixed .gitkeep creation * docs: formatting fixes for AppManifests; added link to ufbt * fbt: added link to PyPI for old ufbt versions * sdk: fixed dir component paths Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
38 lines
1.1 KiB
Plaintext
38 lines
1.1 KiB
Plaintext
from SCons.Errors import StopError
|
|
|
|
Import("core_env")
|
|
|
|
update_env = core_env.Clone(
|
|
toolpath=[core_env["FBT_SCRIPT_DIR"].Dir("fbt_tools")],
|
|
tools=["python3"],
|
|
)
|
|
print("Updating SDK...")
|
|
ufbt_state = update_env["UFBT_STATE"]
|
|
|
|
update_args = [
|
|
"--ufbt-dir",
|
|
f'"{update_env["UFBT_STATE_DIR"]}"',
|
|
]
|
|
|
|
if branch_name := GetOption("sdk_branch"):
|
|
update_args.extend(["--branch", branch_name])
|
|
elif channel_name := GetOption("sdk_channel"):
|
|
update_args.extend(["--channel", channel_name])
|
|
elif branch_name := ufbt_state.get("branch", None):
|
|
update_args.extend(["--branch", branch_name])
|
|
elif channel_name := ufbt_state.get("channel", None):
|
|
update_args.extend(["--channel", channel_name])
|
|
else:
|
|
raise StopError("No branch or channel specified for SDK update")
|
|
|
|
if hw_target := GetOption("sdk_target"):
|
|
update_args.extend(["--hw-target", hw_target])
|
|
else:
|
|
update_args.extend(["--hw-target", ufbt_state["hw_target"]])
|
|
|
|
update_env.Replace(UPDATE_ARGS=update_args)
|
|
result = update_env.Execute(
|
|
update_env.subst('$PYTHON3 "$UFBT_BOOTSTRAP_SCRIPT" $UPDATE_ARGS'),
|
|
)
|
|
Exit(result)
|