diff options
author | Andreas Hansson <andreas.hansson@arm.com> | 2015-03-02 04:00:29 -0500 |
---|---|---|
committer | Andreas Hansson <andreas.hansson@arm.com> | 2015-03-02 04:00:29 -0500 |
commit | eed0795f3abf6da71ba62307ae29c975b4ad9246 (patch) | |
tree | 790221e88ff3fa5e19d9614db5b4d6b93eb3c356 | |
parent | 3b4ae7debb58e4f3fc4a5f2ad9f7faf896f854d8 (diff) | |
download | gem5-eed0795f3abf6da71ba62307ae29c975b4ad9246.tar.xz |
tests: Run regression timeout as foreground
Allow the user to send signals such as Ctrl C to the gem5 runs. Note
that this assumes coreutils >= 8.13, which aligns with Ubuntu 12.04
and RHE6.
-rwxr-xr-x | SConstruct | 13 | ||||
-rw-r--r-- | tests/SConscript | 2 |
2 files changed, 10 insertions, 5 deletions
diff --git a/SConstruct b/SConstruct index 6a163f762..c51c7b28c 100755 --- a/SConstruct +++ b/SConstruct @@ -784,10 +784,15 @@ if main['GCC'] and compareVersions(gcc_version, '4.9') >= 0 and \ swig_flags=Split('-c++ -python -modern -templatereduce $_CPPINCFLAGS') main.Append(SWIGFLAGS=swig_flags) -# Check for 'timeout' from GNU coreutils. If present, regressions -# will be run with a time limit. -TIMEOUT_version = readCommand(['timeout', '--version'], exception=False) -main['TIMEOUT'] = TIMEOUT_version and TIMEOUT_version.find('timeout') == 0 +# Check for 'timeout' from GNU coreutils. If present, regressions will +# be run with a time limit. We require version 8.13 since we rely on +# support for the '--foreground' option. +timeout_lines = readCommand(['timeout', '--version'], + exception='').splitlines() +# Get the first line and tokenize it +timeout_version = timeout_lines[0].split() if timeout_lines else [] +main['TIMEOUT'] = timeout_version and \ + compareVersions(timeout_version[-1], '8.13') >= 0 # filter out all existing swig scanners, they mess up the dependency # stuff for some reason diff --git a/tests/SConscript b/tests/SConscript index a4b259681..3822de234 100644 --- a/tests/SConscript +++ b/tests/SConscript @@ -107,7 +107,7 @@ def run_test(target, source, env): # The slowest regression (bzip2) requires ~2.8 hours; # 4 hours was chosen to be conservative. elif env['TIMEOUT']: - cmd = 'timeout 4h %s' % cmd + cmd = 'timeout --foreground 4h %s' % cmd # Create a default value for the status string, changed as needed # based on the status. |