ruby: add RUBY sticky option that must be set to add ruby to the build

Default is false
This commit is contained in:
Nathan Binkert 2009-05-11 10:38:46 -07:00
parent b174ec065e
commit cf6b4ef734
22 changed files with 69 additions and 6 deletions

View file

@ -345,7 +345,8 @@ global_sticky_vars.AddVariables(
('BATCH', 'Use batch pool for build and tests', False), ('BATCH', 'Use batch pool for build and tests', False),
('BATCH_CMD', 'Batch pool submission command name', 'qdo'), ('BATCH_CMD', 'Batch pool submission command name', 'qdo'),
('EXTRAS', 'Add Extra directories to the compilation', '', ('EXTRAS', 'Add Extra directories to the compilation', '',
PathListAllExist, PathListMakeAbsolute) PathListAllExist, PathListMakeAbsolute),
BoolVariable('RUBY', 'Build with Ruby', False),
) )
# base help text # base help text

View file

@ -34,7 +34,9 @@ SimObject('Bridge.py')
SimObject('Bus.py') SimObject('Bus.py')
SimObject('MemObject.py') SimObject('MemObject.py')
SimObject('PhysicalMemory.py') SimObject('PhysicalMemory.py')
SimObject('RubyMemory.py')
if env['RUBY']:
SimObject('RubyMemory.py')
Source('bridge.cc') Source('bridge.cc')
Source('bus.cc') Source('bus.cc')
@ -45,7 +47,9 @@ Source('physical.cc')
Source('port.cc') Source('port.cc')
Source('tport.cc') Source('tport.cc')
Source('mport.cc') Source('mport.cc')
Source('rubymem.cc')
if env['RUBY']:
Source('rubymem.cc')
if env['FULL_SYSTEM']: if env['FULL_SYSTEM']:
Source('vport.cc') Source('vport.cc')

View file

@ -30,6 +30,9 @@
Import('*') Import('*')
if not env['RUBY']:
Return()
#benv['LEXCOM'] = "$LEX $LEXFLAGS -o$TARGET $SOURCES" #benv['LEXCOM'] = "$LEX $LEXFLAGS -o$TARGET $SOURCES"
benv = env.Clone() benv = env.Clone()
benv.Append(YACCFLAGS=["-pat"]) benv.Append(YACCFLAGS=["-pat"])

View file

@ -30,5 +30,8 @@
Import('*') Import('*')
if not env['RUBY']:
Return()
Source('confio.cc') Source('confio.cc')
Source('initvar.cc') Source('initvar.cc')

View file

@ -40,6 +40,9 @@ import SCons
Import('*') Import('*')
if not env['RUBY']:
Return()
slicc_dir = Dir('../slicc') slicc_dir = Dir('../slicc')
protocol_dir = Dir('.') protocol_dir = Dir('.')
html_dir = Dir('html') html_dir = Dir('html')

View file

@ -37,6 +37,9 @@ import SCons
Import('*') Import('*')
if not env['RUBY']:
Return()
Source('init.cc') Source('init.cc')
def do_embed_text(target, source, env): def do_embed_text(target, source, env):

View file

@ -30,6 +30,9 @@
Import('*') Import('*')
if not main['RUBY']:
Return()
sticky_vars.AddVariables( sticky_vars.AddVariables(
BoolVariable('NO_VECTOR_BOUNDS_CHECKS', "Don't do bounds checks", True), BoolVariable('NO_VECTOR_BOUNDS_CHECKS', "Don't do bounds checks", True),
BoolVariable('RUBY_DEBUG', "Add debugging stuff to Ruby", False)) BoolVariable('RUBY_DEBUG', "Add debugging stuff to Ruby", False))

View file

@ -30,5 +30,8 @@
Import('*') Import('*')
if not env['RUBY']:
Return()
Source('MessageBuffer.cc') Source('MessageBuffer.cc')
Source('MessageBufferNode.cc') Source('MessageBufferNode.cc')

View file

@ -30,6 +30,9 @@
Import('*') Import('*')
if not env['RUBY']:
Return()
Source('Address.cc') Source('Address.cc')
Source('DataBlock.cc') Source('DataBlock.cc')
Source('Debug.cc') Source('Debug.cc')

View file

