diff --git a/docs/install.rst b/docs/install.rst index 892a1966240..a3f64e3f159 100644 --- a/docs/install.rst +++ b/docs/install.rst @@ -36,7 +36,7 @@ you're willing to maintain support for other compiler get in touch. Third party/extra tools. ^^^^^^^^^^^^^^^^^^^^^^^^ -- `Python `__ - Python 3.9 or newer is required. +- `Python `__ - Python 3.10 or newer is required. - Python package ``packaging`` is required on Python 3.12+: ``pip install packaging`` - `Python Mako module `__ - Python Mako diff --git a/meson.build b/meson.build index 43b1afd7ba9..6283d72d3b5 100644 --- a/meson.build +++ b/meson.build @@ -1032,8 +1032,23 @@ if get_option('allow-kcmp') \ pre_args += '-DALLOW_KCMP' endif -# On Windows, a venv has no versioned aliased to 'python'. -prog_python = find_program('python3', 'python', version : '>= 3.9') +# Find a python executable that meets our version requirement. +# - On Windows, a venv has no versioned aliased to 'python'. +# - On RHEL 9, python3 is 3.9, so we must use python3.12. +python_version_req = '>= 3.10' +python_exec_list = ['python3.16', 'python3.15', 'python3.14', 'python3.13', + 'python3.12', 'python3.11', 'python3.10', 'python3', 'python'] + +foreach p : python_exec_list + prog_python = find_program(p, required : false, version : python_version_req) + if prog_python.found() + break + endif +endforeach + +if not prog_python.found() + error('Python ' + python_version_req + ' not found') +endif has_mako = run_command( prog_python, '-c',