1
mirror of https://github.com/DarkFlippers/unleashed-firmware.git synced 2025-12-12 04:34:43 +04:00

fbt/ufbt: Ensure POSIX paths are passed to GDB on all platforms

https://github.com/flipperdevices/flipperzero-firmware/pull/3360/files
This commit is contained in:
MX
2024-03-22 11:27:02 +03:00
parent 760deb66c5
commit 6d9a2cc699
6 changed files with 56 additions and 33 deletions

View File

@@ -18,7 +18,7 @@ def GetDevices(env):
def generate(env, **kw):
env.AddMethod(GetDevices)
env.SetDefault(
FBT_DEBUG_DIR="${FBT_SCRIPT_DIR}/debug",
FBT_DEBUG_DIR="${POSIXPATH('$FBT_SCRIPT_DIR')}/debug",
)
if (adapter_serial := env.subst("$SWD_TRANSPORT_SERIAL")) != "auto":
@@ -36,11 +36,11 @@ def generate(env, **kw):
env.SetDefault(
OPENOCD_GDB_PIPE=[
"|openocd -c 'gdb_port pipe; log_output ${FBT_DEBUG_DIR}/openocd.log' ${[SINGLEQUOTEFUNC(OPENOCD_OPTS)]}"
"|openocd -c 'gdb_port pipe; log_output ${POSIXPATH('$FBT_DEBUG_DIR')}/openocd.log' ${[SINGLEQUOTEFUNC(OPENOCD_OPTS)]}"
],
GDBOPTS_BASE=[
"-ex",
"source ${FBT_DEBUG_DIR}/gdbinit",
"source ${POSIXPATH('$FBT_DEBUG_DIR')}/gdbinit",
"-ex",
"target extended-remote ${GDBREMOTE}",
],
@@ -57,17 +57,17 @@ def generate(env, **kw):
],
GDBPYOPTS=[
"-ex",
"source ${FBT_DEBUG_DIR}/FreeRTOS/FreeRTOS.py",
"source ${POSIXPATH('$FBT_DEBUG_DIR')}/FreeRTOS/FreeRTOS.py",
"-ex",
"source ${FBT_DEBUG_DIR}/flipperapps.py",
"source ${POSIXPATH('$FBT_DEBUG_DIR')}/flipperapps.py",
"-ex",
"source ${FBT_DEBUG_DIR}/flipperversion.py",
"source ${POSIXPATH('$FBT_DEBUG_DIR')}/flipperversion.py",
"-ex",
"fap-set-debug-elf-root ${FBT_FAP_DEBUG_ELF_ROOT}",
"fap-set-debug-elf-root ${POSIXPATH('$FBT_FAP_DEBUG_ELF_ROOT')}",
"-ex",
"source ${FBT_DEBUG_DIR}/PyCortexMDebug/PyCortexMDebug.py",
"source ${POSIXPATH('$FBT_DEBUG_DIR')}/PyCortexMDebug/PyCortexMDebug.py",
"-ex",
"svd_load ${SVD_FILE}",
"svd_load ${POSIXPATH('$SVD_FILE')}",
"-ex",
"compare-sections",
"-ex",

View File

@@ -6,7 +6,7 @@ import shutil
from fbt.sdk.cache import SdkCache
from fbt.sdk.collector import SdkCollector
from fbt.util import path_as_posix
from fbt.util import PosixPathWrapper
from SCons.Action import Action
from SCons.Builder import Builder
from SCons.Errors import UserError
@@ -80,7 +80,7 @@ class SdkMeta:
vars,
target=Entry(self.MAP_FILE_SUBST),
)
return path_as_posix(expanded_vars)
return PosixPathWrapper.fixup_separators(expanded_vars)
class SdkTreeBuilder:
@@ -149,7 +149,7 @@ class SdkTreeBuilder:
meta.save_to(self.target[0].path)
def build_sdk_file_path(self, orig_path: str) -> str:
return path_as_posix(
return PosixPathWrapper.fix_path(
posixpath.normpath(
posixpath.join(
self.SDK_DIR_SUBST,