[llvm] r268168 - [lit] Add %:[STpst] to represent paths without colons on Windows.
Rui Ueyama via llvm-commits
llvm-commits at lists.llvm.org
Sat Apr 30 14:32:12 PDT 2016
Author: ruiu
Date: Sat Apr 30 16:32:12 2016
New Revision: 268168
URL: http://llvm.org/viewvc/llvm-project?rev=268168&view=rev
Log:
[lit] Add %:[STpst] to represent paths without colons on Windows.
Summary:
We need these variables to concatenate two absolute paths to construct
a valid path. Currently, %t\%t is, for example, expanded to C:\foo\C:\foo,
which is not a valid path because ":" is not a valid path character
on Windows. With this patch, %t will be expanded to C\foo.
Differential Revision: http://reviews.llvm.org/D19757
Modified:
llvm/trunk/utils/lit/lit/TestRunner.py
Modified: llvm/trunk/utils/lit/lit/TestRunner.py
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/utils/lit/lit/TestRunner.py?rev=268168&r1=268167&r2=268168&view=diff
==============================================================================
--- llvm/trunk/utils/lit/lit/TestRunner.py (original)
+++ llvm/trunk/utils/lit/lit/TestRunner.py Sat Apr 30 16:32:12 2016
@@ -568,6 +568,24 @@ def getDefaultSubstitutions(test, tmpDir
('%/t', tmpBase.replace('\\', '/') + '.tmp'),
('%/T', tmpDir.replace('\\', '/')),
])
+
+ # "%:[STpst]" are paths without colons.
+ if kIsWindows:
+ substitutions.extend([
+ ('%:s', re.sub(r'^(.):', r'\1', sourcepath)),
+ ('%:S', re.sub(r'^(.):', r'\1', sourcedir)),
+ ('%:p', re.sub(r'^(.):', r'\1', sourcedir)),
+ ('%:t', re.sub(r'^(.):', r'\1', tmpBase) + '.tmp'),
+ ('%:T', re.sub(r'^(.):', r'\1', tmpDir)),
+ ])
+ else:
+ substitutions.extend([
+ ('%:s', sourcepath),
+ ('%:S', sourcedir),
+ ('%:p', sourcedir),
+ ('%:t', tmpBase + '.tmp'),
+ ('%:T', tmpDir),
+ ])
return substitutions
def applySubstitutions(script, substitutions):
More information about the llvm-commits
mailing list