All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH v2 1/2] package/qt5/qt5webengine: fix ffmpeg/codec/alsa option handling for latest
@ 2020-02-28 14:39 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:23 ` [Buildroot] [PATCH v2 1/2] package/qt5/qt5webengine: fix ffmpeg/codec/alsa option handling for latest Peter Seiderer
  0 siblings, 2 replies; 11+ messages in thread
From: Nathan Ford @ 2020-02-28 14:39 UTC (permalink / raw)
  To: buildroot

qt5engine also now requires webp mux support or the auto
detection will fail.

This patch is based on the suggested fix, and fixes, Bug #12416

Signed-off-by: Nathan Ford <nford@westpond.com>
---
 package/qt5/qt5webengine/Config.in       |  1 +
 package/qt5/qt5webengine/qt5webengine.mk | 18 ++++++++++++++++++
 2 files changed, 19 insertions(+)

diff --git a/package/qt5/qt5webengine/Config.in b/package/qt5/qt5webengine/Config.in
index 0e776ec..18e4418 100644
--- a/package/qt5/qt5webengine/Config.in
+++ b/package/qt5/qt5webengine/Config.in
@@ -42,6 +42,7 @@ config BR2_PACKAGE_QT5WEBENGINE
 	select BR2_PACKAGE_OPUS
 	select BR2_PACKAGE_WEBP
 	select BR2_PACKAGE_WEBP_DEMUX
+	select BR2_PACKAGE_WEBP_MUX
 	select BR2_PACKAGE_QT5BASE_DBUS
 	select BR2_PACKAGE_QT5BASE_EGLFS
 	select BR2_PACKAGE_QT5BASE_FONTCONFIG
diff --git a/package/qt5/qt5webengine/qt5webengine.mk b/package/qt5/qt5webengine/qt5webengine.mk
index 8987259..3824738 100644
--- a/package/qt5/qt5webengine/qt5webengine.mk
+++ b/package/qt5/qt5webengine/qt5webengine.mk
@@ -30,17 +30,35 @@ ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y)
 QT5WEBENGINE_DEPENDENCIES += host-libpng host-libnss libnss
 endif
 
+# As of qt 5.10 these options are handled as arguments to qmake instead of defines
+# The -- is needed to delineate qmake options from config options
+ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y)
+QT5WEBENGINE_QMAKEFLAGS += --
+endif
+
+ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y)
+QT5WEBENGINE_QMAKEFLAGS += -webengine-ffmpeg
+else
 QT5WEBENGINE_QMAKEFLAGS += WEBENGINE_CONFIG+=use_system_ffmpeg
+endif
 
 ifeq ($(BR2_PACKAGE_QT5WEBENGINE_PROPRIETARY_CODECS),y)
+ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y)
+QT5WEBENGINE_QMAKEFLAGS += -webengine-proprietary-codecs
+else
 QT5WEBENGINE_QMAKEFLAGS += WEBENGINE_CONFIG+=use_proprietary_codecs
 endif
+endif
 
 ifeq ($(BR2_PACKAGE_QT5WEBENGINE_ALSA),y)
 QT5WEBENGINE_DEPENDENCIES += alsa-lib
 else
+ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y)
+QT5WEBENGINE_QMAKEFLAGS += -no-webengine-alsa
+else
 QT5WEBENGINE_QMAKEFLAGS += QT_CONFIG-=alsa
 endif
+endif
 
 # 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
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [Buildroot] [PATCH v2 2/2] package/qt5/qt5webengine: fix build dependencies for autodetected packages
  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 ` Nathan Ford
  2020-02-28 15:56   ` Peter Seiderer
  2020-02-28 15:23 ` [Buildroot] [PATCH v2 1/2] package/qt5/qt5webengine: fix ffmpeg/codec/alsa option handling for latest Peter Seiderer
  1 sibling, 1 reply; 11+ messages in thread
From: Nathan Ford @ 2020-02-28 14:39 UTC (permalink / raw)
  To: buildroot

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
+
 # 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.
-- 
2.7.4

^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [Buildroot] [PATCH v2 1/2] package/qt5/qt5webengine: fix ffmpeg/codec/alsa option handling for latest
  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:23 ` Peter Seiderer
  2020-02-28 15:44   ` Nathan Ford
  1 sibling, 1 reply; 11+ messages in thread
From: Peter Seiderer @ 2020-02-28 15:23 UTC (permalink / raw)
  To: buildroot

Hello Nathan,

