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:
parent
b8be1ccb85
commit
3d88d06b32
10 changed files with 88 additions and 24 deletions
8
koch.nim
8
koch.nim
|
|
@ -308,8 +308,14 @@ proc boot(args: string) =
|
|||
extraOption.add " -d:nimBoostrapCsources0_19_0"
|
||||
# remove this when csources get updated
|
||||
|
||||
exec "$# $# $# $# --nimcache:$# compiler" / "nim.nim" %
|
||||
# in order to use less memory, we split the build into two steps:
|
||||
# --compileOnly produces a $project.json file and does not run GCC/Clang.
|
||||
# jsonbuild then uses the $project.json file to build the Nim binary.
|
||||
exec "$# $# $# $# --nimcache:$# --compileOnly compiler" / "nim.nim" %
|
||||
[nimi, bootOptions, extraOption, args, smartNimcache]
|
||||
exec "$# jsonscript --nimcache:$# compiler" / "nim.nim" %
|
||||
[nimi, smartNimcache]
|
||||
|
||||
if sameFileContent(output, i.thVersion):
|
||||
copyExe(output, finalDest)
|
||||
echo "executables are equal: SUCCESS!"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue