cmake: Deprecate CMake <3.17 support

pull/9939/head
Daniel Mensinger 3 years ago committed by Eli Schwartz
parent 78619e2c40
commit 63870da449
  1. 4
      docs/markdown/snippets/cmake_deprecation.md
  2. 12
      mesonbuild/cmake/interpreter.py
  3. 11
      mesonbuild/cmake/traceparser.py

@ -0,0 +1,4 @@
## CMake support for versions <3.17.0 is deprecated
Support for CMake versions below 3.17.0 is now deprecated for *both* CMake
dependencies and subprojects.

@ -31,7 +31,6 @@ from functools import lru_cache
from pathlib import Path
import typing as T
import re
import textwrap
from os import environ
from ..mparser import (
@ -824,17 +823,6 @@ class CMakeInterpreter:
self.fileapi.setup_request()
if version_compare(cmake_exe.version(), '<3.17.0'):
mlog.warning(textwrap.dedent(f'''\
The minimum recommended CMake version is 3.17.0.
|
| However, Meson was only able to find CMake {cmake_exe.version()} at {cmake_exe.cmakebin.command}.
|
| Support for all CMake versions below 3.17.0 will be deprecated and
| removed once newer CMake versions are more widely adopted. If you encounter
| any errors please try upgrading CMake to a newer version first.
'''))
# Run CMake
mlog.log()
with mlog.nested():

@ -138,6 +138,17 @@ class CMakeTraceParser:
'meson_ps_disabled_function': self._meson_ps_disabled_function,
} # type: T.Dict[str, T.Callable[[CMakeTraceLine], None]]
if version_compare(self.cmake_version, '<3.17.0'):
mlog.deprecation(textwrap.dedent(f'''\
CMake support for versions <3.17 is deprecated since Meson 0.62.0.
|
| However, Meson was only able to find CMake {self.cmake_version}.
|
| Support for all CMake versions below 3.17.0 will be removed once
| newer CMake versions are more widely adopted. If you encounter
| any errors please try upgrading CMake to a newer version first.
'''), once=True)
def trace_args(self) -> T.List[str]:
arg_map = {
'human': ['--trace', '--trace-expand'],

Loading…
Cancel
Save