# Add a flag defining what THE_ISA should be for all compilation
env.Append(CPPDEFINES=[('THE_ISA','%s_ISA' % env['TARGET_ISA'].upper())])
+# Workaround for bug in SCons version > 0.97d20071212
+# Scons bug id: 2006 M5 Bug id: 308
+for root, dirs, files in os.walk(base_dir, topdown=True):
+ Dir(root[len(base_dir) + 1:])
+
########################################################################
#
# Walk the tree and execute all SConscripts in subdirectories
Import('*')
if env['TARGET_ISA'] == 'mips':
-# Workaround for bug in SCons version > 0.97d20071212
-# Scons bug id: 2006 M5 Bug id: 308
- Dir('isa/formats')
Source('faults.cc')
Source('regfile/int_regfile.cc')
Source('regfile/float_regfile.cc')
Import('*')
if env['TARGET_ISA'] == 'sparc':
-# Workaround for bug in SCons version > 0.97d20071212
-# Scons bug id: 2006 M5 Bug id: 308
- Dir('isa/formats')
- Dir('isa/formats/mem')
Source('asi.cc')
Source('faults.cc')
Source('floatregfile.cc')
# Only non-header files need to be compiled.
if not f.path.endswith('.hh'):
Source(f)
-
- # Workaround for bug in SCons version > 0.97d20071212
- # Scons bug id: 2006 M5 Bug id: 308
- from os.path import dirname, join as joinpath
-
- Dir('isa')
- Dir('isa/microops')
- Dir('isa/decoder')
- Dir('isa/formats')
- Dir('isa/insts')
- isa_dirs = set(map(lambda x:dirname(x), python_files))
- for d in isa_dirs:
- Dir(joinpath('isa/insts', d))
-
print i,
print ", please set USE_CHECKER=False or use one of those CPU models"
Exit(1)
-# Workaround for bug in SCons version > 0.97d20071212
-# Scons bug id: 2006 M5 Bug id: 308
-else:
- Dir('checker')
TraceFlag('Activity')
TraceFlag('Commit')
Source('linux/linux_syscalls.cc')
Source('linux/printk.cc')
- # Workaround for bug in SCons version > 0.97d20071212
- # Scons bug id: 2006 M5 Bug id: 308
- Dir('tru64')
-
if env['TARGET_ISA'] == 'alpha':
Source('tru64/dump_mbuf.cc')
Source('tru64/printf.cc')
Source('tru64/tru64_events.cc')
Source('tru64/tru64_syscalls.cc')
TraceFlag('BADADDR')
-
-# Workaround for bug in SCons version > 0.97d20071212
-# Scons bug id: 2006 M5 Bug id: 308
-else:
- Dir('linux')
- if env['TARGET_ISA'] == 'alpha':
- Dir('tru64')
- elif env['TARGET_ISA'] == 'sparc':
- Dir('solaris')
SimObject('PhysicalMemory.py')
SimObject('MemObject.py')
-# Workaround for bug in SCons version > 0.97d20071212
-# Scons bug id: 2006 M5 Bug id: 308
-Dir('config')
-
Source('bridge.cc')
Source('bus.cc')
Source('dram.cc')