aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--mesonbuild/mesonlib.py9
-rw-r--r--mesonbuild/modules/python3.py2
2 files changed, 10 insertions, 1 deletions
diff --git a/mesonbuild/mesonlib.py b/mesonbuild/mesonlib.py
index f74c6c1..35aa036 100644
--- a/mesonbuild/mesonlib.py
+++ b/mesonbuild/mesonlib.py
@@ -22,6 +22,15 @@ import collections
from glob import glob
+if sys.executable.endswith('meson.exe'):
+ # In Windows and using the MSI installed executable.
+ meson_command = [sys.executable]
+ python_command = [sys.executable, 'runpython']
+else:
+ meson_command = [sys.executable, os.path.join(os.path.split(__file__)[0], '..', 'meson.py')]
+ python_command = [sys.executable]
+
+
# Put this in objects that should not get dumped to pickle files
# by accident.
import threading
diff --git a/mesonbuild/modules/python3.py b/mesonbuild/modules/python3.py
index 4fae88b..989e839 100644
--- a/mesonbuild/modules/python3.py
+++ b/mesonbuild/modules/python3.py
@@ -52,7 +52,7 @@ class Python3Module(ExtensionModule):
@noKwargs
def find_python(self, state, args, kwargs):
- py3 = dependencies.ExternalProgram('python3', sys.executable, silent=True)
+ py3 = dependencies.ExternalProgram('python3', mesonlib.python_command, silent=True)
return ModuleReturnValue(py3, [py3])
@noKwargs