From: Peter Seiderer <ps.report@gmx.net>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH v2 2/2] package/qt5/qt5webengine: fix build dependencies for autodetected packages
Date: Fri, 28 Feb 2020 21:23:28 +0100 [thread overview]
Message-ID: <20200228212328.5da3bdd7@gmx.net> (raw)
In-Reply-To: <20200228202431.5dd7c4e5@gmx.net>
Hello Nate,
On Fri, 28 Feb 2020 20:24:31 +0100, Peter Seiderer <ps.report@gmx.net> wrote:
> Hello Nate,
>
> On Fri, 28 Feb 2020 12:37:22 -0500, Nathan Ford <nford@westpond.com> wrote:
>
> > I ran into a linker error when I tried to enable minizip, so I omitted it.
>
> That is sad...., but is not solved by omitting the dependency (but maybe
> hidden due to build order....on the cost of reproducibility)..., but
> there is no option to disable minizip support (only detected by pkg-config
> and the minizip.pc file provided by minizip-2.9.1, but the version
> seems to be not compatible)...
>
> >
> > Did you re-compile qt5base after selecting png / jpeg / harfbuzz?
> > qt5webengine enables them via the qt build system.
>
> Yes, full re-build ;-)
>
> But see no direct enabling through qt5webengine options/select, maybe
> indirect?
>
> The jpeg test failes with:
>
> > main.cpp:12:5: error: ?jpeg_crop_scanline? was not declared in this scope; did you mean ?jpeg_read_scanlines??
> > 12 | jpeg_crop_scanline(nullptr, &dummy, &dummy);
> > | ^~~~~~~~~~~~~~~~~~
> > | jpeg_read_scanlines
> > main.cpp:13:5: error: ?jpeg_skip_scanlines? was not declared in this scope; did you mean ?jpeg_read_scanlines??
> > 13 | jpeg_skip_scanlines(nullptr, dummy);
> > | ^~~~~~~~~~~~~~~~~~~
> > | jpeg_read_scanlines
>
> Maybe incompatible version?
With BR2_PACKAGE_JPEG_TURBO (instead of BR2_PACKAGE_LIBJPEG) the
detection succeeds...
Regards,
Peter
>
> >
> > 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.
>
> Did take a look at build/qt5webengine-5.12.7/config_help.txt:
>
> WebEngine options:
>
> -webengine-alsa ................ Enable ALSA support [auto] (Linux only)
> -webengine-pulseaudio .......... Enable PulseAudio support [auto]
> (Linux only)
> -webengine-embedded-build ...... Enable Linux embedded build [auto]
> (Linux only)
> -webengine-icu ................. Use system ICU libraries [system/qt]
> (Linux only)
> -webengine-ffmpeg .............. Use system FFmpeg libraries [system/qt]
> (Linux only)
> -webengine-opus ................ Use system Opus libraries [system/qt]
> (Linux only)
> -webengine-webp ................ Use system WebP libraries [system/qt]
> (Linux only)
> -webengine-pepper-plugins ...... Enable use of Pepper Flash and Widevine
> plugins [auto]
> -webengine-printing-and-pdf .... Enable use of printing and output to PDF
> [auto]
> -webengine-proprietary-codecs .. Enable support for proprietary codecs [no]
> -webengine-spellchecker ........ Enable support for spellchecker [yes]
> -webengine-native-spellchecker . Enable support for native spellchecker [no]
> (macOS only)
> -webengine-webrtc .............. Enable support for WebRTC [auto]
>
> There are more 'auto' options, e.g. '-webengine-pulseaudio' which should
> be properly supported including the dependencies by the qt5webengine
> package (or explicitly disabled)...
>
> >
> > 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?
>
> The libxml2/libxslt test simply fails with:
>
> > xml2.cpp:31:2: error: #error "libxml icu not enabled"
> > 31 | #error "libxml icu not enabled"
> > | ^~~~~
>
> Regards,
> Peter
>
> >
> > --Nate
> >
> >
> >
> > On Fri, Feb 28, 2020 at 10:59 AM Peter Seiderer <ps.report@gmx.net> wrote:
> > >
> > > Re-add CC: Nathan Ford <nford@westpond.com>
> > >
> > > On Fri, 28 Feb 2020 16:56:45 +0100, Peter Seiderer <ps.report@gmx.net> wrote:
> > >
> > > > Hello Nathan,
> > > >
> > > > On Fri, 28 Feb 2020 09:39:15 -0500, Nathan Ford <nford@westpond.com> wrote:
> > > >
> > > > > Signed-off-by: Nathan Ford <nford@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@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.
> > > >
> > >
> > _______________________________________________
> > buildroot mailing list
> > buildroot at busybox.net
> > http://lists.busybox.net/mailman/listinfo/buildroot
>
next prev parent reply other threads:[~2020-02-28 20:23 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-02-28 14:39 [Buildroot] [PATCH v2 1/2] package/qt5/qt5webengine: fix ffmpeg/codec/alsa option handling for latest Nathan Ford
2020-02-28 14:39 ` [Buildroot] [PATCH v2 2/2] package/qt5/qt5webengine: fix build dependencies for autodetected packages Nathan Ford
2020-02-28 15:56 ` Peter Seiderer
2020-02-28 15:59 ` Peter Seiderer
2020-02-28 17:37 ` Nathan Ford
2020-02-28 19:24 ` Peter Seiderer
2020-02-28 20:23 ` Peter Seiderer [this message]
2020-02-28 22:04 ` Nathan Ford
2020-02-28 15:23 ` [Buildroot] [PATCH v2 1/2] package/qt5/qt5webengine: fix ffmpeg/codec/alsa option handling for latest Peter Seiderer
2020-02-28 15:44 ` Nathan Ford
2020-02-28 16:04 ` Peter Seiderer
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20200228212328.5da3bdd7@gmx.net \
--to=ps.report@gmx.net \
--cc=buildroot@busybox.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.