aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJussi Pakkanen <jpakkane@gmail.com>2015-05-17 15:23:33 +0300
committerJussi Pakkanen <jpakkane@gmail.com>2015-05-17 15:23:33 +0300
commitcf0bd77ddd2cd952f17e3485ea1d9e6fc159adb1 (patch)
treefe71b0ec3339397e9befba3d808774671d757fc2
parentd83de3ee56beb0df45086275b35d55f423071581 (diff)
downloadmeson-cf0bd77ddd2cd952f17e3485ea1d9e6fc159adb1.zip
meson-cf0bd77ddd2cd952f17e3485ea1d9e6fc159adb1.tar.gz
meson-cf0bd77ddd2cd952f17e3485ea1d9e6fc159adb1.tar.bz2
Do not invoke linker via cmd /c on Windows.
-rwxr-xr-xmeson_test.py2
-rw-r--r--mlog.py5
-rw-r--r--ninjabackend.py5
-rwxr-xr-xrun_tests.py2
4 files changed, 11 insertions, 3 deletions
diff --git a/meson_test.py b/meson_test.py
index 71a577e..47f3b8b 100755
--- a/meson_test.py
+++ b/meson_test.py
@@ -169,6 +169,8 @@ def run_tests(options, datafilename):
print('\nFull log written to %s.' % logfilename)
def run(args):
+ global tests_failed
+ tests_failed = False
options = parser.parse_args(args)
if len(options.args) != 1:
print('Test runner for Meson. Do not run on your own, mmm\'kay?')
diff --git a/mlog.py b/mlog.py
index 4685c51..2807c2b 100644
--- a/mlog.py
+++ b/mlog.py
@@ -27,6 +27,11 @@ def initialize(logdir):
log_dir = logdir
log_file = open(os.path.join(logdir, 'meson-log.txt'), 'w')
+def shutdown():
+ global log_file
+ if log_file is not None:
+ log_file.close()
+
class AnsiDecorator():
plain_code = "\033[0m"
diff --git a/ninjabackend.py b/ninjabackend.py
index 33ed6d9..f3e8587 100644
--- a/ninjabackend.py
+++ b/ninjabackend.py
@@ -777,9 +777,8 @@ class NinjaBackend(backends.Backend):
if is_cross:
crstr = '_CROSS'
rule = 'rule %s%s_LINKER\n' % (langname, crstr)
- command = ' command = %s %s $ARGS %s $in $LINK_ARGS $aliasing\n' % \
- (execute_wrapper,
- ' '.join(compiler.get_linker_exelist()),\
+ command = ' command = %s $ARGS %s $in $LINK_ARGS $aliasing\n' % \
+ (' '.join(compiler.get_linker_exelist()),\
' '.join(compiler.get_linker_output_args('$out')))
description = ' description = Linking target $out'
outfile.write(rule)
diff --git a/run_tests.py b/run_tests.py
index d830fe1..3d85894 100755
--- a/run_tests.py
+++ b/run_tests.py
@@ -20,6 +20,7 @@ from io import StringIO
import sys
import environment
import mesonlib
+import mlog
import meson, meson_test
import argparse
import xml.etree.ElementTree as ET
@@ -173,6 +174,7 @@ def run_test_inprocess(testdir):
def run_test(testdir, should_succeed):
global compile_commands
+ mlog.shutdown() # Close the log file because otherwise Windows wets itself.
shutil.rmtree(test_build_dir)
shutil.rmtree(install_dir)
os.mkdir(test_build_dir)