gobject-introspection: always DEPEND on gobject-introspection-native

If a recipe inherits gobject-introspection then there's a good chance
that it needs the gobject-introspection-native recipe for the m4 macros
in introspection.m4, because we always autoreconf so we always need the
macros to be present.

Change the dependencies so that inheriting g-i always adds a dependency
on gobject-introspection-native, and a dependency on qemu-native and
target gobject-introspection if G-I is enabled.

Partially reverts 4e51c18.

(From OE-Core rev: 2763bc8c3a8d789ddc8e22e6df69400dcba6d6f3)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Ross Burton
2023-05-16 19:40:26 +01:00
committed by Richard Purdie
parent 19d9114042
commit ce5f961acd

View File

@@ -35,23 +35,19 @@ EXTRA_OEMESON:prepend:class-nativesdk = "${@['', '${GIRMESONBUILD}'][d.getVar('G
# Generating introspection data depends on a combination of native and target
# introspection tools, and qemu to run the target tools.
DEPENDS:append:class-target = " ${@bb.utils.contains('GI_DATA_ENABLED', 'True', 'gobject-introspection gobject-introspection-native qemu-native', '', d)}"
DEPENDS:append:class-target = " ${@bb.utils.contains('GI_DATA_ENABLED', 'True', 'gobject-introspection qemu-native', '', d)}"
# Even though introspection is disabled on -native, gobject-introspection package is still
# needed for m4 macros.
DEPENDS:append:class-native = " gobject-introspection-native"
DEPENDS:append:class-nativesdk = " gobject-introspection-native"
# Even when introspection is disabled, the gobject-introspection package is still needed for m4 macros.
DEPENDS:append = " gobject-introspection-native"
# This is used by introspection tools to find .gir includes
export XDG_DATA_DIRS = "${STAGING_DATADIR}:${STAGING_LIBDIR}"
do_configure:prepend:class-target () {
if [ "${@bb.utils.contains('GI_DATA_ENABLED', 'True', '1', '0', d)}" = "1" ] ; then
# introspection.m4 pre-packaged with upstream tarballs does not yet
# have our fixes
mkdir -p ${S}/m4
cp ${STAGING_DIR_TARGET}/${datadir}/aclocal/introspection.m4 ${S}/m4
fi
# introspection.m4 pre-packaged with upstream tarballs does not yet
# have our fixes
mkdir -p ${S}/m4
cp ${STAGING_DIR_NATIVE}/${datadir}/aclocal/introspection.m4 ${S}/m4
}
# .typelib files are needed at runtime and so they go to the main package (so