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

fbt: 'target' field for apps; lib debugging support (#1995)

* fbt: added 'target' field to application manifest
* fbt: earlier pagination setup for gdb
* fbt: added LIB_DEBUG flag
* fbt: sdk: added SDK_MAP_FILE_SUBST
This commit is contained in:
hedger
2022-11-10 15:55:11 +04:00
committed by GitHub
parent 3985b456c3
commit a959fa32bc
10 changed files with 66 additions and 29 deletions

View File

@@ -14,6 +14,7 @@ import json
from fbt.sdk.collector import SdkCollector
from fbt.sdk.cache import SdkCache
from fbt.util import path_as_posix
def ProcessSdkDepends(env, filename):
@@ -52,6 +53,8 @@ def prebuild_sdk_create_origin_file(target, source, env):
class SdkMeta:
MAP_FILE_SUBST = "SDK_MAP_FILE_SUBST"
def __init__(self, env, tree_builder: "SdkTreeBuilder"):
self.env = env
self.treebuilder = tree_builder
@@ -67,6 +70,7 @@ class SdkMeta:
"linker_libs": self.env.subst("${LIBS}"),
"app_ep_subst": self.env.subst("${APP_ENTRY}"),
"sdk_path_subst": self.env.subst("${SDK_DIR_SUBST}"),
"map_file_subst": self.MAP_FILE_SUBST,
"hardware": self.env.subst("${TARGET_HW}"),
}
with open(json_manifest_path, "wt") as f:
@@ -75,9 +79,9 @@ class SdkMeta:
def _wrap_scons_vars(self, vars: str):
expanded_vars = self.env.subst(
vars,
target=Entry("dummy"),
target=Entry(self.MAP_FILE_SUBST),
)
return expanded_vars.replace("\\", "/")
return path_as_posix(expanded_vars)
class SdkTreeBuilder:
@@ -142,13 +146,15 @@ class SdkTreeBuilder:
meta.save_to(self.target[0].path)
def build_sdk_file_path(self, orig_path: str) -> str:
return posixpath.normpath(
posixpath.join(
self.SDK_DIR_SUBST,
self.target_sdk_dir_name,
orig_path,
return path_as_posix(
posixpath.normpath(
posixpath.join(
self.SDK_DIR_SUBST,
self.target_sdk_dir_name,
orig_path,
)
)
).replace("\\", "/")
)
def emitter(self, target, source, env):
target_folder = target[0]