ruby: add RUBY sticky option that must be set to add ruby to the build
authorNathan Binkert <nate@binkert.org>
Mon, 11 May 2009 17:38:46 +0000 (10:38 -0700)
committerNathan Binkert <nate@binkert.org>
Mon, 11 May 2009 17:38:46 +0000 (10:38 -0700)
Default is false

22 files changed:
SConstruct
src/mem/SConscript
src/mem/gems_common/SConscript
src/mem/gems_common/ioutil/SConscript
src/mem/protocol/SConscript
src/mem/ruby/SConscript
src/mem/ruby/SConsopts
src/mem/ruby/buffers/SConscript
src/mem/ruby/common/SConscript
src/mem/ruby/config/SConscript
src/mem/ruby/eventqueue/SConscript
src/mem/ruby/network/garnet-fixed-pipeline/SConscript
src/mem/ruby/network/garnet-flexible-pipeline/SConscript
src/mem/ruby/network/orion/SConscript
src/mem/ruby/network/simple/SConscript
src/mem/ruby/profiler/SConscript
src/mem/ruby/recorder/SConscript
src/mem/ruby/slicc_interface/SConscript
src/mem/ruby/system/SConscript
src/mem/ruby/tester/SConscript
src/mem/slicc/SConscript
tests/SConscript