thanks for the new patch iteration, only minor nitpicks...

On Fri, 28 Feb 2020 09:39:14 -0500, Nathan Ford <nford@westpond.com> wrote:

> qt5engine also now requires webp mux support or the auto
> detection will fail.
>
> This patch is based on the suggested fix, and fixes, Bug #12416
>
> Signed-off-by: Nathan Ford <nford@westpond.com>
> ---
>  package/qt5/qt5webengine/Config.in       |  1 +
>  package/qt5/qt5webengine/qt5webengine.mk | 18 ++++++++++++++++++
>  2 files changed, 19 insertions(+)
>
> diff --git a/package/qt5/qt5webengine/Config.in b/package/qt5/qt5webengine/Config.in
> index 0e776ec..18e4418 100644
> --- a/package/qt5/qt5webengine/Config.in
> +++ b/package/qt5/qt5webengine/Config.in
> @@ -42,6 +42,7 @@ config BR2_PACKAGE_QT5WEBENGINE
>  	select BR2_PACKAGE_OPUS
>  	select BR2_PACKAGE_WEBP
>  	select BR2_PACKAGE_WEBP_DEMUX
> +	select BR2_PACKAGE_WEBP_MUX
>  	select BR2_PACKAGE_QT5BASE_DBUS
>  	select BR2_PACKAGE_QT5BASE_EGLFS
>  	select BR2_PACKAGE_QT5BASE_FONTCONFIG
> diff --git a/package/qt5/qt5webengine/qt5webengine.mk b/package/qt5/qt5webengine/qt5webengine.mk
> index 8987259..3824738 100644
> --- a/package/qt5/qt5webengine/qt5webengine.mk
> +++ b/package/qt5/qt5webengine/qt5webengine.mk
> @@ -30,17 +30,35 @@ ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y)
>  QT5WEBENGINE_DEPENDENCIES += host-libpng host-libnss libnss
>  endif
>
> +# As of qt 5.10 these options are handled as arguments to qmake instead of defines
> +# The -- is needed to delineate qmake options from config options

s/delineate/separate/ (but I am not a native speaker)?

> +ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y)
> +'
> +endif

First occurrence of QT5WEBENGINE_QMAKEFLAGS, so 'QT5WEBENGINE_QMAKEFLAGS = --' is
enough...

With this fixed you can add my

Reviewed-by: Peter Seiderer <ps.report@gmx.net>

Regards,
Peter

> +
> +ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y)
> +QT5WEBENGINE_QMAKEFLAGS += -webengine-ffmpeg
> +else
>  QT5WEBENGINE_QMAKEFLAGS += WEBENGINE_CONFIG+=use_system_ffmpeg
> +endif
>
>  ifeq ($(BR2_PACKAGE_QT5WEBENGINE_PROPRIETARY_CODECS),y)
> +ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y)
> +QT5WEBENGINE_QMAKEFLAGS += -webengine-proprietary-codecs
> +else
>  QT5WEBENGINE_QMAKEFLAGS += WEBENGINE_CONFIG+=use_proprietary_codecs
>  endif
> +endif
>
>  ifeq ($(BR2_PACKAGE_QT5WEBENGINE_ALSA),y)
>  QT5WEBENGINE_DEPENDENCIES += alsa-lib
>  else
> +ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y)
> +QT5WEBENGINE_QMAKEFLAGS += -no-webengine-alsa
> +else
>  QT5WEBENGINE_QMAKEFLAGS += QT_CONFIG-=alsa
>  endif
> +endif
>
>  # 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

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [Buildroot] [PATCH v2 1/2] package/qt5/qt5webengine: fix ffmpeg/codec/alsa option handling for latest
  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
  0 siblings, 1 reply; 11+ messages in thread
From: Nathan Ford @ 2020-02-28 15:44 UTC (permalink / raw)
  To: buildroot

Hello Peter,

I combined the two patches as a series, because they are related, was
that a mistake?

Should I re-send both as v3, or split them into two separate patches?

--Nate

