57e625d4dc
* Only use one Dockerfile and build.sh script for both docker and devcontainer * Remove all now unneccessary tasks and scripts * Update to clang-format-14 * Move devcontainer.json into root folder * Fix conditional statements in Dockerfile * Move .devcontainer/README into doc/usingDevcontainers * Remove obsolete VSCode Task * Change standard compiler path to the correct compiler * Set GDB Path for debugging * Hide broken buttons from CMake Extension * Refactor .devcontainer * Remove unneccessary postBuildCommand * Add devcontainer dependencies to all docker images * Add Devcontainer Debug launch config * Add an additional c_cpp_properties config as a fallback for devcontainer * Remove obsolete Docker Argument * Fix wrong C/Cpp versions * Fix silent fail of gdb, add libncurses5
83 lines
3.3 KiB
JSON
83 lines
3.3 KiB
JSON
{
|
|
"version": "0.1.0",
|
|
"configurations": [
|
|
{
|
|
"name": "Debug - Openocd docker Remote",
|
|
"type": "cortex-debug",
|
|
"cwd": "${workspaceRoot}",
|
|
"executable": "${command:cmake.launchTargetPath}",
|
|
"request": "launch",
|
|
"servertype": "external",
|
|
"gdbPath": "${env:ARM_NONE_EABI_TOOLCHAIN_PATH}/bin/arm-none-eabi-gdb",
|
|
// Connect to an already running OpenOCD instance
|
|
"gdbTarget": "host.docker.internal:3333",
|
|
"svdFile": "${workspaceRoot}/nrf52.svd",
|
|
"runToEntryPoint": "main",
|
|
// Work around for stopping at main on restart
|
|
"postRestartCommands": [
|
|
"break main",
|
|
"continue"
|
|
]
|
|
},
|
|
{
|
|
"name": "Debug - Openocd Local",
|
|
"type": "cortex-debug",
|
|
"cwd": "${workspaceRoot}",
|
|
"executable": "${command:cmake.launchTargetPath}",
|
|
"request": "launch",
|
|
"servertype": "openocd",
|
|
"gdbPath": "${env:ARM_NONE_EABI_TOOLCHAIN_PATH}/bin/arm-none-eabi-gdb",
|
|
// Connect to an already running OpenOCD instance
|
|
"gdbTarget": "localhost:3333",
|
|
"svdFile": "${workspaceRoot}/nrf52.svd",
|
|
"runToEntryPoint": "main",
|
|
// Work around for stopping at main on restart
|
|
"postRestartCommands": [
|
|
"break main",
|
|
"continue"
|
|
]
|
|
},
|
|
{
|
|
"cwd": "${workspaceRoot}",
|
|
// TODO: find better way to get latest build filename
|
|
"executable": "./build/src/pinetime-app-1.3.0.out",
|
|
"name": "Debug OpenOCD ST-LINK pinetime-app-1.3.0.out",
|
|
"request": "launch",
|
|
"type": "cortex-debug",
|
|
"showDevDebugOutput": false,
|
|
"servertype": "openocd",
|
|
"runToMain": true,
|
|
// Work around for stopping at main on restart
|
|
"postRestartCommands": [
|
|
"break main",
|
|
"continue"
|
|
],
|
|
// Only use armToolchainPath if your arm-none-eabi-gdb is not in your path (some GCC packages does not contain arm-none-eabi-gdb)
|
|
"armToolchainPath": "${workspaceRoot}/../gcc-arm-none-eabi-10.3-2021.10/bin",
|
|
"svdFile": "${workspaceRoot}/nrf52.svd",
|
|
"configFiles": [
|
|
"interface/stlink.cfg",
|
|
"target/nrf52.cfg"
|
|
],
|
|
},
|
|
{
|
|
"name": "Debug - Openocd Devcontainer",
|
|
"type": "cortex-debug",
|
|
"cwd": "${workspaceRoot}",
|
|
"executable": "${command:cmake.launchTargetPath}",
|
|
"request": "launch",
|
|
"servertype": "external",
|
|
// FIXME: This is hardcoded. I have no idea how to use the values set in build.sh here
|
|
"gdbPath": "/opt/gcc-arm-none-eabi-10.3-2021.10/bin/arm-none-eabi-gdb",
|
|
// Connect to an already running OpenOCD instance
|
|
"gdbTarget": "host.docker.internal:3333",
|
|
"svdFile": "${workspaceRoot}/nrf52.svd",
|
|
"runToEntryPoint": "main",
|
|
// Work around for stopping at main on restart
|
|
"postRestartCommands": [
|
|
"break main",
|
|
"continue"
|
|
]
|
|
},
|
|
]
|
|
}
|