From a9560f14dd197ea5823e658bc36fd05b83ca0b83 Mon Sep 17 00:00:00 2001 From: philsson Date: Sat, 25 Aug 2018 11:38:45 +0200 Subject: [PATCH] OSX project fixes --- .vscode/launch.json | 84 ++++++++++++++++++++++++++------------------- .vscode/tasks.json | 59 +++++++++++++++++++++++++++---- 2 files changed, 101 insertions(+), 42 deletions(-) diff --git a/.vscode/launch.json b/.vscode/launch.json index ffafef7..37002ea 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -1,46 +1,58 @@ { "version": "0.2.0", "configurations": [ - { - "name": "debug", + { /* Common configuration for all OS */ + "name": "C++ Launch", "type": "cppdbg", "request": "launch", - "windows": { - "miDebuggerPath": "c:/dev/gcc-arm-6.2/bin/arm-none-eabi-gdb.exe" + "program": "${workspaceRoot}/BUILD/${workspaceRootFolderName}.elf", + "targetArchitecture": "arm", + "args": [], + "stopAtEntry": true, + "cwd": "${workspaceRoot}", + "environment": [], + "externalConsole": false, + + // This does not do shit + //"debugServerArgs": "-f /usr/local/share/openocd/scripts/board/st_nucleo_f4.cfg -f /usr/local/share/openocd/scripts/interface/stlink-v2-1.cfg -c init -c 'reset init'", + "debugServerArgs":"", + + "serverLaunchTimeout": 20000, + "filterStderr": true, + "filterStdout": false, + "serverStarted": "GDB\\ server\\ started", + "preLaunchTask": "build", + "setupCommands": [ + { "text": "-target-select remote localhost:3333", "description": "connect to target", "ignoreFailures": false }, + { "text": "-file-exec-and-symbols ${workspaceRoot}/BUILD/${workspaceRootFolderName}.elf", "description": "load file", "ignoreFailures": false}, + { "text": "-interpreter-exec console \"monitor endian little\"", "ignoreFailures": false }, + { "text": "-interpreter-exec console \"monitor reset\"", "ignoreFailures": false }, + { "text": "-interpreter-exec console \"monitor halt\"", "ignoreFailures": false }, + { "text": "-interpreter-exec console \"monitor arm semihosting enable\"", "ignoreFailures": false }, + { "text": "-target-download", "description": "flash target", "ignoreFailures": false } + ], + "logging": { + "moduleLoad": true, + "trace": true, + "engineLogging": true, + "programOutput": true, + "exceptions": true }, "linux": { - "miDebuggerPath": "/usr/bin/arm-none-eabi-gdb" + "MIMode": "gdb", + "MIDebuggerPath": "/usr/bin/arm-none-eabi-gdb"//, }, - "targetArchitecture": "arm", - "program": "${workspaceRoot}/outdir/nucleo_f411re/zephyr.elf", - // A delay is needed to start the debug_server here as the OCD server - // is not fully started when gdb tries to connect - //"preLaunchTask": "debug_server", - "debugServerArgs": "", - "stopAtEntry": false, - "setupCommands": [ - { "text": "file ${workspaceRoot}/outdir/nucleo_f411re/zephyr.elf" }, - { "text": "set remotetimeout 30" }, - { "text": "target remote localhost:3333" }, - { "text": "monitor halt" }, - { "text": "monitor reset init" }, - { "text": "load" }, - { "text": "info target" } - ], - "externalConsole": false, - "cwd": "${workspaceRoot}" + "osx": { + "MIMode": "gdb", + "MIDebuggerPath": "/Users/philip/.platformio/packages/toolchain-gccarmnoneeabi/bin/arm-none-eabi-gdb" + //"debugServerPath": "/usr/local/bin/openocd" + }, + "windows": { + "preLaunchTask": "make.exe", + "MIMode": "gdb", + "MIDebuggerPath": "C:\\Program Files (x86)\\GNU Tools ARM Embedded\\4.9 2015q3\\bin\\arm-none-eabi-gdb.exe", + "debugServerPath": "pyocd-gdbserver.exe" + } } ] -} - -//"type": "gdb", -//"request": "attach", - - - -// For OpenOCD which has to run when gdb tries to connect -// $ PATH_TO_OPENOCD/bin/openocd -// -f PATH_TO_OPENOCD/scripts/board/stm32f4discovery.cfg -// -f PATH_TO_OPENOCD/scripts/interface/stlink-v2-1.cfg -// -c init -// -c "reset init" \ No newline at end of file +} \ No newline at end of file diff --git a/.vscode/tasks.json b/.vscode/tasks.json index 72371a6..871f5a0 100644 --- a/.vscode/tasks.json +++ b/.vscode/tasks.json @@ -14,16 +14,16 @@ { "taskName": "clean", "suppressTaskName": true, - "args": ["source ${workspaceRoot}/include/zephyr-RC/zephyr-env.sh && make clean && echo DONE"] + "args": ["make clean && echo DONE"] }, { "taskName": "build", "suppressTaskName": true, "isBuildCommand": true, - "args": ["source ${workspaceRoot}/include/zephyr-RC/zephyr-env.sh && make BOARD=nucleo_f411re && echo DONE"], + "args": ["make"], "problemMatcher": { "owner": "cpp", - "fileLocation": ["relative", "${workspaceRoot}"], + "fileLocation": ["relative", "${workspaceRoot}/mbed-os"], "pattern": { "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$", "file": 1, @@ -37,13 +37,60 @@ { "taskName": "deploy", "suppressTaskName": true, - "args": ["source ${workspaceRoot}/include/zephyr-RC/zephyr-env.sh && make BOARD=nucleo_f411re flash"] + "args": ["not implemented"] }, { + // This task will never end. So it will never go through to the next!!! "taskName": "debug_server", + //"isBackground": true, "suppressTaskName": true, - //"args": ["source ${workspaceRoot}/include/zephyr-RC/zephyr-env.sh && openocd -s /usr/local/share/openocd/scripts -f ${ZEPHYR_BASE}/boards/arm/nucleo_f411re/support/openocd.cfg -c 'init' -c 'targets' -c 'reset halt'"] - "args": ["source ${workspaceRoot}/include/zephyr-RC/zephyr-env.sh && openocd -s /usr/local/share/openocd/scripts -f ${ZEPHYR_BASE}/boards/arm/nucleo_f411re/support/openocd.cfg -c 'init' -c 'targets' -c 'reset init'"] + "args": ["openocd -f /usr/share/openocd/scripts/board/st_nucleo_f4.cfg -f /usr/share/openocd/scripts/interface/stlink-v2-1.cfg -c init -c 'reset init'"] + } + ] + }, + "osx" : { + "command": "bash", + "suppressTaskName": true, + "isShellCommand": true, + "showOutput": "always", + "args": [ + "-c" + ], + "tasks": [ + { + "taskName": "clean", + "suppressTaskName": true, + "args": ["make clean && echo DONE"] + }, + { + "taskName": "build", + "suppressTaskName": true, + "isBuildCommand": true, + "args": ["make"], + "problemMatcher": { + "owner": "cpp", + "fileLocation": ["relative", "${workspaceRoot}/mbed-os"], + "pattern": { + "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$", + "file": 1, + "line": 2, + "column": 3, + "severity": 4, + "message": 5 + } + } + }, + { + "taskName": "deploy", + "suppressTaskName": true, + "args": ["not implemented"] + }, + { + // This task will never end. So it will never go through to the next!!! + "taskName": "debug_server", + //"isBackground": true, + "suppressTaskName": true, + "args": ["openocd -f /usr/local/share/openocd/scripts/board/st_nucleo_f4.cfg -f /usr/local/share/openocd/scripts/interface/stlink-v2-1.cfg -c init -c 'reset init'"] } ] }