Hello GHC developers,
the testsuite driver now runs each test in a temporary directory in /tmp, after first linking/copying all files that the test requires to that directory.
When adding a new test:
* if your test requires source files that don't start with the name of your test, then you *have to* specify those files using the `extra_files` setup function. [1]
* you no longer have to specify files to cleanup (`clean_files` and `clean_cmd` are deprecated)
* you no longer have to add generated files to `testsuite/.gitignore`
* you no longer have to worry about two tests possibly overwriting each others intermediate (.o, .hi) files, and you no longer have to specify `-outputdir` if you want to let multiple tests use the same source files.
Example:
BEFORE:
test('driver011',
extra_clean(['A011.hi', 'A011.o']),
run_command,
['$MAKE -s --no-print-directory test011'])
AFTER:
test('driver011',
extra_files(['A011.hs']),
run_command,
['$MAKE -s --no-print-directory test011'])
Cheers,
Thomas
[1] Extra files for existing tests are currently listed in `testsuite/driver/extra_files.py`.