summaryrefslogtreecommitdiff
path: root/testsuite/tests
diff options
context:
space:
mode:
authorReid Barton <rwbarton@gmail.com>2017-02-24 21:14:50 -0500
committerBen Gamari <ben@smart-cactus.org>2017-02-26 17:30:48 -0500
commit3415bcaa0b1903b5e12dfaadb5b774718e406eab (patch)
treef87cea33d55f1b196069e213e413019d8e9c6c3a /testsuite/tests
parent98119f5a5224d321a1765f262c8c76dfd1b8ed35 (diff)
downloadhaskell-3415bcaa0b1903b5e12dfaadb5b774718e406eab.tar.gz
tests: remove extra_files.py (#12223)
The script I used is included as testsuite/driver/kill_extra_files.py, though at this point it is for mostly historical interest. Some of the tests in libraries/hpc relied on extra_files.py, so this commit includes an update to that submodule. One test in libraries/process also relies on extra_files.py, but we cannot update that submodule so easily, so for now we special-case it in the test driver.
Diffstat (limited to 'testsuite/tests')
-rw-r--r--testsuite/tests/annotations/should_compile/th/all.T6
-rw-r--r--testsuite/tests/annotations/should_fail/all.T9
-rw-r--r--testsuite/tests/annotations/should_run/all.T3
-rw-r--r--testsuite/tests/backpack/cabal/bkpcabal01/all.T2
-rw-r--r--testsuite/tests/backpack/cabal/bkpcabal02/all.T2
-rw-r--r--testsuite/tests/backpack/cabal/bkpcabal03/all.T2
-rw-r--r--testsuite/tests/backpack/cabal/bkpcabal04/all.T2
-rw-r--r--testsuite/tests/backpack/cabal/bkpcabal05/all.T2
-rw-r--r--testsuite/tests/cabal/T12485/all.T2
-rw-r--r--testsuite/tests/cabal/T12733/all.T2
-rw-r--r--testsuite/tests/cabal/all.T25
-rw-r--r--testsuite/tests/cabal/cabal03/all.T2
-rw-r--r--testsuite/tests/cabal/cabal04/all.T2
-rw-r--r--testsuite/tests/cabal/cabal05/all.T2
-rw-r--r--testsuite/tests/cabal/cabal06/all.T2
-rw-r--r--testsuite/tests/cabal/cabal08/all.T2
-rw-r--r--testsuite/tests/cabal/cabal09/all.T2
-rw-r--r--testsuite/tests/cabal/pkg02/all.T2
-rw-r--r--testsuite/tests/codeGen/should_run/all.T2
-rw-r--r--testsuite/tests/concurrent/prog001/all.T3
-rw-r--r--testsuite/tests/concurrent/prog002/all.T3
-rw-r--r--testsuite/tests/concurrent/prog003/all.T3
-rw-r--r--testsuite/tests/determinism/determ002/all.T2
-rw-r--r--testsuite/tests/determinism/determ003/all.T2
-rw-r--r--testsuite/tests/determinism/determ005/all.T2
-rw-r--r--testsuite/tests/determinism/determ006/all.T2
-rw-r--r--testsuite/tests/determinism/determ007/all.T2
-rw-r--r--testsuite/tests/determinism/determ008/all.T2
-rw-r--r--testsuite/tests/determinism/determ009/all.T2
-rw-r--r--testsuite/tests/determinism/determ010/all.T2
-rw-r--r--testsuite/tests/determinism/determ011/all.T2
-rw-r--r--testsuite/tests/determinism/determ012/all.T2
-rw-r--r--testsuite/tests/determinism/determ013/all.T2
-rw-r--r--testsuite/tests/determinism/determ014/all.T2
-rw-r--r--testsuite/tests/determinism/determ015/all.T2
-rw-r--r--testsuite/tests/determinism/determ016/all.T2
-rw-r--r--testsuite/tests/determinism/determ017/all.T2
-rw-r--r--testsuite/tests/determinism/determ018/all.T2
-rw-r--r--testsuite/tests/determinism/determ019/all.T2
-rw-r--r--testsuite/tests/determinism/determ021/all.T2
-rw-r--r--testsuite/tests/driver/T12062/all.T2
-rw-r--r--testsuite/tests/driver/T1372/all.T2
-rw-r--r--testsuite/tests/driver/T1959/test.T2
-rw-r--r--testsuite/tests/driver/T3007/all.T2
-rw-r--r--testsuite/tests/driver/T437/all.T2
-rw-r--r--testsuite/tests/driver/T5147/all.T2
-rw-r--r--testsuite/tests/driver/T7373/all.T3
-rw-r--r--testsuite/tests/driver/T7835/all.T2
-rw-r--r--testsuite/tests/driver/T8184/all.T2
-rw-r--r--testsuite/tests/driver/T8526/T8526.T2
-rw-r--r--testsuite/tests/driver/T8602/T8602.T3
-rw-r--r--testsuite/tests/driver/T9562/all.T3
-rw-r--r--testsuite/tests/driver/all.T98
-rw-r--r--testsuite/tests/driver/bug1677/all.T2
-rw-r--r--testsuite/tests/driver/dynamicToo/all.T3
-rw-r--r--testsuite/tests/driver/dynamicToo/dynamicToo001/test.T3
-rw-r--r--testsuite/tests/driver/dynamicToo/dynamicToo002/test.T3
-rw-r--r--testsuite/tests/driver/dynamicToo/dynamicToo004/test.T3
-rw-r--r--testsuite/tests/driver/dynamicToo/dynamicToo005/test.T3
-rw-r--r--testsuite/tests/driver/dynamic_flags_001/all.T3
-rw-r--r--testsuite/tests/driver/recomp001/all.T3
-rw-r--r--testsuite/tests/driver/recomp002/all.T3
-rw-r--r--testsuite/tests/driver/recomp003/all.T2
-rw-r--r--testsuite/tests/driver/recomp004/all.T2
-rw-r--r--testsuite/tests/driver/recomp005/all.T3
-rw-r--r--testsuite/tests/driver/recomp006/all.T3
-rw-r--r--testsuite/tests/driver/recomp007/all.T3
-rw-r--r--testsuite/tests/driver/recomp008/all.T3
-rw-r--r--testsuite/tests/driver/recomp009/all.T2
-rw-r--r--testsuite/tests/driver/recomp010/all.T2
-rw-r--r--testsuite/tests/driver/recomp011/all.T3
-rw-r--r--testsuite/tests/driver/recomp015/all.T3
-rw-r--r--testsuite/tests/driver/recomp016/all.T2
-rw-r--r--testsuite/tests/driver/retc001/all.T3
-rw-r--r--testsuite/tests/driver/retc002/all.T3
-rw-r--r--testsuite/tests/driver/retc003/all.T2
-rw-r--r--testsuite/tests/ffi/should_fail/all.T2
-rw-r--r--testsuite/tests/ffi/should_run/all.T7
-rw-r--r--testsuite/tests/gadt/all.T4
-rw-r--r--testsuite/tests/generics/GFunctor/test.T2
-rw-r--r--testsuite/tests/generics/GMap/test.T2
-rw-r--r--testsuite/tests/generics/GShow/test.T2
-rw-r--r--testsuite/tests/generics/Uniplate/test.T2
-rw-r--r--testsuite/tests/ghc-api/T4891/all.T2
-rw-r--r--testsuite/tests/ghc-api/T7478/all.T3
-rw-r--r--testsuite/tests/ghc-api/annotations-literals/all.T4
-rw-r--r--testsuite/tests/ghc-api/annotations/all.T87
-rw-r--r--testsuite/tests/ghc-api/apirecomp001/all.T2
-rw-r--r--testsuite/tests/ghci.debugger/scripts/all.T92
-rw-r--r--testsuite/tests/ghci.debugger/scripts/break022/all.T2
-rw-r--r--testsuite/tests/ghci.debugger/scripts/break023/all.T2
-rw-r--r--testsuite/tests/ghci/T11827/all.T3
-rw-r--r--testsuite/tests/ghci/linking/all.T12
-rw-r--r--testsuite/tests/ghci/linking/dyn/all.T20
-rw-r--r--testsuite/tests/ghci/prog001/prog001.T3
-rw-r--r--testsuite/tests/ghci/prog002/prog002.T3
-rw-r--r--testsuite/tests/ghci/prog003/prog003.T3
-rw-r--r--testsuite/tests/ghci/prog005/prog005.T2
-rw-r--r--testsuite/tests/ghci/prog006/prog006.T2
-rw-r--r--testsuite/tests/ghci/prog007/prog007.T2
-rw-r--r--testsuite/tests/ghci/prog008/prog008.T2
-rw-r--r--testsuite/tests/ghci/prog009/ghci.prog009.T2
-rw-r--r--testsuite/tests/ghci/prog012/all.T2
-rw-r--r--testsuite/tests/ghci/prog013/prog013.T2
-rw-r--r--testsuite/tests/ghci/prog014/prog014.T3
-rw-r--r--testsuite/tests/ghci/prog015/prog015.T2
-rw-r--r--testsuite/tests/ghci/prog016/prog016.T2
-rw-r--r--testsuite/tests/ghci/prog017/prog017.T2
-rwxr-xr-xtestsuite/tests/ghci/scripts/all.T18
-rw-r--r--testsuite/tests/haddock/haddock_examples/test.T3
-rw-r--r--testsuite/tests/hpc/all.T3
-rw-r--r--testsuite/tests/indexed-types/should_compile/all.T4
-rw-r--r--testsuite/tests/indexed-types/should_fail/all.T2
-rw-r--r--testsuite/tests/module/all.T94
-rw-r--r--testsuite/tests/module/base01/all.T3
-rw-r--r--testsuite/tests/module/mod175/all.T2
-rw-r--r--testsuite/tests/overloadedrecflds/should_fail/all.T10
-rw-r--r--testsuite/tests/overloadedrecflds/should_run/all.T5
-rw-r--r--testsuite/tests/parser/prog001/test.T2
-rw-r--r--testsuite/tests/partial-sigs/should_compile/all.T3
-rw-r--r--testsuite/tests/partial-sigs/should_fail/all.T3
-rw-r--r--testsuite/tests/patsyn/should_compile/all.T8
-rw-r--r--testsuite/tests/perf/haddock/all.T9
-rw-r--r--testsuite/tests/perf/should_run/all.T3
-rw-r--r--testsuite/tests/plugins/all.T38
-rw-r--r--testsuite/tests/profiling/should_run/all.T3
-rw-r--r--testsuite/tests/programs/10queens/test.T3
-rw-r--r--testsuite/tests/programs/andre_monad/test.T3
-rw-r--r--testsuite/tests/programs/andy_cherry/test.T3
-rw-r--r--testsuite/tests/programs/barton-mangler-bug/test.T3
-rw-r--r--testsuite/tests/programs/cholewo-eval/test.T3
-rw-r--r--testsuite/tests/programs/cvh_unboxing/test.T3
-rw-r--r--testsuite/tests/programs/fast2haskell/test.T3
-rw-r--r--testsuite/tests/programs/fun_insts/test.T3
-rw-r--r--testsuite/tests/programs/galois_raytrace/test.T3
-rw-r--r--testsuite/tests/programs/hs-boot/all.T2
-rw-r--r--testsuite/tests/programs/jl_defaults/test.T3
-rw-r--r--testsuite/tests/programs/joao-circular/test.T3
-rw-r--r--testsuite/tests/programs/jq_readsPrec/test.T3
-rw-r--r--testsuite/tests/programs/jtod_circint/test.T3
-rw-r--r--testsuite/tests/programs/jules_xref/test.T3
-rw-r--r--testsuite/tests/programs/jules_xref2/test.T3
-rw-r--r--testsuite/tests/programs/launchbury/test.T3
-rw-r--r--testsuite/tests/programs/lennart_range/test.T3
-rw-r--r--testsuite/tests/programs/lex/test.T3
-rw-r--r--testsuite/tests/programs/life_space_leak/test.T3
-rw-r--r--testsuite/tests/programs/maessen-hashtab/test.T3
-rw-r--r--testsuite/tests/programs/north_array/test.T3
-rw-r--r--testsuite/tests/programs/okeefe_neural/test.T3
-rw-r--r--testsuite/tests/programs/record_upd/test.T3
-rw-r--r--testsuite/tests/programs/rittri/test.T3
-rw-r--r--testsuite/tests/programs/sanders_array/test.T3
-rw-r--r--testsuite/tests/programs/seward-space-leak/test.T3
-rw-r--r--testsuite/tests/programs/strict_anns/test.T3
-rw-r--r--testsuite/tests/programs/thurston-modular-arith/test.T3
-rw-r--r--testsuite/tests/quasiquotation/T4491/test.T3
-rw-r--r--testsuite/tests/quasiquotation/qq005/test.T3
-rw-r--r--testsuite/tests/quasiquotation/qq006/test.T3
-rw-r--r--testsuite/tests/quasiquotation/qq007/test.T3
-rw-r--r--testsuite/tests/quasiquotation/qq008/test.T3
-rw-r--r--testsuite/tests/quasiquotation/qq009/test.T3
-rw-r--r--testsuite/tests/quotes/TH_spliceViewPat/test.T3
-rw-r--r--testsuite/tests/rename/prog001/test.T2
-rw-r--r--testsuite/tests/rename/prog002/test.T2
-rw-r--r--testsuite/tests/rename/prog003/test.T2
-rw-r--r--testsuite/tests/rename/prog004/test.T2
-rw-r--r--testsuite/tests/rename/prog005/test.T2
-rw-r--r--testsuite/tests/rename/prog006/all.T2
-rw-r--r--testsuite/tests/rename/should_compile/T3103/test.T2
-rw-r--r--testsuite/tests/rename/should_compile/all.T30
-rw-r--r--testsuite/tests/rename/should_fail/all.T6
-rw-r--r--testsuite/tests/rts/T10672/all.T6
-rw-r--r--testsuite/tests/rts/T11223/all.T45
-rw-r--r--testsuite/tests/rts/T5644/all.T3
-rw-r--r--testsuite/tests/rts/all.T26
-rw-r--r--testsuite/tests/safeHaskell/check/pkg01/all.T33
-rw-r--r--testsuite/tests/safeHaskell/ghci/all.T12
-rw-r--r--testsuite/tests/simplCore/T9646/test.T3
-rw-r--r--testsuite/tests/simplCore/prog001/test.T2
-rw-r--r--testsuite/tests/simplCore/prog002/test.T2
-rw-r--r--testsuite/tests/simplCore/prog003/test.T3
-rw-r--r--testsuite/tests/simplCore/should_compile/all.T7
-rw-r--r--testsuite/tests/stranal/should_run/T8425/all.T2
-rw-r--r--testsuite/tests/th/T2014/all.T3
-rw-r--r--testsuite/tests/th/TH_import_loop/TH_import_loop.T3
-rw-r--r--testsuite/tests/th/TH_linker/all.T3
-rw-r--r--testsuite/tests/typecheck/bug1465/all.T2
-rw-r--r--testsuite/tests/typecheck/prog001/test.T3
-rw-r--r--testsuite/tests/typecheck/prog002/test.T3
-rw-r--r--testsuite/tests/typecheck/should_compile/all.T18
-rw-r--r--testsuite/tests/typecheck/should_fail/all.T11
-rwxr-xr-xtestsuite/tests/typecheck/should_run/all.T4
-rw-r--r--testsuite/tests/typecheck/testeq1/test.T3
-rw-r--r--testsuite/tests/warnings/should_compile/T10637/all.T2
-rw-r--r--testsuite/tests/warnings/should_compile/T10890/all.T4
-rw-r--r--testsuite/tests/warnings/should_compile/all.T2
196 files changed, 676 insertions, 486 deletions
diff --git a/testsuite/tests/annotations/should_compile/th/all.T b/testsuite/tests/annotations/should_compile/th/all.T
index 9bcc899263..368959b906 100644
--- a/testsuite/tests/annotations/should_compile/th/all.T
+++ b/testsuite/tests/annotations/should_compile/th/all.T
@@ -4,9 +4,11 @@
# now, just disable the profiling ways.
test('annth_make',
- [req_interp, omit_ways(prof_ways), unless(have_dynamic(), skip)],
+ [extra_files(['AnnHelper.hs', 'TestModule.hs', 'TestModuleTH.hs', 'annth.hs']),
+ req_interp, omit_ways(prof_ways), unless(have_dynamic(), skip)],
run_command, ['$MAKE -s --no-print-directory annth_make'])
test('annth_compunits',
- [req_interp, omit_ways(prof_ways), unless(have_dynamic(), skip)],
+ [extra_files(['AnnHelper.hs', 'TestModule.hs', 'TestModuleTH.hs', 'annth.hs']),
+ req_interp, omit_ways(prof_ways), unless(have_dynamic(), skip)],
run_command, ['$MAKE -s --no-print-directory annth_compunits'])
diff --git a/testsuite/tests/annotations/should_fail/all.T b/testsuite/tests/annotations/should_fail/all.T
index 872ab41d88..e15cd35322 100644
--- a/testsuite/tests/annotations/should_fail/all.T
+++ b/testsuite/tests/annotations/should_fail/all.T
@@ -2,9 +2,12 @@
test('annfail01', normal, compile_fail, [''])
test('annfail02', normal, compile_fail, [''])
test('annfail03', req_interp, compile_fail, [''])
-test('annfail04', [req_interp], multimod_compile_fail, ['annfail04', '-v0'])
-test('annfail05', [req_interp], multimod_compile_fail, ['annfail05', '-v0'])
-test('annfail06', [req_interp], multimod_compile_fail, ['annfail06', '-v0'])
+test('annfail04', [extra_files(['Annfail04_Help.hs']),
+ req_interp], multimod_compile_fail, ['annfail04', '-v0'])
+test('annfail05', [extra_files(['Annfail05_Help.hs']),
+ req_interp], multimod_compile_fail, ['annfail05', '-v0'])
+test('annfail06', [extra_files(['Annfail06_Help.hs']),
+ req_interp], multimod_compile_fail, ['annfail06', '-v0'])
test('annfail07', req_interp, compile_fail, [''])
test('annfail08', req_interp, compile_fail, [''])
test('annfail09', req_interp, compile_fail, [''])
diff --git a/testsuite/tests/annotations/should_run/all.T b/testsuite/tests/annotations/should_run/all.T
index cba34c5559..0c2acc7f63 100644
--- a/testsuite/tests/annotations/should_run/all.T
+++ b/testsuite/tests/annotations/should_run/all.T
@@ -7,7 +7,8 @@ setTestOpts(when(fast(), skip))
# now, just disable the profiling and dynamic ways, and use
# config.ghc_th_way_flags.
test('annrun01',
- [pre_cmd('$MAKE -s --no-print-directory config'),
+ [extra_files(['Annrun01_Help.hs']),
+ pre_cmd('$MAKE -s --no-print-directory config'),
omit_ways(['dyn'] + prof_ways)],
multimod_compile_and_run,
['annrun01', '-package ghc ' + config.ghc_th_way_flags])
diff --git a/testsuite/tests/backpack/cabal/bkpcabal01/all.T b/testsuite/tests/backpack/cabal/bkpcabal01/all.T
index 1ee5ff18ad..e470708b23 100644
--- a/testsuite/tests/backpack/cabal/bkpcabal01/all.T
+++ b/testsuite/tests/backpack/cabal/bkpcabal01/all.T
@@ -4,6 +4,6 @@ else:
cleanup = 'CLEANUP=0'
test('bkpcabal01',
- normal,
+ extra_files(['p', 'q', 'impl', 'bkpcabal01.cabal', 'Setup.hs', 'Main.hs']),
run_command,
['$MAKE -s --no-print-directory bkpcabal01 ' + cleanup])
diff --git a/testsuite/tests/backpack/cabal/bkpcabal02/all.T b/testsuite/tests/backpack/cabal/bkpcabal02/all.T
index 3d6f592805..f9639dadfd 100644
--- a/testsuite/tests/backpack/cabal/bkpcabal02/all.T
+++ b/testsuite/tests/backpack/cabal/bkpcabal02/all.T
@@ -4,6 +4,6 @@ else:
cleanup = 'CLEANUP=0'
test('bkpcabal02',
- normal,
+ extra_files(['p', 'q', 'bkpcabal02.cabal', 'Setup.hs']),
run_command,
['$MAKE -s --no-print-directory bkpcabal02 ' + cleanup])
diff --git a/testsuite/tests/backpack/cabal/bkpcabal03/all.T b/testsuite/tests/backpack/cabal/bkpcabal03/all.T
index 7a5ad44e57..28bea90fd9 100644
--- a/testsuite/tests/backpack/cabal/bkpcabal03/all.T
+++ b/testsuite/tests/backpack/cabal/bkpcabal03/all.T
@@ -4,6 +4,6 @@ else:
cleanup = 'CLEANUP=0'
test('bkpcabal03',
- normal,
+ extra_files(['asig1', 'asig2', 'bkpcabal03.cabal.in1', 'bkpcabal03.cabal.in2', 'Setup.hs', 'Mod.hs']),
run_command,
['$MAKE -s --no-print-directory bkpcabal03 ' + cleanup])
diff --git a/testsuite/tests/backpack/cabal/bkpcabal04/all.T b/testsuite/tests/backpack/cabal/bkpcabal04/all.T
index 998882ef5e..2acc61182b 100644
--- a/testsuite/tests/backpack/cabal/bkpcabal04/all.T
+++ b/testsuite/tests/backpack/cabal/bkpcabal04/all.T
@@ -5,6 +5,6 @@ else:
# Test recompilation checking on signatures
test('bkpcabal04',
- normal,
+ extra_files(['p', 'q', 'bkpcabal04.cabal.in1', 'bkpcabal04.cabal.in2', 'Setup.hs']),
run_command,
['$MAKE -s --no-print-directory bkpcabal04 ' + cleanup])
diff --git a/testsuite/tests/backpack/cabal/bkpcabal05/all.T b/testsuite/tests/backpack/cabal/bkpcabal05/all.T
index ab75dba8f5..f6b74f2feb 100644
--- a/testsuite/tests/backpack/cabal/bkpcabal05/all.T
+++ b/testsuite/tests/backpack/cabal/bkpcabal05/all.T
@@ -4,6 +4,6 @@ else:
cleanup = 'CLEANUP=0'
test('bkpcabal05',
- normal,
+ extra_files(['bkpcabal05.cabal', 'A.hsig.in1', 'A.hsig.in2', 'M.hs', 'Setup.hs']),
run_command,
['$MAKE -s --no-print-directory bkpcabal05 ' + cleanup])
diff --git a/testsuite/tests/cabal/T12485/all.T b/testsuite/tests/cabal/T12485/all.T
index f6998973ea..709943c96e 100644
--- a/testsuite/tests/cabal/T12485/all.T
+++ b/testsuite/tests/cabal/T12485/all.T
@@ -1 +1 @@
-test('T12485', [], run_command, ['$MAKE -s --no-print-directory T12485'])
+test('T12485', [extra_files(['a.pkg', 'b.pkg', 'Main.hs'])], run_command, ['$MAKE -s --no-print-directory T12485'])
diff --git a/testsuite/tests/cabal/T12733/all.T b/testsuite/tests/cabal/T12733/all.T
index 8b00daa66a..a9cf30f441 100644
--- a/testsuite/tests/cabal/T12733/all.T
+++ b/testsuite/tests/cabal/T12733/all.T
@@ -4,6 +4,6 @@ else:
cleanup = 'CLEANUP=0'
test('T12733',
- normal,
+ extra_files(['p/', 'q/', 'Setup.hs']),
run_command,
['$MAKE -s --no-print-directory T12733 ' + cleanup])
diff --git a/testsuite/tests/cabal/all.T b/testsuite/tests/cabal/all.T
index fc7269c4f3..23c4826e35 100644
--- a/testsuite/tests/cabal/all.T
+++ b/testsuite/tests/cabal/all.T
@@ -1,14 +1,15 @@
def normaliseDynlibNames(str):
return re.sub('-ghc[0-9.]+\.', '-ghc<VERSION>.', str)
-test('ghcpkg01', [], run_command, ['$MAKE -s --no-print-directory ghcpkg01'])
+test('ghcpkg01', [extra_files(['test.pkg', 'test2.pkg', 'test3.pkg'])], run_command, ['$MAKE -s --no-print-directory ghcpkg01'])
# Use ignore_stderr to prevent (when HADDOCK_DOCS=NO):
# warning: haddock-interfaces .. doesn't exist or isn't a file
test('ghcpkg02', [ignore_stderr], run_command,
['$MAKE -s --no-print-directory ghcpkg02'])
-test('ghcpkg03', [normalise_errmsg_fun(normaliseDynlibNames)], run_command,
+test('ghcpkg03', [extra_files(['test.pkg', 'test2.pkg', 'test4.pkg']),
+ normalise_errmsg_fun(normaliseDynlibNames)], run_command,
['$MAKE -s --no-print-directory ghcpkg03'])
def normalise_package_order(s):
@@ -17,7 +18,8 @@ def normalise_package_order(s):
'newtestpkg-2.0 testpkg-1.2.3.4',
s)
-test('ghcpkg04', [normalise_errmsg_fun(normalise_package_order)], run_command,
+test('ghcpkg04', [extra_files(['test.pkg', 'test5.pkg']),
+ normalise_errmsg_fun(normalise_package_order)], run_command,
['$MAKE -s --no-print-directory ghcpkg04'])
# Sometimes we get spurious warnings from ghc-pkg about missing
@@ -26,11 +28,12 @@ def normalise_haddock_junk( str ):
return re.sub(r'Warning: haddock.*\n', '', str)
test('ghcpkg05',
- [normalise_errmsg_fun(normalise_haddock_junk, normaliseDynlibNames)],
+ [extra_files(['test2.pkg', 'test3.pkg']),
+ normalise_errmsg_fun(normalise_haddock_junk, normaliseDynlibNames)],
run_command, ['$MAKE -s --no-print-directory ghcpkg05'])
-test('ghcpkg06', [], run_command, ['$MAKE -s --no-print-directory ghcpkg06'])
+test('ghcpkg06', [extra_files(['test.pkg', 'testdup.pkg'])], run_command, ['$MAKE -s --no-print-directory ghcpkg06'])
-test('ghcpkg07', [], run_command, ['$MAKE -s --no-print-directory ghcpkg07'])
+test('ghcpkg07', [extra_files(['test.pkg', 'test7a.pkg', 'test7b.pkg'])], run_command, ['$MAKE -s --no-print-directory ghcpkg07'])
# Test that we *can* compile a module that also belongs to a package
# (this was disallowed in GHC 6.4 and earlier)
@@ -38,14 +41,14 @@ test('pkg01', normal, compile, [''])
test('T1750', [], run_command, ['$MAKE -s --no-print-directory T1750'])
-test('T5442a', [], run_command, ['$MAKE -s --no-print-directory T5442a'])
+test('T5442a', [extra_files(['test.pkg'])], run_command, ['$MAKE -s --no-print-directory T5442a'])
-test('T5442b', [], run_command, ['$MAKE -s --no-print-directory T5442b'])
+test('T5442b', [extra_files(['test.pkg'])], run_command, ['$MAKE -s --no-print-directory T5442b'])
-test('T5442c', [], run_command, ['$MAKE -s --no-print-directory T5442c'])
+test('T5442c', [extra_files(['test.pkg'])], run_command, ['$MAKE -s --no-print-directory T5442c'])
-test('T5442d', [], run_command, ['$MAKE -s --no-print-directory T5442d'])
+test('T5442d', [extra_files(['shadow1.pkg', 'shadow2.pkg', 'shadow4.pkg'])], run_command, ['$MAKE -s --no-print-directory T5442d'])
test('shadow', [], run_command, ['$MAKE -s --no-print-directory shadow'])
-test('T12485a', [], run_command, ['$MAKE -s --no-print-directory T12485a'])
+test('T12485a', [extra_files(['shadow1.pkg', 'shadow2.pkg', 'shadow3.pkg'])], run_command, ['$MAKE -s --no-print-directory T12485a'])
diff --git a/testsuite/tests/cabal/cabal03/all.T b/testsuite/tests/cabal/cabal03/all.T
index 822d35ef81..938d0e4c48 100644
--- a/testsuite/tests/cabal/cabal03/all.T
+++ b/testsuite/tests/cabal/cabal03/all.T
@@ -4,6 +4,6 @@ else:
cleanup = 'CLEANUP=0'
test('cabal03',
- normal,
+ extra_files(['Setup.lhs', 'p/', 'q/', 'r/']),
run_command,
['$MAKE -s --no-print-directory cabal03 ' + cleanup])
diff --git a/testsuite/tests/cabal/cabal04/all.T b/testsuite/tests/cabal/cabal04/all.T
index e69b540f2a..3a4756026a 100644
--- a/testsuite/tests/cabal/cabal04/all.T
+++ b/testsuite/tests/cabal/cabal04/all.T
@@ -19,6 +19,6 @@ else:
cleanup = 'CLEANUP=0'
test('cabal04',
- normal,
+ extra_files(['Library.hs', 'Setup.lhs', 'TH.hs', 'thtest.cabal']),
run_command,
['$MAKE -s --no-print-directory cabal04 VANILLA=' + vanilla + ' PROF=' + prof + ' DYN=' + dyn + ' ' + cleanup])
diff --git a/testsuite/tests/cabal/cabal05/all.T b/testsuite/tests/cabal/cabal05/all.T
index aa209c8f49..0a2a0fd670 100644
--- a/testsuite/tests/cabal/cabal05/all.T
+++ b/testsuite/tests/cabal/cabal05/all.T
@@ -4,6 +4,6 @@ else:
cleanup = 'CLEANUP=0'
test('cabal05',
- normal,
+ extra_files(['Setup.hs', 'p/', 'q/', 'r/', 's/', 't/']),
run_command,
['$MAKE -s --no-print-directory cabal05 ' + cleanup])
diff --git a/testsuite/tests/cabal/cabal06/all.T b/testsuite/tests/cabal/cabal06/all.T
index 6568e074c3..aa53948738 100644
--- a/testsuite/tests/cabal/cabal06/all.T
+++ b/testsuite/tests/cabal/cabal06/all.T
@@ -4,6 +4,6 @@ else:
cleanup = 'CLEANUP=0'
test('cabal06',
- normal,
+ extra_files(['Setup.hs', 'p-1.0/', 'p-1.1/', 'q/', 'r/']),
run_command,
['$MAKE -s --no-print-directory cabal06 ' + cleanup])
diff --git a/testsuite/tests/cabal/cabal08/all.T b/testsuite/tests/cabal/cabal08/all.T
index 3aaf185828..95864fdf96 100644
--- a/testsuite/tests/cabal/cabal08/all.T
+++ b/testsuite/tests/cabal/cabal08/all.T
@@ -4,6 +4,6 @@ else:
cleanup = 'CLEANUP=0'
test('cabal08',
- normal,
+ extra_files(['Main.hs', 'Setup.hs', 'p1/', 'p2/']),
run_command,
['$MAKE -s --no-print-directory cabal08 ' + cleanup])
diff --git a/testsuite/tests/cabal/cabal09/all.T b/testsuite/tests/cabal/cabal09/all.T
index bd7761900d..438161b05b 100644
--- a/testsuite/tests/cabal/cabal09/all.T
+++ b/testsuite/tests/cabal/cabal09/all.T
@@ -4,6 +4,6 @@ else:
cleanup = 'CLEANUP=0'
test('cabal09',
- normal,
+ extra_files(['Main.hs', 'Setup.hs', 'reexport.cabal']),
run_command,
['$MAKE -s --no-print-directory cabal09 ' + cleanup])
diff --git a/testsuite/tests/cabal/pkg02/all.T b/testsuite/tests/cabal/pkg02/all.T
index 651e9f903b..c6efd6fe0d 100644
--- a/testsuite/tests/cabal/pkg02/all.T
+++ b/testsuite/tests/cabal/pkg02/all.T
@@ -3,4 +3,4 @@
# separate packages are allowed). Now it is a straightforward test
# for shadowing: the local Foreign module shadows the base package
# one.
-test('pkg02', [], multimod_compile, ['A', '-v0'])
+test('pkg02', [extra_files(['A.hs', 'Foreign.hs'])], multimod_compile, ['A', '-v0'])
diff --git a/testsuite/tests/codeGen/should_run/all.T b/testsuite/tests/codeGen/should_run/all.T
index 3f88d1389e..b952c10dc4 100644
--- a/testsuite/tests/codeGen/should_run/all.T
+++ b/testsuite/tests/codeGen/should_run/all.T
@@ -70,7 +70,7 @@ test('cgrun063', normal, compile_and_run, [''])
test('cgrun064', normal, compile_and_run, [''])
test('cgrun065', normal, compile_and_run, [''])
test('cgrun066', normal, compile_and_run, [''])
-test('cgrun067', [], compile_and_run, [''])
+test('cgrun067', [extra_files(['Cgrun067A.hs'])], compile_and_run, [''])
test('cgrun068', reqlib('random'), compile_and_run, [''])
test('cgrun069', omit_ways(['ghci']), multi_compile_and_run,
['cgrun069', [('cgrun069_cmm.cmm', '')], ''])
diff --git a/testsuite/tests/concurrent/prog001/all.T b/testsuite/tests/concurrent/prog001/all.T
index f23cc8804a..1476b4ffef 100644
--- a/testsuite/tests/concurrent/prog001/all.T
+++ b/testsuite/tests/concurrent/prog001/all.T
@@ -12,5 +12,6 @@
# multiple cores, which is why it is only running the 'threaded2' way
# right now. --SDM 1/4/2010
-test('concprog001', [when(fast(), skip), only_ways(['threaded2'])],
+test('concprog001', [extra_files(['Arithmetic.hs', 'Converter.hs', 'Mult.hs', 'Stream.hs', 'Thread.hs', 'Trit.hs', 'Utilities.hs']),
+ when(fast(), skip), only_ways(['threaded2'])],
multimod_compile_and_run, ['Mult', ''])
diff --git a/testsuite/tests/concurrent/prog002/all.T b/testsuite/tests/concurrent/prog002/all.T
index dc583b3bd2..8cf3d87f90 100644
--- a/testsuite/tests/concurrent/prog002/all.T
+++ b/testsuite/tests/concurrent/prog002/all.T
@@ -10,6 +10,7 @@ else:
# hence -O0:
test('concprog002',
- [only_ways(['threaded2', 'threaded2_hT']), extra_ways(ways), exit_code(1),
+ [extra_files(['Event.hs', 'Scheduler.hs', 'Server.hs', 'Thread.hs']),
+ only_ways(['threaded2', 'threaded2_hT']), extra_ways(ways), exit_code(1),
when(fast(), skip), reqlib('random')],
multimod_compile_and_run, ['Server', '-O0'])
diff --git a/testsuite/tests/concurrent/prog003/all.T b/testsuite/tests/concurrent/prog003/all.T
index 2f7fe3bec8..31e1667f26 100644
--- a/testsuite/tests/concurrent/prog003/all.T
+++ b/testsuite/tests/concurrent/prog003/all.T
@@ -10,6 +10,7 @@
# occasionally, but at least the test is here for posterity.
test('concprog003',
- [when(fast(), skip), reqlib('random'),
+ [extra_files(['CASList.hs', 'Collection.hs', 'IOList.lhs', 'ImmList.hs', 'MVarListLockCoupling.hs', 'Main.lhs', 'RefInterface.hs', 'TestData.hs', 'TestDataParser.hs', 'TestRun.hs', 'test-8-3000-3000-2-1-4']),
+ when(fast(), skip), reqlib('random'),
extra_run_opts('IMM -t test-8-3000-3000-2-1-4')],
multimod_compile_and_run, ['Main', ''])
diff --git a/testsuite/tests/determinism/determ002/all.T b/testsuite/tests/determinism/determ002/all.T
index e3367f1380..1642c2f8c6 100644
--- a/testsuite/tests/determinism/determ002/all.T
+++ b/testsuite/tests/determinism/determ002/all.T
@@ -1 +1 @@
-test('determ002', [], run_command, ['$MAKE -s --no-print-directory determ002'])
+test('determ002', [extra_files(['A.hs'])], run_command, ['$MAKE -s --no-print-directory determ002'])
diff --git a/testsuite/tests/determinism/determ003/all.T b/testsuite/tests/determinism/determ003/all.T
index 737ce312b5..b4bc18c1a2 100644
--- a/testsuite/tests/determinism/determ003/all.T
+++ b/testsuite/tests/determinism/determ003/all.T
@@ -1 +1 @@
-test('determ003', [], run_command, ['$MAKE -s --no-print-directory determ003'])
+test('determ003', [extra_files(['A.hs'])], run_command, ['$MAKE -s --no-print-directory determ003'])
diff --git a/testsuite/tests/determinism/determ005/all.T b/testsuite/tests/determinism/determ005/all.T
index 73b5628e94..c39aa8b203 100644
--- a/testsuite/tests/determinism/determ005/all.T
+++ b/testsuite/tests/determinism/determ005/all.T
@@ -1 +1 @@
-test('determ005', [], run_command, ['$MAKE -s --no-print-directory determ005'])
+test('determ005', [extra_files(['A.hs'])], run_command, ['$MAKE -s --no-print-directory determ005'])
diff --git a/testsuite/tests/determinism/determ006/all.T b/testsuite/tests/determinism/determ006/all.T
index 65b5743c3e..a0e547beea 100644
--- a/testsuite/tests/determinism/determ006/all.T
+++ b/testsuite/tests/determinism/determ006/all.T
@@ -1 +1 @@
-test('determ006', [], run_command, ['$MAKE -s --no-print-directory determ006'])
+test('determ006', [extra_files(['spec-inline-determ.hs'])], run_command, ['$MAKE -s --no-print-directory determ006'])
diff --git a/testsuite/tests/determinism/determ007/all.T b/testsuite/tests/determinism/determ007/all.T
index 21e071a2f7..d9f1f5bfa7 100644
--- a/testsuite/tests/determinism/determ007/all.T
+++ b/testsuite/tests/determinism/determ007/all.T
@@ -1 +1 @@
-test('determ007', [], run_command, ['$MAKE -s --no-print-directory determ007'])
+test('determ007', [extra_files(['A.hs'])], run_command, ['$MAKE -s --no-print-directory determ007'])
diff --git a/testsuite/tests/determinism/determ008/all.T b/testsuite/tests/determinism/determ008/all.T
index 56aef14485..da539a055b 100644
--- a/testsuite/tests/determinism/determ008/all.T
+++ b/testsuite/tests/determinism/determ008/all.T
@@ -1 +1 @@
-test('determ008', [], run_command, ['$MAKE -s --no-print-directory determ008'])
+test('determ008', [extra_files(['A.hs'])], run_command, ['$MAKE -s --no-print-directory determ008'])
diff --git a/testsuite/tests/determinism/determ009/all.T b/testsuite/tests/determinism/determ009/all.T
index 36fd355b1a..7b2e4cc6fd 100644
--- a/testsuite/tests/determinism/determ009/all.T
+++ b/testsuite/tests/determinism/determ009/all.T
@@ -1 +1 @@
-test('determ009', [], run_command, ['$MAKE -s --no-print-directory determ009'])
+test('determ009', [extra_files(['A.hs'])], run_command, ['$MAKE -s --no-print-directory determ009'])
diff --git a/testsuite/tests/determinism/determ010/all.T b/testsuite/tests/determinism/determ010/all.T
index 6c21bd9baf..10c89af351 100644
--- a/testsuite/tests/determinism/determ010/all.T
+++ b/testsuite/tests/determinism/determ010/all.T
@@ -1 +1 @@
-test('determ010', [], run_command, ['$MAKE -s --no-print-directory determ010'])
+test('determ010', [extra_files(['A.hs'])], run_command, ['$MAKE -s --no-print-directory determ010'])
diff --git a/testsuite/tests/determinism/determ011/all.T b/testsuite/tests/determinism/determ011/all.T
index 8dddd786b3..fedb3a0211 100644
--- a/testsuite/tests/determinism/determ011/all.T
+++ b/testsuite/tests/determinism/determ011/all.T
@@ -1 +1 @@
-test('determ011', [], run_command, ['$MAKE -s --no-print-directory determ011'])
+test('determ011', [extra_files(['A.hs'])], run_command, ['$MAKE -s --no-print-directory determ011'])
diff --git a/testsuite/tests/determinism/determ012/all.T b/testsuite/tests/determinism/determ012/all.T
index 9344d17322..17f557cbf0 100644
--- a/testsuite/tests/determinism/determ012/all.T
+++ b/testsuite/tests/determinism/determ012/all.T
@@ -1 +1 @@
-test('determ012', [], run_command, ['$MAKE -s --no-print-directory determ012'])
+test('determ012', [extra_files(['A.hs'])], run_command, ['$MAKE -s --no-print-directory determ012'])
diff --git a/testsuite/tests/determinism/determ013/all.T b/testsuite/tests/determinism/determ013/all.T
index 5cea086c68..21ea1f4344 100644
--- a/testsuite/tests/determinism/determ013/all.T
+++ b/testsuite/tests/determinism/determ013/all.T
@@ -1 +1 @@
-test('determ013', [], run_command, ['$MAKE -s --no-print-directory determ013'])
+test('determ013', [extra_files(['A.hs'])], run_command, ['$MAKE -s --no-print-directory determ013'])
diff --git a/testsuite/tests/determinism/determ014/all.T b/testsuite/tests/determinism/determ014/all.T
index 519a12570b..4e27332bb5 100644
--- a/testsuite/tests/determinism/determ014/all.T
+++ b/testsuite/tests/determinism/determ014/all.T
@@ -1 +1 @@
-test('determ014', [], run_command, ['$MAKE -s --no-print-directory determ014'])
+test('determ014', [extra_files(['A.hs'])], run_command, ['$MAKE -s --no-print-directory determ014'])
diff --git a/testsuite/tests/determinism/determ015/all.T b/testsuite/tests/determinism/determ015/all.T
index 3b0e5e1341..2b8ec7c883 100644
--- a/testsuite/tests/determinism/determ015/all.T
+++ b/testsuite/tests/determinism/determ015/all.T
@@ -1 +1 @@
-test('determ015', [], run_command, ['$MAKE -s --no-print-directory determ015'])
+test('determ015', [extra_files(['A.hs'])], run_command, ['$MAKE -s --no-print-directory determ015'])
diff --git a/testsuite/tests/determinism/determ016/all.T b/testsuite/tests/determinism/determ016/all.T
index dd7be7c6d8..bb3a2cfa88 100644
--- a/testsuite/tests/determinism/determ016/all.T
+++ b/testsuite/tests/determinism/determ016/all.T
@@ -1 +1 @@
-test('determ016', [], run_command, ['$MAKE -s --no-print-directory determ016'])
+test('determ016', [extra_files(['A.hs'])], run_command, ['$MAKE -s --no-print-directory determ016'])
diff --git a/testsuite/tests/determinism/determ017/all.T b/testsuite/tests/determinism/determ017/all.T
index 0d0bb28c06..a81692d639 100644
--- a/testsuite/tests/determinism/determ017/all.T
+++ b/testsuite/tests/determinism/determ017/all.T
@@ -1 +1 @@
-test('determ017', [], run_command, ['$MAKE -s --no-print-directory determ017'])
+test('determ017', [extra_files(['A.hs'])], run_command, ['$MAKE -s --no-print-directory determ017'])
diff --git a/testsuite/tests/determinism/determ018/all.T b/testsuite/tests/determinism/determ018/all.T
index 9e7c9b8a04..9d672264c2 100644
--- a/testsuite/tests/determinism/determ018/all.T
+++ b/testsuite/tests/determinism/determ018/all.T
@@ -1 +1 @@
-test('determ018', [], run_command, ['$MAKE -s --no-print-directory determ018'])
+test('determ018', [extra_files(['A.hs'])], run_command, ['$MAKE -s --no-print-directory determ018'])
diff --git a/testsuite/tests/determinism/determ019/all.T b/testsuite/tests/determinism/determ019/all.T
index 112431d103..fc44db070a 100644
--- a/testsuite/tests/determinism/determ019/all.T
+++ b/testsuite/tests/determinism/determ019/all.T
@@ -1 +1 @@
-test('determ019', [], run_command, ['$MAKE -s --no-print-directory determ019'])
+test('determ019', [extra_files(['A.hs'])], run_command, ['$MAKE -s --no-print-directory determ019'])
diff --git a/testsuite/tests/determinism/determ021/all.T b/testsuite/tests/determinism/determ021/all.T
index ed642f691f..9fde6445e2 100644
--- a/testsuite/tests/determinism/determ021/all.T
+++ b/testsuite/tests/determinism/determ021/all.T
@@ -1 +1 @@
-test('determ021', [], run_command, ['$MAKE -s --no-print-directory determ021'])
+test('determ021', [extra_files(['A.hs'])], run_command, ['$MAKE -s --no-print-directory determ021'])
diff --git a/testsuite/tests/driver/T12062/all.T b/testsuite/tests/driver/T12062/all.T
index 13147df45f..6d92b0fb82 100644
--- a/testsuite/tests/driver/T12062/all.T
+++ b/testsuite/tests/driver/T12062/all.T
@@ -1 +1 @@
-test('T12062', [], multimod_compile_fail, ['T12062', '-v0 -j0'])
+test('T12062', [extra_files(['A.hs', 'A.hs-boot', 'C.hs'])], multimod_compile_fail, ['T12062', '-v0 -j0'])
diff --git a/testsuite/tests/driver/T1372/all.T b/testsuite/tests/driver/T1372/all.T
index ad269cec86..9414ce70dd 100644
--- a/testsuite/tests/driver/T1372/all.T
+++ b/testsuite/tests/driver/T1372/all.T
@@ -1 +1 @@
-test('T1372', [], run_command, ['$MAKE -s --no-print-directory T1372'])
+test('T1372', [extra_files(['p1/', 'p2/'])], run_command, ['$MAKE -s --no-print-directory T1372'])
diff --git a/testsuite/tests/driver/T1959/test.T b/testsuite/tests/driver/T1959/test.T
index 8ace579066..e8eb3756d7 100644
--- a/testsuite/tests/driver/T1959/test.T
+++ b/testsuite/tests/driver/T1959/test.T
@@ -1 +1 @@
-test('T1959', [], run_command, ['$MAKE -s --no-print-directory dotest'])
+test('T1959', [extra_files(['B.hs', 'C.hs', 'D.hs', 'E1.hs', 'E2.hs'])], run_command, ['$MAKE -s --no-print-directory dotest'])
diff --git a/testsuite/tests/driver/T3007/all.T b/testsuite/tests/driver/T3007/all.T
index db5b52bc67..bd9046cdd8 100644
--- a/testsuite/tests/driver/T3007/all.T
+++ b/testsuite/tests/driver/T3007/all.T
@@ -1 +1 @@
-test('T3007', [], run_command, ['$MAKE -s --no-print-directory T3007'])
+test('T3007', [extra_files(['A/', 'B/'])], run_command, ['$MAKE -s --no-print-directory T3007'])
diff --git a/testsuite/tests/driver/T437/all.T b/testsuite/tests/driver/T437/all.T
index ff69c47899..a679ce2611 100644
--- a/testsuite/tests/driver/T437/all.T
+++ b/testsuite/tests/driver/T437/all.T
@@ -1,3 +1,3 @@
# Test for #437, a recompilation bug with '-main-is'
-test('T437', [], run_command, ['$MAKE -s --no-print-directory T437'])
+test('T437', [extra_files(['Test.hs', 'Test2.hs'])], run_command, ['$MAKE -s --no-print-directory T437'])
diff --git a/testsuite/tests/driver/T5147/all.T b/testsuite/tests/driver/T5147/all.T
index 5670cc505b..a83a005f1f 100644
--- a/testsuite/tests/driver/T5147/all.T
+++ b/testsuite/tests/driver/T5147/all.T
@@ -1 +1 @@
-test('T5147', [], run_command, ['$MAKE -s --no-print-directory T5147'])
+test('T5147', [extra_files(['A.hs', 'B1.hs', 'B2.hs'])], run_command, ['$MAKE -s --no-print-directory T5147'])
diff --git a/testsuite/tests/driver/T7373/all.T b/testsuite/tests/driver/T7373/all.T
index a03bfcc51c..d7926afce5 100644
--- a/testsuite/tests/driver/T7373/all.T
+++ b/testsuite/tests/driver/T7373/all.T
@@ -1,2 +1,3 @@
-test('T7373', [expect_broken(7373)], run_command,
+test('T7373', [extra_files(['D.hs', 'pkg/']),
+ expect_broken(7373)], run_command,
['$MAKE -s --no-print-directory T7373'])
diff --git a/testsuite/tests/driver/T7835/all.T b/testsuite/tests/driver/T7835/all.T
index d28ddcc95a..a5a09e6920 100644
--- a/testsuite/tests/driver/T7835/all.T
+++ b/testsuite/tests/driver/T7835/all.T
@@ -1,2 +1,2 @@
-test('T7835', [], run_command, ['$MAKE -s --no-print-directory T7835'])
+test('T7835', [extra_files(['Test.hs', 'TestPrim.hs', 'test-prims.cmm'])], run_command, ['$MAKE -s --no-print-directory T7835'])
diff --git a/testsuite/tests/driver/T8184/all.T b/testsuite/tests/driver/T8184/all.T
index ec859bfc7c..e2cc32afc0 100644
--- a/testsuite/tests/driver/T8184/all.T
+++ b/testsuite/tests/driver/T8184/all.T
@@ -1,2 +1,2 @@
-test('T8184', normal, run_command,
+test('T8184', extra_files(['A.hs', 'B.hs', 'B.hs-boot', 'C.hs']), run_command,
['$MAKE -s --no-print-directory T8184'])
diff --git a/testsuite/tests/driver/T8526/T8526.T b/testsuite/tests/driver/T8526/T8526.T
index e5da9a3182..e6885c791c 100644
--- a/testsuite/tests/driver/T8526/T8526.T
+++ b/testsuite/tests/driver/T8526/T8526.T
@@ -1 +1 @@
-test('T8526', [], ghci_script, ['T8526.script'])
+test('T8526', [extra_files(['A.hs'])], ghci_script, ['T8526.script'])
diff --git a/testsuite/tests/driver/T8602/T8602.T b/testsuite/tests/driver/T8602/T8602.T
index 22a63e2fd8..007b8ddc42 100644
--- a/testsuite/tests/driver/T8602/T8602.T
+++ b/testsuite/tests/driver/T8602/T8602.T
@@ -1,5 +1,6 @@
test('T8602',
- [extra_clean(['t8602.sh']),
+ [extra_files(['A.hs']),
+ extra_clean(['t8602.sh']),
# Windows runs the preprocessor using runInteractiveProcess and can't
# properly run the generated shell script as a result, since it can't
# recognize e.g. a shebang or anything.
diff --git a/testsuite/tests/driver/T9562/all.T b/testsuite/tests/driver/T9562/all.T
index 90110c256a..caa0c31f25 100644
--- a/testsuite/tests/driver/T9562/all.T
+++ b/testsuite/tests/driver/T9562/all.T
@@ -1,2 +1,3 @@
-test('T9562', [expect_broken(9562)], run_command,
+test('T9562', [extra_files(['A.hs', 'B.hs', 'B.hs-boot', 'C.hs', 'D.hs', 'Main.hs']),
+ expect_broken(9562)], run_command,
['$MAKE -s --no-print-directory T9562'])
diff --git a/testsuite/tests/driver/all.T b/testsuite/tests/driver/all.T
index e03d4dfdc2..09dc79ab79 100644
--- a/testsuite/tests/driver/all.T
+++ b/testsuite/tests/driver/all.T
@@ -1,73 +1,73 @@
-test('driver011', [], run_command, ['$MAKE -s --no-print-directory test011'])
+test('driver011', [extra_files(['A011.hs'])], run_command, ['$MAKE -s --no-print-directory test011'])
-test('driver012', [], run_command, ['$MAKE -s --no-print-directory test012'])
+test('driver012', [extra_files(['A012.hs'])], run_command, ['$MAKE -s --no-print-directory test012'])
-test('driver013', [], run_command, ['$MAKE -s --no-print-directory test013'])
+test('driver013', [extra_files(['A013.hs'])], run_command, ['$MAKE -s --no-print-directory test013'])
-test('driver014', [], run_command, ['$MAKE -s --no-print-directory test014'])
+test('driver014', [extra_files(['A014.hs'])], run_command, ['$MAKE -s --no-print-directory test014'])
-test('driver015', [], run_command, ['$MAKE -s --no-print-directory test015'])
+test('driver015', [extra_files(['A015.hs'])], run_command, ['$MAKE -s --no-print-directory test015'])
-test('driver016', [], run_command, ['$MAKE -s --no-print-directory test016'])
+test('driver016', [extra_files(['F016.hs'])], run_command, ['$MAKE -s --no-print-directory test016'])
-test('driver017', [], run_command, ['$MAKE -s --no-print-directory test017'])
+test('driver017', [extra_files(['F017.hs'])], run_command, ['$MAKE -s --no-print-directory test017'])
-test('driver018', [], run_command, ['$MAKE -s --no-print-directory test018'])
+test('driver018', [extra_files(['F018.hs'])], run_command, ['$MAKE -s --no-print-directory test018'])
-test('driver018a', [], run_command, ['$MAKE -s --no-print-directory test018a'])
+test('driver018a', [extra_files(['F018a.hs'])], run_command, ['$MAKE -s --no-print-directory test018a'])
-test('driver019', [], run_command, ['$MAKE -s --no-print-directory test019'])
+test('driver019', [extra_files(['F019.hs'])], run_command, ['$MAKE -s --no-print-directory test019'])
-test('driver021', [], run_command, ['$MAKE -s --no-print-directory test021'])
+test('driver021', [extra_files(['B021/'])], run_command, ['$MAKE -s --no-print-directory test021'])
-test('driver022', [], run_command, ['$MAKE -s --no-print-directory test022'])
+test('driver022', [extra_files(['B022/'])], run_command, ['$MAKE -s --no-print-directory test022'])
-test('driver023', [], run_command, ['$MAKE -s --no-print-directory test023'])
+test('driver023', [extra_files(['B023/'])], run_command, ['$MAKE -s --no-print-directory test023'])
-test('driver024', [], run_command, ['$MAKE -s --no-print-directory test024'])
+test('driver024', [extra_files(['B024/'])], run_command, ['$MAKE -s --no-print-directory test024'])
test('driver024a', [], run_command, ['$MAKE -s --no-print-directory test024a'])
-test('driver025', [], run_command, ['$MAKE -s --no-print-directory test025'])
+test('driver025', [extra_files(['B025/'])], run_command, ['$MAKE -s --no-print-directory test025'])
-test('driver026', [], run_command, ['$MAKE -s --no-print-directory test026'])
+test('driver026', [extra_files(['d026/'])], run_command, ['$MAKE -s --no-print-directory test026'])
-test('driver027', [], run_command, ['$MAKE -s --no-print-directory test027'])
+test('driver027', [extra_files(['B027/'])], run_command, ['$MAKE -s --no-print-directory test027'])
-test('driver028', [], run_command, ['$MAKE -s --no-print-directory test028'])
+test('driver028', [extra_files(['B028/'])], run_command, ['$MAKE -s --no-print-directory test028'])
-test('driver031', [], run_command, ['$MAKE -s --no-print-directory test031'])
+test('driver031', [extra_files(['A031.hs'])], run_command, ['$MAKE -s --no-print-directory test031'])
-test('driver032', [], run_command, ['$MAKE -s --no-print-directory test032'])
+test('driver032', [extra_files(['A032.hs'])], run_command, ['$MAKE -s --no-print-directory test032'])
-test('driver033', [], run_command, ['$MAKE -s --no-print-directory test033'])
+test('driver033', [extra_files(['A033.hs'])], run_command, ['$MAKE -s --no-print-directory test033'])
-test('driver034', [], run_command, ['$MAKE -s --no-print-directory test034'])
+test('driver034', [extra_files(['F034.hs'])], run_command, ['$MAKE -s --no-print-directory test034'])
-test('driver035', [], run_command, ['$MAKE -s --no-print-directory test035'])
+test('driver035', [extra_files(['F035.hs'])], run_command, ['$MAKE -s --no-print-directory test035'])
-test('driver041', [], run_command, ['$MAKE -s --no-print-directory test041'])
+test('driver041', [extra_files(['B041/'])], run_command, ['$MAKE -s --no-print-directory test041'])
-test('driver042', [], run_command, ['$MAKE -s --no-print-directory test042'])
+test('driver042', [extra_files(['B042/'])], run_command, ['$MAKE -s --no-print-directory test042'])
-test('driver042stub', [], run_command,
+test('driver042stub', [extra_files(['B042stub/'])], run_command,
['$MAKE -s --no-print-directory test042stub'])
-test('driver043', [], run_command, ['$MAKE -s --no-print-directory test043'])
+test('driver043', [extra_files(['B043/'])], run_command, ['$MAKE -s --no-print-directory test043'])
-test('driver044', [], run_command, ['$MAKE -s --no-print-directory test044'])
+test('driver044', [extra_files(['B044/'])], run_command, ['$MAKE -s --no-print-directory test044'])
-test('driver045', [], run_command, ['$MAKE -s --no-print-directory test045'])
+test('driver045', [extra_files(['B045/'])], run_command, ['$MAKE -s --no-print-directory test045'])
-test('driver051', [], run_command, ['$MAKE -s --no-print-directory test051'])
+test('driver051', [extra_files(['d051_1/', 'd051_2/'])], run_command, ['$MAKE -s --no-print-directory test051'])
-test('driver052', [], run_command, ['$MAKE -s --no-print-directory test052'])
+test('driver052', [extra_files(['d052_1/', 'd052_2/'])], run_command, ['$MAKE -s --no-print-directory test052'])
-test('driver053', [], run_command, ['$MAKE -s --no-print-directory test053'])
+test('driver053', [extra_files(['d053_1/', 'd053_2/'])], run_command, ['$MAKE -s --no-print-directory test053'])
-test('driver061a', [], run_command, ['$MAKE -s --no-print-directory test061a'])
+test('driver061a', [extra_files(['A061a.hs'])], run_command, ['$MAKE -s --no-print-directory test061a'])
-test('driver061b', [], run_command, ['$MAKE -s --no-print-directory test061b'])
+test('driver061b', [extra_files(['A061b.hs'])], run_command, ['$MAKE -s --no-print-directory test061b'])
test('driver062a', [], run_command, ['$MAKE -s --no-print-directory test062a'])
@@ -76,27 +76,27 @@ test('driver062c', [], run_command, ['$MAKE -s --no-print-directory test062c'])
test('driver062d', [], run_command, ['$MAKE -s --no-print-directory test062d'])
test('driver062e', [], run_command, ['$MAKE -s --no-print-directory test062e'])
-test('driver063', [], run_command, ['$MAKE -s --no-print-directory test063'])
+test('driver063', [extra_files(['D063.hs'])], run_command, ['$MAKE -s --no-print-directory test063'])
-test('driver064', [], run_command, ['$MAKE -s --no-print-directory test064'])
+test('driver064', [extra_files(['A064.hs'])], run_command, ['$MAKE -s --no-print-directory test064'])
-test('driver065', [], run_command, ['$MAKE -s --no-print-directory test065'])
+test('driver065', [extra_files(['A065.hs'])], run_command, ['$MAKE -s --no-print-directory test065'])
-test('driver066', [], run_command, ['$MAKE -s --no-print-directory test066'])
+test('driver066', [extra_files(['A066.hs'])], run_command, ['$MAKE -s --no-print-directory test066'])
-test('driver067', [], run_command, ['$MAKE -s --no-print-directory test067'])
+test('driver067', [extra_files(['A067.hs'])], run_command, ['$MAKE -s --no-print-directory test067'])
-test('driver070', [], run_command, ['$MAKE -s --no-print-directory test070'])
+test('driver070', [extra_files(['A070.hs'])], run_command, ['$MAKE -s --no-print-directory test070'])
-test('driver071', [], run_command, ['$MAKE -s --no-print-directory test071'])
+test('driver071', [extra_files(['A071.hs'])], run_command, ['$MAKE -s --no-print-directory test071'])
test('driver081a', [], run_command, ['$MAKE -s --no-print-directory test081a'])
test('driver081b', [], run_command, ['$MAKE -s --no-print-directory test081b'])
-test('driver100', [], run_command, ['$MAKE -s --no-print-directory test100'])
+test('driver100', [extra_files(['overlap/'])], run_command, ['$MAKE -s --no-print-directory test100'])
-test('driver200', [], run_command, ['$MAKE -s --no-print-directory test200'])
+test('driver200', [extra_files(['A200.hs', 'B200/', 'D200.hs'])], run_command, ['$MAKE -s --no-print-directory test200'])
test('T2566',
normalise_fun(normalise_errmsg),
@@ -116,7 +116,8 @@ if config.os == 'mingw32':
else:
only_windows = skip
-test('shared001', [only_windows], run_command,
+test('shared001', [extra_files(['Shared001.hs']),
+ only_windows], run_command,
['$MAKE -s --no-print-directory shared001'])
if config.os == 'darwin':
@@ -124,7 +125,8 @@ if config.os == 'darwin':
else:
only_darwin = skip
-test('static001', [only_darwin, expect_broken(8127)], run_command,
+test('static001', [extra_files(['Static001.hs']),
+ only_darwin, expect_broken(8127)], run_command,
['$MAKE -s --no-print-directory static001'])
test('dynHelloWorld',
@@ -141,7 +143,7 @@ test('T5313',
test('T2464', normal, compile, [''])
test('T3674', [], run_command, ['$MAKE -s --no-print-directory T3674'])
-test('rtsopts001', [], run_command,
+test('rtsopts001', [extra_files(['rtsOpts.hs'])], run_command,
['$MAKE -s --no-print-directory rtsopts001'])
test('rtsopts002', normal, run_command,
['$MAKE -s --no-print-directory rtsopts002'])
@@ -205,10 +207,10 @@ test('T8101b', expect_broken(10600), multimod_compile,
# Should not panic when compiling cmm file together with -outputdir.
test('T9050', cmm_src, compile, ['-outputdir=.'])
-test('write_interface_oneshot', [], run_command,
+test('write_interface_oneshot', [extra_files(['A011.hs'])], run_command,
['$MAKE -s --no-print-directory write_interface_oneshot'])
-test('write_interface_make', [], run_command,
+test('write_interface_make', [extra_files(['A011.hs'])], run_command,
['$MAKE -s --no-print-directory write_interface_make'])
test('T9776', normal, compile_fail, ['-frule-check'])
diff --git a/testsuite/tests/driver/bug1677/all.T b/testsuite/tests/driver/bug1677/all.T
index d2bd077a4e..4d25fed713 100644
--- a/testsuite/tests/driver/bug1677/all.T
+++ b/testsuite/tests/driver/bug1677/all.T
@@ -1 +1 @@
-test('bug1677', normal, run_command, ['$MAKE bug1677 -s --no-print-directory'])
+test('bug1677', extra_files(['Bar.hs', 'Foo.hs']), run_command, ['$MAKE bug1677 -s --no-print-directory'])
diff --git a/testsuite/tests/driver/dynamicToo/all.T b/testsuite/tests/driver/dynamicToo/all.T
index 5df706ec4c..c190c6bcfc 100644
--- a/testsuite/tests/driver/dynamicToo/all.T
+++ b/testsuite/tests/driver/dynamicToo/all.T
@@ -1,4 +1,5 @@
test('dynamicToo003',
- [unless(have_vanilla(), skip), unless(have_dynamic(), skip)], run_command,
+ [extra_files(['A003.hs']),
+ unless(have_vanilla(), skip), unless(have_dynamic(), skip)], run_command,
['$MAKE -s --no-print-directory dynamicToo003'])
diff --git a/testsuite/tests/driver/dynamicToo/dynamicToo001/test.T b/testsuite/tests/driver/dynamicToo/dynamicToo001/test.T
index 7b5398b78d..0d3f81e2e9 100644
--- a/testsuite/tests/driver/dynamicToo/dynamicToo001/test.T
+++ b/testsuite/tests/driver/dynamicToo/dynamicToo001/test.T
@@ -1,5 +1,6 @@
test('dynamicToo001',
- [when(opsys('mingw32'), expect_broken(7665)), unless(have_vanilla(), skip),
+ [extra_files(['A.hs', 'B.hs', 'B1.hs', 'B2.hs', 'C.hs']),
+ when(opsys('mingw32'), expect_broken(7665)), unless(have_vanilla(), skip),
unless(have_dynamic(), skip)],
run_command, ['$MAKE -s --no-print-directory dynamicToo001'])
diff --git a/testsuite/tests/driver/dynamicToo/dynamicToo002/test.T b/testsuite/tests/driver/dynamicToo/dynamicToo002/test.T
index 1e307eb9d4..fe94f3758f 100644
--- a/testsuite/tests/driver/dynamicToo/dynamicToo002/test.T
+++ b/testsuite/tests/driver/dynamicToo/dynamicToo002/test.T
@@ -1,4 +1,5 @@
test('dynamicToo002',
- [unless(have_vanilla(), skip), unless(have_dynamic(), skip)], run_command,
+ [extra_files(['A.hs', 'B.hs', 'C.hs']),
+ unless(have_vanilla(), skip), unless(have_dynamic(), skip)], run_command,
['$MAKE -s --no-print-directory dynamicToo002'])
diff --git a/testsuite/tests/driver/dynamicToo/dynamicToo004/test.T b/testsuite/tests/driver/dynamicToo/dynamicToo004/test.T
index 30bedf0f94..72810baa8c 100644
--- a/testsuite/tests/driver/dynamicToo/dynamicToo004/test.T
+++ b/testsuite/tests/driver/dynamicToo/dynamicToo004/test.T
@@ -1,6 +1,7 @@
test('dynamicToo004',
- [expect_broken(7665),
+ [extra_files(['Setup.hs', 'pkg1/', 'pkg1dyn/', 'pkg2/', 'prog.hs']),
+ expect_broken(7665),
unless(have_vanilla(), skip),
unless(have_dynamic(), skip)],
run_command,
diff --git a/testsuite/tests/driver/dynamicToo/dynamicToo005/test.T b/testsuite/tests/driver/dynamicToo/dynamicToo005/test.T
index 5a31c981b3..f062a21485 100644
--- a/testsuite/tests/driver/dynamicToo/dynamicToo005/test.T
+++ b/testsuite/tests/driver/dynamicToo/dynamicToo005/test.T
@@ -1,4 +1,5 @@
test('dynamicToo005',
- [unless(have_vanilla(), skip), unless(have_dynamic(), skip)], run_command,
+ [extra_files(['dynamicToo005.bkp']),
+ unless(have_vanilla(), skip), unless(have_dynamic(), skip)], run_command,
['$MAKE -s --no-print-directory dynamicToo005'])
diff --git a/testsuite/tests/driver/dynamic_flags_001/all.T b/testsuite/tests/driver/dynamic_flags_001/all.T
index 29159741de..d019a667e3 100644
--- a/testsuite/tests/driver/dynamic_flags_001/all.T
+++ b/testsuite/tests/driver/dynamic_flags_001/all.T
@@ -1,2 +1,3 @@
-test('dynamic_flags_001', [when(fast(), skip)], run_command,
+test('dynamic_flags_001', [extra_files(['A.hs', 'B.hs', 'C.hs']),
+ when(fast(), skip)], run_command,
['$MAKE -s --no-print-directory dynamic_flags_001'])
diff --git a/testsuite/tests/driver/recomp001/all.T b/testsuite/tests/driver/recomp001/all.T
index 9b133d8a8a..4c046da3e3 100644
--- a/testsuite/tests/driver/recomp001/all.T
+++ b/testsuite/tests/driver/recomp001/all.T
@@ -1,2 +1,3 @@
-test('recomp001', [when(fast(), skip)], run_command,
+test('recomp001', [extra_files(['A.hs', 'B1.hs', 'B2.hs', 'C.hs']),
+ when(fast(), skip)], run_command,
['$MAKE -s --no-print-directory recomp001'])
diff --git a/testsuite/tests/driver/recomp002/all.T b/testsuite/tests/driver/recomp002/all.T
index c1fc00fc6a..d8a5ee7d1b 100644
--- a/testsuite/tests/driver/recomp002/all.T
+++ b/testsuite/tests/driver/recomp002/all.T
@@ -1,2 +1,3 @@
-test('recomp002', [when(fast(), skip)], run_command,
+test('recomp002', [extra_files(['Q.hs', 'W.hs', 'W.hs-boot']),
+ when(fast(), skip)], run_command,
['$MAKE -s --no-print-directory recomp002'])
diff --git a/testsuite/tests/driver/recomp003/all.T b/testsuite/tests/driver/recomp003/all.T
index ddef73575b..0437626e31 100644
--- a/testsuite/tests/driver/recomp003/all.T
+++ b/testsuite/tests/driver/recomp003/all.T
@@ -1 +1 @@
-test('recomp003', [], run_command, ['$MAKE -s --no-print-directory recomp003'])
+test('recomp003', [extra_files(['A.hs'])], run_command, ['$MAKE -s --no-print-directory recomp003'])
diff --git a/testsuite/tests/driver/recomp004/all.T b/testsuite/tests/driver/recomp004/all.T
index 787147b2fc..945d8a1543 100644
--- a/testsuite/tests/driver/recomp004/all.T
+++ b/testsuite/tests/driver/recomp004/all.T
@@ -1 +1 @@
-test('recomp004', [], run_command, ['$MAKE -s --no-print-directory recomp004'])
+test('recomp004', [extra_files(['Main.hs', 'c.h', 'c1.c', 'c2.c'])], run_command, ['$MAKE -s --no-print-directory recomp004'])
diff --git a/testsuite/tests/driver/recomp005/all.T b/testsuite/tests/driver/recomp005/all.T
index 64ec8b0f4f..533b7d6c8d 100644
--- a/testsuite/tests/driver/recomp005/all.T
+++ b/testsuite/tests/driver/recomp005/all.T
@@ -1,2 +1,3 @@
-test('recomp005', [when(fast(), skip)], run_command,
+test('recomp005', [extra_files(['A.hs', 'B.hs', 'C1.hs', 'C2.hs', 'D.hs', 'E.hs']),
+ when(fast(), skip)], run_command,
['$MAKE -s --no-print-directory recomp005'])
diff --git a/testsuite/tests/driver/recomp006/all.T b/testsuite/tests/driver/recomp006/all.T
index 44d33c03ce..c7252efd78 100644
--- a/testsuite/tests/driver/recomp006/all.T
+++ b/testsuite/tests/driver/recomp006/all.T
@@ -1,2 +1,3 @@
-test('recomp006', [when(fast(), skip)], run_command,
+test('recomp006', [extra_files(['A.hs', 'B1.hs', 'B2.hs']),
+ when(fast(), skip)], run_command,
['$MAKE -s --no-print-directory recomp006'])
diff --git a/testsuite/tests/driver/recomp007/all.T b/testsuite/tests/driver/recomp007/all.T
index e123cbaba3..d4283ddedd 100644
--- a/testsuite/tests/driver/recomp007/all.T
+++ b/testsuite/tests/driver/recomp007/all.T
@@ -2,5 +2,6 @@
# See the patch
# "Fix a recompilation checking bug when a package dependency changes"
-test('recomp007', [when(fast(), skip), normalise_slashes], run_command,
+test('recomp007', [extra_files(['Setup.hs', 'a1/', 'a2/', 'b/']),
+ when(fast(), skip), normalise_slashes], run_command,
['$MAKE -s --no-print-directory recomp007'])
diff --git a/testsuite/tests/driver/recomp008/all.T b/testsuite/tests/driver/recomp008/all.T
index aa147826bf..42f52cd090 100644
--- a/testsuite/tests/driver/recomp008/all.T
+++ b/testsuite/tests/driver/recomp008/all.T
@@ -1,4 +1,5 @@
# Test for #4469, a recompilation bug related to instances
-test('recomp008', [when(fast(), skip), normalise_slashes], run_command,
+test('recomp008', [extra_files(['A1.hs', 'A2.hs', 'B.hs', 'Main.hs']),
+ when(fast(), skip), normalise_slashes], run_command,
['$MAKE -s --no-print-directory recomp008'])
diff --git a/testsuite/tests/driver/recomp009/all.T b/testsuite/tests/driver/recomp009/all.T
index 519933ac81..2b5d2afaf3 100644
--- a/testsuite/tests/driver/recomp009/all.T
+++ b/testsuite/tests/driver/recomp009/all.T
@@ -1,3 +1,3 @@
# Test for #481, a recompilation bug with Template Haskell
-test('recomp009', [], run_command, ['$MAKE -s --no-print-directory recomp009'])
+test('recomp009', [extra_files(['Main.hs', 'Sub1.hs', 'Sub2.hs'])], run_command, ['$MAKE -s --no-print-directory recomp009'])
diff --git a/testsuite/tests/driver/recomp010/all.T b/testsuite/tests/driver/recomp010/all.T
index 1fd1e2a0fa..5eea6a10d0 100644
--- a/testsuite/tests/driver/recomp010/all.T
+++ b/testsuite/tests/driver/recomp010/all.T
@@ -1,3 +1,3 @@
# Test for #5614, a recompilation bug
-test('recomp010', [], run_command, ['$MAKE -s --no-print-directory recomp010'])
+test('recomp010', [extra_files(['Main.hs', 'X1.hs', 'X2.hs'])], run_command, ['$MAKE -s --no-print-directory recomp010'])
diff --git a/testsuite/tests/driver/recomp011/all.T b/testsuite/tests/driver/recomp011/all.T
index 1dd66b8027..c22a6951a2 100644
--- a/testsuite/tests/driver/recomp011/all.T
+++ b/testsuite/tests/driver/recomp011/all.T
@@ -1,5 +1,6 @@
# Test for #3589, recompiling when #included files change
test('recomp011',
- [when(arch('powerpc64') or arch('powerpc64le'), expect_broken(11260))],
+ [extra_files(['Main.hs']),
+ when(arch('powerpc64') or arch('powerpc64le'), expect_broken(11260))],
run_command, ['$MAKE -s --no-print-directory recomp011'])
diff --git a/testsuite/tests/driver/recomp015/all.T b/testsuite/tests/driver/recomp015/all.T
index fe29078b7c..e0b77f3cce 100644
--- a/testsuite/tests/driver/recomp015/all.T
+++ b/testsuite/tests/driver/recomp015/all.T
@@ -1,7 +1,8 @@
# Test for the ELF parser: more than 0xff00 sections (use different ELF fields)
test('recomp015',
- [ clean_cmd('$MAKE -s clean'),
+ [extra_files(['Generate.hs']),
+ clean_cmd('$MAKE -s clean'),
# See ticket:11022#comment:7
unless(opsys('linux') or opsys('solaris2') or opsys('openbsd'), skip),
when(arch('arm'), skip),
diff --git a/testsuite/tests/driver/recomp016/all.T b/testsuite/tests/driver/recomp016/all.T
index 45e2b4e8de..54b33723c0 100644
--- a/testsuite/tests/driver/recomp016/all.T
+++ b/testsuite/tests/driver/recomp016/all.T
@@ -1,3 +1,3 @@
# Test for #12723, a recompilation bug
-test('recomp016', [], run_command, ['$MAKE -s --no-print-directory recomp016'])
+test('recomp016', [extra_files(['A.hs', 'A2.hs', 'C.hs', 'D.hs', 'E.hs'])], run_command, ['$MAKE -s --no-print-directory recomp016'])
diff --git a/testsuite/tests/driver/retc001/all.T b/testsuite/tests/driver/retc001/all.T
index aa36d77dd6..3f15ed1654 100644
--- a/testsuite/tests/driver/retc001/all.T
+++ b/testsuite/tests/driver/retc001/all.T
@@ -1,5 +1,6 @@
test('retc001',
- [clean_cmd('$MAKE -s clean'),
+ [extra_files(['A.hs', 'B1.hs', 'B2.hs', 'C.hs']),
+ clean_cmd('$MAKE -s clean'),
# See issue 11204, this test sometimes passes and sometimes fails on OSX
when(opsys('darwin'), skip)],
run_command,
diff --git a/testsuite/tests/driver/retc002/all.T b/testsuite/tests/driver/retc002/all.T
index 54267f3865..a2b67e47b0 100644
--- a/testsuite/tests/driver/retc002/all.T
+++ b/testsuite/tests/driver/retc002/all.T
@@ -1,2 +1,3 @@
-test('retc002', [when(fast(), skip)], run_command,
+test('retc002', [extra_files(['Q.hs', 'W.hs', 'W.hs-boot']),
+ when(fast(), skip)], run_command,
['$MAKE -s --no-print-directory retc002'])
diff --git a/testsuite/tests/driver/retc003/all.T b/testsuite/tests/driver/retc003/all.T
index 4d97b18f6a..0bfefce6b5 100644
--- a/testsuite/tests/driver/retc003/all.T
+++ b/testsuite/tests/driver/retc003/all.T
@@ -1 +1 @@
-test('retc003', [], run_command, ['$MAKE -s --no-print-directory retc003'])
+test('retc003', [extra_files(['A.hs'])], run_command, ['$MAKE -s --no-print-directory retc003'])
diff --git a/testsuite/tests/ffi/should_fail/all.T b/testsuite/tests/ffi/should_fail/all.T
index 543835a70e..9e067622b5 100644
--- a/testsuite/tests/ffi/should_fail/all.T
+++ b/testsuite/tests/ffi/should_fail/all.T
@@ -6,7 +6,7 @@ test('ccfail001', normal, compile_fail, [''])
test('ccfail002', normal, compile_fail, [''])
test('ccfail003', normal, compile_fail, [''])
test('T3066', normal, compile_fail, [''])
-test('ccfail004', [], multimod_compile_fail, ['ccfail004', '-v0'])
+test('ccfail004', [extra_files(['Ccfail004A.hs'])], multimod_compile_fail, ['ccfail004', '-v0'])
test('ccfail005', normal, compile_fail, [''])
test('ccall_value', normal, compile_fail, [''])
test('capi_value_function', normal, compile_fail, [''])
diff --git a/testsuite/tests/ffi/should_run/all.T b/testsuite/tests/ffi/should_run/all.T
index 38f0288410..1bb58c5e49 100644
--- a/testsuite/tests/ffi/should_run/all.T
+++ b/testsuite/tests/ffi/should_run/all.T
@@ -85,7 +85,8 @@ test('ffi017', normal, compile_and_run, [''])
test('ffi018', [omit_ways(['ghci'])], compile_and_run, ['ffi018_c.c'])
test('ffi018_ghci',
- [only_ways(['ghci']),
+ [extra_files(['ffi018.h']),
+ only_ways(['ghci']),
pre_cmd('$MAKE -s --no-print-directory ffi018_ghci_setup')],
compile_and_run, ['ffi018_ghci_c.o'])
@@ -155,10 +156,10 @@ test('T5594', [ omit_ways(['ghci']),
# needs it.
compile_and_run, ['T5594_c.c -no-hs-main'])
-test('Capi_Ctype_001', [], run_command,
+test('Capi_Ctype_001', [extra_files(['Capi_Ctype_A_001.hsc', 'capi_ctype_001.h', 'capi_ctype_001_c.c'])], run_command,
['$MAKE -s --no-print-directory Capi_Ctype_001'])
-test('Capi_Ctype_002', [], run_command,
+test('Capi_Ctype_002', [extra_files(['Capi_Ctype_A_002.hsc', 'capi_ctype_002_A.h', 'capi_ctype_002_B.h'])], run_command,
['$MAKE -s --no-print-directory Capi_Ctype_002'])
test('ffi_parsing_001', [omit_ways(['ghci'])], compile_and_run,
diff --git a/testsuite/tests/gadt/all.T b/testsuite/tests/gadt/all.T
index 2bae2696b4..d29fa8e4b0 100644
--- a/testsuite/tests/gadt/all.T
+++ b/testsuite/tests/gadt/all.T
@@ -19,7 +19,7 @@ test('gadt14', normal, compile, [''])
test('gadt15', normal, compile, [''])
test('gadt16', normal, compile, [''])
-test('gadt17', [], run_command, ['$MAKE -s --no-print-directory gadt17'])
+test('gadt17', [extra_files(['Gadt17_help.hs'])], run_command, ['$MAKE -s --no-print-directory gadt17'])
test('gadt18', normal, compile, [''])
test('gadt19', normal, compile, [''])
@@ -27,7 +27,7 @@ test('gadt20', normal, compile, [''])
test('gadt21', normal, compile_fail, [''])
test('gadt22', normal, compile, [''])
-test('gadt23', [], run_command, ['$MAKE -s --no-print-directory gadt23'])
+test('gadt23', [extra_files(['Gadt23_AST.hs'])], run_command, ['$MAKE -s --no-print-directory gadt23'])
test('gadt24', normal, compile, [''])
diff --git a/testsuite/tests/generics/GFunctor/test.T b/testsuite/tests/generics/GFunctor/test.T
index b18e2ee67a..5d8e405eee 100644
--- a/testsuite/tests/generics/GFunctor/test.T
+++ b/testsuite/tests/generics/GFunctor/test.T
@@ -1 +1 @@
-test('GFunctor1', [], multimod_compile_and_run, ['Main', ''])
+test('GFunctor1', [extra_files(['GFunctor.hs', 'Main.hs'])], multimod_compile_and_run, ['Main', ''])
diff --git a/testsuite/tests/generics/GMap/test.T b/testsuite/tests/generics/GMap/test.T
index 79536c0e43..4f3683e357 100644
--- a/testsuite/tests/generics/GMap/test.T
+++ b/testsuite/tests/generics/GMap/test.T
@@ -1 +1 @@
-test('GMap1', [], multimod_compile_and_run, ['Main', ''])
+test('GMap1', [extra_files(['GMap.hs', 'Main.hs'])], multimod_compile_and_run, ['Main', ''])
diff --git a/testsuite/tests/generics/GShow/test.T b/testsuite/tests/generics/GShow/test.T
index af1dc279db..d2bc82a3f9 100644
--- a/testsuite/tests/generics/GShow/test.T
+++ b/testsuite/tests/generics/GShow/test.T
@@ -1 +1 @@
-test('GShow1', [], multimod_compile_and_run, ['Main', ''])
+test('GShow1', [extra_files(['GShow.hs', 'Main.hs'])], multimod_compile_and_run, ['Main', ''])
diff --git a/testsuite/tests/generics/Uniplate/test.T b/testsuite/tests/generics/Uniplate/test.T
index 1e99941bd4..6a71d09f81 100644
--- a/testsuite/tests/generics/Uniplate/test.T
+++ b/testsuite/tests/generics/Uniplate/test.T
@@ -1 +1 @@
-test('GUniplate1', [], multimod_compile_and_run, ['Main', ''])
+test('GUniplate1', [extra_files(['GUniplate.hs', 'Main.hs'])], multimod_compile_and_run, ['Main', ''])
diff --git a/testsuite/tests/ghc-api/T4891/all.T b/testsuite/tests/ghc-api/T4891/all.T
index 65aeddcbb6..1e61d62c6c 100644
--- a/testsuite/tests/ghc-api/T4891/all.T
+++ b/testsuite/tests/ghc-api/T4891/all.T
@@ -1 +1 @@
-test('T4891', [], run_command, ['$MAKE -s --no-print-directory T4891'])
+test('T4891', [extra_files(['X.hs'])], run_command, ['$MAKE -s --no-print-directory T4891'])
diff --git a/testsuite/tests/ghc-api/T7478/all.T b/testsuite/tests/ghc-api/T7478/all.T
index 625d4fcdc3..e4b43d0114 100644
--- a/testsuite/tests/ghc-api/T7478/all.T
+++ b/testsuite/tests/ghc-api/T7478/all.T
@@ -1,2 +1,3 @@
-test('T7478', [unless(have_dynamic(), skip)], run_command,
+test('T7478', [extra_files(['A.hs', 'B.hs', 'C.hs']),
+ unless(have_dynamic(), skip)], run_command,
['$MAKE -s --no-print-directory T7478'])
diff --git a/testsuite/tests/ghc-api/annotations-literals/all.T b/testsuite/tests/ghc-api/annotations-literals/all.T
index 311f2cf81a..c8c511f256 100644
--- a/testsuite/tests/ghc-api/annotations-literals/all.T
+++ b/testsuite/tests/ghc-api/annotations-literals/all.T
@@ -1,2 +1,2 @@
-test('literals', [], run_command, ['$MAKE -s --no-print-directory literals'])
-test('parsed', [], run_command, ['$MAKE -s --no-print-directory parsed'])
+test('literals', [extra_files(['LiteralsTest.hs'])], run_command, ['$MAKE -s --no-print-directory literals'])
+test('parsed', [extra_files(['LiteralsTest2.hs'])], run_command, ['$MAKE -s --no-print-directory parsed'])
diff --git a/testsuite/tests/ghc-api/annotations/all.T b/testsuite/tests/ghc-api/annotations/all.T
index 1028626575..adc0d14370 100644
--- a/testsuite/tests/ghc-api/annotations/all.T
+++ b/testsuite/tests/ghc-api/annotations/all.T
@@ -1,30 +1,59 @@
-test('annotations', ignore_stderr, run_command, ['$MAKE -s --no-print-directory annotations'])
-test('parseTree', ignore_stderr, run_command, ['$MAKE -s --no-print-directory parseTree'])
-test('comments', ignore_stderr, run_command, ['$MAKE -s --no-print-directory comments'])
-test('exampleTest', ignore_stderr, run_command, ['$MAKE -s --no-print-directory exampleTest'])
-test('listcomps', ignore_stderr, run_command, ['$MAKE -s --no-print-directory listcomps'])
-test('T10255', ignore_stderr, run_command, ['$MAKE -s --no-print-directory T10255'])
-test('T10268', ignore_stderr, run_command, ['$MAKE -s --no-print-directory T10268'])
-test('T10269', ignore_stderr, run_command, ['$MAKE -s --no-print-directory T10269'])
-test('T10280', ignore_stderr, run_command, ['$MAKE -s --no-print-directory T10280'])
-test('T10312', ignore_stderr, run_command, ['$MAKE -s --no-print-directory T10312'])
-test('T10307', ignore_stderr, run_command, ['$MAKE -s --no-print-directory T10307'])
-test('T10309', ignore_stderr, run_command, ['$MAKE -s --no-print-directory T10309'])
-test('boolFormula', ignore_stderr, run_command, ['$MAKE -s --no-print-directory boolFormula'])
-test('T10357', ignore_stderr, run_command, ['$MAKE -s --no-print-directory T10357'])
-test('T10358', ignore_stderr, run_command, ['$MAKE -s --no-print-directory T10358'])
-test('T10278', ignore_stderr, run_command, ['$MAKE -s --no-print-directory T10278'])
-test('T10354', ignore_stderr, run_command, ['$MAKE -s --no-print-directory T10354'])
-test('T10396', ignore_stderr, run_command, ['$MAKE -s --no-print-directory T10396'])
-test('T10399', ignore_stderr, run_command, ['$MAKE -s --no-print-directory T10399'])
-test('T10313', ignore_stderr, run_command, ['$MAKE -s --no-print-directory T10313'])
-test('T11018', ignore_stderr, run_command, ['$MAKE -s --no-print-directory T11018'])
-test('bundle-export', ignore_stderr, run_command, ['$MAKE -s --no-print-directory bundle-export'])
-test('T10276', ignore_stderr, run_command, ['$MAKE -s --no-print-directory T10276'])
-test('T10598', ignore_stderr, run_command, ['$MAKE -s --no-print-directory T10598'])
-test('T11321', ignore_stderr, run_command, ['$MAKE -s --no-print-directory T11321'])
-test('T11332', ignore_stderr, run_command, ['$MAKE -s --no-print-directory T11332'])
-test('T11430', ignore_stderr, run_command, ['$MAKE -s --no-print-directory T11430'])
+test('annotations', [extra_files(['AnnotationLet.hs']),
+ ignore_stderr], run_command, ['$MAKE -s --no-print-directory annotations'])
+test('parseTree', [extra_files(['AnnotationTuple.hs']),
+ ignore_stderr], run_command, ['$MAKE -s --no-print-directory parseTree'])
+test('comments', [extra_files(['CommentsTest.hs']),
+ ignore_stderr], run_command, ['$MAKE -s --no-print-directory comments'])
+test('exampleTest', [extra_files(['AnnotationTuple.hs']),
+ ignore_stderr], run_command, ['$MAKE -s --no-print-directory exampleTest'])
+test('listcomps', [extra_files(['ListComprehensions.hs']),
+ ignore_stderr], run_command, ['$MAKE -s --no-print-directory listcomps'])
+test('T10255', [extra_files(['Test10255.hs']),
+ ignore_stderr], run_command, ['$MAKE -s --no-print-directory T10255'])
+test('T10268', [extra_files(['Test10268.hs']),
+ ignore_stderr], run_command, ['$MAKE -s --no-print-directory T10268'])
+test('T10269', [extra_files(['Test10269.hs']),
+ ignore_stderr], run_command, ['$MAKE -s --no-print-directory T10269'])
+test('T10280', [extra_files(['Test10280.hs']),
+ ignore_stderr], run_command, ['$MAKE -s --no-print-directory T10280'])
+test('T10312', [extra_files(['Test10312.hs']),
+ ignore_stderr], run_command, ['$MAKE -s --no-print-directory T10312'])
+test('T10307', [extra_files(['Test10307.hs']),
+ ignore_stderr], run_command, ['$MAKE -s --no-print-directory T10307'])
+test('T10309', [extra_files(['Test10309.hs']),
+ ignore_stderr], run_command, ['$MAKE -s --no-print-directory T10309'])
+test('boolFormula', [extra_files(['TestBoolFormula.hs']),
+ ignore_stderr], run_command, ['$MAKE -s --no-print-directory boolFormula'])
+test('T10357', [extra_files(['Test10357.hs']),
+ ignore_stderr], run_command, ['$MAKE -s --no-print-directory T10357'])
+test('T10358', [extra_files(['Test10358.hs']),
+ ignore_stderr], run_command, ['$MAKE -s --no-print-directory T10358'])
+test('T10278', [extra_files(['Test10278.hs']),
+ ignore_stderr], run_command, ['$MAKE -s --no-print-directory T10278'])
+test('T10354', [extra_files(['Test10354.hs']),
+ ignore_stderr], run_command, ['$MAKE -s --no-print-directory T10354'])
+test('T10396', [extra_files(['Test10396.hs']),
+ ignore_stderr], run_command, ['$MAKE -s --no-print-directory T10396'])
+test('T10399', [extra_files(['Test10399.hs']),
+ ignore_stderr], run_command, ['$MAKE -s --no-print-directory T10399'])
+test('T10313', [extra_files(['Test10313.hs', 'stringSource.hs']),
+ ignore_stderr], run_command, ['$MAKE -s --no-print-directory T10313'])
+test('T11018', [extra_files(['Test11018.hs']),
+ ignore_stderr], run_command, ['$MAKE -s --no-print-directory T11018'])
+test('bundle-export', [extra_files(['BundleExport.hs']),
+ ignore_stderr], run_command, ['$MAKE -s --no-print-directory bundle-export'])
+test('T10276', [extra_files(['Test10276.hs']),
+ ignore_stderr], run_command, ['$MAKE -s --no-print-directory T10276'])
+test('T10598', [extra_files(['Test10598.hs']),
+ ignore_stderr], run_command, ['$MAKE -s --no-print-directory T10598'])
+test('T11321', [extra_files(['Test11321.hs']),
+ ignore_stderr], run_command, ['$MAKE -s --no-print-directory T11321'])
+test('T11332', [extra_files(['Test11332.hs']),
+ ignore_stderr], run_command, ['$MAKE -s --no-print-directory T11332'])
+test('T11430', [extra_files(['Test11430.hs', 't11430.hs']),
+ ignore_stderr], run_command, ['$MAKE -s --no-print-directory T11430'])
test('load-main', ignore_stderr, run_command, ['$MAKE -s --no-print-directory load-main'])
-test('T12417', ignore_stderr, run_command, ['$MAKE -s --no-print-directory T12417'])
-test('T13163', ignore_stderr, run_command, ['$MAKE -s --no-print-directory T13163'])
+test('T12417', [extra_files(['Test12417.hs']),
+ ignore_stderr], run_command, ['$MAKE -s --no-print-directory T12417'])
+test('T13163', [extra_files(['Test13163.hs']),
+ ignore_stderr], run_command, ['$MAKE -s --no-print-directory T13163'])
diff --git a/testsuite/tests/ghc-api/apirecomp001/all.T b/testsuite/tests/ghc-api/apirecomp001/all.T
index f58352af99..7b17e138f4 100644
--- a/testsuite/tests/ghc-api/apirecomp001/all.T
+++ b/testsuite/tests/ghc-api/apirecomp001/all.T
@@ -1,4 +1,4 @@
test('apirecomp001',
- normal,
+ extra_files(['A.hs', 'B.hs', 'myghc.hs']),
run_command,
['$MAKE -s --no-print-directory apirecomp001'])
diff --git a/testsuite/tests/ghci.debugger/scripts/all.T b/testsuite/tests/ghci.debugger/scripts/all.T
index ef17450e89..96de3a334b 100644
--- a/testsuite/tests/ghci.debugger/scripts/all.T
+++ b/testsuite/tests/ghci.debugger/scripts/all.T
@@ -2,53 +2,55 @@ setTestOpts([extra_run_opts('-ignore-dot-ghci'),
normalise_slashes])
test('print001', normal, ghci_script, ['print001.script'])
-test('print002', normal, ghci_script, ['print002.script'])
-test('print003', normal, ghci_script, ['print003.script'])
+test('print002', extra_files(['../Test.hs']), ghci_script, ['print002.script'])
+test('print003', extra_files(['../Test.hs']), ghci_script, ['print003.script'])
test('print004', normal, ghci_script, ['print004.script'])
-test('print005', normal, ghci_script, ['print005.script'])
-test('print006', normal, ghci_script, ['print006.script'])
-test('print007', normal, ghci_script, ['print007.script'])
-test('print008', normal, ghci_script, ['print008.script'])
+test('print005', extra_files(['../QSort.hs']), ghci_script, ['print005.script'])
+test('print006', extra_files(['../Test.hs']), ghci_script, ['print006.script'])
+test('print007', extra_files(['../Test.hs']), ghci_script, ['print007.script'])
+test('print008', extra_files(['../Test.hs']), ghci_script, ['print008.script'])
test('print009', normal, ghci_script, ['print009.script'])
-test('print010', normal, ghci_script, ['print010.script'])
-test('print011', normal, ghci_script, ['print011.script'])
-test('print012', normal, ghci_script, ['print012.script'])
-test('print013', normal, ghci_script, ['print013.script'])
-test('print014', normal, ghci_script, ['print014.script'])
-test('print016', normal, ghci_script, ['print016.script'])
-test('print017', normal, ghci_script, ['print017.script'])
-test('print018', normal, ghci_script, ['print018.script'])
-test('print019', normal, ghci_script, ['print019.script'])
-test('print020', normal, ghci_script, ['print020.script'])
+test('print010', extra_files(['../Test.hs']), ghci_script, ['print010.script'])
+test('print011', extra_files(['../Test.hs']), ghci_script, ['print011.script'])
+test('print012', extra_files(['../GADT.hs', '../Test.hs']), ghci_script, ['print012.script'])
+test('print013', extra_files(['../GADT.hs']), ghci_script, ['print013.script'])
+test('print014', extra_files(['../GADT.hs']), ghci_script, ['print014.script'])
+test('print016', extra_files(['../Test.hs']), ghci_script, ['print016.script'])
+test('print017', extra_files(['../Test.hs']), ghci_script, ['print017.script'])
+test('print018', extra_files(['../Test.hs']), ghci_script, ['print018.script'])
+test('print019', extra_files(['../Test.hs']), ghci_script, ['print019.script'])
+test('print020', extra_files(['../HappyTest.hs']), ghci_script, ['print020.script'])
test('print021', normal, ghci_script, ['print021.script'])
test('print022', when(arch('powerpc64'), expect_broken(11262)),
ghci_script, ['print022.script'])
-test('print023', normal, ghci_script, ['print023.script'])
-test('print024', normal, ghci_script, ['print024.script'])
+test('print023', extra_files(['../Test.hs']), ghci_script, ['print023.script'])
+test('print024', extra_files(['../Test.hs']), ghci_script, ['print024.script'])
test('print025', normal, ghci_script, ['print025.script'])
test('print026', normal, ghci_script, ['print026.script'])
test('print027', normal, ghci_script, ['print027.script'])
test('print028', normal, ghci_script, ['print028.script'])
test('print029', normal, ghci_script, ['print029.script'])
-test('print030', normal, ghci_script, ['print030.script'])
+test('print030', extra_files(['print029.hs']), ghci_script, ['print030.script'])
test('print031', normal, ghci_script, ['print031.script'])
-test('print032', normal, ghci_script, ['print032.script'])
+test('print032', extra_files(['print029.hs']), ghci_script, ['print032.script'])
test('print033', normal, ghci_script, ['print033.script'])
-test('print034', normal, ghci_script, ['print034.script'])
-test('print035', normal, ghci_script, ['print035.script'])
+test('print034', extra_files(['../GADT.hs', '../Test.hs']), ghci_script, ['print034.script'])
+test('print035', extra_files(['../Unboxed.hs']), ghci_script, ['print035.script'])
test('print036', expect_broken(9046), ghci_script, ['print036.script'])
-test('break001', normal, ghci_script, ['break001.script'])
-test('break002', normal, ghci_script, ['break002.script'])
-test('break003', normal, ghci_script, ['break003.script'])
-test('break005', normal, ghci_script, ['break005.script'])
-test('break006', normal, ghci_script, ['break006.script'])
-test('break007', [], ghci_script, ['break007.script'])
-test('break008', normal, ghci_script, ['break008.script'])
-test('break009', combined_output, ghci_script, ['break009.script'])
-test('break010', normal, ghci_script, ['break010.script'])
+test('break001', extra_files(['../Test2.hs']), ghci_script, ['break001.script'])
+test('break002', extra_files(['../Test2.hs']), ghci_script, ['break002.script'])
+test('break003', extra_files(['../Test3.hs']), ghci_script, ['break003.script'])
+test('break005', extra_files(['../QSort.hs']), ghci_script, ['break005.script'])
+test('break006', extra_files(['../Test3.hs']), ghci_script, ['break006.script'])
+test('break007', [extra_files(['Break007.hs'])], ghci_script, ['break007.script'])
+test('break008', extra_files(['../Test3.hs']), ghci_script, ['break008.script'])
+test('break009', [extra_files(['../Test6.hs']),
+ combined_output], ghci_script, ['break009.script'])
+test('break010', extra_files(['../Test6.hs']), ghci_script, ['break010.script'])
test('break011',
- [combined_output,
+ [extra_files(['../Test7.hs']),
+ combined_output,
when(msys(), expect_broken(12712))],
ghci_script, ['break011.script'])
test('break012', normal, ghci_script, ['break012.script'])
@@ -56,21 +58,22 @@ test('break013', normal, ghci_script, ['break013.script'])
test('break014', normal, ghci_script, ['break014.script'])
test('break015', expect_broken(1532), ghci_script, ['break015.script'])
test('break016', combined_output, ghci_script, ['break016.script'])
-test('break017', combined_output, ghci_script, ['break017.script'])
-test('break018', normal, ghci_script, ['break018.script'])
-test('break019', normal, ghci_script, ['break019.script'])
-test('break020', normal, ghci_script, ['break020.script'])
-test('break021', normal, ghci_script, ['break021.script'])
+test('break017', [extra_files(['../QSort.hs']),
+ combined_output], ghci_script, ['break017.script'])
+test('break018', extra_files(['../mdo.hs']), ghci_script, ['break018.script'])
+test('break019', extra_files(['../Test2.hs']), ghci_script, ['break019.script'])
+test('break020', extra_files(['Break020b.hs']), ghci_script, ['break020.script'])
+test('break021', extra_files(['Break020b.hs', 'break020.hs']), ghci_script, ['break021.script'])
test('break024', combined_output, ghci_script, ['break024.script'])
test('break025', normal, ghci_script, ['break025.script'])
test('break026', normal, ghci_script, ['break026.script'])
-test('break027', normal, ghci_script, ['break027.script'])
+test('break027', extra_files(['../QSort.hs']), ghci_script, ['break027.script'])
test('break028', normal, ghci_script, ['break028.script'])
-test('dynbrk001', normal, ghci_script, ['dynbrk001.script'])
-test('dynbrk002', normal, ghci_script, ['dynbrk002.script'])
+test('dynbrk001', extra_files(['../QSort.hs']), ghci_script, ['dynbrk001.script'])
+test('dynbrk002', extra_files(['../QSort.hs']), ghci_script, ['dynbrk002.script'])
test('dynbrk003', normal, ghci_script, ['dynbrk003.script'])
-test('dynbrk004', normal, ghci_script, ['dynbrk004.script'])
+test('dynbrk004', extra_files(['../mdo.hs']), ghci_script, ['dynbrk004.script'])
test('dynbrk005', [extra_files(['TupleN.hs']), expect_broken(1530)],
ghci_script, ['dynbrk005.script'])
test('dynbrk007', normal, ghci_script, ['dynbrk007.script'])
@@ -79,14 +82,15 @@ test('dynbrk009', normal, ghci_script, ['dynbrk009.script'])
test('result001', normal, ghci_script, ['result001.script'])
-test('listCommand001', combined_output, ghci_script, ['listCommand001.script'])
+test('listCommand001', [extra_files(['../Test3.hs']),
+ combined_output], ghci_script, ['listCommand001.script'])
test('listCommand002', normal, ghci_script, ['listCommand002.script'])
-test('hist001', normal, ghci_script, ['hist001.script'])
+test('hist001', extra_files(['../Test3.hs']), ghci_script, ['hist001.script'])
test('T2740', normal, ghci_script, ['T2740.script'])
-test('getargs', normal, ghci_script, ['getargs.script'])
+test('getargs', extra_files(['../getargs.hs']), ghci_script, ['getargs.script'])
test('T7386', normal, ghci_script, ['T7386.script'])
test('T8557', normal, ghci_script, ['T8557.script'])
test('T12458', normal, ghci_script, ['T12458.script'])
diff --git a/testsuite/tests/ghci.debugger/scripts/break022/all.T b/testsuite/tests/ghci.debugger/scripts/break022/all.T
index bbecaba442..a4acedea38 100644
--- a/testsuite/tests/ghci.debugger/scripts/break022/all.T
+++ b/testsuite/tests/ghci.debugger/scripts/break022/all.T
@@ -1,3 +1,3 @@
setTestOpts(extra_run_opts('-ignore-dot-ghci'))
-test('break022', [], ghci_script, ['break022.script'])
+test('break022', [extra_files(['A1.hs', 'B.hs', 'B.hs-boot', 'C.hs'])], ghci_script, ['break022.script'])
diff --git a/testsuite/tests/ghci.debugger/scripts/break023/all.T b/testsuite/tests/ghci.debugger/scripts/break023/all.T
index bc6502239d..7a5dd1b3cb 100644
--- a/testsuite/tests/ghci.debugger/scripts/break023/all.T
+++ b/testsuite/tests/ghci.debugger/scripts/break023/all.T
@@ -1,3 +1,3 @@
setTestOpts(extra_run_opts('-ignore-dot-ghci'))
-test('break023', [], ghci_script, ['break023.script'])
+test('break023', [extra_files(['A1.hs', 'B.hs', 'B.hs-boot', 'C.hs'])], ghci_script, ['break023.script'])
diff --git a/testsuite/tests/ghci/T11827/all.T b/testsuite/tests/ghci/T11827/all.T
index 81b9e23071..eee5b8849d 100644
--- a/testsuite/tests/ghci/T11827/all.T
+++ b/testsuite/tests/ghci/T11827/all.T
@@ -1 +1,2 @@
-test('T11827', [expect_broken(11827)], ghci_script, ['T11827.script'])
+test('T11827', [extra_files(['A.hs', 'A.hs-boot', 'B.hs']),
+ expect_broken(11827)], ghci_script, ['T11827.script'])
diff --git a/testsuite/tests/ghci/linking/all.T b/testsuite/tests/ghci/linking/all.T
index 33308335d7..124b3a40b7 100644
--- a/testsuite/tests/ghci/linking/all.T
+++ b/testsuite/tests/ghci/linking/all.T
@@ -1,22 +1,26 @@
test('ghcilink001',
- [when(ghc_dynamic(), expect_fail), # dynamic ghci can't load '.a's
+ [extra_files(['TestLink.hs', 'f.c']),
+ when(ghc_dynamic(), expect_fail), # dynamic ghci can't load '.a's
unless(doing_ghci, skip),
extra_clean(['dir001/*','dir001'])],
run_command,
['$MAKE -s --no-print-directory ghcilink001'])
-test('ghcilink002', [unless(doing_ghci, skip)], run_command,
+test('ghcilink002', [extra_files(['TestLink.hs', 'f.c']),
+ unless(doing_ghci, skip)], run_command,
['$MAKE -s --no-print-directory ghcilink002'])
test('ghcilink003', [unless(doing_ghci, skip)], run_command,
['$MAKE -s --no-print-directory ghcilink003'])
test('ghcilink004',
- [unless(doing_ghci, skip),
+ [extra_files(['TestLink.hs', 'f.c']),
+ unless(doing_ghci, skip),
when(arch('powerpc64') or arch('powerpc64le'), expect_broken(11259))],
run_command, ['$MAKE -s --no-print-directory ghcilink004'])
-test('ghcilink005', [unless(doing_ghci, skip)], run_command,
+test('ghcilink005', [extra_files(['TestLink.hs', 'f.c']),
+ unless(doing_ghci, skip)], run_command,
['$MAKE -s --no-print-directory ghcilink005'])
test('ghcilink006', [unless(doing_ghci, skip)], run_command,
diff --git a/testsuite/tests/ghci/linking/dyn/all.T b/testsuite/tests/ghci/linking/dyn/all.T
index 3ce075d61b..4710959d0f 100644
--- a/testsuite/tests/ghci/linking/dyn/all.T
+++ b/testsuite/tests/ghci/linking/dyn/all.T
@@ -1,8 +1,10 @@
-test('load_short_name', [unless(doing_ghci, skip)], run_command,
+test('load_short_name', [extra_files(['A.c']),
+ unless(doing_ghci, skip)], run_command,
['$MAKE -s --no-print-directory load_short_name'])
test('T1407',
- [unless(doing_ghci, skip),
+ [extra_files(['A.c']),
+ unless(doing_ghci, skip),
pre_cmd('$MAKE -s --no-print-directory compile_libT1407'),
extra_hc_opts('-L"$PWD/T1407dir"')],
run_command, ['$MAKE --no-print-directory -s T1407'])
@@ -13,22 +15,26 @@ test('T3242',
['$MAKE -s --no-print-directory T3242'])
test('T10955',
- [unless(doing_ghci, skip), unless(opsys('mingw32'), skip),
+ [extra_files(['A.c', 'B.c']),
+ unless(doing_ghci, skip), unless(opsys('mingw32'), skip),
pre_cmd('$MAKE -s --no-print-directory compile_libAB_dep'),
extra_hc_opts('-L. -L./bin_dep')],
ghci_script, ['T10955.script'])
-test('T10955dyn', [], run_command,
+test('T10955dyn', [extra_files(['A.c', 'B.c'])], run_command,
['$MAKE -s --no-print-directory compile_libAB_dyn'])
test('T10458',
- [unless(doing_ghci, skip),
+ [extra_files(['A.c']),
+ unless(doing_ghci, skip),
pre_cmd('$MAKE -s --no-print-directory compile_libT10458'),
extra_hc_opts('-L"$PWD/T10458dir" -lAS')],
ghci_script, ['T10458.script'])
-test('T11072gcc', [unless(doing_ghci, skip), unless(opsys('mingw32'), skip)],
+test('T11072gcc', [extra_files(['A.c', 'T11072.hs']),
+ unless(doing_ghci, skip), unless(opsys('mingw32'), skip)],
run_command, ['$MAKE -s --no-print-directory compile_libAS_impl_gcc'])
-test('T11072msvc', [unless(doing_ghci, skip), unless(opsys('mingw32'), skip)],
+test('T11072msvc', [extra_files(['A.c', 'T11072.hs', 'libAS.def', 'i686/', 'x86_64/']),
+ unless(doing_ghci, skip), unless(opsys('mingw32'), skip)],
run_command, ['$MAKE -s --no-print-directory compile_libAS_impl_msvc'])
diff --git a/testsuite/tests/ghci/prog001/prog001.T b/testsuite/tests/ghci/prog001/prog001.T
index 9a19b2f527..49aa4861e2 100644
--- a/testsuite/tests/ghci/prog001/prog001.T
+++ b/testsuite/tests/ghci/prog001/prog001.T
@@ -1,5 +1,6 @@
test('prog001',
- [cmd_prefix('ghciWayFlags=' + config.ghci_way_flags),
+ [extra_files(['../shell.hs', 'A.hs', 'B.hs', 'C1.hs', 'D1.hs', 'D2.hs']),
+ cmd_prefix('ghciWayFlags=' + config.ghci_way_flags),
when(arch('powerpc64') or arch('powerpc64le'),
expect_broken_for(11259, ['ghci-ext'])),
unless(opsys('mingw32'), extra_ways(['ghci-ext']))],
diff --git a/testsuite/tests/ghci/prog002/prog002.T b/testsuite/tests/ghci/prog002/prog002.T
index 9f066d474c..3e25bb455b 100644
--- a/testsuite/tests/ghci/prog002/prog002.T
+++ b/testsuite/tests/ghci/prog002/prog002.T
@@ -1,2 +1,3 @@
-test('prog002', [cmd_prefix('ghciWayFlags=' + config.ghci_way_flags)],
+test('prog002', [extra_files(['../shell.hs', 'A1.hs', 'A2.hs', 'B.hs', 'C.hs', 'D.hs']),
+ cmd_prefix('ghciWayFlags=' + config.ghci_way_flags)],
ghci_script, ['prog002.script'])
diff --git a/testsuite/tests/ghci/prog003/prog003.T b/testsuite/tests/ghci/prog003/prog003.T
index ee5939afb7..d649f34e80 100644
--- a/testsuite/tests/ghci/prog003/prog003.T
+++ b/testsuite/tests/ghci/prog003/prog003.T
@@ -3,6 +3,7 @@
# for the sake of stability of the build bot we disable it for now.
# See Trac 11317.
test('prog003',
- [when(opsys('mingw32'), skip),
+ [extra_files(['../shell.hs', 'A.hs', 'B.hs', 'C.hs', 'D1.hs', 'D2.hs']),
+ when(opsys('mingw32'), skip),
cmd_prefix('ghciWayFlags=' + config.ghci_way_flags)],
ghci_script, ['prog003.script'])
diff --git a/testsuite/tests/ghci/prog005/prog005.T b/testsuite/tests/ghci/prog005/prog005.T
index c6a7944915..c9ca987c87 100644
--- a/testsuite/tests/ghci/prog005/prog005.T
+++ b/testsuite/tests/ghci/prog005/prog005.T
@@ -1 +1 @@
-test('prog005', [], ghci_script, ['prog005.script'])
+test('prog005', [extra_files(['A1.hs', 'B.hs'])], ghci_script, ['prog005.script'])
diff --git a/testsuite/tests/ghci/prog006/prog006.T b/testsuite/tests/ghci/prog006/prog006.T
index 0d5ceb97ef..e3aa7f7080 100644
--- a/testsuite/tests/ghci/prog006/prog006.T
+++ b/testsuite/tests/ghci/prog006/prog006.T
@@ -1 +1 @@
-test('prog006', [], ghci_script, ['prog006.script'])
+test('prog006', [extra_files(['A.hs', 'Boot.hs-boot', 'Boot1.hs', 'Boot2.hs'])], ghci_script, ['prog006.script'])
diff --git a/testsuite/tests/ghci/prog007/prog007.T b/testsuite/tests/ghci/prog007/prog007.T
index 28f19e5602..08611c71e0 100644
--- a/testsuite/tests/ghci/prog007/prog007.T
+++ b/testsuite/tests/ghci/prog007/prog007.T
@@ -1,2 +1,2 @@
# testcase for bug #936
-test('ghci.prog007', normal, ghci_script, ['ghci.prog007.script'])
+test('ghci.prog007', extra_files(['A.hs', 'B.hs', 'C.hs', 'C.hs-boot']), ghci_script, ['ghci.prog007.script'])
diff --git a/testsuite/tests/ghci/prog008/prog008.T b/testsuite/tests/ghci/prog008/prog008.T
index 96ebbfb168..0577a7f689 100644
--- a/testsuite/tests/ghci/prog008/prog008.T
+++ b/testsuite/tests/ghci/prog008/prog008.T
@@ -1,2 +1,2 @@
# testcase for bug #936
-test('ghci.prog008', normal, ghci_script, ['ghci.prog008.script'])
+test('ghci.prog008', extra_files(['A.hs']), ghci_script, ['ghci.prog008.script'])
diff --git a/testsuite/tests/ghci/prog009/ghci.prog009.T b/testsuite/tests/ghci/prog009/ghci.prog009.T
index 38aeea1f80..dc403a893a 100644
--- a/testsuite/tests/ghci/prog009/ghci.prog009.T
+++ b/testsuite/tests/ghci/prog009/ghci.prog009.T
@@ -1 +1 @@
-test('ghci.prog009', [], ghci_script, ['ghci.prog009.script'])
+test('ghci.prog009', [extra_files(['A1.hs', 'A2.hs', 'A3.hs', 'B.hs'])], ghci_script, ['ghci.prog009.script'])
diff --git a/testsuite/tests/ghci/prog012/all.T b/testsuite/tests/ghci/prog012/all.T
index 9bd639c731..3681b14d0d 100644
--- a/testsuite/tests/ghci/prog012/all.T
+++ b/testsuite/tests/ghci/prog012/all.T
@@ -1 +1 @@
-test('prog012', [], ghci_script, ['prog012.script'])
+test('prog012', [extra_files(['../shell.hs', 'Bar1.hs', 'Bar2.hs', 'Foo.hs', 'FooBar.hs'])], ghci_script, ['prog012.script'])
diff --git a/testsuite/tests/ghci/prog013/prog013.T b/testsuite/tests/ghci/prog013/prog013.T
index 020bdf81c8..59125934e6 100644
--- a/testsuite/tests/ghci/prog013/prog013.T
+++ b/testsuite/tests/ghci/prog013/prog013.T
@@ -1,2 +1,2 @@
-test('prog013', normal, ghci_script, ['prog013.script'])
+test('prog013', extra_files(['Bad.hs', 'Good.hs']), ghci_script, ['prog013.script'])
diff --git a/testsuite/tests/ghci/prog014/prog014.T b/testsuite/tests/ghci/prog014/prog014.T
index 2b9d7c9b14..d9dee7eac7 100644
--- a/testsuite/tests/ghci/prog014/prog014.T
+++ b/testsuite/tests/ghci/prog014/prog014.T
@@ -1,4 +1,5 @@
test('prog014',
- [extra_run_opts('dummy.o'),
+ [extra_files(['Primop.hs', 'dummy.c']),
+ extra_run_opts('dummy.o'),
pre_cmd('$MAKE -s --no-print-directory prog014')],
ghci_script, ['prog014.script'])
diff --git a/testsuite/tests/ghci/prog015/prog015.T b/testsuite/tests/ghci/prog015/prog015.T
index b6a17b2ea5..213ad24ae2 100644
--- a/testsuite/tests/ghci/prog015/prog015.T
+++ b/testsuite/tests/ghci/prog015/prog015.T
@@ -1,2 +1,2 @@
# testcase for module import completions, e.g. `:complete repl "import Mod"`
-test('prog015', normal, ghci_script, ['prog015.script'])
+test('prog015', extra_files(['Level1.hs', 'Level2/', 'TopLevel.hs']), ghci_script, ['prog015.script'])
diff --git a/testsuite/tests/ghci/prog016/prog016.T b/testsuite/tests/ghci/prog016/prog016.T
index c73220c3b1..f30889442b 100644
--- a/testsuite/tests/ghci/prog016/prog016.T
+++ b/testsuite/tests/ghci/prog016/prog016.T
@@ -1,2 +1,2 @@
# testcase for regular identifier completions, e.g. `:complete repl "fun"`
-test('prog016', normal, ghci_script, ['prog016.script'])
+test('prog016', extra_files(['Level1.hs', 'Level2/', 'TopLevel.hs']), ghci_script, ['prog016.script'])
diff --git a/testsuite/tests/ghci/prog017/prog017.T b/testsuite/tests/ghci/prog017/prog017.T
index 64e523b99f..1161a7f894 100644
--- a/testsuite/tests/ghci/prog017/prog017.T
+++ b/testsuite/tests/ghci/prog017/prog017.T
@@ -1,2 +1,2 @@
# testcase for operator completions, e.g. `:complete repl ">>"`
-test('prog017', normal, ghci_script, ['prog017.script'])
+test('prog017', extra_files(['Level1.hs', 'Level2/', 'TopLevel.hs']), ghci_script, ['prog017.script'])
diff --git a/testsuite/tests/ghci/scripts/all.T b/testsuite/tests/ghci/scripts/all.T
index 2e535349c9..7f03cf87e2 100755
--- a/testsuite/tests/ghci/scripts/all.T
+++ b/testsuite/tests/ghci/scripts/all.T
@@ -52,8 +52,8 @@ test('T9367',
[req_interp, when(fast() or config.os != 'mingw32', skip)],
run_command,
['$MAKE -s --no-print-directory T9367'])
-test('ghci025', normal, ghci_script, ['ghci025.script'])
-test('ghci026', normal, ghci_script, ['ghci026.script'])
+test('ghci025', extra_files(['Ghci025B.hs', 'Ghci025C.hs', 'Ghci025D.hs']), ghci_script, ['ghci025.script'])
+test('ghci026', extra_files(['../prog002']), ghci_script, ['ghci026.script'])
test('ghci027', [], ghci_script, ['ghci027.script'])
test('ghci028', normal, ghci_script, ['ghci028.script'])
@@ -66,7 +66,7 @@ test('ghci034', normal, ghci_script, ['ghci034.script'])
test('ghci035', normal, ghci_script, ['ghci035.script'])
test('ghci036', normal, ghci_script, ['ghci036.script'])
test('ghci037', req_interp, run_command, ['$MAKE -s --no-print-directory ghci037'])
-test('ghci038', normal, ghci_script, ['ghci038.script'])
+test('ghci038', extra_files(['../shell.hs']), ghci_script, ['ghci038.script'])
test('ghci039', normal, ghci_script, ['ghci039.script'])
test('ghci040', normal, ghci_script, ['ghci040.script'])
test('ghci041', normal, ghci_script, ['ghci041.script'])
@@ -124,7 +124,7 @@ test('T5557', combined_output, ghci_script, ['T5557.script'])
test('T5566', normal, ghci_script, ['T5566.script'])
test('GhciKinds', normal, ghci_script, ['GhciKinds.script'])
test('T5564', normal, ghci_script, ['T5564.script'])
-test('Defer02', normal, ghci_script, ['Defer02.script'])
+test('Defer02', extra_files(['../../typecheck/should_run/Defer01.hs']), ghci_script, ['Defer02.script'])
test('T5820', normal, ghci_script, ['T5820.script'])
test('T5836', normal, ghci_script, ['T5836.script'])
test('T5979',
@@ -139,11 +139,13 @@ test('T6027ghci', normal, ghci_script, ['T6027ghci.script'])
test('T6007', normal, ghci_script, ['T6007.script'])
test('T6091', normal, ghci_script, ['T6091.script'])
-test('T6106', [pre_cmd('$MAKE -s --no-print-directory T6106_prep')],
+test('T6106', [extra_files(['../shell.hs']),
+ pre_cmd('$MAKE -s --no-print-directory T6106_prep')],
ghci_script, ['T6106.script'])
test('T6105', normal, ghci_script, ['T6105.script'])
test('T7117', normal, ghci_script, ['T7117.script'])
-test('ghci058', [cmd_prefix('ghciWayFlags=' + config.ghci_way_flags)],
+test('ghci058', [extra_files(['../shell.hs']),
+ cmd_prefix('ghciWayFlags=' + config.ghci_way_flags)],
ghci_script, ['ghci058.script'])
test('T7587', normal, ghci_script, ['T7587.script'])
test('T7688', normal, ghci_script, ['T7688.script'])
@@ -164,7 +166,7 @@ test('T8113', normal, ghci_script, ['T8113.script'])
test('T8172', when(opsys('mingw32'), normalise_drive_letter),
ghci_script, ['T8172.script'])
test('T8215', normal, ghci_script, ['T8215.script'])
-test('T8353', normal, ghci_script, ['T8353.script'])
+test('T8353', extra_files(['Defer03.hs']), ghci_script, ['T8353.script'])
test('T8357', normal, ghci_script, ['T8357.script'])
test('T8383', normal, ghci_script, ['T8383.script'])
test('T8469', normal, ghci_script, ['T8469.script'])
@@ -187,7 +189,7 @@ test('T9181', normal, ghci_script, ['T9181.script'])
test('T9086b', normal, ghci_script, ['T9086b.script'])
test('T9140', combined_output, ghci_script, ['T9140.script'])
test('T9658', normal, ghci_script, ['T9658.script'])
-test('T9293', normal, ghci_script, ['T9293.script'])
+test('T9293', extra_files(['ghci057.hs']), ghci_script, ['T9293.script'])
test('T9762',
[ unless(have_dynamic(),skip)
, pre_cmd('$MAKE -s --no-print-directory T9762_prep')
diff --git a/testsuite/tests/haddock/haddock_examples/test.T b/testsuite/tests/haddock/haddock_examples/test.T
index 25cf176997..96a966a68f 100644
--- a/testsuite/tests/haddock/haddock_examples/test.T
+++ b/testsuite/tests/haddock/haddock_examples/test.T
@@ -1,3 +1,4 @@
-test('haddock.Test', [omit_ways(prof_ways)], multimod_compile,
+test('haddock.Test', [extra_files(['Hidden.hs', 'Test.hs', 'Visible.hs']),
+ omit_ways(prof_ways)], multimod_compile,
['Test Hidden Visible',
'-XRankNTypes -XExistentialQuantification -haddock -ddump-parsed'])
diff --git a/testsuite/tests/hpc/all.T b/testsuite/tests/hpc/all.T
index d253169ef1..f1fc590e78 100644
--- a/testsuite/tests/hpc/all.T
+++ b/testsuite/tests/hpc/all.T
@@ -1,4 +1,5 @@
-test('T10138', ignore_stdout, run_command,
+test('T10138', [extra_files(['.keepme.hpc.T10138/']),
+ ignore_stdout], run_command,
# Using --hpcdir with an absolute path should work (exit code 0).
['{hpc} report T10138.keepme.tix --hpcdir="`pwd`/.keepme.hpc.T10138"'])
diff --git a/testsuite/tests/indexed-types/should_compile/all.T b/testsuite/tests/indexed-types/should_compile/all.T
index cdce0f66e6..66f8c5686c 100644
--- a/testsuite/tests/indexed-types/should_compile/all.T
+++ b/testsuite/tests/indexed-types/should_compile/all.T
@@ -27,8 +27,8 @@ test('RelaxedExamples', normal, compile, [''])
test('NonLinearLHS', normal, compile, [''])
test('ind1', normal, compile, [''])
-test('ind2', [], multimod_compile, ['ind2', '-v0'])
-test('impexp', [], multimod_compile, ['Imp', '-w -no-hs-main -c'])
+test('ind2', [extra_files(['Ind2_help.hs'])], multimod_compile, ['ind2', '-v0'])
+test('impexp', [extra_files(['Exp.hs', 'Imp.hs'])], multimod_compile, ['Imp', '-w -no-hs-main -c'])
test('ATLoop', [], multimod_compile, ['ATLoop.hs', '-v0'])
diff --git a/testsuite/tests/indexed-types/should_fail/all.T b/testsuite/tests/indexed-types/should_fail/all.T
index 0645601dcc..d2833603ca 100644
--- a/testsuite/tests/indexed-types/should_fail/all.T
+++ b/testsuite/tests/indexed-types/should_fail/all.T
@@ -80,7 +80,7 @@ test('Overlap11', normal, compile_fail, [''])
test('Overlap15', normal, compile_fail, [''])
test('T7194', normal, compile_fail, [''])
test('T7354', normal, compile_fail, [''])
-test('T7354a', [], run_command, ['$MAKE -s --no-print-directory T7354a'])
+test('T7354a', [extra_files(['T7354b.hs'])], run_command, ['$MAKE -s --no-print-directory T7354a'])
test('T7536', normal, compile_fail, [''])
test('T7729', normal, compile_fail, [''])
diff --git a/testsuite/tests/module/all.T b/testsuite/tests/module/all.T
index 8285c6c64d..d7e6b743ba 100644
--- a/testsuite/tests/module/all.T
+++ b/testsuite/tests/module/all.T
@@ -129,9 +129,9 @@ test('mod98', normal, compile_fail, [''])
test('mod99', normal, compile, [''])
test('mod100', normal, compile, [''])
-test('mod101', [], multimod_compile_fail, ['mod101', '-v0'])
+test('mod101', [extra_files(['Mod101_AuxA.hs', 'Mod101_AuxB.hs'])], multimod_compile_fail, ['mod101', '-v0'])
-test('mod102', [], multimod_compile_fail, ['mod102', '-v0'])
+test('mod102', [extra_files(['Mod102_AuxA.hs', 'Mod102_AuxB.hs'])], multimod_compile_fail, ['mod102', '-v0'])
test('mod103', normal, compile, [''])
test('mod104', normal, compile, [''])
@@ -144,67 +144,67 @@ test('mod110', normal, compile_fail, [''])
test('mod111', normal, compile, [''])
test('mod112', normal, compile, [''])
test('mod113', normal, compile, [''])
-test('mod114', [], multimod_compile_fail, ['mod114', '-v0'])
+test('mod114', [extra_files(['Mod114_Help.hs'])], multimod_compile_fail, ['mod114', '-v0'])
-test('mod115', [], multimod_compile, ['mod115', '-v0'])
+test('mod115', [extra_files(['Mod115_A.hs', 'Mod115_B.hs'])], multimod_compile, ['mod115', '-v0'])
test('mod116', normal, compile_fail, [''])
-test('mod117', [], multimod_compile, ['mod117', '-v0'])
+test('mod117', [extra_files(['Mod117_A.hs', 'Mod117_B.hs'])], multimod_compile, ['mod117', '-v0'])
-test('mod118', [], multimod_compile, ['mod118', '-v0'])
+test('mod118', [extra_files(['Mod118_A.hs', 'Mod118_B.hs'])], multimod_compile, ['mod118', '-v0'])
-test('mod119', [], multimod_compile, ['mod119', '-v0'])
+test('mod119', [extra_files(['Mod119_A.hs', 'Mod119_B.hs'])], multimod_compile, ['mod119', '-v0'])
-test('mod120', [], multimod_compile_fail, ['mod120', '-v0'])
+test('mod120', [extra_files(['Mod120_A.hs'])], multimod_compile_fail, ['mod120', '-v0'])
-test('mod121', [], multimod_compile_fail, ['mod121', '-v0'])
+test('mod121', [extra_files(['Mod121_A.hs'])], multimod_compile_fail, ['mod121', '-v0'])
-test('mod122', [], multimod_compile_fail, ['mod122', '-v0'])
+test('mod122', [extra_files(['Mod122_A.hs'])], multimod_compile_fail, ['mod122', '-v0'])
-test('mod123', [], multimod_compile_fail, ['mod123', '-v0'])
+test('mod123', [extra_files(['Mod123_A.hs'])], multimod_compile_fail, ['mod123', '-v0'])
-test('mod124', [], multimod_compile_fail, ['mod124', '-v0'])
+test('mod124', [extra_files(['Mod124_A.hs'])], multimod_compile_fail, ['mod124', '-v0'])
-test('mod125', [], multimod_compile_fail, ['mod125', '-v0'])
+test('mod125', [extra_files(['Mod125_A.hs'])], multimod_compile_fail, ['mod125', '-v0'])
-test('mod126', [], multimod_compile_fail, ['mod126', '-v0'])
+test('mod126', [extra_files(['Mod126_A.hs'])], multimod_compile_fail, ['mod126', '-v0'])
-test('mod127', [], multimod_compile_fail, ['mod127', '-v0'])
+test('mod127', [extra_files(['Mod127_A.hs'])], multimod_compile_fail, ['mod127', '-v0'])
-test('mod128', [], multimod_compile, ['mod128', '-v0'])
+test('mod128', [extra_files(['Mod128_A.hs'])], multimod_compile, ['mod128', '-v0'])
test('mod129', normal, compile, [''])
test('mod130', normal, compile_fail, [''])
-test('mod131', [], multimod_compile_fail, ['mod131', '-v0'])
+test('mod131', [extra_files(['Mod131_A.hs', 'Mod131_B.hs'])], multimod_compile_fail, ['mod131', '-v0'])
-test('mod132', [], multimod_compile_fail, ['mod132', '-v0'])
+test('mod132', [extra_files(['Mod132_A.hs', 'Mod132_B.hs'])], multimod_compile_fail, ['mod132', '-v0'])
test('mod133', reqlib('mtl'), compile, [''])
test('mod134', normal, compile_fail, [''])
test('mod135', normal, compile_fail, [''])
-test('mod136', [], multimod_compile_fail, ['mod136', '-v0'])
+test('mod136', [extra_files(['Mod136_A.hs'])], multimod_compile_fail, ['mod136', '-v0'])
-test('mod137', [], multimod_compile, ['mod137', '-v0'])
+test('mod137', [extra_files(['Mod137_A.hs'])], multimod_compile, ['mod137', '-v0'])
-test('mod138', [], multimod_compile_fail, ['mod138', '-v0'])
+test('mod138', [extra_files(['Mod138_A.hs'])], multimod_compile_fail, ['mod138', '-v0'])
-test('mod139', [], multimod_compile, ['mod139', '-v0'])
+test('mod139', [extra_files(['Mod139_A.hs', 'Mod139_B.hs'])], multimod_compile, ['mod139', '-v0'])
-test('mod140', [], multimod_compile, ['mod140', '-v0'])
+test('mod140', [extra_files(['Mod140_A.hs'])], multimod_compile, ['mod140', '-v0'])
-test('mod141', [], multimod_compile, ['mod141', '-v0'])
+test('mod141', [extra_files(['Mod141_A.hs'])], multimod_compile, ['mod141', '-v0'])
-test('mod142', [], multimod_compile_fail, ['mod142', '-v0'])
+test('mod142', [extra_files(['Mod142_A.hs'])], multimod_compile_fail, ['mod142', '-v0'])
-test('mod143', [], multimod_compile_fail, ['mod143', '-v0'])
+test('mod143', [extra_files(['Mod143_A.hs'])], multimod_compile_fail, ['mod143', '-v0'])
-test('mod144', [], run_command, ['$MAKE -s --no-print-directory mod144'])
+test('mod144', [extra_files(['Mod144_A.hs'])], run_command, ['$MAKE -s --no-print-directory mod144'])
-test('mod145', [], multimod_compile_fail, ['mod145', '-v0'])
+test('mod145', [extra_files(['Mod145_A.hs'])], multimod_compile_fail, ['mod145', '-v0'])
-test('mod146', [], run_command, ['$MAKE -s --no-print-directory mod146'])
+test('mod146', [extra_files(['Mod145_A.hs'])], run_command, ['$MAKE -s --no-print-directory mod146'])
-test('mod147', [], multimod_compile_fail, ['mod147', '-v0'])
+test('mod147', [extra_files(['Mod147_A.hs'])], multimod_compile_fail, ['mod147', '-v0'])
test('mod148', normal, compile, [''])
test('mod149', normal, compile, [''])
@@ -215,53 +215,53 @@ test('mod153', normal, compile_fail, [''])
test('mod154', normal, compile, [''])
test('mod155', normal, compile_fail, [''])
test('mod156', normal, compile, [''])
-test('mod157', [], multimod_compile, ['mod157', '-v0'])
+test('mod157', [extra_files(['Mod157_A.hs', 'Mod157_B.hs', 'Mod157_C.hs', 'Mod157_D.hs'])], multimod_compile, ['mod157', '-v0'])
-test('mod158', [], run_command, ['$MAKE -s --no-print-directory mod158'])
+test('mod158', [extra_files(['Mod157_A.hs', 'Mod157_B.hs', 'Mod157_C.hs', 'Mod157_D.hs'])], run_command, ['$MAKE -s --no-print-directory mod158'])
-test('mod159', [], multimod_compile, ['mod159', '-v0'])
+test('mod159', [extra_files(['Mod159_A.hs', 'Mod159_B.hs', 'Mod159_C.hs', 'Mod159_D.hs'])], multimod_compile, ['mod159', '-v0'])
-test('mod160', [], run_command, ['$MAKE -s --no-print-directory mod160'])
+test('mod160', [extra_files(['Mod159_A.hs', 'Mod159_B.hs', 'Mod159_C.hs', 'Mod159_D.hs'])], run_command, ['$MAKE -s --no-print-directory mod160'])
test('mod161', normal, compile_fail, [''])
-test('mod162', [], multimod_compile, ['mod162', '-v0'])
+test('mod162', [extra_files(['Mod162_A.hs'])], multimod_compile, ['mod162', '-v0'])
-test('mod163', [], multimod_compile, ['mod163', '-v0'])
+test('mod163', [extra_files(['Mod163_A.hs'])], multimod_compile, ['mod163', '-v0'])
-test('mod164', [], multimod_compile_fail, ['mod164', '-v0'])
+test('mod164', [extra_files(['Mod164_A.hs', 'Mod164_B.hs'])], multimod_compile_fail, ['mod164', '-v0'])
-test('mod165', [], run_command, ['$MAKE -s --no-print-directory mod165'])
+test('mod165', [extra_files(['Mod164_A.hs', 'Mod164_B.hs'])], run_command, ['$MAKE -s --no-print-directory mod165'])
-test('mod166', [], run_command,
+test('mod166', [extra_files(['Mod164_A.hs', 'Mod164_B.hs'])], run_command,
['$MAKE -s --no-print-directory mod166 MAKELEVEL='])
-test('mod167', [], run_command,
+test('mod167', [extra_files(['Mod164_A.hs', 'Mod164_B.hs'])], run_command,
['$MAKE -s --no-print-directory mod167 MAKELEVEL='])
test('mod168', normal, compile, [''])
test('mod169', normal, compile, [''])
-test('mod170', [], multimod_compile, ['mod170', '-v0'])
+test('mod170', [extra_files(['Mod170_A.hs'])], multimod_compile, ['mod170', '-v0'])
-test('mod171', [], multimod_compile, ['mod171', '-v0 -Wall'])
+test('mod171', [extra_files(['Mod171_A.hs', 'Mod171_B.hs'])], multimod_compile, ['mod171', '-v0 -Wall'])
-test('mod172', [], multimod_compile, ['mod172', '-v0'])
+test('mod172', [extra_files(['Mod172_B.hs', 'Mod172_C.hs'])], multimod_compile, ['mod172', '-v0'])
-test('mod173', [], multimod_compile, ['mod173', '-v0'])
+test('mod173', [extra_files(['Mod173_Aux.hs'])], multimod_compile, ['mod173', '-v0'])
# mod174 has been deleted
# mod175 is a sub-directory
test('mod176', normal, compile, ['-fwarn-unused-imports'])
test('mod177', normal, compile, ['-fwarn-unused-imports'])
-test('mod178', [], multimod_compile_fail, ['mod178', '-v0'])
+test('mod178', [extra_files(['Mod178_2.hs'])], multimod_compile_fail, ['mod178', '-v0'])
-test('mod179', [], multimod_compile, ['mod179', '-v0'])
+test('mod179', [extra_files(['Mod179_A.hs'])], multimod_compile, ['mod179', '-v0'])
-test('mod180', [], multimod_compile_fail, ['mod180', '-v0'])
+test('mod180', [extra_files(['Mod180_A.hs', 'Mod180_B.hs'])], multimod_compile_fail, ['mod180', '-v0'])
test('T1148', normal, compile, [''])
test('T1074', reqlib('mtl'), compile, [''])
diff --git a/testsuite/tests/module/base01/all.T b/testsuite/tests/module/base01/all.T
index fdcea53d19..6c1c207e10 100644
--- a/testsuite/tests/module/base01/all.T
+++ b/testsuite/tests/module/base01/all.T
@@ -1,2 +1,3 @@
-test('base01', [normalise_slashes], run_command,
+test('base01', [extra_files(['GHC']),
+ normalise_slashes], run_command,
['$MAKE -s base01 --no-print-directory'])
diff --git a/testsuite/tests/module/mod175/all.T b/testsuite/tests/module/mod175/all.T
index 5e03f15618..b6639e8eda 100644
--- a/testsuite/tests/module/mod175/all.T
+++ b/testsuite/tests/module/mod175/all.T
@@ -1 +1 @@
-test('mod175', [], run_command, ['$MAKE -s --no-print-directory mod175'])
+test('mod175', [extra_files(['Test.hs', 'Test2.hs'])], run_command, ['$MAKE -s --no-print-directory mod175'])
diff --git a/testsuite/tests/overloadedrecflds/should_fail/all.T b/testsuite/tests/overloadedrecflds/should_fail/all.T
index 2b0b5927a5..5463be7006 100644
--- a/testsuite/tests/overloadedrecflds/should_fail/all.T
+++ b/testsuite/tests/overloadedrecflds/should_fail/all.T
@@ -1,19 +1,19 @@
test('overloadedrecfldsfail01', normal, compile_fail, [''])
test('overloadedrecfldsfail02', normal, compile_fail, [''])
test('overloadedrecfldsfail03', normal, compile_fail, [''])
-test('overloadedrecfldsfail04', [], multimod_compile_fail,
+test('overloadedrecfldsfail04', [extra_files(['OverloadedRecFldsFail04_A.hs'])], multimod_compile_fail,
['overloadedrecfldsfail04', ''])
test('overloadedrecfldsfail05', normal, compile_fail, [''])
-test('overloadedrecfldsfail06', [], multimod_compile_fail,
+test('overloadedrecfldsfail06', [extra_files(['OverloadedRecFldsFail06_A.hs'])], multimod_compile_fail,
['overloadedrecfldsfail06', ''])
test('overloadedrecfldsfail07', normal, compile_fail, [''])
test('overloadedrecfldsfail08', normal, compile_fail, [''])
test('overloadedrecfldsfail09', normal, compile_fail, [''])
-test('overloadedrecfldsfail10', [], multimod_compile_fail,
+test('overloadedrecfldsfail10', [extra_files(['OverloadedRecFldsFail10_A.hs', 'OverloadedRecFldsFail10_B.hs', 'OverloadedRecFldsFail10_C.hs'])], multimod_compile_fail,
['overloadedrecfldsfail10', ''])
-test('overloadedrecfldsfail11', [], multimod_compile_fail,
+test('overloadedrecfldsfail11', [extra_files(['OverloadedRecFldsFail11_A.hs'])], multimod_compile_fail,
['overloadedrecfldsfail11', ''])
-test('overloadedrecfldsfail12', [], multimod_compile_fail,
+test('overloadedrecfldsfail12', [extra_files(['OverloadedRecFldsFail12_A.hs'])], multimod_compile_fail,
['overloadedrecfldsfail12', ''])
test('overloadedrecfldsfail13', normal, compile_fail, [''])
test('overloadedrecfldsfail14', normal, compile_fail, [''])
diff --git a/testsuite/tests/overloadedrecflds/should_run/all.T b/testsuite/tests/overloadedrecflds/should_run/all.T
index bfd77d35e4..3136beedf8 100644
--- a/testsuite/tests/overloadedrecflds/should_run/all.T
+++ b/testsuite/tests/overloadedrecflds/should_run/all.T
@@ -1,6 +1,6 @@
test('overloadedrecfldsrun01', [], multimod_compile_and_run,
['overloadedrecfldsrun01', ''])
-test('overloadedrecfldsrun02', [], multimod_compile_and_run,
+test('overloadedrecfldsrun02', [extra_files(['OverloadedRecFldsRun02_A.hs'])], multimod_compile_and_run,
['overloadedrecfldsrun02', ''])
test('overloadedrecfldsrun03', normal, compile_and_run, [''])
test('overloadedrecfldsrun04', omit_ways(prof_ways), compile_and_run, [''])
@@ -11,7 +11,8 @@ test('overloadedrecflds_generics', normal, compile_and_run, [''])
test('overloadedlabelsrun01', normal, compile_and_run, [''])
test('overloadedlabelsrun02', normal, compile_and_run, [''])
test('overloadedlabelsrun03', normal, compile_and_run, [''])
-test('overloadedlabelsrun04', [omit_ways(prof_ways)], multimod_compile_and_run,
+test('overloadedlabelsrun04', [extra_files(['OverloadedLabelsRun04_A.hs']),
+ omit_ways(prof_ways)], multimod_compile_and_run,
['overloadedlabelsrun04', config.ghc_th_way_flags])
test('hasfieldrun01', normal, compile_and_run, [''])
test('hasfieldrun02', normal, compile_and_run, [''])
diff --git a/testsuite/tests/parser/prog001/test.T b/testsuite/tests/parser/prog001/test.T
index 80a3e5d341..550d6ee3e3 100644
--- a/testsuite/tests/parser/prog001/test.T
+++ b/testsuite/tests/parser/prog001/test.T
@@ -1 +1 @@
-test('parser.prog001', [], multimod_compile, ['Read007.hs', '-v0'])
+test('parser.prog001', [extra_files(['Read006.hs', 'Read007.hs'])], multimod_compile, ['Read007.hs', '-v0'])
diff --git a/testsuite/tests/partial-sigs/should_compile/all.T b/testsuite/tests/partial-sigs/should_compile/all.T
index 6d98817ae2..e0400b05c2 100644
--- a/testsuite/tests/partial-sigs/should_compile/all.T
+++ b/testsuite/tests/partial-sigs/should_compile/all.T
@@ -50,7 +50,8 @@ test('TypeFamilyInstanceLHS', normal, compile, ['-ddump-types -fno-warn-partial-
test('Uncurry', normal, compile, ['-ddump-types -fno-warn-partial-type-signatures'])
test('UncurryNamed', normal, compile, ['-ddump-types -fno-warn-partial-type-signatures'])
test('WarningWildcardInstantiations', normal, compile, ['-ddump-types'])
-test('SplicesUsed', [req_interp, omit_ways(prof_ways)], multimod_compile,
+test('SplicesUsed', [extra_files(['Splices.hs']),
+ req_interp, omit_ways(prof_ways)], multimod_compile,
['SplicesUsed', config.ghc_th_way_flags])
test('TypedSplice', [req_interp, normal], compile, [''])
test('T10403', normal, compile, [''])
diff --git a/testsuite/tests/partial-sigs/should_fail/all.T b/testsuite/tests/partial-sigs/should_fail/all.T
index ff4647a35f..183791868f 100644
--- a/testsuite/tests/partial-sigs/should_fail/all.T
+++ b/testsuite/tests/partial-sigs/should_fail/all.T
@@ -4,7 +4,8 @@ test('Defaulting1MROff', normal, compile, [''])
test('ExtraConstraintsWildcardInExpressionSignature', normal, compile, [''])
test('ExtraConstraintsWildcardInPatternSignature', normal, compile_fail, [''])
test('ExtraConstraintsWildcardInPatternSplice', normal, compile_fail, [''])
-test('ExtraConstraintsWildcardInTypeSpliceUsed', [req_interp],
+test('ExtraConstraintsWildcardInTypeSpliceUsed', [extra_files(['ExtraConstraintsWildcardInTypeSplice.hs']),
+ req_interp],
multimod_compile_fail,
['ExtraConstraintsWildcardInTypeSpliceUsed', config.ghc_th_way_flags])
test('ExtraConstraintsWildcardInTypeSplice2',
diff --git a/testsuite/tests/patsyn/should_compile/all.T b/testsuite/tests/patsyn/should_compile/all.T
index 1b724245b7..a5066eaa09 100644
--- a/testsuite/tests/patsyn/should_compile/all.T
+++ b/testsuite/tests/patsyn/should_compile/all.T
@@ -18,7 +18,7 @@ test('T8584-3', normal, compile, [''])
test('T8968-1', normal, compile, [''])
test('T8968-2', normal, compile, [''])
test('T8968-3', normal, compile, [''])
-test('ImpExp_Imp', [], multimod_compile, ['ImpExp_Imp', '-v0'])
+test('ImpExp_Imp', [extra_files(['ImpExp_Exp.hs'])], multimod_compile, ['ImpExp_Imp', '-v0'])
test('T9857', normal, compile, [''])
test('T9889', normal, compile, [''])
test('T9867', normal, compile, [''])
@@ -32,9 +32,9 @@ test('records-poly', normal, compile, [''])
test('records-req', normal, compile, [''])
test('records-prov-req', normal, compile, [''])
test('records-req-only', normal, compile, [''])
-test('pat-syn-bundle', [], multimod_compile, ['Bundle1', '-v0'])
-test('pat-syn-trans-bundle', [], multimod_compile, ['TransBundle', '-v0'])
-test('ExportSyntaxImport', [], multimod_compile, ['ExportSyntaxImport', '-v0'])
+test('pat-syn-bundle', [extra_files(['Bundle1.hs', 'BundleInternal1.hs'])], multimod_compile, ['Bundle1', '-v0'])
+test('pat-syn-trans-bundle', [extra_files(['Bundle.hs', 'BundleInternal.hs', 'TransBundle.hs'])], multimod_compile, ['TransBundle', '-v0'])
+test('ExportSyntaxImport', [extra_files(['ExportSyntax.hs'])], multimod_compile, ['ExportSyntaxImport', '-v0'])
test('poly-export', normal, compile, [''])
test('poly-export2', normal, compile, [''])
test('poly-export3', normal, compile, [''])
diff --git a/testsuite/tests/perf/haddock/all.T b/testsuite/tests/perf/haddock/all.T
index 9bd29ff8a8..dce0a648a1 100644
--- a/testsuite/tests/perf/haddock/all.T
+++ b/testsuite/tests/perf/haddock/all.T
@@ -3,7 +3,8 @@
# detect outliers, as described in Note [residency]. See #9556.
test('haddock.base',
- [unless(in_tree_compiler(), skip), req_haddock
+ [extra_files(['../../../../libraries/base/dist-install/haddock.t']),
+ unless(in_tree_compiler(), skip), req_haddock
,stats_num_field('bytes allocated',
[(platform('x86_64-unknown-mingw32'), 24286343184, 5)
# 2017-02-19 24286343184 (x64/Windows) - Generalize kind of (->)
@@ -58,7 +59,8 @@ test('haddock.base',
['haddock.t'])
test('haddock.Cabal',
- [unless(in_tree_compiler(), skip), req_haddock
+ [extra_files(['../../../../libraries/Cabal/Cabal/dist-install/haddock.t']),
+ unless(in_tree_compiler(), skip), req_haddock
,stats_num_field('bytes allocated',
[(wordsize(64), 18865432648, 5)
# 2012-08-14: 3255435248 (amd64/Linux)
@@ -124,7 +126,8 @@ test('haddock.Cabal',
['haddock.t'])
test('haddock.compiler',
- [unless(in_tree_compiler(), skip), req_haddock
+ [extra_files(['../../../../compiler/stage2/haddock.t']),
+ unless(in_tree_compiler(), skip), req_haddock
,stats_num_field('bytes allocated',
[(wordsize(64), 62070477608, 10)
# 2012-08-14: 26070600504 (amd64/Linux)
diff --git a/testsuite/tests/perf/should_run/all.T b/testsuite/tests/perf/should_run/all.T
index 6670f341a6..efcbb4a30b 100644
--- a/testsuite/tests/perf/should_run/all.T
+++ b/testsuite/tests/perf/should_run/all.T
@@ -70,7 +70,8 @@ test('T3245', [when(doing_ghci(), extra_hc_opts('-fobject-code'))],
# a bug in hGetBufNonBlocking in 6.13 that triggered this.
#
test('lazy-bs-alloc',
- [stats_num_field('peak_megabytes_allocated', (2, 1)),
+ [extra_files(['../../numeric/should_run/arith011.stdout']),
+ stats_num_field('peak_megabytes_allocated', (2, 1)),
# expected value: 2 (amd64/Linux)
stats_num_field('bytes allocated',
[(wordsize(64), 421792, 5),
diff --git a/testsuite/tests/plugins/all.T b/testsuite/tests/plugins/all.T
index ea285dcf93..9e17eb42c8 100644
--- a/testsuite/tests/plugins/all.T
+++ b/testsuite/tests/plugins/all.T
@@ -1,52 +1,64 @@
setTestOpts(req_interp)
test('plugins01',
- [pre_cmd('$MAKE -s --no-print-directory -C simple-plugin package.plugins01 TOP={top}')],
+ [extra_files(['simple-plugin/']),
+ pre_cmd('$MAKE -s --no-print-directory -C simple-plugin package.plugins01 TOP={top}')],
run_command, ['$MAKE -s --no-print-directory plugins01'])
test('plugins02',
- [pre_cmd('$MAKE -s --no-print-directory -C simple-plugin package.plugins02 TOP={top}')],
+ [extra_files(['simple-plugin/']),
+ pre_cmd('$MAKE -s --no-print-directory -C simple-plugin package.plugins02 TOP={top}')],
compile_fail,
['-package-db simple-plugin/pkg.plugins02/local.package.conf -fplugin Simple.BadlyTypedPlugin -package simple-plugin ' + config.plugin_way_flags])
test('plugins03',
- [pre_cmd('$MAKE -s --no-print-directory -C simple-plugin package.plugins03 TOP={top}')],
+ [extra_files(['simple-plugin/']),
+ pre_cmd('$MAKE -s --no-print-directory -C simple-plugin package.plugins03 TOP={top}')],
compile_fail,
['-package-db simple-plugin/pkg.plugins03/local.package.conf -fplugin Simple.NonExistentPlugin -package simple-plugin'])
-test('plugins04', [], multimod_compile_fail,
+test('plugins04', [extra_files(['HomePackagePlugin.hs'])], multimod_compile_fail,
['plugins04', '-package ghc -fplugin HomePackagePlugin'])
-test('plugins05', [only_ways([config.ghc_plugin_way])],
+test('plugins05', [extra_files(['HomePackagePlugin.hs']),
+ only_ways([config.ghc_plugin_way])],
multimod_compile_and_run, ['plugins05', '-package ghc'])
test('plugins06',
- [unless(have_dynamic(), skip), only_ways([config.ghc_plugin_way])],
+ [extra_files(['LinkerTicklingPlugin.hs']),
+ unless(have_dynamic(), skip), only_ways([config.ghc_plugin_way])],
multimod_compile_and_run, ['plugins06', '-package ghc'])
test('plugins07',
- [pre_cmd('$MAKE -s --no-print-directory -C rule-defining-plugin package.plugins07 TOP={top}')],
+ [extra_files(['rule-defining-plugin/']),
+ pre_cmd('$MAKE -s --no-print-directory -C rule-defining-plugin package.plugins07 TOP={top}')],
run_command, ['$MAKE -s --no-print-directory plugins07'])
test('T10420',
- [pre_cmd('$MAKE -s --no-print-directory -C rule-defining-plugin package.T10420 TOP={top}')],
+ [extra_files(['rule-defining-plugin/']),
+ pre_cmd('$MAKE -s --no-print-directory -C rule-defining-plugin package.T10420 TOP={top}')],
run_command, ['$MAKE -s --no-print-directory T10420'])
test('T10294',
- [pre_cmd('$MAKE -s --no-print-directory -C annotation-plugin package.T10294 TOP={top}')],
+ [extra_files(['annotation-plugin/']),
+ pre_cmd('$MAKE -s --no-print-directory -C annotation-plugin package.T10294 TOP={top}')],
run_command, ['$MAKE -s --no-print-directory T10294'])
test('T10294a',
- [pre_cmd('$MAKE -s --no-print-directory -C annotation-plugin package.T10294a TOP={top}')],
+ [extra_files(['annotation-plugin/']),
+ pre_cmd('$MAKE -s --no-print-directory -C annotation-plugin package.T10294a TOP={top}')],
run_command, ['$MAKE -s --no-print-directory T10294a'])
-test('frontend01', [unless(have_dynamic(), expect_broken(10301))], run_command,
+test('frontend01', [extra_files(['FrontendPlugin.hs']),
+ unless(have_dynamic(), expect_broken(10301))], run_command,
['$MAKE -s --no-print-directory frontend01'])
test('T11244',
- [pre_cmd('$MAKE -s --no-print-directory -C rule-defining-plugin package.T11244 TOP={top}')],
+ [extra_files(['rule-defining-plugin/']),
+ pre_cmd('$MAKE -s --no-print-directory -C rule-defining-plugin package.T11244 TOP={top}')],
run_command, ['$MAKE -s --no-print-directory T11244'])
test('T12567a',
- [pre_cmd('$MAKE -s --no-print-directory -C simple-plugin package.T12567a TOP={top}')],
+ [extra_files(['T12567b.hs', 'simple-plugin/']),
+ pre_cmd('$MAKE -s --no-print-directory -C simple-plugin package.T12567a TOP={top}')],
run_command, ['$MAKE -s --no-print-directory T12567a'])
diff --git a/testsuite/tests/profiling/should_run/all.T b/testsuite/tests/profiling/should_run/all.T
index f0904ee039..96041ffcf0 100644
--- a/testsuite/tests/profiling/should_run/all.T
+++ b/testsuite/tests/profiling/should_run/all.T
@@ -1,7 +1,8 @@
# Test for #1227, #1418
test('heapprof002',
- [pre_cmd('cp heapprof001.hs heapprof002.hs'), extra_ways(['normal_h']),
+ [extra_files(['heapprof001.hs']),
+ pre_cmd('cp heapprof001.hs heapprof002.hs'), extra_ways(['normal_h']),
extra_run_opts('7')],
compile_and_run, [''])
diff --git a/testsuite/tests/programs/10queens/test.T b/testsuite/tests/programs/10queens/test.T
index 28ebc1f2f3..dcf9479dfa 100644
--- a/testsuite/tests/programs/10queens/test.T
+++ b/testsuite/tests/programs/10queens/test.T
@@ -1,2 +1,3 @@
-test('10queens', [when(fast(), skip)], multimod_compile_and_run, ['Main', ''])
+test('10queens', [extra_files(['Main.hs']),
+ when(fast(), skip)], multimod_compile_and_run, ['Main', ''])
diff --git a/testsuite/tests/programs/andre_monad/test.T b/testsuite/tests/programs/andre_monad/test.T
index eeee41e800..7218d92a7c 100644
--- a/testsuite/tests/programs/andre_monad/test.T
+++ b/testsuite/tests/programs/andre_monad/test.T
@@ -1,2 +1,3 @@
-test('andre_monad', [when(fast(), skip)], multimod_compile_and_run,
+test('andre_monad', [extra_files(['Main.hs']),
+ when(fast(), skip)], multimod_compile_and_run,
['Main', ''])
diff --git a/testsuite/tests/programs/andy_cherry/test.T b/testsuite/tests/programs/andy_cherry/test.T
index 72508fc423..b1e87ff122 100644
--- a/testsuite/tests/programs/andy_cherry/test.T
+++ b/testsuite/tests/programs/andy_cherry/test.T
@@ -1,3 +1,4 @@
-test('andy_cherry', [when(fast(), skip), extra_run_opts('.')],
+test('andy_cherry', [extra_files(['DataTypes.hs', 'GenUtils.hs', 'Interp.hs', 'InterpUtils.hs', 'Main.hs', 'Parser.hs', 'PrintTEX.hs', 'mygames.pgn']),
+ when(fast(), skip), extra_run_opts('.')],
multimod_compile_and_run, ['Main', '-cpp'])
diff --git a/testsuite/tests/programs/barton-mangler-bug/test.T b/testsuite/tests/programs/barton-mangler-bug/test.T
index 5a141fc659..dcccf8e758 100644
--- a/testsuite/tests/programs/barton-mangler-bug/test.T
+++ b/testsuite/tests/programs/barton-mangler-bug/test.T
@@ -1,5 +1,6 @@
test('barton-mangler-bug',
- [when(fast(), skip),
+ [extra_files(['Basic.hs', 'Expected.hs', 'Main.hs', 'Physical.hs', 'Plot.lhs', 'PlotExample.lhs', 'TypesettingTricks.hs']),
+ when(fast(), skip),
extra_clean(['Basic.hi', 'Basic.o',
'Expected.hi', 'Expected.o',
'Main.hi', 'Main.o',
diff --git a/testsuite/tests/programs/cholewo-eval/test.T b/testsuite/tests/programs/cholewo-eval/test.T
index 71fd6a1932..83c6499408 100644
--- a/testsuite/tests/programs/cholewo-eval/test.T
+++ b/testsuite/tests/programs/cholewo-eval/test.T
@@ -1,2 +1,3 @@
-test('cholewo-eval', [when(fast(), skip)], multimod_compile_and_run,
+test('cholewo-eval', [extra_files(['Arr.lhs', 'Main.lhs']),
+ when(fast(), skip)], multimod_compile_and_run,
['Main', ''])
diff --git a/testsuite/tests/programs/cvh_unboxing/test.T b/testsuite/tests/programs/cvh_unboxing/test.T
index 4d088119e4..d0ed5e09cb 100644
--- a/testsuite/tests/programs/cvh_unboxing/test.T
+++ b/testsuite/tests/programs/cvh_unboxing/test.T
@@ -1,2 +1,3 @@
-test('cvh_unboxing', [when(fast(), skip)], multimod_compile_and_run,
+test('cvh_unboxing', [extra_files(['Append.lhs', 'Main.lhs', 'Types.lhs']),
+ when(fast(), skip)], multimod_compile_and_run,
['Main', ''])
diff --git a/testsuite/tests/programs/fast2haskell/test.T b/testsuite/tests/programs/fast2haskell/test.T
index 90ca0be52c..6c99b05f1d 100644
--- a/testsuite/tests/programs/fast2haskell/test.T
+++ b/testsuite/tests/programs/fast2haskell/test.T
@@ -1,3 +1,4 @@
-test('fast2haskell', [when(fast(), skip)], multimod_compile_and_run,
+test('fast2haskell', [extra_files(['Fast2haskell.hs', 'Main.hs']),
+ when(fast(), skip)], multimod_compile_and_run,
['Main', ''])
diff --git a/testsuite/tests/programs/fun_insts/test.T b/testsuite/tests/programs/fun_insts/test.T
index bd3276a28f..6dc2ad470f 100644
--- a/testsuite/tests/programs/fun_insts/test.T
+++ b/testsuite/tests/programs/fun_insts/test.T
@@ -1,2 +1,3 @@
-test('fun_insts', [when(fast(), skip)], multimod_compile_and_run, ['Main', ''])
+test('fun_insts', [extra_files(['Main.hs']),
+ when(fast(), skip)], multimod_compile_and_run, ['Main', ''])
diff --git a/testsuite/tests/programs/galois_raytrace/test.T b/testsuite/tests/programs/galois_raytrace/test.T
index f563553993..6f65800cb2 100644
--- a/testsuite/tests/programs/galois_raytrace/test.T
+++ b/testsuite/tests/programs/galois_raytrace/test.T
@@ -3,5 +3,6 @@ if config.platform.startswith('i386-') and \
config.platform != 'i386-unknown-openbsd':
setTestOpts(expect_fail_for(['hpc','optasm','profasm','threaded2','profthreaded']))
-test('galois_raytrace', [when(fast(), skip), reqlib('parsec')],
+test('galois_raytrace', [extra_files(['CSG.hs', 'Construct.hs', 'Data.hs', 'Eval.hs', 'Geometry.hs', 'Illumination.hs', 'Intersections.hs', 'Interval.hs', 'Main.hs', 'Misc.hs', 'Parse.hs', 'Primitives.hs', 'Surface.hs', 'galois.gml']),
+ when(fast(), skip), reqlib('parsec')],
multimod_compile_and_run, ['Main', '-package parsec'])
diff --git a/testsuite/tests/programs/hs-boot/all.T b/testsuite/tests/programs/hs-boot/all.T
index 3790c88c9f..b8f7452037 100644
--- a/testsuite/tests/programs/hs-boot/all.T
+++ b/testsuite/tests/programs/hs-boot/all.T
@@ -1,4 +1,4 @@
# This test is for bug #906, a problem with the ordering of
# compilations involving .hs-boot files, fixed in 6.6.
-test('hs-boot', [], multimod_compile, ['Main -v0', ''])
+test('hs-boot', [extra_files(['A.hs', 'A.hs-boot', 'B.hs', 'C.hs', 'Main.hs'])], multimod_compile, ['Main -v0', ''])
diff --git a/testsuite/tests/programs/jl_defaults/test.T b/testsuite/tests/programs/jl_defaults/test.T
index 4b75ffaef5..bafee003e5 100644
--- a/testsuite/tests/programs/jl_defaults/test.T
+++ b/testsuite/tests/programs/jl_defaults/test.T
@@ -1,3 +1,4 @@
-test('jl_defaults', [when(fast(), skip)], multimod_compile_and_run,
+test('jl_defaults', [extra_files(['Main.hs']),
+ when(fast(), skip)], multimod_compile_and_run,
['Main', ''])
diff --git a/testsuite/tests/programs/joao-circular/test.T b/testsuite/tests/programs/joao-circular/test.T
index 589add0b57..dcc3c0aa29 100644
--- a/testsuite/tests/programs/joao-circular/test.T
+++ b/testsuite/tests/programs/joao-circular/test.T
@@ -1,5 +1,6 @@
test('joao-circular',
- [when(fast(), skip),
+ [extra_files(['Data_Lazy.hs', 'Funcs_Lexer.hs', 'Funcs_Parser_Lazy.hs', 'LrcPrelude.hs', 'Main.hs', 'Visfun_Lazy.hs', 'inp']),
+ when(fast(), skip),
when(doing_ghci(), extra_hc_opts('-fobject-code')),
extra_clean(['Data_Lazy.hi', 'Data_Lazy.o',
'Funcs_Lexer.hi', 'Funcs_Lexer.o',
diff --git a/testsuite/tests/programs/jq_readsPrec/test.T b/testsuite/tests/programs/jq_readsPrec/test.T
index 4d7ec4d730..3484074d16 100644
--- a/testsuite/tests/programs/jq_readsPrec/test.T
+++ b/testsuite/tests/programs/jq_readsPrec/test.T
@@ -1,3 +1,4 @@
-test('jq_readsPrec', [when(fast(), skip)], multimod_compile_and_run,
+test('jq_readsPrec', [extra_files(['Main.hs']),
+ when(fast(), skip)], multimod_compile_and_run,
['Main', ''])
diff --git a/testsuite/tests/programs/jtod_circint/test.T b/testsuite/tests/programs/jtod_circint/test.T
index 69be1661b8..0d873665ba 100644
--- a/testsuite/tests/programs/jtod_circint/test.T
+++ b/testsuite/tests/programs/jtod_circint/test.T
@@ -1,3 +1,4 @@
-test('jtod_circint', [when(fast(), skip)], multimod_compile_and_run,
+test('jtod_circint', [extra_files(['Bit.hs', 'LogFun.hs', 'Main.hs', 'Signal.hs']),
+ when(fast(), skip)], multimod_compile_and_run,
['Main', ''])
diff --git a/testsuite/tests/programs/jules_xref/test.T b/testsuite/tests/programs/jules_xref/test.T
index 32b484f07e..3988761d97 100644
--- a/testsuite/tests/programs/jules_xref/test.T
+++ b/testsuite/tests/programs/jules_xref/test.T
@@ -1 +1,2 @@
-test('jules_xref', [when(fast(), skip)], multimod_compile_and_run, ['Main', ''])
+test('jules_xref', [extra_files(['Main.hs']),
+ when(fast(), skip)], multimod_compile_and_run, ['Main', ''])
diff --git a/testsuite/tests/programs/jules_xref2/test.T b/testsuite/tests/programs/jules_xref2/test.T
index f220128b3f..b6903690e3 100644
--- a/testsuite/tests/programs/jules_xref2/test.T
+++ b/testsuite/tests/programs/jules_xref2/test.T
@@ -1,3 +1,4 @@
-test('jules_xref2', [when(fast(), skip)], multimod_compile_and_run,
+test('jules_xref2', [extra_files(['Main.hs']),
+ when(fast(), skip)], multimod_compile_and_run,
['Main', ''])
diff --git a/testsuite/tests/programs/launchbury/test.T b/testsuite/tests/programs/launchbury/test.T
index fb7db1d751..0da4ede9fd 100644
--- a/testsuite/tests/programs/launchbury/test.T
+++ b/testsuite/tests/programs/launchbury/test.T
@@ -1,2 +1,3 @@
-test('launchbury', [when(fast(), skip)], multimod_compile_and_run, ['Main', ''])
+test('launchbury', [extra_files(['Main.hs']),
+ when(fast(), skip)], multimod_compile_and_run, ['Main', ''])
diff --git a/testsuite/tests/programs/lennart_range/test.T b/testsuite/tests/programs/lennart_range/test.T
index 68c27238e2..8589f37838 100644
--- a/testsuite/tests/programs/lennart_range/test.T
+++ b/testsuite/tests/programs/lennart_range/test.T
@@ -1,3 +1,4 @@
-test('lennart_range', [when(fast(), skip)], multimod_compile_and_run,
+test('lennart_range', [extra_files(['Main.hs']),
+ when(fast(), skip)], multimod_compile_and_run,
['Main', ''])
diff --git a/testsuite/tests/programs/lex/test.T b/testsuite/tests/programs/lex/test.T
index b70605d5ee..3f84764c9f 100644
--- a/testsuite/tests/programs/lex/test.T
+++ b/testsuite/tests/programs/lex/test.T
@@ -1,2 +1,3 @@
-test('lex', [when(fast(), skip)], multimod_compile_and_run, ['Main', ''])
+test('lex', [extra_files(['Main.hs']),
+ when(fast(), skip)], multimod_compile_and_run, ['Main', ''])
diff --git a/testsuite/tests/programs/life_space_leak/test.T b/testsuite/tests/programs/life_space_leak/test.T
index fe72a2567f..90efd45754 100644
--- a/testsuite/tests/programs/life_space_leak/test.T
+++ b/testsuite/tests/programs/life_space_leak/test.T
@@ -1,2 +1,3 @@
-test('life_space_leak', [when(fast(), skip)], multimod_compile_and_run,
+test('life_space_leak', [extra_files(['Main.hs']),
+ when(fast(), skip)], multimod_compile_and_run,
['Main', ''])
diff --git a/testsuite/tests/programs/maessen-hashtab/test.T b/testsuite/tests/programs/maessen-hashtab/test.T
index e21d2bb1c6..cc02729fc0 100644
--- a/testsuite/tests/programs/maessen-hashtab/test.T
+++ b/testsuite/tests/programs/maessen-hashtab/test.T
@@ -1,6 +1,7 @@
test('maessen_hashtab',
- [reqlib('QuickCheck'),
+ [extra_files(['Data/', 'HashTest.hs']),
+ reqlib('QuickCheck'),
extra_clean(['HashTest.hi', 'HashTest.o',
'Data/HashTab.hi', 'Data/HashTab.o']),
when(fast(), skip),
diff --git a/testsuite/tests/programs/north_array/test.T b/testsuite/tests/programs/north_array/test.T
index 986087b0f1..2b3d0a3e52 100644
--- a/testsuite/tests/programs/north_array/test.T
+++ b/testsuite/tests/programs/north_array/test.T
@@ -1,3 +1,4 @@
-test('north_array', [when(fast(), skip)], multimod_compile_and_run,
+test('north_array', [extra_files(['Main.hs']),
+ when(fast(), skip)], multimod_compile_and_run,
['Main', ''])
diff --git a/testsuite/tests/programs/okeefe_neural/test.T b/testsuite/tests/programs/okeefe_neural/test.T
index 7f0282df97..8da5b4a990 100644
--- a/testsuite/tests/programs/okeefe_neural/test.T
+++ b/testsuite/tests/programs/okeefe_neural/test.T
@@ -10,5 +10,6 @@
def set_opts( name, opts ):
opts.expect = 'fail'
-test('okeefe_neural', [when(fast(), skip), set_opts], multimod_compile_and_run,
+test('okeefe_neural', [extra_files(['Main.hs']),
+ when(fast(), skip), set_opts], multimod_compile_and_run,
['Main', '+RTS -M64m -RTS'])
diff --git a/testsuite/tests/programs/record_upd/test.T b/testsuite/tests/programs/record_upd/test.T
index b8cdbadeec..f4451a1a04 100644
--- a/testsuite/tests/programs/record_upd/test.T
+++ b/testsuite/tests/programs/record_upd/test.T
@@ -1,2 +1,3 @@
-test('record_upd', [when(fast(), skip)], multimod_compile_and_run, ['Main', ''])
+test('record_upd', [extra_files(['Main.hs']),
+ when(fast(), skip)], multimod_compile_and_run, ['Main', ''])
diff --git a/testsuite/tests/programs/rittri/test.T b/testsuite/tests/programs/rittri/test.T
index 9b2fcf4fc9..4a559b0660 100644
--- a/testsuite/tests/programs/rittri/test.T
+++ b/testsuite/tests/programs/rittri/test.T
@@ -1,2 +1,3 @@
-test('rittri', [when(fast(), skip)], multimod_compile_and_run, ['Main', ''])
+test('rittri', [extra_files(['Main.hs']),
+ when(fast(), skip)], multimod_compile_and_run, ['Main', ''])
diff --git a/testsuite/tests/programs/sanders_array/test.T b/testsuite/tests/programs/sanders_array/test.T
index e2e9b209fc..83b32ea712 100644
--- a/testsuite/tests/programs/sanders_array/test.T
+++ b/testsuite/tests/programs/sanders_array/test.T
@@ -1,3 +1,4 @@
-test('sanders_array', [when(fast(), skip)], multimod_compile_and_run,
+test('sanders_array', [extra_files(['Main.hs']),
+ when(fast(), skip)], multimod_compile_and_run,
['Main', ''])
diff --git a/testsuite/tests/programs/seward-space-leak/test.T b/testsuite/tests/programs/seward-space-leak/test.T
index 935ebbf259..906fe94ff6 100644
--- a/testsuite/tests/programs/seward-space-leak/test.T
+++ b/testsuite/tests/programs/seward-space-leak/test.T
@@ -1,2 +1,3 @@
-test('seward-space-leak', [when(fast(), skip)], multimod_compile_and_run,
+test('seward-space-leak', [extra_files(['Main.lhs']),
+ when(fast(), skip)], multimod_compile_and_run,
['Main', ''])
diff --git a/testsuite/tests/programs/strict_anns/test.T b/testsuite/tests/programs/strict_anns/test.T
index b210abde72..9d1c770780 100644
--- a/testsuite/tests/programs/strict_anns/test.T
+++ b/testsuite/tests/programs/strict_anns/test.T
@@ -1,3 +1,4 @@
-test('strict_anns', [when(fast(), skip)], multimod_compile_and_run,
+test('strict_anns', [extra_files(['Main.hs']),
+ when(fast(), skip)], multimod_compile_and_run,
['Main', ''])
diff --git a/testsuite/tests/programs/thurston-modular-arith/test.T b/testsuite/tests/programs/thurston-modular-arith/test.T
index 3a38db7a9e..b957bd9d3b 100644
--- a/testsuite/tests/programs/thurston-modular-arith/test.T
+++ b/testsuite/tests/programs/thurston-modular-arith/test.T
@@ -1,3 +1,4 @@
# uses GHC-specific scoped type variables
-test('thurston-modular-arith', [when(fast(), skip)], multimod_compile_and_run,
+test('thurston-modular-arith', [extra_files(['Main.hs', 'TypeVal.hs']),
+ when(fast(), skip)], multimod_compile_and_run,
['Main', ''])
diff --git a/testsuite/tests/quasiquotation/T4491/test.T b/testsuite/tests/quasiquotation/T4491/test.T
index 01e7b1f3ec..2ef6b89edc 100644
--- a/testsuite/tests/quasiquotation/T4491/test.T
+++ b/testsuite/tests/quasiquotation/T4491/test.T
@@ -1,5 +1,6 @@
test('T4491',
- [
+ [extra_files(['A.hs']),
+
req_interp,
# We'd need to jump through some hoops to run this test the
# other ways, due to the TH use, so for now we only run it
diff --git a/testsuite/tests/quasiquotation/qq005/test.T b/testsuite/tests/quasiquotation/qq005/test.T
index 9c4ac5c5e6..333981a5d4 100644
--- a/testsuite/tests/quasiquotation/qq005/test.T
+++ b/testsuite/tests/quasiquotation/qq005/test.T
@@ -1,5 +1,6 @@
test('qq005',
- [when(fast(), skip),
+ [extra_files(['Expr.hs', 'Main.hs']),
+ when(fast(), skip),
reqlib('parsec'),
# We'd need to jump through some hoops to run this test the
# profiling ways, due to the TH use, so for now we just
diff --git a/testsuite/tests/quasiquotation/qq006/test.T b/testsuite/tests/quasiquotation/qq006/test.T
index e9beadda64..e6c4b7c40a 100644
--- a/testsuite/tests/quasiquotation/qq006/test.T
+++ b/testsuite/tests/quasiquotation/qq006/test.T
@@ -1,2 +1,3 @@
-test('qq006', [when(fast(), skip), reqlib('parsec')], multimod_compile_fail,
+test('qq006', [extra_files(['Expr.hs', 'Main.hs']),
+ when(fast(), skip), reqlib('parsec')], multimod_compile_fail,
['Main', '-v0'])
diff --git a/testsuite/tests/quasiquotation/qq007/test.T b/testsuite/tests/quasiquotation/qq007/test.T
index 3a2524b771..edb3554190 100644
--- a/testsuite/tests/quasiquotation/qq007/test.T
+++ b/testsuite/tests/quasiquotation/qq007/test.T
@@ -1,4 +1,5 @@
test('qq007',
- [when(fast(), skip), pre_cmd('$MAKE -s --no-print-directory TH_QQ'),
+ [extra_files(['QQ.hs', 'Test.hs']),
+ when(fast(), skip), pre_cmd('$MAKE -s --no-print-directory TH_QQ'),
omit_ways(prof_ways)],
multimod_compile, ['Test', '-v0 ' + config.ghc_th_way_flags])
diff --git a/testsuite/tests/quasiquotation/qq008/test.T b/testsuite/tests/quasiquotation/qq008/test.T
index f0827aa4f0..9d83f34907 100644
--- a/testsuite/tests/quasiquotation/qq008/test.T
+++ b/testsuite/tests/quasiquotation/qq008/test.T
@@ -1,4 +1,5 @@
test('qq008',
- [when(fast(), skip), pre_cmd('$MAKE -s --no-print-directory TH_QQ'),
+ [extra_files(['QQ.hs', 'Test.hs']),
+ when(fast(), skip), pre_cmd('$MAKE -s --no-print-directory TH_QQ'),
omit_ways(prof_ways)],
multimod_compile, ['Test', '-v0 ' + config.ghc_th_way_flags])
diff --git a/testsuite/tests/quasiquotation/qq009/test.T b/testsuite/tests/quasiquotation/qq009/test.T
index 9b355de096..1f108a626e 100644
--- a/testsuite/tests/quasiquotation/qq009/test.T
+++ b/testsuite/tests/quasiquotation/qq009/test.T
@@ -1,4 +1,5 @@
test('qq009',
- [when(fast(), skip), pre_cmd('$MAKE -s --no-print-directory TH_QQ'),
+ [extra_files(['QQ.hs', 'Test.hs']),
+ when(fast(), skip), pre_cmd('$MAKE -s --no-print-directory TH_QQ'),
omit_ways(prof_ways)],
multimod_compile, ['Test', '-v0 ' + config.ghc_th_way_flags])
diff --git a/testsuite/tests/quotes/TH_spliceViewPat/test.T b/testsuite/tests/quotes/TH_spliceViewPat/test.T
index 6e9b397026..c7e1ccaef4 100644
--- a/testsuite/tests/quotes/TH_spliceViewPat/test.T
+++ b/testsuite/tests/quotes/TH_spliceViewPat/test.T
@@ -3,5 +3,6 @@ def f(name, opts):
setTestOpts(f)
-test('TH_spliceViewPat', [omit_ways(prof_ways)], multimod_compile_and_run,
+test('TH_spliceViewPat', [extra_files(['A.hs', 'Main.hs']),
+ omit_ways(prof_ways)], multimod_compile_and_run,
['Main', config.ghc_th_way_flags])
diff --git a/testsuite/tests/rename/prog001/test.T b/testsuite/tests/rename/prog001/test.T
index 85992e3f93..7208fd0f4b 100644
--- a/testsuite/tests/rename/prog001/test.T
+++ b/testsuite/tests/rename/prog001/test.T
@@ -1 +1 @@
-test('rename.prog001', [], multimod_compile, ['rn037', '-v0'])
+test('rename.prog001', [extra_files(['Rn037Help.hs', 'rn037.hs'])], multimod_compile, ['rn037', '-v0'])
diff --git a/testsuite/tests/rename/prog002/test.T b/testsuite/tests/rename/prog002/test.T
index 270faf591d..0a1c2c3053 100644
--- a/testsuite/tests/rename/prog002/test.T
+++ b/testsuite/tests/rename/prog002/test.T
@@ -1 +1 @@
-test('rename.prog002', [], multimod_compile_fail, ['rnfail037', '-v0'])
+test('rename.prog002', [extra_files(['Rn037Help.hs', 'rnfail037.hs'])], multimod_compile_fail, ['rnfail037', '-v0'])
diff --git a/testsuite/tests/rename/prog003/test.T b/testsuite/tests/rename/prog003/test.T
index 0596e01d1a..694e41acaa 100644
--- a/testsuite/tests/rename/prog003/test.T
+++ b/testsuite/tests/rename/prog003/test.T
@@ -1 +1 @@
-test('rename.prog003', [], multimod_compile_fail, ['B', '-v0'])
+test('rename.prog003', [extra_files(['A.hs', 'B.hs'])], multimod_compile_fail, ['B', '-v0'])
diff --git a/testsuite/tests/rename/prog004/test.T b/testsuite/tests/rename/prog004/test.T
index ddd2889b08..71d18a5934 100644
--- a/testsuite/tests/rename/prog004/test.T
+++ b/testsuite/tests/rename/prog004/test.T
@@ -1 +1 @@
-test('rename.prog004', [], multimod_compile, ['C', '-v0'])
+test('rename.prog004', [extra_files(['A.hs', 'B.hs', 'C.hs'])], multimod_compile, ['C', '-v0'])
diff --git a/testsuite/tests/rename/prog005/test.T b/testsuite/tests/rename/prog005/test.T
index 0c4d1b7a08..61a7455cb9 100644
--- a/testsuite/tests/rename/prog005/test.T
+++ b/testsuite/tests/rename/prog005/test.T
@@ -1 +1 @@
-test('rename.prog005', [], multimod_compile, ['View', '-v0'])
+test('rename.prog005', [extra_files(['VersionGraphClient.hs', 'VersionGraphClient.hs-boot', 'View.hs', 'ViewType.hs'])], multimod_compile, ['View', '-v0'])
diff --git a/testsuite/tests/rename/prog006/all.T b/testsuite/tests/rename/prog006/all.T
index bf63fd835a..e119232e0b 100644
--- a/testsuite/tests/rename/prog006/all.T
+++ b/testsuite/tests/rename/prog006/all.T
@@ -1,2 +1,2 @@
-test('rn.prog006', [], run_command,
+test('rn.prog006', [extra_files(['A.hs', 'B/', 'Main.hs', 'pwd.hs'])], run_command,
['$MAKE -s --no-print-directory rn.prog006'])
diff --git a/testsuite/tests/rename/should_compile/T3103/test.T b/testsuite/tests/rename/should_compile/T3103/test.T
index 4a925085de..43f9fef4a7 100644
--- a/testsuite/tests/rename/should_compile/T3103/test.T
+++ b/testsuite/tests/rename/should_compile/T3103/test.T
@@ -1,5 +1,5 @@
# Args to vtc are: extra compile flags
-test('T3103', [], multimod_compile,
+test('T3103', [extra_files(['Foreign/', 'GHC/'])], multimod_compile,
['Foreign.Ptr',
'-v0 -hide-all-packages -package ghc-prim -package integer-gmp -this-unit-id base'])
diff --git a/testsuite/tests/rename/should_compile/all.T b/testsuite/tests/rename/should_compile/all.T
index d2c1aaaa80..f6b71fda3b 100644
--- a/testsuite/tests/rename/should_compile/all.T
+++ b/testsuite/tests/rename/should_compile/all.T
@@ -3,13 +3,13 @@
test('rn003', normal, compile, [''])
test('rn005', normal, compile, [''])
test('rn006', normal, compile, [''])
-test('rn009', [], multimod_compile, ['rn009', '-v0'])
+test('rn009', [extra_files(['Imp10Aux.hs', 'Imp10Aux.hs-boot'])], multimod_compile, ['rn009', '-v0'])
# rn10 tests the same things as 009,011,012
#test('rn010', normal, multimod_compile, ['rn010', '-v0'])
-test('rn011', [], multimod_compile, ['rn011', '-v0'])
-test('rn012', [], multimod_compile, ['rn012', '-v0'])
+test('rn011', [extra_files(['Imp100Aux.hs', 'Imp100Aux.hs-boot'])], multimod_compile, ['rn011', '-v0'])
+test('rn012', [extra_files(['Imp500Aux.hs', 'Imp500Aux.hs-boot'])], multimod_compile, ['rn012', '-v0'])
test('rn013', normal, compile, [''])
-test('rn017', [], multimod_compile, ['rn017', '-v0'])
+test('rn017', [extra_files(['RnAux017.hs', 'RnAux017.hs-boot'])], multimod_compile, ['rn017', '-v0'])
test('rn019', normal, compile, [''])
test('rn020', normal, compile, [''])
test('rn022', normal, compile, [''])
@@ -34,39 +34,39 @@ test('rn037', normal, compile, [''])
test('rn039', normal, compile, [''])
test('rn040', normal, compile, ['-fwarn-unused-binds -fwarn-unused-matches'])
test('rn041', expect_broken_for(10181, ['optasm', 'optllvm']), compile, [''])
-test('rn042', [], multimod_compile, ['rn042', '-v0'])
-test('rn043', [], multimod_compile, ['rn043', '-v0'])
-test('rn044', [], multimod_compile, ['rn044', '-v0'])
+test('rn042', [extra_files(['Rn042_A.hs'])], multimod_compile, ['rn042', '-v0'])
+test('rn043', [extra_files(['Rn043_A.hs', 'Rn043_B.hs'])], multimod_compile, ['rn043', '-v0'])
+test('rn044', [extra_files(['Rn044_A.hs', 'Rn044_B.hs'])], multimod_compile, ['rn044', '-v0'])
test('rn045', normal, compile, [''])
test('rn046', normal, compile, ['-W'])
test('rn047', normal, compile, ['-W'])
test('rn048', normal, compile, ['-W'])
test('rn049', normal, compile, ['-W'])
-test('rn050', [], multimod_compile, ['rn050', '-v0'])
+test('rn050', [extra_files(['Rn050_A.hs'])], multimod_compile, ['rn050', '-v0'])
test('rn051', normal, compile, [''])
-test('rn052', [], multimod_compile, ['rn052', '-v0'])
+test('rn052', [extra_files(['Rn052Aux.hs'])], multimod_compile, ['rn052', '-v0'])
-test('rn053', [], multimod_compile, ['rn053', '-v0'])
+test('rn053', [extra_files(['Rn053_A.hs', 'Rn053_B.hs'])], multimod_compile, ['rn053', '-v0'])
test('rn054', normal, compile, [''])
test('rn055', normal, compile, [''])
test('rn056', normal, compile, [''])
test('rn057', normal, compile, [''])
test('rn058', normal, compile, [''])
-test('rn059', [], multimod_compile, ['rn059', '-v0'])
+test('rn059', [extra_files(['Rn059_A.hs', 'Rn059_B.hs'])], multimod_compile, ['rn059', '-v0'])
test('rn060', normal, compile, [''])
test('rn061', normal, compile, [''])
test('rn062', normal, compile, [''])
test('rn063', normal, compile, [''])
test('rn064', normal, compile, [''])
-test('rn065', [], multimod_compile, ['rn065', '-v0'])
+test('rn065', [extra_files(['Rn065A.hs'])], multimod_compile, ['rn065', '-v0'])
-test('rn066', [], multimod_compile, ['rn066', '-v0'])
+test('rn066', [extra_files(['Rn066_A.hs'])], multimod_compile, ['rn066', '-v0'])
-test('rn067', [], multimod_compile, ['rn067', '-v0'])
+test('rn067', [extra_files(['Rn067_A.hs'])], multimod_compile, ['rn067', '-v0'])
test('rn068', normal, compile, [''])
@@ -128,7 +128,7 @@ test('T7085', normal, compile, [''])
test('T7145a', normal, compile, ['-Wall -Werror'])
test('T7145b', normal, compile, ['-Wall'])
test('T6038', normal, compile, [''])
-test('dodgy', [], multimod_compile, ['dodgy', '-v0'])
+test('dodgy', [extra_files(['DodgyA.hs'])], multimod_compile, ['dodgy', '-v0'])
test('T7167', normal, compile, [''])
test('T7336', expect_broken(7336), compile, ['-Wall'])
diff --git a/testsuite/tests/rename/should_fail/all.T b/testsuite/tests/rename/should_fail/all.T
index b64bd44be8..4782685f5e 100644
--- a/testsuite/tests/rename/should_fail/all.T
+++ b/testsuite/tests/rename/should_fail/all.T
@@ -39,7 +39,7 @@ test('rnfail035', normal, compile_fail, [''])
test('rnfail039', normal, compile_fail, [''])
-test('rnfail040', [], multimod_compile_fail, ['rnfail040', '-v0'])
+test('rnfail040', [extra_files(['Rnfail040_A.hs'])], multimod_compile_fail, ['rnfail040', '-v0'])
test('rnfail041', normal, compile_fail, [''])
test('rnfail042', normal, compile_fail, [''])
@@ -47,7 +47,7 @@ test('rnfail043', unless(doing_ghci, skip), compile_fail, ['-v0'])
test('rnfail044', normal, compile_fail, [''])
test('rnfail045', normal, compile_fail, [''])
test('rnfail046', normal, compile_fail, [''])
-test('rnfail047', [], multimod_compile_fail, ['rnfail047', '-v0'])
+test('rnfail047', [extra_files(['RnFail047_A.hs', 'RnFail047_A.hs-boot'])], multimod_compile_fail, ['rnfail047', '-v0'])
test('rnfail048', normal, compile_fail, [''])
test('rnfail049', normal, compile_fail, [''])
test('rnfail050', normal, compile_fail, [''])
@@ -55,7 +55,7 @@ test('rnfail051', normal, compile_fail, [''])
test('rnfail052', normal, compile_fail, [''])
test('rnfail053', normal, compile_fail, [''])
test('rnfail054', normal, compile_fail, [''])
-test('rnfail055', [], multimod_compile_fail, ['RnFail055', '-v0'])
+test('rnfail055', [extra_files(['RnFail055.hs', 'RnFail055.hs-boot', 'RnFail055_aux.hs'])], multimod_compile_fail, ['RnFail055', '-v0'])
test('rnfail056', normal, compile_fail, [''])
test('rnfail057', normal, compile_fail, [''])
diff --git a/testsuite/tests/rts/T10672/all.T b/testsuite/tests/rts/T10672/all.T
index 4e06204b19..c24ded25b4 100644
--- a/testsuite/tests/rts/T10672/all.T
+++ b/testsuite/tests/rts/T10672/all.T
@@ -1,7 +1,9 @@
test('T10672_x64',
- [[unless(opsys('mingw32'), skip), unless(arch('x86_64'), skip)]],
+ [extra_files(['Main.hs', 'Printf.hs', 'cxxy.cpp']),
+ [unless(opsys('mingw32'), skip), unless(arch('x86_64'), skip)]],
run_command, ['$MAKE -s --no-print-directory T10672_x64'])
test('T10672_x86',
- [[unless(opsys('mingw32'), skip), unless(arch('i386'), skip)]],
+ [extra_files(['Main.hs', 'Printf.hs', 'cxxy.cpp']),
+ [unless(opsys('mingw32'), skip), unless(arch('i386'), skip)]],
run_command, ['$MAKE -s --no-print-directory T10672_x86'])
diff --git a/testsuite/tests/rts/T11223/all.T b/testsuite/tests/rts/T11223/all.T
index 1088d02b53..0a578c03b5 100644
--- a/testsuite/tests/rts/T11223/all.T
+++ b/testsuite/tests/rts/T11223/all.T
@@ -13,49 +13,58 @@ def normalise_duplicate_errmsg( msg ):
#--------------------------------------
test('T11223_simple_link',
- [when(ghc_dynamic(), skip)],
+ [extra_files(['foo.c', 'foo.hs']),
+ when(ghc_dynamic(), skip)],
run_command,
['$MAKE -s --no-print-directory t_11223_simple_link'])
test('T11223_simple_link_lib',
- [when(ghc_dynamic(), skip)],
+ [extra_files(['foo.c', 'foo.hs']),
+ when(ghc_dynamic(), skip)],
run_command,
['$MAKE -s --no-print-directory t_11223_simple_link_lib'])
# I'm ignoring the output since for this particular invocation normalise_errmsg
# isn't being called and I can't figure out why not.
test('T11223_simple_duplicate',
- [when(ghc_dynamic(), skip), ignore_stderr, ignore_stdout, exit_code(2), normalise_errmsg_fun(normalise_duplicate_errmsg)],
+ [extra_files(['bar.c', 'foo.c', 'foo.hs']),
+ when(ghc_dynamic(), skip), ignore_stderr, ignore_stdout, exit_code(2), normalise_errmsg_fun(normalise_duplicate_errmsg)],
run_command,
['$MAKE -s --no-print-directory t_11223_simple_duplicate'])
test('T11223_simple_duplicate_lib',
- [when(ghc_dynamic(), skip), normalise_errmsg_fun(normalise_duplicate_errmsg)],
+ [extra_files(['bar.c', 'foo.c', 'foo.hs']),
+ when(ghc_dynamic(), skip), normalise_errmsg_fun(normalise_duplicate_errmsg)],
run_command,
['$MAKE -s --no-print-directory t_11223_simple_duplicate_lib'])
test('T11223_simple_unused_duplicate_lib',
- [when(ghc_dynamic(), skip)],
+ [extra_files(['bar.c', 'foo.c', 'foo.hs']),
+ when(ghc_dynamic(), skip)],
run_command,
['$MAKE -s --no-print-directory t_11223_simple_unused_duplicate_lib'])
test('T11223_link_order_a_b_succeed',
- [when(ghc_dynamic(), skip)],
+ [extra_files(['bar.c', 'foo.c', 'foo2.hs']),
+ when(ghc_dynamic(), skip)],
run_command,
['$MAKE -s --no-print-directory t_11223_link_order_a_b_succeed'])
test('T11223_link_order_b_a_succeed',
- [when(ghc_dynamic(), skip)],
+ [extra_files(['bar.c', 'foo.c', 'foo2.hs']),
+ when(ghc_dynamic(), skip)],
run_command,
['$MAKE -s --no-print-directory t_11223_link_order_b_a_succeed'])
test('T11223_link_order_a_b_2_fail',
- [when(ghc_dynamic(), skip), normalise_errmsg_fun(normalise_duplicate_errmsg)],
+ [extra_files(['bar.c', 'foo.c', 'foo3.hs']),
+ when(ghc_dynamic(), skip), normalise_errmsg_fun(normalise_duplicate_errmsg)],
run_command,
['$MAKE -s --no-print-directory t_11223_link_order_a_b_2_fail'])
test('T11223_link_order_b_a_2_succeed',
- [when(ghc_dynamic(), skip)],
+ [extra_files(['bar.c', 'foo.c', 'foo3.hs']),
+ when(ghc_dynamic(), skip)],
run_command,
['$MAKE -s --no-print-directory t_11223_link_order_b_a_2_succeed'])
@@ -63,31 +72,37 @@ test('T11223_link_order_b_a_2_succeed',
# See Note [weak-symbols-support] in Linker.c
test('T11223_weak_only_link_fail',
- [when(ghc_dynamic(), skip), expect_broken(11817)],
+ [extra_files(['power.c', 'power.hs']),
+ when(ghc_dynamic(), skip), expect_broken(11817)],
run_command,
['$MAKE -s --no-print-directory t_11223_weak_only_link_fail'])
test('T11223_weak_only_link_succeed',
- [when(ghc_dynamic(), skip), expect_broken(11817)],
+ [extra_files(['power3.hs', 'power_slow.c']),
+ when(ghc_dynamic(), skip), expect_broken(11817)],
run_command,
['$MAKE -s --no-print-directory t_11223_weak_only_link_succeed'])
test('T11223_weak_both_link_order_a_b_succeed',
- [when(ghc_dynamic(), skip), expect_broken(11817)],
+ [extra_files(['power.c', 'power3.hs', 'power_slow.c']),
+ when(ghc_dynamic(), skip), expect_broken(11817)],
run_command,
['$MAKE -s --no-print-directory t_11223_weak_both_link_order_a_b_succeed'])
test('T11223_weak_both_link_order_b_a_succeed',
- [when(ghc_dynamic(), skip), expect_broken(11817)],
+ [extra_files(['power.c', 'power3.hs', 'power_slow.c']),
+ when(ghc_dynamic(), skip), expect_broken(11817)],
run_command,
['$MAKE -s --no-print-directory t_11223_weak_both_link_order_b_a_succeed'])
test('T11223_weak_single_link_order_a_b_succeed',
- [when(ghc_dynamic(), skip), expect_broken(11817)],
+ [extra_files(['power.c', 'power3.hs', 'power_slow.c']),
+ when(ghc_dynamic(), skip), expect_broken(11817)],
run_command,
['$MAKE -s --no-print-directory t_11223_weak_single_link_order_a_b_succeed'])
test('T11223_weak_single_link_order_b_a_succeed',
- [when(ghc_dynamic(), skip), expect_broken(11817)],
+ [extra_files(['power.c', 'power3.hs', 'power_slow.c']),
+ when(ghc_dynamic(), skip), expect_broken(11817)],
run_command,
['$MAKE -s --no-print-directory t_11223_weak_single_link_order_b_a_succeed'])
diff --git a/testsuite/tests/rts/T5644/all.T b/testsuite/tests/rts/T5644/all.T
index 4b2332bbc6..7dd120d575 100644
--- a/testsuite/tests/rts/T5644/all.T
+++ b/testsuite/tests/rts/T5644/all.T
@@ -1,4 +1,5 @@
-test('T5644', [
+test('T5644', [extra_files(['Conf.hs', 'ManyQueue.hs', 'Util.hs', 'heap-overflow.hs']),
+
only_ways(['optasm','threaded1','threaded2']),
extra_run_opts('+RTS -M20m -RTS'),
exit_code(251) # RTS exit code for "out of memory"
diff --git a/testsuite/tests/rts/all.T b/testsuite/tests/rts/all.T
index 79e1461596..fc7363f6bd 100644
--- a/testsuite/tests/rts/all.T
+++ b/testsuite/tests/rts/all.T
@@ -78,7 +78,8 @@ test('T2783', [ omit_ways(['ghci']), exit_code(1) ], compile_and_run, [''])
# Test the work-stealing deque implementation. We run this test in
# both threaded1 (-threaded -debug) and threaded2 (-threaded) ways.
-test('testwsdeque', [unless(in_tree_compiler(), skip),
+test('testwsdeque', [extra_files(['../../../rts/WSDeque.h']),
+ unless(in_tree_compiler(), skip),
req_smp, # needs atomic 'cas'
c_src, only_ways(['threaded1', 'threaded2'])],
compile_and_run, [''])
@@ -112,7 +113,8 @@ test('rtsflags002', [ only_ways(['normal']) ], compile_and_run, ['-with-rtsopts=
# Test to see if linker scripts link properly to real ELF files
test('T2615',
- [ when(opsys('mingw32'), skip),
+ [extra_files(['libfoo_T2615.c', 'libfoo_script_T2615.so']),
+ when(opsys('mingw32'), skip),
# OS X doesn't seem to support linker scripts
when(opsys('darwin'), skip),
# Solaris' linker does not support GNUish linker scripts
@@ -147,7 +149,8 @@ def config_T5250(name, opts):
if not (config.arch in ['i386','x86_64']):
opts.skip = 1;
-test('T5250', [ config_T5250,
+test('T5250', [extra_files(['spalign.c']),
+ config_T5250,
# stack ptr is not 16-byte aligned on 32-bit Windows
when(platform('i386-unknown-mingw32'), expect_fail),
when(platform('i386-unknown-linux'),
@@ -191,7 +194,7 @@ test('T5435_v_gcc', [extra_files(['T5435.hs', 'T5435_gcc.c']),
test('T5435_dyn_asm', [extra_files(['T5435.hs', 'T5435_asm.c']),
check_stdout(checkDynAsm)],
run_command, ['$MAKE -s --no-print-directory T5435_dyn_asm'])
-test('T5435_dyn_gcc', normal , run_command, ['$MAKE -s --no-print-directory T5435_dyn_gcc'])
+test('T5435_dyn_gcc', extra_files(['T5435.hs', 'T5435_gcc.c']) , run_command, ['$MAKE -s --no-print-directory T5435_dyn_gcc'])
test('T5993', extra_run_opts('+RTS -k8 -RTS'), compile_and_run, [''])
@@ -211,7 +214,8 @@ test('T7160', normal, compile_and_run, [''])
test('T7040', [omit_ways(['ghci'])], compile_and_run, ['T7040_c.c'])
test('T7040_ghci',
- [only_ways(['ghci']),
+ [extra_files(['T7040_c.h']),
+ only_ways(['ghci']),
pre_cmd('$MAKE -s --no-print-directory T7040_ghci_setup')],
compile_and_run, ['T7040_ghci_c.o'])
@@ -240,7 +244,8 @@ test('T7919', [when(fast(), skip), omit_ways(prof_ways)], compile_and_run,
test('T8035', normal, compile_and_run, [''])
test('linker_unload',
- [when(arch('powerpc64') or arch('powerpc64le'), expect_broken(11259))],
+ [extra_files(['LinkerUnload.hs', 'Test.hs']),
+ when(arch('powerpc64') or arch('powerpc64le'), expect_broken(11259))],
run_command, ['$MAKE -s --no-print-directory linker_unload'])
test('T8209', [ req_smp, only_ways(threaded_ways), ignore_stdout ],
@@ -288,13 +293,16 @@ test('overflow1', [ exit_code(251) ], compile_and_run, [''])
test('overflow2', [ exit_code(251) ], compile_and_run, [''])
test('overflow3', [ exit_code(251) ], compile_and_run, [''])
-test('linker_error1', [ignore_stderr], run_command,
+test('linker_error1', [extra_files(['linker_error.c']),
+ ignore_stderr], run_command,
['$MAKE -s --no-print-directory linker_error1'])
-test('linker_error2', [ignore_stderr], run_command,
+test('linker_error2', [extra_files(['linker_error.c']),
+ ignore_stderr], run_command,
['$MAKE -s --no-print-directory linker_error2'])
-test('linker_error3', [ignore_stderr], run_command,
+test('linker_error3', [extra_files(['linker_error.c']),
+ ignore_stderr], run_command,
['$MAKE -s --no-print-directory linker_error3'])
def grep_stderr(pattern):
diff --git a/testsuite/tests/safeHaskell/check/pkg01/all.T b/testsuite/tests/safeHaskell/check/pkg01/all.T
index cd89b88ce2..8574694fc3 100644
--- a/testsuite/tests/safeHaskell/check/pkg01/all.T
+++ b/testsuite/tests/safeHaskell/check/pkg01/all.T
@@ -27,7 +27,8 @@ make_args = 'VANILLA=' + vanilla + ' PROF=' + prof + ' DYN=' + dyn
# Test building a package, that trust values are set correctly
# and can be changed correctly
test('safePkg01',
- [normalise_errmsg_fun(ignoreLdOutput),
+ [extra_files(['M_SafePkg.hs', 'M_SafePkg2.hs', 'M_SafePkg3.hs', 'M_SafePkg4.hs', 'M_SafePkg5.hs', 'M_SafePkg6.hs', 'M_SafePkg7.hs', 'M_SafePkg8.hs', 'Setup.hs', 'p.cabal']),
+ normalise_errmsg_fun(ignoreLdOutput),
normalise_version("array", "integer-gmp", "integer-simple", "bytestring",
"base", "deepseq", "ghc-prim")],
run_command, ['$MAKE -s --no-print-directory safePkg01 ' + make_args])
@@ -50,55 +51,65 @@ test('ImpSafe03',
test('ImpSafe04', normal, compile_fail, ['-fpackage-trust -distrust base'])
test('ImpSafeOnly01',
- [pre_cmd('$MAKE -s --no-print-directory mkPackageDatabase.ImpSafeOnly01 ' + make_args)],
+ [extra_files(['M_SafePkg.hs', 'M_SafePkg2.hs', 'M_SafePkg3.hs', 'M_SafePkg4.hs', 'M_SafePkg5.hs', 'M_SafePkg6.hs', 'M_SafePkg7.hs', 'M_SafePkg8.hs', 'Setup.hs', 'p.cabal']),
+ pre_cmd('$MAKE -s --no-print-directory mkPackageDatabase.ImpSafeOnly01 ' + make_args)],
compile,
['-fpackage-trust -package-db pdb.ImpSafeOnly01/local.db -trust base'])
test('ImpSafeOnly02',
- [pre_cmd('$MAKE -s --no-print-directory mkPackageDatabase.ImpSafeOnly02 ' + make_args)],
+ [extra_files(['M_SafePkg.hs', 'M_SafePkg2.hs', 'M_SafePkg3.hs', 'M_SafePkg4.hs', 'M_SafePkg5.hs', 'M_SafePkg6.hs', 'M_SafePkg7.hs', 'M_SafePkg8.hs', 'Setup.hs', 'p.cabal']),
+ pre_cmd('$MAKE -s --no-print-directory mkPackageDatabase.ImpSafeOnly02 ' + make_args)],
compile,
['-fpackage-trust -package-db pdb.ImpSafeOnly02/local.db -trust base -trust safePkg01'])
# Fail since we enable package trust (and still need safePkg01 trusted)
test('ImpSafeOnly03',
- [pre_cmd('$MAKE -s --no-print-directory mkPackageDatabase.ImpSafeOnly03 ' + make_args)],
+ [extra_files(['M_SafePkg.hs', 'M_SafePkg2.hs', 'M_SafePkg3.hs', 'M_SafePkg4.hs', 'M_SafePkg5.hs', 'M_SafePkg6.hs', 'M_SafePkg7.hs', 'M_SafePkg8.hs', 'Setup.hs', 'p.cabal']),
+ pre_cmd('$MAKE -s --no-print-directory mkPackageDatabase.ImpSafeOnly03 ' + make_args)],
compile_fail,
['-fpackage-trust -package-db pdb.ImpSafeOnly03/local.db -trust base'])
# Succeed since we don't enable package trust
test('ImpSafeOnly04',
- [pre_cmd('$MAKE -s --no-print-directory mkPackageDatabase.ImpSafeOnly04 ' + make_args)],
+ [extra_files(['M_SafePkg.hs', 'M_SafePkg2.hs', 'M_SafePkg3.hs', 'M_SafePkg4.hs', 'M_SafePkg5.hs', 'M_SafePkg6.hs', 'M_SafePkg7.hs', 'M_SafePkg8.hs', 'Setup.hs', 'p.cabal']),
+ pre_cmd('$MAKE -s --no-print-directory mkPackageDatabase.ImpSafeOnly04 ' + make_args)],
compile, ['-package-db pdb.ImpSafeOnly04/local.db -trust base'])
# fail due to missing trust of safePkg01, next test succeeds.
test('ImpSafeOnly05',
- [pre_cmd('$MAKE -s --no-print-directory mkPackageDatabase.ImpSafeOnly05 ' + make_args)],
+ [extra_files(['M_SafePkg.hs', 'M_SafePkg2.hs', 'M_SafePkg3.hs', 'M_SafePkg4.hs', 'M_SafePkg5.hs', 'M_SafePkg6.hs', 'M_SafePkg7.hs', 'M_SafePkg8.hs', 'Setup.hs', 'p.cabal']),
+ pre_cmd('$MAKE -s --no-print-directory mkPackageDatabase.ImpSafeOnly05 ' + make_args)],
compile_fail,
['-fpackage-trust -package-db pdb.ImpSafeOnly05/local.db -trust base'])
test('ImpSafeOnly06',
- [pre_cmd('$MAKE -s --no-print-directory mkPackageDatabase.ImpSafeOnly06 ' + make_args)],
+ [extra_files(['M_SafePkg.hs', 'M_SafePkg2.hs', 'M_SafePkg3.hs', 'M_SafePkg4.hs', 'M_SafePkg5.hs', 'M_SafePkg6.hs', 'M_SafePkg7.hs', 'M_SafePkg8.hs', 'Setup.hs', 'p.cabal']),
+ pre_cmd('$MAKE -s --no-print-directory mkPackageDatabase.ImpSafeOnly06 ' + make_args)],
compile,
['-fpackage-trust -package-db pdb.ImpSafeOnly06/local.db -trust base -trust safePkg01'])
# fail due to missing trust
test('ImpSafeOnly07',
- [pre_cmd('$MAKE -s --no-print-directory mkPackageDatabase.ImpSafeOnly07 ' + make_args),
+ [extra_files(['M_SafePkg.hs', 'M_SafePkg2.hs', 'M_SafePkg3.hs', 'M_SafePkg4.hs', 'M_SafePkg5.hs', 'M_SafePkg6.hs', 'M_SafePkg7.hs', 'M_SafePkg8.hs', 'Setup.hs', 'p.cabal']),
+ pre_cmd('$MAKE -s --no-print-directory mkPackageDatabase.ImpSafeOnly07 ' + make_args),
normalise_version("bytestring", "base")],
compile_fail,
['-fpackage-trust -package-db pdb.ImpSafeOnly07/local.db -trust safePkg01 -distrust bytestring'])
test('ImpSafeOnly08',
- [pre_cmd('$MAKE -s --no-print-directory mkPackageDatabase.ImpSafeOnly08 ' + make_args),
+ [extra_files(['M_SafePkg.hs', 'M_SafePkg2.hs', 'M_SafePkg3.hs', 'M_SafePkg4.hs', 'M_SafePkg5.hs', 'M_SafePkg6.hs', 'M_SafePkg7.hs', 'M_SafePkg8.hs', 'Setup.hs', 'p.cabal']),
+ pre_cmd('$MAKE -s --no-print-directory mkPackageDatabase.ImpSafeOnly08 ' + make_args),
normalise_version("bytestring", "base")],
compile_fail,
['-fpackage-trust -package-db pdb.ImpSafeOnly08/local.db -trust safePkg01'])
test('ImpSafeOnly09',
- [pre_cmd('$MAKE -s --no-print-directory mkPackageDatabase.ImpSafeOnly09 ' + make_args),
+ [extra_files(['M_SafePkg.hs', 'M_SafePkg2.hs', 'M_SafePkg3.hs', 'M_SafePkg4.hs', 'M_SafePkg5.hs', 'M_SafePkg6.hs', 'M_SafePkg7.hs', 'M_SafePkg8.hs', 'Setup.hs', 'p.cabal']),
+ pre_cmd('$MAKE -s --no-print-directory mkPackageDatabase.ImpSafeOnly09 ' + make_args),
normalise_version("bytestring")],
compile_fail,
['-fpackage-trust -package-db pdb.ImpSafeOnly09/local.db -trust safePkg01'])
# finally succeed
test('ImpSafeOnly10',
- [pre_cmd('$MAKE -s --no-print-directory mkPackageDatabase.ImpSafeOnly10 ' + make_args)],
+ [extra_files(['M_SafePkg.hs', 'M_SafePkg2.hs', 'M_SafePkg3.hs', 'M_SafePkg4.hs', 'M_SafePkg5.hs', 'M_SafePkg6.hs', 'M_SafePkg7.hs', 'M_SafePkg8.hs', 'Setup.hs', 'p.cabal']),
+ pre_cmd('$MAKE -s --no-print-directory mkPackageDatabase.ImpSafeOnly10 ' + make_args)],
compile,
['-fpackage-trust -package-db pdb.ImpSafeOnly10/local.db -trust safePkg01 -trust base -trust bytestring'])
diff --git a/testsuite/tests/safeHaskell/ghci/all.T b/testsuite/tests/safeHaskell/ghci/all.T
index 980f1b5fc3..787cb7e6b7 100644
--- a/testsuite/tests/safeHaskell/ghci/all.T
+++ b/testsuite/tests/safeHaskell/ghci/all.T
@@ -6,13 +6,13 @@ test('p3', normalise_version("bytestring"), ghci_script, ['p3.script'])
test('p4', normal, ghci_script, ['p4.script'])
test('p5', normal, ghci_script, ['p5.script'])
test('p6', normal, ghci_script, ['p6.script'])
-test('p7', normal, ghci_script, ['p7.script'])
-test('p8', normal, ghci_script, ['p8.script'])
-test('p9', normal, ghci_script, ['p9.script'])
-test('p10', normal, ghci_script, ['p10.script'])
-test('p11', normal, ghci_script, ['p11.script'])
+test('p7', extra_files(['A.hs']), ghci_script, ['p7.script'])
+test('p8', extra_files(['B.hs']), ghci_script, ['p8.script'])
+test('p9', extra_files(['C.hs']), ghci_script, ['p9.script'])
+test('p10', extra_files(['D.hs']), ghci_script, ['p10.script'])
+test('p11', extra_files(['E.hs']), ghci_script, ['p11.script'])
test('p12', normalise_version("bytestring"), ghci_script, ['p12.script'])
-test('p13', normal, ghci_script, ['p13.script'])
+test('p13', extra_files(['P13_A.hs']), ghci_script, ['p13.script'])
test('p14', normal, ghci_script, ['p14.script'])
test('p16', normal, ghci_script, ['p16.script'])
test('p17', normalise_version("bytestring"), ghci_script, ['p17.script'])
diff --git a/testsuite/tests/simplCore/T9646/test.T b/testsuite/tests/simplCore/T9646/test.T
index 81562ec086..ced321d43e 100644
--- a/testsuite/tests/simplCore/T9646/test.T
+++ b/testsuite/tests/simplCore/T9646/test.T
@@ -1,3 +1,4 @@
-test('T9646', [when(fast(), skip), expect_broken_for(9646, ['ghci'])],
+test('T9646', [extra_files(['Main.hs', 'Natural.hs', 'StrictPrim.hs', 'Type.hs']),
+ when(fast(), skip), expect_broken_for(9646, ['ghci'])],
multimod_compile_and_run, ['Main -ddump-simpl -ddump-to-file', ''])
diff --git a/testsuite/tests/simplCore/prog001/test.T b/testsuite/tests/simplCore/prog001/test.T
index 21e66b25f5..b3d219e246 100644
--- a/testsuite/tests/simplCore/prog001/test.T
+++ b/testsuite/tests/simplCore/prog001/test.T
@@ -1 +1 @@
-test('simplCore.prog001', [], multimod_compile, ['simpl006', '-v0'])
+test('simplCore.prog001', [extra_files(['Simpl006Help.hs', 'simpl006.hs'])], multimod_compile, ['simpl006', '-v0'])
diff --git a/testsuite/tests/simplCore/prog002/test.T b/testsuite/tests/simplCore/prog002/test.T
index 7fdd83cc1f..04e94690aa 100644
--- a/testsuite/tests/simplCore/prog002/test.T
+++ b/testsuite/tests/simplCore/prog002/test.T
@@ -1 +1 @@
-test('simplCore.prog002', [], multimod_compile, ['simpl009', '-v0'])
+test('simplCore.prog002', [extra_files(['Simpl009Help.hs', 'simpl009.hs'])], multimod_compile, ['simpl009', '-v0'])
diff --git a/testsuite/tests/simplCore/prog003/test.T b/testsuite/tests/simplCore/prog003/test.T
index c2d9ec5615..d5c81e9960 100644
--- a/testsuite/tests/simplCore/prog003/test.T
+++ b/testsuite/tests/simplCore/prog003/test.T
@@ -1,2 +1,3 @@
-test('simplCore.oneShot', [only_ways(['optasm'])], multimod_compile_and_run,
+test('simplCore.oneShot', [extra_files(['OneShot1.hs', 'OneShot2.hs']),
+ only_ways(['optasm'])], multimod_compile_and_run,
['OneShot2', '-v0'])
diff --git a/testsuite/tests/simplCore/should_compile/all.T b/testsuite/tests/simplCore/should_compile/all.T
index 5227c1139d..3fbd4a8759 100644
--- a/testsuite/tests/simplCore/should_compile/all.T
+++ b/testsuite/tests/simplCore/should_compile/all.T
@@ -19,7 +19,7 @@ test('simpl016', normal, compile, ['-dsuppress-uniques'])
test('simpl017', normal, compile_fail, [''])
test('simpl018', normal, compile, [''])
test('simpl019', normal, compile, [''])
-test('simpl020', [], multimod_compile, ['simpl020', '-v0'])
+test('simpl020', [extra_files(['Simpl020_A.hs'])], multimod_compile, ['simpl020', '-v0'])
test('simpl-T1370', normal, compile, [''])
test('T2520', normal, compile, [''])
@@ -118,7 +118,7 @@ test('T5342', normal, compile, ['']) # Lint error with -prof
test('T5359a', normal, compile, ['']) # Lint error with -O (OccurAnal)
test('T5359b', normal, compile, ['']) # Lint error with -O (OccurAnal)
test('T5458', normal, compile, [''])
-test('simpl021', [], run_command, ['$MAKE -s --no-print-directory simpl021'])
+test('simpl021', [extra_files(['Simpl021A.hs', 'Simpl021B.hs'])], run_command, ['$MAKE -s --no-print-directory simpl021'])
test('T5327', normal, run_command, ['$MAKE -s --no-print-directory T5327'])
test('T5615', normal, run_command, ['$MAKE -s --no-print-directory T5615'])
test('T5623', normal, run_command, ['$MAKE -s --no-print-directory T5623'])
@@ -146,7 +146,8 @@ test('T5550', omit_ways(prof_ways), compile, [''])
test('T7865', normal, run_command, ['$MAKE -s --no-print-directory T7865'])
test('T7785', only_ways(['optasm']), compile, ['-ddump-rules'])
test('T7702',
- [pre_cmd('$MAKE -s --no-print-directory -C T7702plugin package.T7702 TOP={top}'),
+ [extra_files(['T7702plugin']),
+ pre_cmd('$MAKE -s --no-print-directory -C T7702plugin package.T7702 TOP={top}'),
clean_cmd('$MAKE -s --no-print-directory -C T7702plugin clean.T7702'),
# we say 18mb peak allocated +/- 70% because other compiler flags have
# a large effect on allocation which is hard to separate from the
diff --git a/testsuite/tests/stranal/should_run/T8425/all.T b/testsuite/tests/stranal/should_run/T8425/all.T
index 03f2c44201..ca09a9cd6a 100644
--- a/testsuite/tests/stranal/should_run/T8425/all.T
+++ b/testsuite/tests/stranal/should_run/T8425/all.T
@@ -1,5 +1,5 @@
# Optimised only, we're testing the strictness analyser here
setTestOpts( only_ways(['optasm']) )
-test('T8425', normal, multimod_compile_and_run, ['Main','-O2'])
+test('T8425', extra_files(['Arr.hs', 'Base.hs', 'BuggyOpt.hs', 'Good.hs', 'M.hs', 'Main.hs']), multimod_compile_and_run, ['Main','-O2'])
diff --git a/testsuite/tests/th/T2014/all.T b/testsuite/tests/th/T2014/all.T
index 7b190afaba..eba0f6f903 100644
--- a/testsuite/tests/th/T2014/all.T
+++ b/testsuite/tests/th/T2014/all.T
@@ -1,2 +1,3 @@
-test('T2014', [req_interp], run_command,
+test('T2014', [extra_files(['A.hs', 'A.hs-boot', 'B.hs', 'C.hs']),
+ req_interp], run_command,
['$MAKE -s --no-print-directory T2014'])
diff --git a/testsuite/tests/th/TH_import_loop/TH_import_loop.T b/testsuite/tests/th/TH_import_loop/TH_import_loop.T
index d6f52b75cc..876447de59 100644
--- a/testsuite/tests/th/TH_import_loop/TH_import_loop.T
+++ b/testsuite/tests/th/TH_import_loop/TH_import_loop.T
@@ -1,3 +1,4 @@
-test('TH_import_loop', [expect_broken(1012)], multimod_compile_and_run,
+test('TH_import_loop', [extra_files(['Main.hs', 'ModuleA.hs', 'ModuleA.hs-boot', 'ModuleB.hs', 'ModuleC.hs']),
+ expect_broken(1012)], multimod_compile_and_run,
['Main', '-v0'])
diff --git a/testsuite/tests/th/TH_linker/all.T b/testsuite/tests/th/TH_linker/all.T
index 9d3f1e3557..a0e6d565f0 100644
--- a/testsuite/tests/th/TH_linker/all.T
+++ b/testsuite/tests/th/TH_linker/all.T
@@ -1,5 +1,6 @@
test('path_with_commas',
- [ignore_stderr,
+ [extra_files(['test.pkg', 'Main.hs', 'Dummy.hs']),
+ ignore_stderr,
unless(have_dynamic(),skip)],
run_command,
['$MAKE -s --no-print-directory path_with_commas'])
diff --git a/testsuite/tests/typecheck/bug1465/all.T b/testsuite/tests/typecheck/bug1465/all.T
index 695deac4fe..2c23966c04 100644
--- a/testsuite/tests/typecheck/bug1465/all.T
+++ b/testsuite/tests/typecheck/bug1465/all.T
@@ -1 +1 @@
-test('bug1465', [], run_command, ['$MAKE -s --no-print-directory bug1465'])
+test('bug1465', [extra_files(['B1.hs', 'B2.hs', 'C.hs', 'v1/', 'v2/'])], run_command, ['$MAKE -s --no-print-directory bug1465'])
diff --git a/testsuite/tests/typecheck/prog001/test.T b/testsuite/tests/typecheck/prog001/test.T
index e3bb5eb622..8ccdea18f8 100644
--- a/testsuite/tests/typecheck/prog001/test.T
+++ b/testsuite/tests/typecheck/prog001/test.T
@@ -1,2 +1,3 @@
-test('typecheck.prog001', [when(fast(), skip)], multimod_compile, ['C', '-v0'])
+test('typecheck.prog001', [extra_files(['A.hs', 'B.hs', 'C.hs']),
+ when(fast(), skip)], multimod_compile, ['C', '-v0'])
diff --git a/testsuite/tests/typecheck/prog002/test.T b/testsuite/tests/typecheck/prog002/test.T
index 4e26a14251..1b1f24922a 100644
--- a/testsuite/tests/typecheck/prog002/test.T
+++ b/testsuite/tests/typecheck/prog002/test.T
@@ -1 +1,2 @@
-test('typecheck.prog002', [when(fast(), skip)], multimod_compile, ['B', '-v0'])
+test('typecheck.prog002', [extra_files(['A.hs', 'B.hs']),
+ when(fast(), skip)], multimod_compile, ['B', '-v0'])
diff --git a/testsuite/tests/typecheck/should_compile/all.T b/testsuite/tests/typecheck/should_compile/all.T
index 8a5610d848..e9aacd8678 100644
--- a/testsuite/tests/typecheck/should_compile/all.T
+++ b/testsuite/tests/typecheck/should_compile/all.T
@@ -171,13 +171,13 @@ test('tc167', normal, compile, [''])
test('tc168', normal, compile_fail, [''])
test('tc169', normal, compile, [''])
-test('tc170', [], run_command, ['$MAKE -s --no-print-directory tc170'])
+test('tc170', [extra_files(['Tc170_Aux.hs'])], run_command, ['$MAKE -s --no-print-directory tc170'])
test('tc171', normal, compile, [''])
test('tc172', normal, compile, [''])
# The point about this test is that it compiles Tc173a and Tc173b *separately*
-test('tc173', [], run_command, ['$MAKE -s --no-print-directory tc173'])
+test('tc173', [extra_files(['Tc173a.hs', 'Tc173b.hs'])], run_command, ['$MAKE -s --no-print-directory tc173'])
test('tc174', normal, compile, [''])
test('tc175', normal, compile, [''])
@@ -248,14 +248,14 @@ test('tc236', normal, compile, [''])
test('tc237', normal, compile, [''])
test('tc238', normal, compile, [''])
-test('tc239', [], multimod_compile, ['tc239', '-v0'])
+test('tc239', [extra_files(['Tc239_Help.hs'])], multimod_compile, ['tc239', '-v0'])
test('tc240', normal, compile, [''])
test('tc241', normal, compile, [''])
test('tc242', normal, compile, [''])
test('tc243', normal, compile, [''])
test('tc244', normal, compile, [''])
-test('tc245', [], run_command, ['$MAKE -s --no-print-directory tc245'])
+test('tc245', [extra_files(['Tc245_A.hs'])], run_command, ['$MAKE -s --no-print-directory tc245'])
test('tc246', normal, compile, [''])
test('tc247', normal, compile, [''])
test('tc248', normal, compile, [''])
@@ -324,7 +324,7 @@ test('T5120', normal, compile, [''])
test('mc18', normal, compile, [''])
test('tc249', normal, compile, [''])
test('tc250', normal, compile, [''])
-test('tc251', [], multi_compile, ['tc251', [('Tc251_Help.hs', '')], '-v0'])
+test('tc251', [extra_files(['Tc251_Help.hs'])], multi_compile, ['tc251', [('Tc251_Help.hs', '')], '-v0'])
test('tc252', normal, compile, [''])
test('tc253', normal, compile, [''])
test('tc254', normal, compile, [''])
@@ -336,10 +336,10 @@ test('tc259', normal, compile, [''])
test('tc260', normal, compile, [''])
test('tc261', normal, compile, [''])
test('tc262', normal, compile, [''])
-test('tc263', [], multimod_compile, ['tc263', '-v0'])
+test('tc263', [extra_files(['Tc263_Help.hs'])], multimod_compile, ['tc263', '-v0'])
test('tc265', compile_timeout_multiplier(0.01), compile, [''])
-test('tc266', [], run_command, ['$MAKE -s --no-print-directory tc266'])
-test('Tc267', [], run_command, ['$MAKE -s --no-print-directory Tc267'])
+test('tc266', [extra_files(['Tc266.hs', 'Tc266a.hs', 'Tc266.hs-boot'])], run_command, ['$MAKE -s --no-print-directory tc266'])
+test('Tc267', [extra_files(['Tc267a.hs', 'Tc267b.hs', 'Tc267a.hs-boot', 'Tc267b.hs-boot'])], run_command, ['$MAKE -s --no-print-directory Tc267'])
test('tc268', normal, compile, [''])
test('tc269', normal, compile, [''])
test('tc270', normal, compile, [''])
@@ -470,7 +470,7 @@ test('T10770a', expect_broken(10770), compile, [''])
test('T10770b', expect_broken(10770), compile, [''])
test('T10935', normal, compile, [''])
test('T10971a', normal, compile, [''])
-test('T11062', [], multimod_compile, ['T11062', '-v0'])
+test('T11062', [extra_files(['T11062.hs', 'T11062.hs-boot', 'T11062a.hs'])], multimod_compile, ['T11062', '-v0'])
test('T11237', normal, compile, [''])
test('T10592', normal, compile, [''])
test('T11305', normal, compile, [''])
diff --git a/testsuite/tests/typecheck/should_fail/all.T b/testsuite/tests/typecheck/should_fail/all.T
index a9c5f80dfc..86334bac76 100644
--- a/testsuite/tests/typecheck/should_fail/all.T
+++ b/testsuite/tests/typecheck/should_fail/all.T
@@ -168,7 +168,7 @@ test('tcfail182', normal, compile_fail, [''])
test('tcfail183', normal, compile_fail, [''])
test('tcfail184', normal, compile_fail, [''])
test('tcfail185', normal, compile_fail, [''])
-test('tcfail186', [], multimod_compile_fail, ['tcfail186', '-v0'])
+test('tcfail186', [extra_files(['Tcfail186_Help.hs'])], multimod_compile_fail, ['tcfail186', '-v0'])
test('tcfail187', normal, compile_fail, [''])
test('tcfail188', normal, compile, [''])
@@ -271,7 +271,7 @@ test('T5957', normal, compile_fail, [''])
test('T6001', normal, compile_fail, [''])
test('T6022', normal, compile_fail, [''])
test('T5853', normal, compile_fail, [''])
-test('T6018fail', [], multimod_compile_fail, ['T6018fail', '-no-hs-main -c'])
+test('T6018fail', [extra_files(['T6018Afail.hs', 'T6018Bfail.hs', 'T6018Cfail.hs', 'T6018Dfail.hs'])], multimod_compile_fail, ['T6018fail', '-no-hs-main -c'])
test('T6018failclosed', normal, compile_fail, [''])
test('T6018failclosed2', normal, compile_fail, [''])
test('T6078', normal, compile_fail, [''])
@@ -376,7 +376,7 @@ test('T10836', normal, compile_fail, [''])
test('T10715', normal, compile, [''])
test('T10715b', normal, compile_fail, [''])
test('T10971b', normal, compile_fail, [''])
-test('T10971d', [], multimod_compile_fail, ['T10971d', '-v0'])
+test('T10971d', [extra_files(['T10971c.hs'])], multimod_compile_fail, ['T10971d', '-v0'])
test('CustomTypeErrors01', normal, compile_fail, [''])
test('CustomTypeErrors02', normal, compile_fail, [''])
test('CustomTypeErrors03', normal, compile_fail, [''])
@@ -401,7 +401,8 @@ test('T11948', normal, compile_fail, [''])
test('T11990a', normal, compile_fail, [''])
test('T11990b', normal, compile_fail, [''])
test('T12035', [], multimod_compile_fail, ['T12035', '-v0'])
-test('T12035j', [req_smp], multimod_compile_fail, ['T12035', '-j2 -v0'])
+test('T12035j', [extra_files(['T12035.hs', 'T12035a.hs', 'T12035.hs-boot']),
+ req_smp], multimod_compile_fail, ['T12035', '-j2 -v0'])
test('T12063', [expect_broken(12063)], multimod_compile_fail, ['T12063', '-v0'])
test('T11974b', normal, compile_fail, [''])
test('T12151', normal, compile_fail, [''])
@@ -415,7 +416,7 @@ test('T12529', normal, compile_fail, [''])
test('T12729', normal, compile_fail, [''])
test('T12785b', normal, compile_fail, [''])
test('T12803', normal, compile_fail, [''])
-test('T12042', [], multimod_compile_fail, ['T12042', ''])
+test('T12042', [extra_files(['T12042.hs', 'T12042a.hs', 'T12042.hs-boot'])], multimod_compile_fail, ['T12042', ''])
test('T12966', normal, compile_fail, [''])
test('T12837', normal, compile_fail, [''])
test('T12918a', normal, compile_fail, [''])
diff --git a/testsuite/tests/typecheck/should_run/all.T b/testsuite/tests/typecheck/should_run/all.T
index c44a23e1ff..61db61e3d0 100755
--- a/testsuite/tests/typecheck/should_run/all.T
+++ b/testsuite/tests/typecheck/should_run/all.T
@@ -39,7 +39,7 @@ test('tcrun022', omit_ways(['ghci']), compile_and_run, ['-O'])
test('tcrun023', [when(doing_ghci(), extra_hc_opts('-fobject-code'))],
compile_and_run, ['-O'])
test('tcrun024', normal, compile_and_run, ['-O'])
-test('tcrun025', [], multimod_compile_and_run, ['tcrun025', ''])
+test('tcrun025', [extra_files(['TcRun025_B.hs'])], multimod_compile_and_run, ['tcrun025', ''])
test('tcrun026', normal, compile_and_run, [''])
test('tcrun027', normal, compile_and_run, [''])
test('tcrun028', normal, compile_and_run, [''])
@@ -53,7 +53,7 @@ test('tcrun035', normal, compile_and_run, [''])
test('tcrun036', normal, compile_and_run, [''])
test('tcrun037', normal, compile_and_run, [''])
-test('tcrun038', [], multimod_compile_and_run, ['tcrun038', ''])
+test('tcrun038', [extra_files(['TcRun038_B.hs'])], multimod_compile_and_run, ['tcrun038', ''])
test('tcrun039', normal, compile_and_run, [''])
test('tcrun040', normal, compile_and_run, [''])
diff --git a/testsuite/tests/typecheck/testeq1/test.T b/testsuite/tests/typecheck/testeq1/test.T
index 6d9f66d6c0..bd235315ac 100644
--- a/testsuite/tests/typecheck/testeq1/test.T
+++ b/testsuite/tests/typecheck/testeq1/test.T
@@ -1,3 +1,4 @@
-test('typecheck.testeq1', [when(fast(), skip)], multimod_compile_and_run,
+test('typecheck.testeq1', [extra_files(['FakePrelude.hs', 'Main.hs', 'TypeCast.hs', 'TypeEq.hs']),
+ when(fast(), skip)], multimod_compile_and_run,
['Main', '-v0'])
diff --git a/testsuite/tests/warnings/should_compile/T10637/all.T b/testsuite/tests/warnings/should_compile/T10637/all.T
index 903efdbd0e..f0c1c6ec8a 100644
--- a/testsuite/tests/warnings/should_compile/T10637/all.T
+++ b/testsuite/tests/warnings/should_compile/T10637/all.T
@@ -1 +1 @@
-test('T10637', [], multimod_compile, ['T10637', '-v0 -fwarn-unused-imports'])
+test('T10637', [extra_files(['A.hs', 'A.hs-boot'])], multimod_compile, ['T10637', '-v0 -fwarn-unused-imports'])
diff --git a/testsuite/tests/warnings/should_compile/T10890/all.T b/testsuite/tests/warnings/should_compile/T10890/all.T
index 29055256a1..0bb3758624 100644
--- a/testsuite/tests/warnings/should_compile/T10890/all.T
+++ b/testsuite/tests/warnings/should_compile/T10890/all.T
@@ -1,6 +1,6 @@
-test('T10890', [], multimod_compile, ['T10890', '-v0 -fwarn-unused-imports'])
+test('T10890', [extra_files(['A.hs', 'B.hs'])], multimod_compile, ['T10890', '-v0 -fwarn-unused-imports'])
-test('T10890_1', [], multimod_compile,
+test('T10890_1', [extra_files(['Base.hs', 'Extends.hs'])], multimod_compile,
['T10890_1', '-v0 -fwarn-unused-imports'])
test('T10890_2', [], multimod_compile,
diff --git a/testsuite/tests/warnings/should_compile/all.T b/testsuite/tests/warnings/should_compile/all.T
index aa03b4228c..6740990853 100644
--- a/testsuite/tests/warnings/should_compile/all.T
+++ b/testsuite/tests/warnings/should_compile/all.T
@@ -14,7 +14,7 @@ test('PluralS', normal, compile, [''])
# T12574 Test that suggest current flag over deprecated
test('T12574',normal, compile, ['-fwarn-missing-local-signatures'])
-test('DeprU', [], multimod_compile, ['DeprU', '-Wall'])
+test('DeprU', [extra_files(['DeprM.hs'])], multimod_compile, ['DeprU', '-Wall'])
test('Werror01', normal, compile, [''])
test('Werror02', normal, compile, [''])