summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xsrc/SConscript5
-rw-r--r--src/unittest/SConscript2
2 files changed, 5 insertions, 2 deletions
diff --git a/src/SConscript b/src/SConscript
index fd6e725a4..c30a4fd66 100755
--- a/src/SConscript
+++ b/src/SConscript
@@ -237,7 +237,7 @@ class UnitTest(object):
'''Create a UnitTest'''
all = []
- def __init__(self, target, *sources):
+ def __init__(self, target, *sources, **kwargs):
'''Specify the target name and any sources. Sources that are
not SourceFiles are evalued with Source(). All files are
guarded with a guard of the same name as the UnitTest
@@ -252,6 +252,7 @@ class UnitTest(object):
self.sources = srcs
self.target = target
+ self.main = kwargs.get('main', False)
UnitTest.all.append(self)
# Children should have access
@@ -906,6 +907,8 @@ def makeEnv(label, objsfx, strip = False, **kwargs):
flags = { test.target : True }
test_sources = Source.get(**flags)
test_objs = [ make_obj(s, static=True) for s in test_sources ]
+ if test.main:
+ test_objs += main_objs
testname = "unittest/%s.%s" % (test.target, label)
new_env.Program(testname, test_objs + static_objs)
diff --git a/src/unittest/SConscript b/src/unittest/SConscript
index 3ceae23b5..d409ec9a5 100644
--- a/src/unittest/SConscript
+++ b/src/unittest/SConscript
@@ -52,7 +52,7 @@ UnitTest('trietest', 'trietest.cc')
stattest_py = PySource('m5', 'stattestmain.py', skip_lib=True)
stattest_swig = SwigSource('m5.internal', 'stattest.i', skip_lib=True)
-UnitTest('stattest', 'stattest.cc', stattest_py, stattest_swig)
+UnitTest('stattest', 'stattest.cc', stattest_py, stattest_swig, main=True)
UnitTest('symtest', 'symtest.cc')
UnitTest('tokentest', 'tokentest.cc')