summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNathan Binkert <nate@binkert.org>2009-05-11 10:38:46 -0700
committerNathan Binkert <nate@binkert.org>2009-05-11 10:38:46 -0700
commitcf6b4ef734293e1efdfa015519230703be5d324a (patch)
tree933fa3ce189682857b3d8caa2a32728681024ca5
parentb174ec065e2b9f8ffa68c350b2563819eef5e9b1 (diff)
downloadgem5-cf6b4ef734293e1efdfa015519230703be5d324a.tar.xz
ruby: add RUBY sticky option that must be set to add ruby to the build
Default is false
-rw-r--r--SConstruct5
-rw-r--r--src/mem/SConscript8
-rw-r--r--src/mem/gems_common/SConscript3
-rw-r--r--src/mem/gems_common/ioutil/SConscript3
-rw-r--r--src/mem/protocol/SConscript3
-rw-r--r--src/mem/ruby/SConscript3
-rw-r--r--src/mem/ruby/SConsopts3
-rw-r--r--src/mem/ruby/buffers/SConscript3
-rw-r--r--src/mem/ruby/common/SConscript3
-rw-r--r--src/mem/ruby/config/SConscript3
-rw-r--r--src/mem/ruby/eventqueue/SConscript3
-rw-r--r--src/mem/ruby/network/garnet-fixed-pipeline/SConscript3
-rw-r--r--src/mem/ruby/network/garnet-flexible-pipeline/SConscript3
-rw-r--r--src/mem/ruby/network/orion/SConscript3
-rw-r--r--src/mem/ruby/network/simple/SConscript3
-rw-r--r--src/mem/ruby/profiler/SConscript3
-rw-r--r--src/mem/ruby/recorder/SConscript3
-rw-r--r--src/mem/ruby/slicc_interface/SConscript3
-rw-r--r--src/mem/ruby/system/SConscript3
-rw-r--r--src/mem/ruby/tester/SConscript3
-rw-r--r--src/mem/slicc/SConscript3
-rw-r--r--tests/SConscript5
22 files changed, 69 insertions, 6 deletions
diff --git a/SConstruct b/SConstruct
index 5cbb50dce..85c5de142 100644
--- a/SConstruct
+++ b/SConstruct
@@ -345,8 +345,9 @@ global_sticky_vars.AddVariables(
('BATCH', 'Use batch pool for build and tests', False),
('BATCH_CMD', 'Batch pool submission command name', 'qdo'),
('EXTRAS', 'Add Extra directories to the compilation', '',
- PathListAllExist, PathListMakeAbsolute)
- )
+ PathListAllExist, PathListMakeAbsolute),
+ BoolVariable('RUBY', 'Build with Ruby', False),
+ )
# base help text
help_text = '''
diff --git a/src/mem/SConscript b/src/mem/SConscript
index 87498d21d..21335a709 100644
--- a/src/mem/SConscript
+++ b/src/mem/SConscript
@@ -34,7 +34,9 @@ SimObject('Bridge.py')
SimObject('Bus.py')
SimObject('MemObject.py')
SimObject('PhysicalMemory.py')
-SimObject('RubyMemory.py')
+
+if env['RUBY']:
+ SimObject('RubyMemory.py')
Source('bridge.cc')
Source('bus.cc')
@@ -45,7 +47,9 @@ Source('physical.cc')
Source('port.cc')
Source('tport.cc')
Source('mport.cc')
-Source('rubymem.cc')
+
+if env['RUBY']:
+ Source('rubymem.cc')
if env['FULL_SYSTEM']:
Source('vport.cc')
diff --git a/src/mem/gems_common/SConscript b/src/mem/gems_common/SConscript
index bd29a3737..69e7f88a3 100644
--- a/src/mem/gems_common/SConscript
+++ b/src/mem/gems_common/SConscript
@@ -30,6 +30,9 @@
Import('*')
+if not env['RUBY']:
+ Return()
+
#benv['LEXCOM'] = "$LEX $LEXFLAGS -o$TARGET $SOURCES"
benv = env.Clone()
benv.Append(YACCFLAGS=["-pat"])
diff --git a/src/mem/gems_common/ioutil/SConscript b/src/mem/gems_common/ioutil/SConscript
index 4c9357dfc..1cbab34b9 100644
--- a/src/mem/gems_common/ioutil/SConscript
+++ b/src/mem/gems_common/ioutil/SConscript
@@ -30,5 +30,8 @@
Import('*')
+if not env['RUBY']:
+ Return()
+
Source('confio.cc')
Source('initvar.cc')
diff --git a/src/mem/protocol/SConscript b/src/mem/protocol/SConscript
index 3a2e22151..17701e403 100644
--- a/src/mem/protocol/SConscript
+++ b/src/mem/protocol/SConscript
@@ -40,6 +40,9 @@ import SCons
Import('*')
+if not env['RUBY']:
+ Return()
+
slicc_dir = Dir('../slicc')
protocol_dir = Dir('.')
html_dir = Dir('html')
diff --git a/src/mem/ruby/SConscript b/src/mem/ruby/SConscript
index 5ad6bd08f..4c52d8688 100644
--- a/src/mem/ruby/SConscript
+++ b/src/mem/ruby/SConscript
@@ -37,6 +37,9 @@ import SCons
Import('*')
+if not env['RUBY']:
+ Return()
+
Source('init.cc')
def do_embed_text(target, source, env):
diff --git a/src/mem/ruby/SConsopts b/src/mem/ruby/SConsopts
index 7278558fc..a17b23237 100644
--- a/src/mem/ruby/SConsopts
+++ b/src/mem/ruby/SConsopts
@@ -30,6 +30,9 @@
Import('*')
+if not main['RUBY']:
+ Return()
+
sticky_vars.AddVariables(
BoolVariable('NO_VECTOR_BOUNDS_CHECKS', "Don't do bounds checks", True),
BoolVariable('RUBY_DEBUG', "Add debugging stuff to Ruby", False))
diff --git a/src/mem/ruby/buffers/SConscript b/src/mem/ruby/buffers/SConscript
index 3b4873c6b..2608d5e23 100644
--- a/src/mem/ruby/buffers/SConscript
+++ b/src/mem/ruby/buffers/SConscript
@@ -30,5 +30,8 @@
Import('*')
+if not env['RUBY']:
+ Return()
+
Source('MessageBuffer.cc')
Source('MessageBufferNode.cc')
diff --git a/src/mem/ruby/common/SConscript b/src/mem/ruby/common/SConscript
index 8313aa7ad..15df8312e 100644
--- a/src/mem/ruby/common/SConscript
+++ b/src/mem/ruby/common/SConscript
@@ -30,6 +30,9 @@
Import('*')
+if not env['RUBY']:
+ Return()
+
Source('Address.cc')
Source('DataBlock.cc')
Source('Debug.cc')
diff --git a/src/mem/ruby/config/SConscript b/src/mem/ruby/config/SConscript
index d01c9236b..05ed2d27d 100644
--- a/src/mem/ruby/config/SConscript
+++ b/src/mem/ruby/config/SConscript
@@ -30,4 +30,7 @@
Import('*')
+if not env['RUBY']:
+ Return()
+
Source('RubyConfig.cc')
diff --git a/src/mem/ruby/eventqueue/SConscript b/src/mem/ruby/eventqueue/SConscript
index 523d71c09..0312df4e4 100644
--- a/src/mem/ruby/eventqueue/SConscript
+++ b/src/mem/ruby/eventqueue/SConscript
@@ -30,5 +30,8 @@
Import('*')
+if not env['RUBY']:
+ Return()
+
Source('RubyEventQueue.cc')
Source('RubyEventQueueNode.cc')
diff --git a/src/mem/ruby/network/garnet-fixed-pipeline/SConscript b/src/mem/ruby/network/garnet-fixed-pipeline/SConscript
index bcd1b09ac..0814df2f5 100644
--- a/src/mem/ruby/network/garnet-fixed-pipeline/SConscript
+++ b/src/mem/ruby/network/garnet-fixed-pipeline/SConscript
@@ -30,6 +30,9 @@
Import('*')
+if not env['RUBY']:
+ Return()
+
Source('GarnetNetwork_d.cc')
Source('InputUnit_d.cc')
Source('NetworkInterface_d.cc')
diff --git a/src/mem/ruby/network/garnet-flexible-pipeline/SConscript b/src/mem/ruby/network/garnet-flexible-pipeline/SConscript
index 039ef41c2..a376bf10f 100644
--- a/src/mem/ruby/network/garnet-flexible-pipeline/SConscript
+++ b/src/mem/ruby/network/garnet-flexible-pipeline/SConscript
@@ -30,6 +30,9 @@
Import('*')
+if not env['RUBY']:
+ Return()
+
Source('GarnetNetwork.cc')
Source('InVcState.cc')
Source('NetworkInterface.cc')
diff --git a/src/mem/ruby/network/orion/SConscript b/src/mem/ruby/network/orion/SConscript
index efa9025d6..99b38bc22 100644
--- a/src/mem/ruby/network/orion/SConscript
+++ b/src/mem/ruby/network/orion/SConscript
@@ -30,6 +30,9 @@
Import('*')
+if not env['RUBY']:
+ Return()
+
Source('NetworkPower.cc', Werror=False)
Source('power_arbiter.cc')
Source('power_array.cc', Werror=False)
diff --git a/src/mem/ruby/network/simple/SConscript b/src/mem/ruby/network/simple/SConscript
index b12bfc854..3df736c00 100644
--- a/src/mem/ruby/network/simple/SConscript
+++ b/src/mem/ruby/network/simple/SConscript
@@ -30,6 +30,9 @@
Import('*')
+if not env['RUBY']:
+ Return()
+
Source('PerfectSwitch.cc')
Source('SimpleNetwork.cc')
Source('Switch.cc')
diff --git a/src/mem/ruby/profiler/SConscript b/src/mem/ruby/profiler/SConscript
index b27d1da0c..008a36a29 100644
--- a/src/mem/ruby/profiler/SConscript
+++ b/src/mem/ruby/profiler/SConscript
@@ -30,6 +30,9 @@
Import('*')
+if not env['RUBY']:
+ Return()
+
Source('AccessTraceForAddress.cc')
Source('AddressProfiler.cc')
Source('CacheProfiler.cc')
diff --git a/src/mem/ruby/recorder/SConscript b/src/mem/ruby/recorder/SConscript
index 5b225edc6..e56fc8722 100644
--- a/src/mem/ruby/recorder/SConscript
+++ b/src/mem/ruby/recorder/SConscript
@@ -30,4 +30,7 @@
Import('*')
+if not env['RUBY']:
+ Return()
+
Source('TraceRecord.cc', Werror=False)
diff --git a/src/mem/ruby/slicc_interface/SConscript b/src/mem/ruby/slicc_interface/SConscript
index d54b2dbc3..0cb453209 100644
--- a/src/mem/ruby/slicc_interface/SConscript
+++ b/src/mem/ruby/slicc_interface/SConscript
@@ -30,6 +30,9 @@
Import('*')
+if not env['RUBY']:
+ Return()
+
Source('AbstractCacheEntry.cc')
Source('AbstractChip.cc')
Source('RubySlicc_Profiler_interface.cc')
diff --git a/src/mem/ruby/system/SConscript b/src/mem/ruby/system/SConscript
index 5ce612107..ee9b359c5 100644
--- a/src/mem/ruby/system/SConscript
+++ b/src/mem/ruby/system/SConscript
@@ -30,6 +30,9 @@
Import('*')
+if not env['RUBY']:
+ Return()
+
Source('DirectoryMemory.cc')
Source('MemoryControl.cc')
Source('MemoryNode.cc')
diff --git a/src/mem/ruby/tester/SConscript b/src/mem/ruby/tester/SConscript
index e1a489106..6409b4f50 100644
--- a/src/mem/ruby/tester/SConscript
+++ b/src/mem/ruby/tester/SConscript
@@ -30,6 +30,9 @@
Import('*')
+if not env['RUBY']:
+ Return()
+
Source('Check.cc')
Source('CheckTable.cc')
Source('DetermGETXGenerator.cc')
diff --git a/src/mem/slicc/SConscript b/src/mem/slicc/SConscript
index 39a6ac387..64a199347 100644
--- a/src/mem/slicc/SConscript
+++ b/src/mem/slicc/SConscript
@@ -40,6 +40,9 @@ import SCons
Import('*')
+if not env['RUBY']:
+ Return()
+
common_dir = Dir('../gems_common')
#
diff --git a/tests/SConscript b/tests/SConscript
index a44a9a593..b9c08cb14 100644
--- a/tests/SConscript
+++ b/tests/SConscript
@@ -265,8 +265,9 @@ else:
configs += ['simple-atomic', 'simple-timing', 'o3-timing', 'memtest',
'simple-atomic-mp', 'simple-timing-mp', 'o3-timing-mp']
-# Hack for Ruby
-configs += [c + '-ruby' for c in configs]
+if env['RUBY']:
+ # Hack for Ruby
+ configs += [c + '-ruby' for c in configs]
cwd = os.getcwd()
os.chdir(str(Dir('.').srcdir))