properly fix #10030 by skipping all external configs (#10324)

This commit is contained in:
Timothee Cour
2019-01-15 23:14:55 -08:00
committed by Andreas Rumpf
parent fbd6743ea1
commit e0afacb9f2
3 changed files with 7 additions and 7 deletions

View File

@@ -27,9 +27,8 @@ build_nim_csources(){
[ -f $nim_csources ] || echo_run build_nim_csources
# Note: if fails, may need to `cd csources && git pull`
# Note: --skipUserCfg is to prevent newer flags from
# breaking bootstrap phase
echo_run bin/nim c --skipUserCfg koch
# see D20190115T162028
echo_run bin/nim c --skipUserCfg --skipParentCfg koch
echo_run ./koch boot -d:release
echo_run ./koch tools # Compile Nimble and other tools.

View File

@@ -77,7 +77,7 @@ Advanced options:
--nilseqs:on|off allow 'nil' for strings/seqs for
backwards compatibility
--oldast:on|off use old AST for backwards compatibility
--skipCfg do not read the general configuration file
--skipCfg do not read the nim installation's configuration file
--skipUserCfg do not read the user's configuration file
--skipParentCfg do not read the parent dirs' configuration files
--skipProjCfg do not read the project's configuration file

View File

@@ -287,9 +287,10 @@ proc boot(args: string) =
for i in 0..2:
echo "iteration: ", i+1
let extraOption = if i == 0:
"--skipUserCfg"
# forward compatibility: for bootstrap (1st iteration), avoid user flags
# that could break things, see #10030
"--skipUserCfg --skipParentCfg"
# Note(D20190115T162028:here): the configs are skipped for bootstrap
# (1st iteration) to prevent newer flags from breaking bootstrap phase.
# fixes #10030.
else: ""
exec i.thVersion & " $# $# $# --nimcache:$# compiler" / "nim.nim" %
[bootOptions, extraOption, args, smartNimcache]