Skip to content

build: Copy sysprof interface definition

Jan Alexander Steffens requested to merge heftig/mutter:sysprof-interface into master

Meson attempts to load Sysprof's interface definition file from the system, but uses the installation datadir to do so.

On a typical system with sysprof installed in /usr a naive build (which defaults to /usr/local) will thus fail to find the file.

We should be using the interfaces_dir from the dbus-1 dependency. However, in the case of jhbuild, where Sysprof is in the prefix but DBus is not, this will likewise choose the wrong directory.

It also doesn't look like Meson has a way of searching multiple paths for a file. It can't even test the existence of a file without run_command.

So pick the coward's way out and just copy the interface file from Sysprof into our sources. It needs to be backwards-compatible anyway, so we only need to update it when we use new API.

Fixes #874

Merge request reports