[OE-core] [PATCH 3/4] gdk-pixbuf: convert from autotools to meson

Richard Purdie richard.purdie at linuxfoundation.org
Sat Feb 23 13:25:26 UTC 2019


On Sat, 2019-02-23 at 13:51 +0100, Alexander Kanavin wrote:
> On Sat, 23 Feb 2019 at 13:43, Richard Purdie
> <richard.purdie at linuxfoundation.org> wrote:
> > On Sat, 2019-02-23 at 12:29 +0000, Richard Purdie wrote:
> > > On Wed, 2019-02-20 at 21:10 +0100, Alexander Kanavin wrote:
> > > > Drop autotools-specific patches.
> > > > 
> > > > Rework jku's thumbnailer patch into meson configuration.
> > > > 
> > > > Signed-off-by: Alexander Kanavin <alex.kanavin at gmail.com>
> > > 
> > > We've seen it before but its happened again:
> > > 
> > > https://autobuilder.yoctoproject.org/typhoon/#/builders/73/builds/326
> > > 
> > > I went into the failed build directory and ran "bitbake core-
> > > image-
> > > sato -c testsdkext" and it succeeded so I'm not sure sure how
> > > we're
> > > going to debug this one...
> > 
> > From staring at the log, I think do_build_target_sysroot in build-
> > sysroots.bb may need to depend on do_build_native_sysroot.
> > 
> > They're both running at the same time and potentially racing?
> 
> I'm at the same time staring at this bit in pixbufcache.bbclass:
> 
> gdkpixbuf_complete() {
> GDK_PIXBUF_FATAL_LOADER=1
> ${STAGING_LIBDIR_NATIVE}/gdk-pixbuf-2.0/gdk-pixbuf-query-loaders
> --update-cache || exit 1
> }
> 
> DEPENDS_append_class-native = " gdk-pixbuf-native"
> SYSROOT_PREPROCESS_FUNCS_append_class-native = "
> pixbufcache_sstate_postinst"
> 
> # See base.bbclass for the other half of this
> pixbufcache_sstate_postinst() {
>         mkdir -p ${SYSROOT_DESTDIR}${bindir}
>         dest=${SYSROOT_DESTDIR}${bindir}/postinst-${PN}
>         echo '#!/bin/sh' > $dest
>         echo "${gdkpixbuf_complete}" >> $dest
>         chmod 0755 $dest
> }
> 
> It's all written for -native, yet the script that fails, resides in
> tmp/sysroots/qemux86-64/usr/bin/postinst-gdk-pixbuf-native (e.g. the
> target sysroot which is racing with the native one). Why is it even
> there?
> I haven't written this code :) and haven't really seen it before, but
> this might be a lead.

I'm sure I've worked on the above before, my memory of why we need it
is fuzzy. I do now have a reproducer though:

bitbake gdk-pixbuf gdk-pixbuf-native
then
bitbake build-sysroots -c build_target_sysroot

If you bake build_native_sysroot first, the problem goes away.

Cheers,

Richard






More information about the Openembedded-core mailing list