meson: Improve detection of Python when using Meson >=0.50.
authorArfrever Frehtes Taifersar Arahesis <Arfrever@Apache.Org>
Mon, 17 Jun 2019 18:37:44 +0000 (18:37 +0000)
committerDylan Baker <dylan@pnwbakers.com>
Fri, 28 Jun 2019 19:51:21 +0000 (12:51 -0700)
Previously, on systems where multiple versions of Python 3 (e.g. 3.6 and 3.7)
are installed, wrong version of Python 3 could have been used.

The proper fix requires availability of path() method in Meson's python
module, which has been added in Meson 0.50:
https://github.com/mesonbuild/meson/pull/4616

Distro Bug: https://bugs.gentoo.org/671308
Signed-off-by: Arfrever Frehtes Taifersar Arahesis <Arfrever@Apache.Org>
Reviewed-by: Dylan Baker <dylan@pnwbakers.com>
v2: - Add missing `endif` keyword (Dylan)

meson.build

index 2da66b749245b45f7a62c67998643c8268dee098..4e1990eb6001488a1820af1b61d0d9191d29d6fc 100644 (file)
@@ -746,7 +746,11 @@ if with_platform_haiku
   pre_args += '-DHAVE_HAIKU_PLATFORM'
 endif
 
-prog_python = import('python3').find_python()
+if meson.version().version_compare('>=0.50')
+  prog_python = import('python').find_installation('python3')
+else
+  prog_python = import('python3').find_python()
+endif
 has_mako = run_command(
   prog_python, '-c',
   '''