[CI] now enables NIM_COMPILE_TO_CPP=true to run without allow_failures (#10315)
* better fix for `nim cpp` bootstrap error: error: no member named raise_id * [CI] now enables runs NIM_COMPILE_TO_CPP=true without allow_failures * workaround refs #10343
This commit is contained in:
parent
15584879b9
commit
42bac52426
4 changed files with 24 additions and 11 deletions
21
koch.nim
21
koch.nim
|
|
@ -281,19 +281,24 @@ proc boot(args: string) =
|
|||
let smartNimcache = (if "release" in args: "nimcache/r_" else: "nimcache/d_") &
|
||||
hostOs & "_" & hostCpu
|
||||
|
||||
copyExe(findStartNim(), 0.thVersion)
|
||||
for i in 0..2+ord(useCpp):
|
||||
# do the first iteration in C mode in order to avoid problem #10315:
|
||||
let defaultCommand = if useCpp and i > 0: "cpp" else: "c"
|
||||
let nimStart = findStartNim()
|
||||
copyExe(nimStart, 0.thVersion)
|
||||
for i in 0..2:
|
||||
let defaultCommand = if useCpp: "cpp" else: "c"
|
||||
let bootOptions = if args.len == 0 or args.startsWith("-"): defaultCommand else: ""
|
||||
|
||||
echo "iteration: ", i+1
|
||||
let extraOption = if i == 0:
|
||||
"--skipUserCfg --skipParentCfg"
|
||||
var extraOption = ""
|
||||
if i == 0:
|
||||
extraOption.add " --skipUserCfg --skipParentCfg"
|
||||
# Note(D20190115T162028:here): the configs are skipped for bootstrap
|
||||
# (1st iteration) to prevent newer flags from breaking bootstrap phase.
|
||||
# fixes #10030.
|
||||
else: ""
|
||||
let ret = execCmdEx(nimStart & " --version")
|
||||
doAssert ret.exitCode == 0
|
||||
let version = ret.output.splitLines[0]
|
||||
if version.startsWith "Nim Compiler Version 0.19.0":
|
||||
extraOption.add " -d:nimBoostrapCsources0_19_0"
|
||||
# remove this when csources get updated
|
||||
exec i.thVersion & " $# $# $# --nimcache:$# compiler" / "nim.nim" %
|
||||
[bootOptions, extraOption, args, smartNimcache]
|
||||
if sameFileContent(output, i.thVersion):
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue