mirror of
https://github.com/nim-lang/Nim.git
synced 2026-01-09 14:32:53 +00:00
./koch tools now builds bin/nim_dbg, a debug version of nim (#18289)
This commit is contained in:
10
koch.nim
10
koch.nim
@@ -215,8 +215,14 @@ proc buildTools(args: string = "") =
|
||||
options = "-d:release " & args)
|
||||
when defined(windows): buildVccTool(args)
|
||||
bundleNimpretty(args)
|
||||
nimCompileFold("Compile testament", "testament/testament.nim",
|
||||
options = "-d:release " & args)
|
||||
nimCompileFold("Compile testament", "testament/testament.nim", options = "-d:release" & args)
|
||||
|
||||
# pre-packages a debug version of nim which can help in many cases investigate issuses
|
||||
# withouth having to rebuild compiler.
|
||||
# `-d:nimDebugUtils` only makes sense when temporarily editing/debugging compiler
|
||||
# `-d:debug` should be changed to a flag that doesn't require re-compiling nim
|
||||
# `--opt:speed` is a sensible default even for a debug build, it doesn't affect nim stacktraces
|
||||
nimCompileFold("Compile nim_dbg", "compiler/nim.nim", options = "--opt:speed --stacktrace -d:debug --stacktraceMsgs -d:nimCompilerStacktraceHints" & args, outputName = "nim_dbg")
|
||||
|
||||
proc nsis(latest: bool; args: string) =
|
||||
bundleNimbleExe(latest, args)
|
||||
|
||||
@@ -98,8 +98,9 @@ proc nimCompile*(input: string, outputDir = "bin", mode = "c", options = "") =
|
||||
let cmd = findNim().quoteShell() & " " & mode & " -o:" & output & " " & options & " " & input
|
||||
exec cmd
|
||||
|
||||
proc nimCompileFold*(desc, input: string, outputDir = "bin", mode = "c", options = "") =
|
||||
let output = outputDir / input.splitFile.name.exe
|
||||
proc nimCompileFold*(desc, input: string, outputDir = "bin", mode = "c", options = "", outputName = "") =
|
||||
let outputName2 = if outputName.len == 0: input.splitFile.name.exe else: outputName.exe
|
||||
let output = outputDir / outputName2
|
||||
let cmd = findNim().quoteShell() & " " & mode & " -o:" & output & " " & options & " " & input
|
||||
execFold(desc, cmd)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user