tools: rely on the libinput and quirks tool to pick the right directories

Don't use a custom hack here, just make sure the tool ends up in the builddir
so it's picked up by the libinput main tool.

This means the PATH isn't set up correctly when called directly
(./builddir/libinput-measure-touchpad-pressure) but the workaround is to
always use the libinput tool - just as we expect from users.

To make it more obvious that we're not supposed to run this directly, rename
the source file to .py

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
This commit is contained in:
Peter Hutterer 2018-06-27 13:44:18 +10:00
parent 25a6535570
commit 2caf557e10
3 changed files with 11 additions and 34 deletions

View file

@ -572,16 +572,12 @@ configure_file(input : 'tools/libinput-measure-touchpad-tap.man',
install_dir : join_paths(get_option('mandir'), 'man1')
)
config_builddir = configuration_data()
config_builddir.set('BUILDDIR', meson.build_root())
# libinput-measure-touchpad-pressure gets built but we install_data the
# source instead. The built file is the one that uses the local quirks
# and should be used for debugging.
install_data('tools/libinput-measure-touchpad-pressure',
install_dir : libinput_tool_path)
configure_file(input: 'tools/libinput-measure-touchpad-pressure',
config_noop = configuration_data()
configure_file(input: 'tools/libinput-measure-touchpad-pressure.py',
output: 'libinput-measure-touchpad-pressure',
configuration : config_builddir
configuration : config_noop,
install : true,
install_dir : libinput_tool_path
)
configure_file(input : 'tools/libinput-measure-touchpad-pressure.man',
@ -590,14 +586,11 @@ configure_file(input : 'tools/libinput-measure-touchpad-pressure.man',
install : true,
install_dir : join_paths(get_option('mandir'), 'man1')
)
# libinput-measure-touch-size gets built but we install_data the source
# instead. The built file is the one that uses the local quirks and
# should be used for debugging.
install_data('tools/libinput-measure-touch-size',
install_dir : libinput_tool_path)
configure_file(input: 'tools/libinput-measure-touch-size',
configure_file(input: 'tools/libinput-measure-touch-size.py',
output: 'libinput-measure-touch-size',
configuration : config_builddir
configuration : config_noop,
install : true,
install_dir : libinput_tool_path
)
configure_file(input : 'tools/libinput-measure-touch-size.man',

View file

@ -222,15 +222,7 @@ class Device(object):
sys.exit(1)
def _init_thresholds_from_quirks(self):
# This is replaced for the version in builddir but left as-is for
# the installed version. For the builddir one we need to run the
# builddir quirks list
builddir = '@BUILDDIR@'
if builddir != '@' + 'BUILDDIR' + '@':
command = [os.path.join(builddir, 'libinput-quirks'), 'list']
else:
command = ['libinput', 'quirks', 'list']
command.append(self.path)
command = ['libinput', 'quirks', 'list', self.path]
cmd = subprocess.run(command, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
if cmd.returncode != 0:
print("Error querying quirks: {}".format(cmd.stderr.decode('utf-8')), file=sys.stderr)

View file

@ -200,15 +200,7 @@ class Device(object):
sys.exit(1)
def _init_thresholds_from_quirks(self):
# This is replaced for the version in builddir but left as-is for
# the installed version. For the builddir one we need to run the
# builddir quirks list
builddir = '@BUILDDIR@'
if builddir != '@' + 'BUILDDIR' + '@':
command = [os.path.join(builddir, 'libinput-quirks'), 'list']
else:
command = ['libinput', 'quirks', 'list']
command.append(self.path)
command = ['libinput', 'quirks', 'list', self.path]
cmd = subprocess.run(command, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
if cmd.returncode != 0:
print("Error querying quirks: {}".format(cmd.stderr.decode('utf-8')), file=sys.stderr)