SCons: Export export_vars so SConsopts files can add to them

This commit is contained in:
Nathan Binkert 2009-04-21 08:17:36 -07:00
parent 97b6947eb7
commit b0489d18ed
2 changed files with 9 additions and 6 deletions

View file

@ -654,6 +654,10 @@ Export('all_cpu_list', 'default_cpus')
sticky_vars = Variables(args=ARGUMENTS)
Export('sticky_vars')
# Sticky variables that should be exported
export_vars = []
Export('export_vars')
# Non-sticky variables only apply to the current build.
nonsticky_vars = Variables(args=ARGUMENTS)
Export('nonsticky_vars')
@ -698,10 +702,9 @@ nonsticky_vars.AddVariables(
)
# These variables get exported to #defines in config/*.hh (see src/SConscript).
env.ExportVariables = ['FULL_SYSTEM', 'USE_FENV', \
'USE_MYSQL', 'NO_FAST_ALLOC', 'FAST_ALLOC_DEBUG', \
'FAST_ALLOC_STATS', 'SS_COMPATIBLE_FP', \
'USE_CHECKER', 'TARGET_ISA', 'CP_ANNOTATE']
export_vars += ['FULL_SYSTEM', 'USE_FENV', 'USE_MYSQL',
'NO_FAST_ALLOC', 'FAST_ALLOC_DEBUG', 'FAST_ALLOC_STATS',
'SS_COMPATIBLE_FP', 'USE_CHECKER', 'TARGET_ISA', 'CP_ANNOTATE']
###################################################
#

View file

@ -48,7 +48,7 @@ Import('*')
# Children need to see the environment
Export('env')
build_env = dict([(opt, env[opt]) for opt in env.ExportVariables])
build_env = dict([(opt, env[opt]) for opt in export_vars])
def sort_list(_list):
"""return a sorted copy of '_list'"""
@ -242,7 +242,7 @@ for extra_dir in extras_dir_list:
build_dir = joinpath(env['BUILDDIR'], root[prefix_len:])
SConscript(joinpath(root, 'SConscript'), build_dir=build_dir)
for opt in env.ExportVariables:
for opt in export_vars:
env.ConfigFile(opt)
########################################################################