[Buildroot] [PATCH v2 2/2] package/qt5/qt5webengine: fix build dependencies for autodetected packages

Nathan Ford nford at westpond.com
Fri Feb 28 17:37:22 UTC 2020


I ran into a linker error when I tried to enable minizip, so I omitted it.

Did you re-compile qt5base after selecting png / jpeg / harfbuzz?
qt5webengine enables them via the qt build system.

icu needs to be enabled explicitly similar to ffmpeg. Don't remember
why I omitted it. I'm compiling now to see if there was an issue.

If libxml2/libxslt is checked, qt5webengine will skip them because
libxml2 is not built with ICU support. libxml2 needs a configure
switch to explicitly enable it. I have a patch that does this if ICU
is enabled, but I don't know if implicitly enabling it would have
ramifications, otherwise why is it not auto detected?

--Nate



On Fri, Feb 28, 2020 at 10:59 AM Peter Seiderer <ps.report at gmx.net> wrote:
>
> Re-add CC: Nathan Ford <nford at westpond.com>
>
> On Fri, 28 Feb 2020 16:56:45 +0100, Peter Seiderer <ps.report at gmx.net> wrote:
>
> > Hello Nathan,
> >
> > On Fri, 28 Feb 2020 09:39:15 -0500, Nathan Ford <nford at westpond.com> wrote:
> >
> > > Signed-off-by: Nathan Ford <nford at westpond.com>
> > > ---
> > >  package/qt5/qt5webengine/qt5webengine.mk | 28 ++++++++++++++++++++++++++++
> > >  1 file changed, 28 insertions(+)
> > >
> > > diff --git a/package/qt5/qt5webengine/qt5webengine.mk b/package/qt5/qt5webengine/qt5webengine.mk
> > > index 3824738..e5f8421 100644
> > > --- a/package/qt5/qt5webengine/qt5webengine.mk
> > > +++ b/package/qt5/qt5webengine/qt5webengine.mk
> > > @@ -60,6 +60,34 @@ QT5WEBENGINE_QMAKEFLAGS += QT_CONFIG-=alsa
> > >  endif
> > >  endif
> > >
> > > +ifeq ($(BR2_PACKAGE_JSONCPP),y)
> > > +QT5WEBENGINE_DEPENDENCIES += jsoncpp
> > > +endif
> > > +
> > > +ifeq ($(BR2_PACKAGE_LCMS2),y)
> > > +QT5WEBENGINE_DEPENDENCIES += lcms2
> > > +endif
> > > +
> > > +ifeq ($(BR2_PACKAGE_LIBEVENT),y)
> > > +QT5WEBENGINE_DEPENDENCIES += libevent
> > > +endif
> > > +
> > > +ifeq ($(BR2_PACKAGE_LIBXML2),y)
> > > +QT5WEBENGINE_DEPENDENCIES += libxml2
> > > +endif
> > > +
> > > +ifeq ($(BR2_PACKAGE_LIBXSLT),y)
> > > +QT5WEBENGINE_DEPENDENCIES += libxslt
> > > +endif
> > > +
> > > +ifeq ($(BR2_PACKAGE_PROTOBUF),y)
> > > +QT5WEBENGINE_DEPENDENCIES += protobuf
> > > +endif
> > > +
> > > +ifeq ($(BR2_PACKAGE_SNAPPY),y)
> > > +QT5WEBENGINE_DEPENDENCIES += snappy
> > > +endif
> > > +
> >
> > According to build/qt5webengine-5.12.7/config.summary:
> >
> >   Optional system libraries used:
> >     re2 .................................. no   ---> not in buildroot
> >     icu .................................. no   ---> handled by select BR2_PACKAGE_QT5BASE_ICU but not found (version mismatch)?
> >     libwebp, libwebpmux and libwebpdemux . yes  ---> already handled and fixed by your previous patch
> >     opus ................................. yes  ---> already handled
> >     ffmpeg ............................... yes  ---> already handled
> >     libvpx ............................... yes  ---> already handled
> >     snappy ............................... yes  ---> handled by our patch
> >     glib ................................. yes  ---> already handled
> >     zlib ................................. yes  ---> handled by qt5base
> >     minizip .............................. no
> >     libevent ............................. no   ---> handled by our patch
> >     jsoncpp .............................. no   ---> handled by our patch
> >     protobuf ............................. no   ---> handled by our patch
> >     libxml2 and libxslt .................. no   ---> handled by our patch
> >     lcms2 ................................ no   ---> handled by our patch
> >     png .................................. yes  ---> handled by qt5base (only in case BR2_PACKAGE_QT5BASE_PNG is set)?
> >     JPEG ................................. no   ---> handled by qt5base (only in case BR2_PACKAGE_QT5BASE_JPEG is set)? In my config
> >                                                      BR2_PACKAGE_QT5BASE_JPEG is set but not found?
> >     harfbuzz ............................. yes  ---> handled by qt5base (only in case BR2_PACKAGE_QT5BASE_HARFBUZZ and BR2_TOOLCHAIN_HAS_SYNC_4 is set)?
> >     freetype ............................. yes  ---> handled by qt5base
> >
> > So your patch is definitely an improvement and you can add my
> >
> > Reviewed-by: Peter Seiderer <ps.report at gmx.net>
> >
> > Care to take a look if the buildroot package minizip is sufficient for qt5webengine?
> >
> > Leaving icu, png, jpeg and harfbuzz for more research....
> >
> > Regards,
> > Peter
> >
> > >  # QtWebengine's build system uses python, but only supports python2. We work
> > >  # around this by forcing python2 early in the PATH, via a python->python2
> > >  # symlink.
> >
>



More information about the buildroot mailing list