diff options
author | Nathan Binkert <nate@binkert.org> | 2007-07-25 18:21:11 -0700 |
---|---|---|
committer | Nathan Binkert <nate@binkert.org> | 2007-07-25 18:21:11 -0700 |
commit | 19c01e82b113db636bbac34f77a0f5f4a7525088 (patch) | |
tree | 13ce2fe70f5499f08759cbf0d9418292a850426f /src | |
parent | 26b1c455e0aed69eda0cc165b5084edb1b557c38 (diff) | |
download | gem5-19c01e82b113db636bbac34f77a0f5f4a7525088.tar.xz |
Add a new SCons option called EXTRAS that allows you to include stuff in
the build process that is outside of the main M5 tree.
--HG--
extra : convert_revision : 6edc4fbc58240f83b59c7b5707c0390cdb85d9ec
Diffstat (limited to 'src')
-rw-r--r-- | src/SConscript | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/SConscript b/src/SConscript index 34c14dc51..1cd1a1627 100644 --- a/src/SConscript +++ b/src/SConscript @@ -151,7 +151,6 @@ env.Append(CPPDEFINES=[('THE_ISA','%s_ISA' % env['TARGET_ISA'].upper())]) # # Walk the tree and execute all SConscripts # -scripts = [] srcdir = env['SRCDIR'] for root, dirs, files in os.walk(srcdir, topdown=True): if root == srcdir: @@ -164,6 +163,15 @@ for root, dirs, files in os.walk(srcdir, topdown=True): base = root[len(srcdir) + 1:] SConscript(joinpath(base, 'SConscript')) +for extra in env['EXTRAS'].split(':'): + extra = os.path.expanduser(extra) + env.Append(CPPPATH=[Dir(extra)]) + for root, dirs, files in os.walk(extra, topdown=True): + if 'SConscript' in files: + subdir = root[len(os.path.dirname(extra))+1:] + build_dir = joinpath(env['BUILDDIR'], subdir) + SConscript(joinpath(root, 'SConscript'), build_dir=build_dir) + for opt in env.ExportOptions: env.ConfigFile(opt) |