On Fri, Feb 28, 2020 at 10:23 AM Peter Seiderer <ps.report@gmx.net> wrote:
>
> Hello Nathan,
>
> thanks for the new patch iteration, only minor nitpicks...
>
> On Fri, 28 Feb 2020 09:39:14 -0500, Nathan Ford <nford@westpond.com> wrote:
>
> > qt5engine also now requires webp mux support or the auto
> > detection will fail.
> >
> > This patch is based on the suggested fix, and fixes, Bug #12416
> >
> > Signed-off-by: Nathan Ford <nford@westpond.com>
> > ---
> >  package/qt5/qt5webengine/Config.in       |  1 +
> >  package/qt5/qt5webengine/qt5webengine.mk | 18 ++++++++++++++++++
> >  2 files changed, 19 insertions(+)
> >
> > diff --git a/package/qt5/qt5webengine/Config.in b/package/qt5/qt5webengine/Config.in
> > index 0e776ec..18e4418 100644
> > --- a/package/qt5/qt5webengine/Config.in
> > +++ b/package/qt5/qt5webengine/Config.in
> > @@ -42,6 +42,7 @@ config BR2_PACKAGE_QT5WEBENGINE
> >       select BR2_PACKAGE_OPUS
> >       select BR2_PACKAGE_WEBP
> >       select BR2_PACKAGE_WEBP_DEMUX
> > +     select BR2_PACKAGE_WEBP_MUX
> >       select BR2_PACKAGE_QT5BASE_DBUS
> >       select BR2_PACKAGE_QT5BASE_EGLFS
> >       select BR2_PACKAGE_QT5BASE_FONTCONFIG
> > diff --git a/package/qt5/qt5webengine/qt5webengine.mk b/package/qt5/qt5webengine/qt5webengine.mk
> > index 8987259..3824738 100644
> > --- a/package/qt5/qt5webengine/qt5webengine.mk
> > +++ b/package/qt5/qt5webengine/qt5webengine.mk
> > @@ -30,17 +30,35 @@ ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y)
> >  QT5WEBENGINE_DEPENDENCIES += host-libpng host-libnss libnss
> >  endif
> >
> > +# As of qt 5.10 these options are handled as arguments to qmake instead of defines
> > +# The -- is needed to delineate qmake options from config options
>
> s/delineate/separate/ (but I am not a native speaker)?
>
> > +ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y)
> > +'
> > +endif
>
> First occurrence of QT5WEBENGINE_QMAKEFLAGS, so 'QT5WEBENGINE_QMAKEFLAGS = --' is
> enough...
>
> With this fixed you can add my
>
> Reviewed-by: Peter Seiderer <ps.report@gmx.net>
>
> Regards,
> Peter
>
> > +
> > +ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y)
> > +QT5WEBENGINE_QMAKEFLAGS += -webengine-ffmpeg
> > +else
> >  QT5WEBENGINE_QMAKEFLAGS += WEBENGINE_CONFIG+=use_system_ffmpeg
> > +endif
> >
> >  ifeq ($(BR2_PACKAGE_QT5WEBENGINE_PROPRIETARY_CODECS),y)
> > +ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y)
> > +QT5WEBENGINE_QMAKEFLAGS += -webengine-proprietary-codecs
> > +else
> >  QT5WEBENGINE_QMAKEFLAGS += WEBENGINE_CONFIG+=use_proprietary_codecs
> >  endif
> > +endif
> >
> >  ifeq ($(BR2_PACKAGE_QT5WEBENGINE_ALSA),y)
> >  QT5WEBENGINE_DEPENDENCIES += alsa-lib
> >  else
> > +ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y)
> > +QT5WEBENGINE_QMAKEFLAGS += -no-webengine-alsa
> > +else
> >  QT5WEBENGINE_QMAKEFLAGS += QT_CONFIG-=alsa
> >  endif
> > +endif
> >
> >  # 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
>

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [Buildroot] [PATCH v2 2/2] package/qt5/qt5webengine: fix build dependencies for autodetected packages
  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
  0 siblings, 1 reply; 11+ messages in thread
From: Peter Seiderer @ 2020-02-28 15:56 UTC (permalink / raw)
  To: buildroot

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.

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [Buildroot] [PATCH v2 2/2] package/qt5/qt5webengine: fix build dependencies for autodetected packages
  2020-02-28 15:56   ` Peter Seiderer
@ 2020-02-28 15:59     ` Peter Seiderer
  2020-02-28 17:37       ` Nathan Ford
  0 siblings, 1 reply; 11+ messages in thread
From: Peter Seiderer @ 2020-02-28 15:59 UTC (permalink / raw)
  To: buildroot

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.
>

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [Buildroot] [PATCH v2 1/2] package/qt5/qt5webengine: fix ffmpeg/codec/alsa option handling for latest
  2020-02-28 15:44   ` Nathan Ford
