Browse Source

waf: set variant of BuildContext classes in configure

Otherwise, a call like `waf configure --board <foo> <command1>` will make
`<command1>` run on wrong variant if there was a different variant configured
previously, or an empty variant if the project is "distcleaned".
master
Gustavo Jose de Sousa 9 years ago committed by Lucas De Marchi
parent
commit
f936291a52
  1. 13
      wscript

13
wscript

@ -25,6 +25,12 @@ Configure.autoconfig = 'clobber' @@ -25,6 +25,12 @@ Configure.autoconfig = 'clobber'
# this makes recompilation at least when defines change. which might
# be sufficient.
def _set_build_context_variant(variant):
for c in Context.classes:
if not issubclass(c, Build.BuildContext):
continue
c.variant = variant
def init(ctx):
env = ConfigSet.ConfigSet()
try:
@ -37,10 +43,7 @@ def init(ctx): @@ -37,10 +43,7 @@ def init(ctx):
return
# define the variant build commands according to the board
for c in Context.classes:
if not issubclass(c, Build.BuildContext):
continue
c.variant = env.VARIANT
_set_build_context_variant(env.VARIANT)
def options(opt):
opt.load('compiler_cxx compiler_c waf_unit_test python')
@ -123,6 +126,8 @@ def configure(cfg): @@ -123,6 +126,8 @@ def configure(cfg):
cfg.env.VARIANT = cfg.env.BOARD
if cfg.env.DEBUG:
cfg.env.VARIANT += '-debug'
_set_build_context_variant(cfg.env.VARIANT)
cfg.setenv(cfg.env.VARIANT)
cfg.env.BOARD = cfg.options.board

Loading…
Cancel
Save