diff --git a/SConscript b/SConscript index f6875a630..10722007a 100644 --- a/SConscript +++ b/SConscript @@ -420,7 +420,9 @@ env.Command('targetarch', None, link_targetarch) # libelf build is described in its own SConscript file. -SConscript('libelf/SConscript', exports = 'env', duplicate=0) +# SConscript-local is the per-config build, which just copies some +# header files into a place where they can be found. +SConscript('libelf/SConscript-local', exports = 'env', duplicate=0) SConscript('sim/pyconfig/SConscript', exports = ['env', 'obj_desc_files'], duplicate=0) diff --git a/build/SConstruct b/build/SConstruct index 08eb13ea1..381b6ecda 100644 --- a/build/SConstruct +++ b/build/SConstruct @@ -246,6 +246,13 @@ default_env.Append(CCFLAGS='-pipe') default_env.Append(CCFLAGS='-fno-strict-aliasing') default_env.Append(CCFLAGS=Split('-Wall -Wno-sign-compare -Werror -Wundef')) +# libelf build is described in its own SConscript file. Using a +# dictionary for exports lets us export "default_env" so the +# SConscript will see it as "env". SConscript-global is the build in +# build/libelf shared among all configs. +default_env.SConscript('m5/libelf/SConscript-global', + exports={'env' : default_env}) + ################################################### # # Define build environments for selected configurations.