diff options
-rw-r--r-- | tests/configs/learning-gem5-p1-simple.py | 7 | ||||
-rw-r--r-- | tests/configs/learning-gem5-p1-two-level.py | 8 | ||||
-rw-r--r-- | tests/configs/memcheck.py | 7 | ||||
-rw-r--r-- | tests/run.py | 4 |
4 files changed, 23 insertions, 3 deletions
diff --git a/tests/configs/learning-gem5-p1-simple.py b/tests/configs/learning-gem5-p1-simple.py index 850abccf1..9ad70854e 100644 --- a/tests/configs/learning-gem5-p1-simple.py +++ b/tests/configs/learning-gem5-p1-simple.py @@ -35,5 +35,10 @@ root = None def run_test(root): # Called from tests/run.py + # Set the working directory in case we are executing from + # outside gem5's source tree + import os + os.chdir(os.path.join(os.path.dirname(__file__), "../")) + # Execute the script we are wrapping - execfile('configs/learning_gem5/part1/simple.py') + execfile(srcpath('configs/learning_gem5/part1/simple.py')) diff --git a/tests/configs/learning-gem5-p1-two-level.py b/tests/configs/learning-gem5-p1-two-level.py index 1a1f8a0b9..8101de318 100644 --- a/tests/configs/learning-gem5-p1-two-level.py +++ b/tests/configs/learning-gem5-p1-two-level.py @@ -37,6 +37,12 @@ import m5 def run_test(root): # Called from tests/run.py + + # Set the working directory in case we are executing from + # outside gem5's source tree + import os + os.chdir(os.path.join(os.path.dirname(__file__), "../")) + # Add paths that we need m5.util.addToPath('../configs/learning_gem5/part1') m5.util.addToPath('../configs/common') @@ -49,4 +55,4 @@ def run_test(root): # For instance, sys.argv.append('--l2_size=512kB') # Execute the script we are wrapping - execfile('configs/learning_gem5/part1/two_level.py') + execfile(srcpath('configs/learning_gem5/part1/two_level.py')) diff --git a/tests/configs/memcheck.py b/tests/configs/memcheck.py index 52931a0b3..21c8d7d4c 100644 --- a/tests/configs/memcheck.py +++ b/tests/configs/memcheck.py @@ -47,6 +47,11 @@ root = None def run_test(root): # Called from tests/run.py + # Set the working directory in case we are executing from + # outside gem5's source tree + import os + os.chdir(os.path.join(os.path.dirname(__file__), "../")) + # The path to this script is the only parameter. Delete it so # we can execute the script that we want to execute. import sys @@ -56,4 +61,4 @@ def run_test(root): sys.argv.append('-m %d' % maxtick) # Execute the script we are wrapping - execfile('configs/example/memcheck.py', globals()) + execfile(srcpath('configs/example/memcheck.py'), globals()) diff --git a/tests/run.py b/tests/run.py index 461813559..ff5be230d 100644 --- a/tests/run.py +++ b/tests/run.py @@ -171,6 +171,10 @@ def inputpath(app, file=None): file = app return joinpath(test_progs, app, 'input', file) +def srcpath(path): + """Path to file in gem5's source tree""" + return joinpath(os.path.dirname(__file__), "..", path) + # build configuration sys.path.append(joinpath(tests_root, 'configs')) test_filename = config |