3.1.9. VS Code

The tool is located in tools/waf-tools.

3.1.9.1. Tool Documentation

Implements a waf tool to configure a VS Code workspace to foxBMS specific needs.

For information on VS Code see https://code.visualstudio.com/.

f_vscode.configure(ctx: waflib.Configure.ConfigurationContext)

configuration step of the VS Code waf tool:

  • Find code

  • configure a project if code was found

f_vscode.default_includes(ctx: waflib.Configure.ConfigurationContext, base_dir: waflib.Node.Node, inc_file: str) list[str]

Get include lines from a file

f_vscode.dump_json_to_node(node: waflib.Node.Node, cfg: dict)

Dump dictionary to node

f_vscode.find_vscode(ctx: waflib.Configure.ConfigurationContext) bool

Find VS Code

f_vscode.get_axivion_modules(ax_modules_rel: Path, cafecc: str = '') list[str]

Prepares the Axivion Modules path

f_vscode.get_fox_py_wrapper_executable(ctx: waflib.Configure.ConfigurationContext) bool

check which fox.py-wrapper to use (.bat, .ps1 or .sh)

f_vscode.get_hcg_includes(halcogen: list) list[str]

get HALCoGen includes

f_vscode.get_vscode_relevant_defines(compiler_builtin_defines: list[str]) list[str]

Get all compiler builtin defines formatted for VS Code

f_vscode.setup_embedded_unit_test_app(ctx: waflib.Configure.ConfigurationContext, base_cfg_dir: waflib.Node.Node)

Setup the embedded unit test VS Code configuration

f_vscode.setup_embedded_unit_test_bootloader(ctx: waflib.Configure.ConfigurationContext, base_cfg_dir: waflib.Node.Node)

Setup the embedded unit test VS Code configuration

f_vscode.setup_generic(ctx: waflib.Configure.ConfigurationContext, base_cfg_dir: waflib.Node.Node)

Setup the generic VS Code configuration

f_vscode.setup_src_app(ctx: waflib.Configure.ConfigurationContext, base_cfg_dir: waflib.Node.Node)

Setup the src/app VS Code configuration

f_vscode.setup_src_bootloader(ctx: waflib.Configure.ConfigurationContext, base_cfg_dir: waflib.Node.Node)

Setup the src/app VS Code configuration

f_vscode.valid_configuration_files(ctx: waflib.Configure.ConfigurationContext, base_cfg_dir: waflib.Node.Node)

Validate, that all VS configuration files are valid json files