Bug 105080

Summary: libinput-1.10.0: meson doesn't respect --bindir
Product: Wayland Reporter: Timo Gurr <timo.gurr>
Component: libinputAssignee: Wayland bug list <wayland-bugs>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: medium CC: peter.hutterer
Version: unspecified   
Hardware: Other   
OS: All   
Whiteboard:
i915 platform: i915 features:
Attachments: 0001-meson-Fix-bindir-usage-in-install-script.patch

Description Timo Gurr 2018-02-13 16:03:51 UTC
Created attachment 137321 [details] [review]
0001-meson-Fix-bindir-usage-in-install-script.patch

Passing a bindir different from prefix like e.g.

meson --prefix=/usr --bindir=/usr/x86_64-pc-linux-gnu/bin --libdir=/usr/x86_64-pc-linux-gnu/lib --libexecdir=/usr/x86_64-pc-linux-gnu/libexec --includedir=/usr/x86_64-pc-linux-gnu/include --sysconfdir=/etc --datadir=/usr/share --mandir=/usr/share/man --default-library=shared -Ddebug-gui=false -Dudev-dir=/usr/x86_64-pc-linux-gnu/lib/udev -Ddocumentation=false -Dlibwacom=false -Dtests=false /var/tmp/paludis/build/sys-libs-libinput-1.10.0/work/libinput-1.10.0

to meson results in an install error later on:

[...]
--- /usr/bin/libinput-list-devices
--- /usr/bin/libinput-debug-events
--- No need to do anything for preinst phase
>>> Checking whether we can merge to / ..................
!!! Expected '/usr/bin' to be a directory but found a symlink to a directory
[...]

It should respect the bindir passed via meson configure and install to /usr/x86_64-pc-linux-gnu/bin instead of /usr/bin.

There was aleady a patch proposed which still applies to 1.10.0 and fixed the problem: https://lists.freedesktop.org/archives/wayland-devel/2017-November/036009.html

For completeness the patch is attached as well.
Comment 1 Peter Hutterer 2018-02-18 23:48:43 UTC
Thanks for the reminder, I missed that patch somehow. Pushed as 0843fa8e5e477a926eb7536c47c5421f8ddf8759 and b2b5cdaf61a79fb42aecf86af24b21a5372eed4b

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.