|
17 | 17 | from os import makedirs |
18 | 18 | from os.path import isdir, join |
19 | 19 |
|
20 | | -from SCons.Script import (COMMAND_LINE_TARGETS, AlwaysBuild, Builder, Default, |
21 | | - DefaultEnvironment) |
| 20 | +from SCons.Script import (ARGUMENTS, COMMAND_LINE_TARGETS, AlwaysBuild, |
| 21 | + Builder, Default, DefaultEnvironment) |
22 | 22 |
|
23 | 23 | env = DefaultEnvironment() |
24 | 24 | platform = env.PioPlatform() |
|
114 | 114 | BUILDERS=dict( |
115 | 115 | PackageDfu=Builder( |
116 | 116 | action=env.VerboseAction(" ".join([ |
117 | | - nrfutil_path, |
| 117 | + '"%s"' % nrfutil_path, |
118 | 118 | "dfu", |
119 | 119 | "genpkg", |
120 | 120 | "--dev-type", |
|
152 | 152 | upload_protocol = env.subst("$UPLOAD_PROTOCOL") |
153 | 153 | target_elf = None |
154 | 154 | if "nobuild" in COMMAND_LINE_TARGETS: |
| 155 | + target_elf = join("$BUILD_DIR", "${PROGNAME}.elf") |
155 | 156 | target_firm = join("$BUILD_DIR", "${PROGNAME}.hex") |
156 | 157 | else: |
157 | 158 | target_elf = env.BuildProgram() |
|
262 | 263 | "$UPLOAD_SPEED", |
263 | 264 | "--singlebank", |
264 | 265 | ], |
265 | | - UPLOADCMD="$UPLOADER $UPLOADERFLAGS -pkg $SOURCE" |
| 266 | + UPLOADCMD='"$UPLOADER" $UPLOADERFLAGS -pkg $SOURCE' |
266 | 267 | ) |
267 | 268 | upload_actions = [env.VerboseAction(env.AutodetectUploadPort, "Looking for upload port..."), |
268 | 269 | env.VerboseAction("$UPLOADCMD", "Uploading $SOURCE")] |
@@ -304,14 +305,23 @@ def _jlink_cmd_script(env, source): |
304 | 305 | upload_actions = [env.VerboseAction("$UPLOADCMD", "Uploading $SOURCE")] |
305 | 306 |
|
306 | 307 | elif upload_protocol in debug_tools: |
| 308 | + openocd_args = [ |
| 309 | + "-d%d" % (2 if int(ARGUMENTS.get("PIOVERBOSE", 0)) else 1) |
| 310 | + ] |
| 311 | + openocd_args.extend( |
| 312 | + debug_tools.get(upload_protocol).get("server").get("arguments", [])) |
| 313 | + openocd_args.extend([ |
| 314 | + "-c", "program {$SOURCE} %s verify reset; shutdown;" % |
| 315 | + board.get("upload.offset_address", "") |
| 316 | + ]) |
| 317 | + openocd_args = [ |
| 318 | + f.replace("$PACKAGE_DIR", |
| 319 | + platform.get_package_dir("tool-openocd") or "") |
| 320 | + for f in openocd_args |
| 321 | + ] |
307 | 322 | env.Replace( |
308 | 323 | UPLOADER="openocd", |
309 | | - UPLOADERFLAGS=["-s", platform.get_package_dir("tool-openocd") or ""] + |
310 | | - debug_tools.get(upload_protocol).get("server").get("arguments", []) + [ |
311 | | - "-c", |
312 | | - "program {$SOURCE} verify reset %s; shutdown;" % |
313 | | - env.BoardConfig().get("upload.offset_address", "") |
314 | | - ], |
| 324 | + UPLOADERFLAGS=openocd_args, |
315 | 325 | UPLOADCMD="$UPLOADER $UPLOADERFLAGS") |
316 | 326 | upload_actions = [env.VerboseAction("$UPLOADCMD", "Uploading $SOURCE")] |
317 | 327 |
|
|
0 commit comments