better run [feature] (#11709)

* track the checksums of all involved Nim files for smarter 'nim c -r' recompiles
* don't recompile unless necessary for 'nim c -r' [feature]
* [feature] koch boot uses a two step process in order to free the RAM before the GCC/Clang invocations
* fixes a serious regression
This commit is contained in:
Andreas Rumpf 2019-07-11 21:36:23 +02:00 • committed by GitHub
commit 3d88d06b32
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
10 changed files with 88 additions and 24 deletions

View file

@ -87,6 +87,15 @@ proc commandCompileToC(graph: ModuleGraph) =
semanticPasses(graph)
registerPass(graph, cgenPass)
if {optRun, optForceFullMake} * conf.globalOptions == {optRun}:
let proj = changeFileExt(conf.projectFull, "")
if not changeDetectedViaJsonBuildInstructions(conf, proj):
# nothing changed
# Little hack here in order to not lose our precious
# hintSuccessX message:
conf.notes.incl hintSuccessX
return
compileProject(graph)
if graph.config.errorCounter > 0:
return # issue #9933