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 /SConstruct | |
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 'SConstruct')
-rw-r--r-- | SConstruct | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/SConstruct b/SConstruct index ec60964e4..1f3dfb5bb 100644 --- a/SConstruct +++ b/SConstruct @@ -435,6 +435,13 @@ all_isa_list.sort() all_cpu_list.sort() default_cpus.sort() +def ExtraPathValidator(key, val, env): + paths = val.split(':') + for path in paths: + path = os.path.expanduser(path) + if not isdir(path): + raise AttributeError, "Invalid path: '%s'" % path + sticky_opts.AddOptions( EnumOption('TARGET_ISA', 'Target ISA', 'alpha', all_isa_list), BoolOption('FULL_SYSTEM', 'Full-system support', False), @@ -461,7 +468,9 @@ sticky_opts.AddOptions( ('BATCH_CMD', 'Batch pool submission command name', 'qdo'), ('PYTHONHOME', 'Override the default PYTHONHOME for this system (use with caution)', - '%s:%s' % (sys.prefix, sys.exec_prefix)) + '%s:%s' % (sys.prefix, sys.exec_prefix)), + ('EXTRAS', 'Add Extra directories to the compilation', '', + ExtraPathValidator) ) nonsticky_opts.AddOptions( @@ -613,6 +622,8 @@ base_env = env for build_path in build_paths: print "Building in", build_path + env['BUILDDIR'] = build_path + # build_dir is the tail component of build path, and is used to # determine the build parameters (e.g., 'ALPHA_SE') (build_root, build_dir) = os.path.split(build_path) |