package/gobject-introspection: fix exec_prefix

exec_prefix has been removed since version 1.66 and
a88b1ac548
resulting in the following build failure with rygel because libgee
installs Gee-0.8.gir in
output/host/aarch64-buildroot-linux-gnu/sysroot/share/gir-1.0/Gee-0.8.gir
instead of
output/host/aarch64-buildroot-linux-gnu/sysroot/usr/share/gir-1.0/Gee-0.8.gir:

Could not find GIR file 'Gee-0.8.gir'; check XDG_DATA_DIRS or use --includedir
error parsing file RygelCore-2.6.gir: Failed to parse included gir Gee-0.8
If the above error message is about missing .so libraries, then setting up GIR_EXTRA_LIBS_PATH in the .mk file should help.
Typically like this: PKG_MAKE_ENV += GIR_EXTRA_LIBS_PATH="$(@D)/.libs"

So replace exec_prefix by prefix

Fixes:
 - http://autobuild.buildroot.org/results/b04b27bbb84fa6ab9a8441e7bd94aad45226dce9

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
This commit is contained in:
Fabrice Fontaine 2021-08-10 00:35:47 +02:00 committed by Thomas Petazzoni
parent c786507f07
commit 34da8f9614

View File

@ -127,11 +127,11 @@ define GOBJECT_INTROSPECTION_INSTALL_WRAPPERS
# By default, girdir and typelibdir use datadir and libdir as their prefix,
# of which pkg-config appends the sysroot directory. This results in files
# being installed in $(STAGING_DIR)/$(STAGING_DIR)/path/to/files.
# Changing the prefix to exec_prefix prevents this error.
$(SED) "s%girdir=.*%girdir=\$${exec_prefix}/share/gir-1.0%g" \
# Changing the prefix to prefix prevents this error.
$(SED) "s%girdir=.*%girdir=\$${prefix}/share/gir-1.0%g" \
$(STAGING_DIR)/usr/lib/pkgconfig/gobject-introspection-1.0.pc
$(SED) "s%typelibdir=.*%typelibdir=\$${exec_prefix}/lib/girepository-1.0%g" \
$(SED) "s%typelibdir=.*%typelibdir=\$${prefix}/lib/girepository-1.0%g" \
$(STAGING_DIR)/usr/lib/pkgconfig/gobject-introspection-1.0.pc
endef
GOBJECT_INTROSPECTION_POST_INSTALL_STAGING_HOOKS += GOBJECT_INTROSPECTION_INSTALL_WRAPPERS