From 9869c2f71744821d77fca2d0596cd9f27f84c5d2 Mon Sep 17 00:00:00 2001 From: NAKAMURA Takumi Date: Sat, 5 Mar 2011 09:46:53 +0000 Subject: [PATCH] utils/lit/lit/TestRunner.py: bash is available with MSYS on Python/W32. Then we can execute "bash tests". git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127074 91177308-0d34-0410-b5e6-96231b3b80d8 --- utils/lit/lit/TestRunner.py | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/utils/lit/lit/TestRunner.py b/utils/lit/lit/TestRunner.py index dba78143bee..80d0ba11839 100644 --- a/utils/lit/lit/TestRunner.py +++ b/utils/lit/lit/TestRunner.py @@ -337,23 +337,28 @@ def executeTclScriptInternal(test, litConfig, tmpBase, commands, cwd): return out, err, exitCode def executeScript(test, litConfig, tmpBase, commands, cwd): + bashPath = litConfig.getBashPath(); + isWin32CMDEXE = (litConfig.isWindows and not bashPath) script = tmpBase + '.script' - if litConfig.isWindows: + if isWin32CMDEXE: script += '.bat' # Write script file f = open(script,'w') - if litConfig.isWindows: + if isWin32CMDEXE: f.write('\nif %ERRORLEVEL% NEQ 0 EXIT\n'.join(commands)) else: f.write(' &&\n'.join(commands)) f.write('\n') f.close() - if litConfig.isWindows: + if isWin32CMDEXE: command = ['cmd','/c', script] else: - command = ['/bin/sh', script] + if bashPath: + command = [bashPath, script] + else: + command = ['/bin/sh', script] if litConfig.useValgrind: # FIXME: Running valgrind on sh is overkill. We probably could just # run on clang with no real loss. @@ -553,7 +558,7 @@ def executeShTest(test, litConfig, useExternalSh): if test.config.unsupported: return (Test.UNSUPPORTED, 'Test is unsupported') - res = parseIntegratedTestScript(test) + res = parseIntegratedTestScript(test, useExternalSh) if len(res) == 2: return res