diff options
Diffstat (limited to 'mesonbuild/dependencies.py')
-rw-r--r-- | mesonbuild/dependencies.py | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/mesonbuild/dependencies.py b/mesonbuild/dependencies.py index b01e0a8..5ccc391 100644 --- a/mesonbuild/dependencies.py +++ b/mesonbuild/dependencies.py @@ -20,6 +20,7 @@ # package before this gets too big. import re +import sys import os, stat, glob, shutil import subprocess import sysconfig @@ -426,10 +427,15 @@ class ExternalProgram: if first_line.startswith('#!'): commands = first_line[2:].split('#')[0].strip().split() if mesonlib.is_windows(): - # Windows does not have /usr/bin. - commands[0] = commands[0].split('/')[-1] - if commands[0] == 'env': + # Windows does not have UNIX paths so remove them, + # but don't remove Windows paths + if commands[0].startswith('/'): + commands[0] = commands[0].split('/')[-1] + if len(commands) > 0 and commands[0] == 'env': commands = commands[1:] + # Windows does not ship python3.exe, but we know the path to it + if len(commands) > 0 and commands[0] == 'python3': + commands[0] = sys.executable return commands + [script] except Exception: pass |