diff options
author | Mathieu Bridon <bochecha@daitauha.fr> | 2019-01-11 17:54:18 +0100 |
---|---|---|
committer | Mathieu Bridon <bochecha@daitauha.fr> | 2019-01-11 17:57:33 +0100 |
commit | 0dbf209f72bd8c700668971cd6f31760c72d9181 (patch) | |
tree | 11bcd0b16906036192113cf21c79346d25924d0a /Makefile-examples.am | |
parent | f606183a010fbec4382acb728882cc0eddbaf7f7 (diff) | |
download | gobject-introspection-bochecha/pkgconfig-prefix.tar.gz |
m4: Take prefix the into account for the gir and typelib dirsbochecha/pkgconfig-prefix
When building a Flatpak application, all the modules bundled with the
app are built/installed with prefix=/app.
Those modules which use gobject-introspection's introspection.m4 will
use pkgconfig to query the installation directory for their own gir and
typelib files.
As it is, that will always return something under /usr, which causes
build failures in flatpak-builder.
With the original pkg-config implementation, app authors would work
around this in their manifests by defining a couple of environment
variables:
PKG_CONFIG_GOBJECT_INTROSPECTION_1_0_GIRDIR=/app/share/gir-1.0
PKG_CONFIG_GOBJECT_INTROSPECTION_1_0_TYPELIBDIR=/app/lib/girepository-1.0
With the pkgconf implementation though, as used in the Freedesktop Sdk
18.08 and the GNOME Sdk >= 3.30, this does not work any more. One
workaround is now to pass those directories to `make install`
explicitly:
make install girdir=/app/share/gir-1.0 typelibdir=/app/lib/girepository-1.0
Both methods are workarounds though, which amount to completely
short-circuiting the introspection.m4 code, and require knowing the
exact directory to install those files. As such they are fragile, and
could break if the install directories ever change.
This commit changes the m4 code, so that it takes the prefix into
account, removing the need for those workarounds entirely.
More details:
* pkgconf doesn't support use env vars like pkg-config does:
https://git.dereferenced.org/pkgconf/pkgconf/issues/2
* an example of the old and new workarounds:
https://gitlab.gnome.org/GNOME/gnome-contacts/merge_requests/26/diffs
Diffstat (limited to 'Makefile-examples.am')
0 files changed, 0 insertions, 0 deletions