aboutsummaryrefslogtreecommitdiff
path: root/backends.py
diff options
context:
space:
mode:
authorJussi Pakkanen <jpakkane@gmail.com>2015-03-27 19:09:26 +0200
committerJussi Pakkanen <jpakkane@gmail.com>2015-03-27 19:09:26 +0200
commite46c1743ce2b0dbf722acac5412d95c64888b33b (patch)
treee8c9958fed66a38b89d08346bb9e11dbda3ef2f8 /backends.py
parent00e07e4b3a65d15a9e2ff34cfd0bbc43d96fd229 (diff)
downloadmeson-e46c1743ce2b0dbf722acac5412d95c64888b33b.zip
meson-e46c1743ce2b0dbf722acac5412d95c64888b33b.tar.gz
meson-e46c1743ce2b0dbf722acac5412d95c64888b33b.tar.bz2
Allow use of external test executables. Closes #89.
Diffstat (limited to 'backends.py')
-rw-r--r--backends.py7
1 files changed, 6 insertions, 1 deletions
diff --git a/backends.py b/backends.py
index cb59453..47df757 100644
--- a/backends.py
+++ b/backends.py
@@ -15,6 +15,7 @@
import mparser
import os, re, pickle
import build
+import dependencies
from coredata import MesonException
def do_replacement(regex, line, confdata):
@@ -309,7 +310,11 @@ class Backend():
def write_test_file(self, datafile):
arr = []
for t in self.build.get_tests():
- fname = os.path.join(self.environment.get_build_dir(), self.get_target_filename(t.get_exe()))
+ exe = t.get_exe()
+ if isinstance(exe, dependencies.ExternalProgram):
+ fname = exe.fullpath
+ else:
+ fname = [os.path.join(self.environment.get_build_dir(), self.get_target_filename(t.get_exe()))]
is_cross = self.environment.is_cross_build()
if is_cross:
exe_wrapper = self.environment.cross_info.get('exe_wrapper', None)