From 024bf6cbccc4ceb9c1e8243f43df225f5dff9098 Mon Sep 17 00:00:00 2001 From: Mart Raudsepp Date: Sun, 29 Mar 2020 16:05:36 +0300 Subject: [PATCH] build: Fix python files installation handling The deprecated meson python3 module tends to end up installing only to a python version that meson is installed for too, possibly breaking some expectations downstream that want it installed to a specific python3 version, that might not match what the build machine uses for meson. Fix it by using the non-deprecated python module and methods from it. The python module exists since 0.46, which should be safe to require by now. There were meson 0.50 features used already, but unnecessarily, as the configure_file install parameter was added then, but all versions default to `true` anyhow. However in practice this only emitted a warning with newer meson versions and was able to build fine with older versions too. However fix it too, so that we are now warning-free for meson features after raising of the meson version dep. --- gtweak/meson.build | 5 ++--- meson.build | 10 +++++++--- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/gtweak/meson.build b/gtweak/meson.build index 3d9a743..4e558b4 100644 --- a/gtweak/meson.build +++ b/gtweak/meson.build @@ -11,7 +11,6 @@ configure_file( input: 'defs.py.in', output: 'defs.py', configuration: defs_conf, - install: true, install_dir: gtweakdir ) @@ -46,5 +45,5 @@ tweak_sources = [ 'tweaks/tweak_wacom.py', ] -install_data(shell_sources, install_dir: gtweakdir) -install_data(tweak_sources, install_dir: gtweakdir + '/tweaks') +python3.install_sources(shell_sources, subdir: 'gtweak') +python3.install_sources(tweak_sources, subdir: join_paths('gtweak', 'tweaks')) diff --git a/meson.build b/meson.build index cffa8af..60141c5 100644 --- a/meson.build +++ b/meson.build @@ -5,7 +5,12 @@ project('gnome-tweaks', gnome = import('gnome') i18n = import('i18n') -python3 = import('python3') +pymod = import('python') +python3 = pymod.find_installation('python3') + +if not python3.found() + error('No valid python3 installation found') +endif prefix = get_option('prefix') @@ -13,13 +18,12 @@ bindir = join_paths(prefix, get_option('bindir')) datadir = join_paths(prefix, get_option('datadir')) libexecdir = join_paths(prefix, get_option('libexecdir')) localedir = join_paths(prefix, get_option('localedir')) -pythondir = join_paths(prefix, python3.sysconfig_path('purelib')) pkgdatadir = join_paths(datadir, meson.project_name()) appdatadir = join_paths(datadir, 'metainfo') desktopdir = join_paths(datadir, 'applications') -gtweakdir = join_paths(pythondir, 'gtweak') +gtweakdir = python3.get_install_dir(subdir: 'gtweak') icondir = join_paths(datadir, 'icons', 'hicolor') schemadir = join_paths(datadir, 'glib-2.0', 'schemas') -- 2.26.2