@ 2020-02-28 16:04     ` Peter Seiderer
  0 siblings, 0 replies; 11+ messages in thread
From: Peter Seiderer @ 2020-02-28 16:04 UTC (permalink / raw)
  To: buildroot

Hello Nathan,

On Fri, 28 Feb 2020 10:44:41 -0500, Nathan Ford <nford@westpond.com> wrote:

> Hello Peter,
>
> I combined the two patches as a series, because they are related, was
> that a mistake?

Definitely no ;-)

>
> Should I re-send both as v3, or split them into two separate patches?

Re-send both (with the Reviewed-by tag added)...

Regards,
Peter

>
> --Nate
>
> On Fri, Feb 28, 2020 at 10:23 AM Peter Seiderer <ps.report@gmx.net> wrote:
> >
> > Hello Nathan,
> >
> > thanks for the new patch iteration, only minor nitpicks...
> >
> > On Fri, 28 Feb 2020 09:39:14 -0500, Nathan Ford <nford@westpond.com> wrote:
> >
> > > qt5engine also now requires webp mux support or the auto
> > > detection will fail.
> > >
> > > This patch is based on the suggested fix, and fixes, Bug #12416
> > >
> > > Signed-off-by: Nathan Ford <nford@westpond.com>
> > > ---
> > >  package/qt5/qt5webengine/Config.in       |  1 +
> > >  package/qt5/qt5webengine/qt5webengine.mk | 18 ++++++++++++++++++
> > >  2 files changed, 19 insertions(+)
> > >
> > > diff --git a/package/qt5/qt5webengine/Config.in b/package/qt5/qt5webengine/Config.in
> > > index 0e776ec..18e4418 100644
> > > --- a/package/qt5/qt5webengine/Config.in
> > > +++ b/package/qt5/qt5webengine/Config.in
> > > @@ -42,6 +42,7 @@ config BR2_PACKAGE_QT5WEBENGINE
> > >       select BR2_PACKAGE_OPUS
> > >       select BR2_PACKAGE_WEBP
> > >       select BR2_PACKAGE_WEBP_DEMUX
> > > +     select BR2_PACKAGE_WEBP_MUX
> > >       select BR2_PACKAGE_QT5BASE_DBUS
> > >       select BR2_PACKAGE_QT5BASE_EGLFS
> > >       select BR2_PACKAGE_QT5BASE_FONTCONFIG
> > > diff --git a/package/qt5/qt5webengine/qt5webengine.mk b/package/qt5/qt5webengine/qt5webengine.mk
> > > index 8987259..3824738 100644
> > > --- a/package/qt5/qt5webengine/qt5webengine.mk
> > > +++ b/package/qt5/qt5webengine/qt5webengine.mk
> > > @@ -30,17 +30,35 @@ ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y)
> > >  QT5WEBENGINE_DEPENDENCIES += host-libpng host-libnss libnss
> > >  endif
> > >
> > > +# As of qt 5.10 these options are handled as arguments to qmake instead of defines
> > > +# The -- is needed to delineate qmake options from config options
> >
> > s/delineate/separate/ (but I am not a native speaker)?
> >
> > > +ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y)
> > > +'
> > > +endif
> >
> > First occurrence of QT5WEBENGINE_QMAKEFLAGS, so 'QT5WEBENGINE_QMAKEFLAGS = --' is
> > enough...
> >
> > With this fixed you can add my
> >
> > Reviewed-by: Peter Seiderer <ps.report@gmx.net>
> >
> > Regards,
> > Peter
> >
> > > +
> > > +ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y)
> > > +QT5WEBENGINE_QMAKEFLAGS += -webengine-ffmpeg
> > > +else
> > >  QT5WEBENGINE_QMAKEFLAGS += WEBENGINE_CONFIG+=use_system_ffmpeg
> > > +endif
> > >
> > >  ifeq ($(BR2_PACKAGE_QT5WEBENGINE_PROPRIETARY_CODECS),y)
> > > +ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y)
> > > +QT5WEBENGINE_QMAKEFLAGS += -webengine-proprietary-codecs
> > > +else
> > >  QT5WEBENGINE_QMAKEFLAGS += WEBENGINE_CONFIG+=use_proprietary_codecs
> > >  endif
> > > +endif
> > >
> > >  ifeq ($(BR2_PACKAGE_QT5WEBENGINE_ALSA),y)
> > >  QT5WEBENGINE_DEPENDENCIES += alsa-lib
> > >  else
> > > +ifeq ($(BR2_PACKAGE_QT5_VERSION_LATEST),y)
> > > +QT5WEBENGINE_QMAKEFLAGS += -no-webengine-alsa
> > > +else
> > >  QT5WEBENGINE_QMAKEFLAGS += QT_CONFIG-=alsa
> > >  endif
> > > +endif
> > >
> > >  # 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
> >
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [Buildroot] [PATCH v2 2/2] package/qt5/qt5webengine: fix build dependencies for autodetected packages
  2020-02-28 15:59     ` Peter Seiderer
