diff options
author | Jussi Pakkanen <jpakkane@gmail.com> | 2013-03-22 22:48:28 +0200 |
---|---|---|
committer | Jussi Pakkanen <jpakkane@gmail.com> | 2013-03-22 22:48:28 +0200 |
commit | 91331283beb6fedfa5e75a051ae648b55abc94bf (patch) | |
tree | d7b4ee311edee103855e585536f3a66750e1f673 /backends.py | |
parent | 9da40d6e3d185c1ed8a5f871d1fc31de7d948eba (diff) | |
download | meson-91331283beb6fedfa5e75a051ae648b55abc94bf.zip meson-91331283beb6fedfa5e75a051ae648b55abc94bf.tar.gz meson-91331283beb6fedfa5e75a051ae648b55abc94bf.tar.bz2 |
Can run test suite under Valgrind.
Diffstat (limited to 'backends.py')
-rwxr-xr-x | backends.py | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/backends.py b/backends.py index 68dd142..f9bcbb6 100755 --- a/backends.py +++ b/backends.py @@ -395,14 +395,22 @@ class NinjaBackend(Backend): d.data.append(i) def generate_tests(self, outfile): + valgrind = environment.find_valgrind() script_root = self.environment.get_script_dir() test_script = os.path.join(script_root, 'meson_test.py') test_data = os.path.join(self.environment.get_scratch_dir(), 'meson_test_setup.dat') + cmd = [sys.executable, test_script, test_data] elem = NinjaBuildElement('test', 'CUSTOM_COMMAND', 'all') - elem.add_item('COMMAND', [sys.executable, test_script, test_data]) + elem.add_item('COMMAND', cmd) elem.add_item('DESC', 'Running test suite.') elem.write(outfile) - + + if valgrind: + velem = NinjaBuildElement('test-valgrind', 'CUSTOM_COMMAND', 'all') + velem.add_item('COMMAND', cmd + ['--wrapper=' + valgrind]) + velem.add_item('DESC', 'Running test suite under valgrind.') + velem.write(outfile) + datafile = open(test_data, 'w') for t in self.build.get_tests(): datafile.write(self.get_target_filename(t.get_exe()) + '\n') |