aboutsummaryrefslogtreecommitdiff
path: root/run_project_tests.py
diff options
context:
space:
mode:
authorJussi Pakkanen <jpakkane@gmail.com>2017-07-21 20:06:46 +0300
committerGitHub <noreply@github.com>2017-07-21 20:06:46 +0300
commit979efce04a26287639615d32182dff97582bf6ee (patch)
tree1cadab7c687a7ed85858812116a5b04bc5a373db /run_project_tests.py
parent381e8313ed191ae8e440a9ba3805d5322c769ea7 (diff)
parent887e4d131857bf44eea1566adae9b79c610e3e86 (diff)
downloadmeson-979efce04a26287639615d32182dff97582bf6ee.zip
meson-979efce04a26287639615d32182dff97582bf6ee.tar.gz
meson-979efce04a26287639615d32182dff97582bf6ee.tar.bz2
Merge pull request #1955 from jon-turney/exe-implib
Support implibs for executables on Windows
Diffstat (limited to 'run_project_tests.py')
-rwxr-xr-xrun_project_tests.py16
1 files changed, 14 insertions, 2 deletions
diff --git a/run_project_tests.py b/run_project_tests.py
index 3420946..69a778e 100755
--- a/run_project_tests.py
+++ b/run_project_tests.py
@@ -183,7 +183,7 @@ def get_relative_files_list_from_dir(fromdir):
paths.append(path)
return paths
-def platform_fix_name(fname):
+def platform_fix_name(fname, compiler):
if '?lib' in fname:
if mesonlib.is_cygwin():
fname = re.sub(r'\?lib(.*)\.dll$', r'cyg\1.dll', fname)
@@ -195,6 +195,16 @@ def platform_fix_name(fname):
if mesonlib.is_windows() or mesonlib.is_cygwin():
return fname + '.exe'
+ if fname.startswith('?msvc:'):
+ fname = fname[6:]
+ if compiler != 'cl':
+ return None
+
+ if fname.startswith('?gcc:'):
+ fname = fname[5:]
+ if compiler == 'cl':
+ return None
+
return fname
def validate_install(srcdir, installdir, compiler):
@@ -210,7 +220,9 @@ def validate_install(srcdir, installdir, compiler):
elif os.path.exists(info_file):
with open(info_file) as f:
for line in f:
- expected[platform_fix_name(line.strip())] = False
+ line = platform_fix_name(line.strip(), compiler)
+ if line:
+ expected[line] = False
# Check if expected files were found
for fname in expected:
file_path = os.path.join(installdir, fname)