@ -30,4 +30,7 @@
Import('*') Import('*')
if not env['RUBY']:
Return()
Source('RubyConfig.cc') Source('RubyConfig.cc')

View file

@ -30,5 +30,8 @@
Import('*') Import('*')
if not env['RUBY']:
Return()
Source('RubyEventQueue.cc') Source('RubyEventQueue.cc')
Source('RubyEventQueueNode.cc') Source('RubyEventQueueNode.cc')

View file

@ -30,6 +30,9 @@
Import('*') Import('*')
if not env['RUBY']:
Return()
Source('GarnetNetwork_d.cc') Source('GarnetNetwork_d.cc')
Source('InputUnit_d.cc') Source('InputUnit_d.cc')
Source('NetworkInterface_d.cc') Source('NetworkInterface_d.cc')

View file

@ -30,6 +30,9 @@
Import('*') Import('*')
if not env['RUBY']:
Return()
Source('GarnetNetwork.cc') Source('GarnetNetwork.cc')
Source('InVcState.cc') Source('InVcState.cc')
Source('NetworkInterface.cc') Source('NetworkInterface.cc')

View file

@ -30,6 +30,9 @@
Import('*') Import('*')
if not env['RUBY']:
Return()
Source('NetworkPower.cc', Werror=False) Source('NetworkPower.cc', Werror=False)
Source('power_arbiter.cc') Source('power_arbiter.cc')
Source('power_array.cc', Werror=False) Source('power_array.cc', Werror=False)

View file

@ -30,6 +30,9 @@
Import('*') Import('*')
if not env['RUBY']:
Return()
Source('PerfectSwitch.cc') Source('PerfectSwitch.cc')
Source('SimpleNetwork.cc') Source('SimpleNetwork.cc')
Source('Switch.cc') Source('Switch.cc')

View file

@ -30,6 +30,9 @@
Import('*') Import('*')
if not env['RUBY']:
Return()
Source('AccessTraceForAddress.cc') Source('AccessTraceForAddress.cc')
Source('AddressProfiler.cc') Source('AddressProfiler.cc')
Source('CacheProfiler.cc') Source('CacheProfiler.cc')

View file

@ -30,4 +30,7 @@
Import('*') Import('*')
if not env['RUBY']:
Return()
Source('TraceRecord.cc', Werror=False) Source('TraceRecord.cc', Werror=False)

View file

@ -30,6 +30,9 @@
Import('*') Import('*')
if not env['RUBY']:
Return()
Source('AbstractCacheEntry.cc') Source('AbstractCacheEntry.cc')
Source('AbstractChip.cc') Source('AbstractChip.cc')
Source('RubySlicc_Profiler_interface.cc') Source('RubySlicc_Profiler_interface.cc')

View file

@ -30,6 +30,9 @@
Import('*') Import('*')
if not env['RUBY']:
Return()
Source('DirectoryMemory.cc') Source('DirectoryMemory.cc')
Source('MemoryControl.cc') Source('MemoryControl.cc')
Source('MemoryNode.cc') Source('MemoryNode.cc')

View file

@ -30,6 +30,9 @@
Import('*') Import('*')
if not env['RUBY']:
Return()
Source('Check.cc') Source('Check.cc')
Source('CheckTable.cc') Source('CheckTable.cc')
Source('DetermGETXGenerator.cc') Source('DetermGETXGenerator.cc')

View file

@ -40,6 +40,9 @@ import SCons
Import('*') Import('*')
if not env['RUBY']:
Return()
common_dir = Dir('../gems_common') common_dir = Dir('../gems_common')
# #

View file

@ -265,8 +265,9 @@ else:
configs += ['simple-atomic', 'simple-timing', 'o3-timing', 'memtest', configs += ['simple-atomic', 'simple-timing', 'o3-timing', 'memtest',
'simple-atomic-mp', 'simple-timing-mp', 'o3-timing-mp'] 'simple-atomic-mp', 'simple-timing-mp', 'o3-timing-mp']
# Hack for Ruby if env['RUBY']:
configs += [c + '-ruby' for c in configs] # Hack for Ruby
configs += [c + '-ruby' for c in configs]
cwd = os.getcwd() cwd = os.getcwd()
os.chdir(str(Dir('.').srcdir)) os.chdir(str(Dir('.').srcdir))