index 5cbb50dceebeb68f85ebe50f5d76327695c0c39e..85c5de1423b9fd10efd81edfd4ccc55dfa8c2be2 100644 (file)
@@ -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 = '''
index 87498d21dd982d4aa5979436a49fd1111366c4e9..21335a709aee74f1b0960771354b1d79f1445904 100644 (file)
@@ -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')
index bd29a3737718975f0595b844d55e26f7f9f3890d..69e7f88a3c6d15cbdd1348c7b59e2da24a43e235 100644 (file)
@@ -30,6 +30,9 @@
 
 Import('*')
 
+if not env['RUBY']:
+    Return()
+
 #benv['LEXCOM'] = "$LEX $LEXFLAGS -o$TARGET $SOURCES"
 benv = env.Clone()
 benv.Append(YACCFLAGS=["-pat"])
index 4c9357dfc78cab1959c19def9527b81576ae844c..1cbab34b9b7296500f7a1a2c9d06039fe18f0cbc 100644 (file)
@@ -30,5 +30,8 @@
 
 Import('*')
 
+if not env['RUBY']:
+    Return()
+
 Source('confio.cc')
 Source('initvar.cc')
index 3a2e221510e74715cb24abf4db76aff929276b32..17701e403662a4c92605b40a65da970113f2849d 100644 (file)
@@ -40,6 +40,9 @@ import SCons
 
 Import('*')
 
+if not env['RUBY']:
+    Return()
+
 slicc_dir = Dir('../slicc')
 protocol_dir = Dir('.')
 html_dir = Dir('html')
index 5ad6bd08f5aad731e08aebe7417e496428dba048..4c52d86881ad1462ff87a32dc6693adfe615e1eb 100644 (file)
@@ -37,6 +37,9 @@ import SCons
 
 Import('*')
 
+if not env['RUBY']:
+    Return()
+
 Source('init.cc')
 
 def do_embed_text(target, source, env):
index 7278558fc4c7446c9f22434da4b458bab231d465..a17b2323729106ad2a4d361106f1c99502733db6 100644 (file)
@@ -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))
index 3b4873c6b04f538f51a3aea9393233f7ca4cc8bd..2608d5e2344d850a52c0cf26d7d7a22c6cd9d296 100644 (file)
@@ -30,5 +30,8 @@
 
 Import('*')
 
+if not env['RUBY']:
+    Return()
+
 Source('MessageBuffer.cc')
 Source('MessageBufferNode.cc')
index 8313aa7ad124c871e7bb4cc2447e33c9604f8387..15df8312ef3ace9cf2265d7b67b529cf679efde3 100644 (file)
@@ -30,6 +30,9 @@
 
 Import('*')
 
+if not env['RUBY']:
+    Return()
+
 Source('Address.cc')
 Source('DataBlock.cc')
 Source('Debug.cc')
index d01c9236bf7b86610af4924afd03024c8a02bde5..05ed2d27dcb73209e63ee3fdb0d03d396dba41b7 100644 (file)
@@ -30,4 +30,7 @@
 
 Import('*')
 
+if not env['RUBY']:
+    Return()
+
 Source('RubyConfig.cc')
index 523d71c092a41438c9b4d121865c7e5bb553a36d..0312df4e4b3f22b9e02cb06a4b8a3fd01f4f561d 100644 (file)
@@ -30,5 +30,8 @@
 
 Import('*')
 
+if not env['RUBY']:
+    Return()
+
 Source('RubyEventQueue.cc')
 Source('RubyEventQueueNode.cc')
index bcd1b09ac1e2d6e2225cce853b1c4f48a907dbdf..0814df2f5670de75391a12de708f98e30ae0e6d7 100644 (file)
@@ -30,6 +30,9 @@
 
 Import('*')
 
+if not env['RUBY']:
+    Return()
+
 Source('GarnetNetwork_d.cc')
 Source('InputUnit_d.cc')
 Source('NetworkInterface_d.cc')
index 039ef41c23ee091c0ee1144f693e3e23d8bc84d7..a376bf10f4c2dc8f0f44eae30ffd8b6e04a7cfc6 100644 (file)
@@ -30,6 +30,9 @@
 
 Import('*')
 
+if not env['RUBY']:
+    Return()
+
 Source('GarnetNetwork.cc')
 Source('InVcState.cc')
 Source('NetworkInterface.cc')
index efa9025d6ed3de4a6fce750d898804a06617ea24..99b38bc2233cb0dca7ff371658f31ea28597e232 100644 (file)
@@ -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)
index b12bfc8542f9b3975c8825b6b446916e2925f876..3df736c00147fddaa4b6d60172843cc3c0395a2c 100644 (file)
@@ -30,6 +30,9 @@
 
 Import('*')
 
+if not env['RUBY']:
+    Return()
+
 Source('PerfectSwitch.cc')
 Source('SimpleNetwork.cc')
 Source('Switch.cc')
index b27d1da0c48b52ea02a11c06733def864df9e39b..008a36a29c9d7fd10cf9420cd222bfc847396b9d 100644 (file)
@@ -30,6 +30,9 @@
 
 Import('*')
 
+if not env['RUBY']:
+    Return()
+
 Source('AccessTraceForAddress.cc')
 Source('AddressProfiler.cc')
 Source('CacheProfiler.cc')
index 5b225edc63e5056953e9af523a8bbe5af2295912..e56fc87221c4cee790a6deab8967f6966592952d 100644 (file)
@@ -30,4 +30,7 @@
 
 Import('*')
 
+if not env['RUBY']:
+    Return()
+
 Source('TraceRecord.cc', Werror=False)
index d54b2dbc395e8c49344c442540891d99c66d4d1e..0cb45320909fec9a6a9c213661a95e1947d861e6 100644 (file)
@@ -30,6 +30,9 @@
 
 Import('*')
 
+if not env['RUBY']:
+    Return()
+
 Source('AbstractCacheEntry.cc')
 Source('AbstractChip.cc')
 Source('RubySlicc_Profiler_interface.cc')
index 5ce6121076db4a0b8808712892c61b5a27008911..ee9b359c599ee8d6fb18a3f7cccfa7a997fdd9d4 100644 (file)
@@ -30,6 +30,9 @@
 
 Import('*')
 
+if not env['RUBY']:
+    Return()
+
 Source('DirectoryMemory.cc')
 Source('MemoryControl.cc')
 Source('MemoryNode.cc')
index e1a489106313ed3e967d03d866b14292e82f5f10..6409b4f507b9a9f7f17818e37d6fd2fb655da16c 100644 (file)
@@ -30,6 +30,9 @@
 
 Import('*')
 
+if not env['RUBY']:
+    Return()
+
 Source('Check.cc')
 Source('CheckTable.cc')
 Source('DetermGETXGenerator.cc')
index 39a6ac387ffa54eba97fc2390f60c1792fbf1b77..64a1993472627c7db35b1c89a479076f49930e74 100644 (file)
@@ -40,6 +40,9 @@ import SCons
 
 Import('*')
 
+if not env['RUBY']:
+    Return()
+
 common_dir = Dir('../gems_common')
 
 #
index a44a9a5932ab8e981435e6349db3814e3d9ec5a8..b9c08cb145740565993e42344b03b5cb196198a3 100644 (file)
@@ -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))