@ 2020-02-28 17:37       ` Nathan Ford
  2020-02-28 19:24         ` Peter Seiderer
  0 siblings, 1 reply; 11+ messages in thread
From: Nathan Ford @ 2020-02-28 17:37 UTC (permalink / raw)
  To: buildroot

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@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.
> >
>

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [Buildroot] [PATCH v2 2/2] package/qt5/qt5webengine: fix build dependencies for autodetected packages
  2020-02-28 17:37       ` Nathan Ford
@ 2020-02-28 19:24         ` Peter Seiderer
  2020-02-28 20:23           ` Peter Seiderer
  0 siblings, 1 reply; 11+ messages in thread
From: Peter Seiderer @ 2020-02-28 19:24 UTC (permalink / raw)
  To: buildroot

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?

> 
> 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

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [Buildroot] [PATCH v2 2/2] package/qt5/qt5webengine: fix build dependencies for autodetected packages
  2020-02-28 19:24         ` Peter Seiderer
@ 2020-02-28 20:23           ` Peter Seiderer
  2020-02-28 22:04             ` Nathan Ford
  0 siblings, 1 reply; 11+ messages in thread
From: Peter Seiderer @ 2020-02-28 20:23 UTC (permalink / raw)
  To: buildroot

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  
> 

^ permalink raw reply	[flat|nested] 11+ messages in thread

* [Buildroot] [PATCH v2 2/2] package/qt5/qt5webengine: fix build dependencies for autodetected packages
  2020-02-28 20:23           ` Peter Seiderer
@ 2020-02-28 22:04             ` Nathan Ford
  0 siblings, 0 replies; 11+ messages in thread
From: Nathan Ford @ 2020-02-28 22:04 UTC (permalink / raw)
  To: buildroot

Hello Peter,

On Fri, Feb 28, 2020 at 3:23 PM Peter Seiderer <ps.report@gmx.net> wrote:
>
> 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)...
> >

I get a linker error when I enable -webengine-icu. Looks like when ICU
is enabled the build gets confused between target and host maybe.

FAILED: v8_snapshot/mksnapshot
/home/nate/buildroot/output_container/host/bin/python2
"../../3rdparty/chromium/build/toolchain/gcc_link_wrapper.py"
--output="v8_snapshot/mksnapshot" -- /usr/bin/g++ -pie
-Wl,--fatal-warnings -Wl,--build-id=sha1 -fPIC -Wl,-z,noexecstack
-Wl,-z,now -Wl,-z,relro -Wl,-z,defs -Wl,--as-needed -m64
-Wl,-rpath-link=v8_snapshot -Wl,--disable-new-dtags -Wl,-O2
-Wl,--gc-sections
-L/home/nate/buildroot/output_container/host/x86_64-buildroot-linux-gnu/sysroot/usr/lib
-o "v8_snapshot/mksnapshot" -Wl,--start-group
@"v8_snapshot/mksnapshot.rsp"  -Wl,--end-group   -ldl -lpthread -lrt
-licui18n -licuuc -licudata
/usr/bin/ld: cannot find /lib64/libm.so.6
/usr/bin/ld: cannot find /usr/lib64/libmvec_nonshared.a
/usr/bin/ld: cannot find /lib64/libmvec.so.1

> > >
> > > 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"
> > >       |  ^~~~~

Correct. libxml does not enable icu without something like the following:

diff --git a/package/libxml2/libxml2.mk b/package/libxml2/libxml2.mk
index ea6a8c1..89ff733 100644
--- a/package/libxml2/libxml2.mk
+++ b/package/libxml2/libxml2.mk
@@ -49,6 +49,10 @@ else
 LIBXML2_CONF_OPTS += --without-iconv
 endif

+ifeq ($(BR2_PACKAGE_ICU),y)
+LIBXML2_CONF_OPTS += --with-icu
+endif
+
 $(eval $(autotools-package))
 $(eval $(host-autotools-package))

--Nate


> >
> > 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
> >
>

^ permalink raw reply related	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2020-02-28 22:04 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
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
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

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.