aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild/cmake/client.py
diff options
context:
space:
mode:
Diffstat (limited to 'mesonbuild/cmake/client.py')
-rw-r--r--mesonbuild/cmake/client.py9
1 files changed, 3 insertions, 6 deletions
diff --git a/mesonbuild/cmake/client.py b/mesonbuild/cmake/client.py
index 93985e9..f77e0cc 100644
--- a/mesonbuild/cmake/client.py
+++ b/mesonbuild/cmake/client.py
@@ -16,8 +16,8 @@
# or an interpreter-based tool.
from .common import CMakeException
+from .executor import CMakeExecutor
from ..environment import Environment
-from ..dependencies.base import CMakeDependency, ExternalProgram
from ..mesonlib import MachineChoice
from .. import mlog
from contextlib import contextmanager
@@ -475,14 +475,11 @@ class CMakeClient:
if self.proc is not None:
raise CMakeException('The CMake server was already started')
for_machine = MachineChoice.HOST # TODO make parameter
- cmake_exe, cmake_vers, _ = CMakeDependency.find_cmake_binary(self.env, for_machine)
- if cmake_exe is None or cmake_exe is False:
- raise CMakeException('Unable to find CMake')
- assert(isinstance(cmake_exe, ExternalProgram))
+ cmake_exe = CMakeExecutor(self.env, '>=3.7', for_machine)
if not cmake_exe.found():
raise CMakeException('Unable to find CMake')
- mlog.debug('Starting CMake server with CMake', mlog.bold(' '.join(cmake_exe.get_command())), 'version', mlog.cyan(cmake_vers))
+ mlog.debug('Starting CMake server with CMake', mlog.bold(' '.join(cmake_exe.get_command())), 'version', mlog.cyan(cmake_exe.version()))
self.proc = Popen(cmake_exe.get_command() + ['-E', 'server', '--experimental', '--debug'], stdin=PIPE, stdout=PIPE)
def shutdown(self) -> None: