Commit 6421c6f2 authored by rwbarton's avatar rwbarton Committed by Ben Gamari

testsuite: Move echoing commands in make invocations to VERBOSE=5

D2894 added a new verbosity level VERBOSE=4 to strip -s/--silent
flags from make invocations in test commands. This will probably
cause the test to fail of course, but is useful for seeing what
a test that's already failing is doing.

However there was already an undocumented meaning of VERBOSE=4,
added in commit cfeededf, that causes the results of performance
tests to be printed unconditionally (even when they are within the
expected range). nomeata's ghc builder uses these figures to
collect historical data on performance test figures. The new
meaning of VERBOSE=4 added in D2894 means that any test that uses
make now fails on the builder.

This commit moves the new behavior of D2894 to the level VERBOSE=5
so that nomeata's ghc builder again produces useful results on
failing tests. It also adds documentation for both settings.

Test Plan: did some manual testing

Reviewers: austin, bgamari, Phyx, nomeata

Reviewed By: bgamari, Phyx

Subscribers: nomeata, thomie, Phyx

Differential Revision: https://phabricator.haskell.org/D3141
parent 488a9daa
......@@ -18,7 +18,9 @@ Commands to run testsuite:
* Skip performance tests: `make SKIP_PERF_TESTS=YES`
* Set verbosity: `make VERBOSE=n`
where n=0: No per-test ouput, n=1: Only failures,
n=2: Progress output, n=3: Include commands called (default)
n=2: Progress output, n=3: Include commands called (default),
n=4: Include perf test results unconditionally,
n=5: Echo commands in subsidiary make invocations
* Pass in extra GHC options: `make EXTRA_HC_OPTS=-fvectorize`
You can also change directory to a specific test folder to run that
......
......@@ -111,8 +111,8 @@ for opt,arg in opts:
config.skip_perf_tests = True
if opt == '--verbose':
if arg not in ["0","1","2","3","4"]:
sys.stderr.write("ERROR: requested verbosity %s not supported, use 0,1,2,3 or 4" % arg)
if arg not in ["0","1","2","3","4","5"]:
sys.stderr.write("ERROR: requested verbosity %s not supported, use 0,1,2,3,4 or 5" % arg)
sys.exit(1)
config.verbose = int(arg)
......
......@@ -872,7 +872,7 @@ def do_test(name, way, func, args, files):
# if found and instead have the testsuite decide on what to do
# with the output.
def override_options(pre_cmd):
if config.verbose >= 4 and bool(re.match('\$make', pre_cmd, re.I)):
if config.verbose >= 5 and bool(re.match('\$make', pre_cmd, re.I)):
return pre_cmd.replace('-s' , '') \
.replace('--silent', '') \
.replace('--quiet' , '')
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment