Patchwork [meta-qt5] qtwebkit: add packageconfig for qtmultimedia

login
register
mail settings
Submitter Jonathan Liu
Date March 30, 2014, 1:22 p.m.
Message ID <1396185772-20185-1-git-send-email-net147@gmail.com>
Download mbox | patch
Permalink /patch/69643/
State Accepted, archived
Headers show

Comments

Jonathan Liu - March 30, 2014, 1:22 p.m.
Signed-off-by: Jonathan Liu <net147@gmail.com>
---
 recipes-qt/qt5/qtwebkit.inc | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)
Martin Jansa - April 1, 2014, 12:59 p.m.
On Mon, Mar 31, 2014 at 12:22:52AM +1100, Jonathan Liu wrote:
> Signed-off-by: Jonathan Liu <net147@gmail.com>
> ---
>  recipes-qt/qt5/qtwebkit.inc | 6 +++++-
>  1 file changed, 5 insertions(+), 1 deletion(-)
> 
> diff --git a/recipes-qt/qt5/qtwebkit.inc b/recipes-qt/qt5/qtwebkit.inc
> index 90bd981..a6322cb 100644
> --- a/recipes-qt/qt5/qtwebkit.inc
> +++ b/recipes-qt/qt5/qtwebkit.inc
> @@ -7,10 +7,11 @@ LIC_FILES_CHKSUM = "file://Source/WebCore/rendering/RenderApplet.h;endline=22;md
>  
>  DEPENDS += "qtbase qtdeclarative icu ruby-native sqlite3 glib-2.0 libxslt"
>  
> -PACKAGECONFIG ??= "gstreamer qtlocation qtsensors"
> +PACKAGECONFIG ??= "gstreamer qtlocation qtmultimedia qtsensors"
>  PACKAGECONFIG[gstreamer] = ",,gstreamer1.0 gstreamer1.0-plugins-base"
>  PACKAGECONFIG[gstreamer010] = ",,gstreamer gst-plugins-base"
>  PACKAGECONFIG[qtlocation] = ",,qtlocation"
> +PACKAGECONFIG[qtmultimedia] = ",,qtmultimedia"
>  PACKAGECONFIG[qtsensors] = ",,qtsensors"
>  
>  do_configure_prepend() {
> @@ -20,6 +21,8 @@ do_configure_prepend() {
>      sed -e 's/\s\(packagesExist(".*\<gstreamer-0.10\>.*")\)/ OE_GSTREAMER010_ENABLED:\1/' -i ${S}/Tools/qmake/mkspecs/features/features.prf
>      # disable qtlocation test if it isn't enabled by PACKAGECONFIG
>      sed -e 's/\s\(qtHaveModule(positioning)\)/ OE_QTLOCATION_ENABLED:\1/' -i ${S}/Tools/qmake/mkspecs/features/features.prf
> +    # disable qtmultimedia test if it isn't enabled by PACKAGECONFIG
> +    sed -e 's/(video):\(qtHaveModule(multimediawidgets)\)/(video):OE_QTMULTIMEDIA_ENABLED:\1/' -i ${S}/Tools/qmake/mkspecs/features/features.prf
>      # disable qtsensors test if it isn't enabled by PACKAGECONFIG
>      sed -e 's/\s\(qtHaveModule(sensors)\)/ OE_QTSENSORS_ENABLED:\1/' -i ${S}/Tools/qmake/mkspecs/features/features.prf
>  }
> @@ -27,6 +30,7 @@ do_configure_prepend() {
>  EXTRA_QMAKEVARS_PRE += "${@base_contains('PACKAGECONFIG', 'gstreamer', 'CONFIG+=OE_GSTREAMER_ENABLED', '', d)}"
>  EXTRA_QMAKEVARS_PRE += "${@base_contains('PACKAGECONFIG', 'gstreamer010', 'CONFIG+=OE_GSTREAMER010_ENABLED', '', d)}"
>  EXTRA_QMAKEVARS_PRE += "${@base_contains('PACKAGECONFIG', 'qtlocation', 'CONFIG+=OE_QTLOCATION_ENABLED', '', d)}"
> +EXTRA_QMAKEVARS_PRE += "${@base_contains('PACKAGECONFIG', 'qtmultimedia', 'CONFIG+=OE_QTMULTIMEDIA_ENABLED', '', d)}"
>  EXTRA_QMAKEVARS_PRE += "${@base_contains('PACKAGECONFIG', 'qtsensors', 'CONFIG+=OE_QTSENSORS_ENABLED', '', d)}"
>  
>  # qtwebkit gets terribly big when linking with all debug info, disable by default

can you check qtwebkit-examples recipe if it needs similar change (or maybe we can just add qtmultimedia dependency there)?

It failed in last build:

| In file included from /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/sysroots/qemuarm/usr/include/qt5/QtWebKitWidgets/QtWebKitWidgets:3:0,
|                  from /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/work/armv5te-oe-linux-gnueabi/qtwebkit-examples/5.2.1-r0/qtwebkit-examples-opensource-src-5.2.1/examples/webkitwidgets/embedded/anomaly/src/BrowserView.cpp:46:
| /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/sysroots/qemuarm/usr/include/qt5/QtWebKitWidgets/QtWebKitWidgetsDepends:4:51: fatal error: QtMultimediaWidgets/QtMultimediaWidgets: No such file or directory
|  #include <QtMultimediaWidgets/QtMultimediaWidgets>
|                                                    ^
| compilation terminated.
| make[4]: *** [.obj/BrowserView.o] Error 1
| make[4]: Leaving directory `/home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/work/armv5te-oe-linux-gnueabi/qtwebkit-examples/5.2.1-r0/build/examples/webkitwidgets/embedded/anomaly'
| make[3]: *** [sub-anomaly-make_first] Error 2
| make[3]: Leaving directory `/home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/work/armv5te-oe-linux-gnueabi/qtwebkit-examples/5.2.1-r0/build/examples/webkitwidgets/embedded'
| make[2]: *** [sub-embedded-make_first] Error 2
| make[2]: *** Waiting for unfinished jobs....
| compiling .moc/moc_plotwidget.cpp
| linking framecapture
| /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/sysroots/x86_64-linux/usr/libexec/armv5te-oe-linux-gnueabi/gcc/arm-oe-linux-gnueabi/4.8.2/ld: error: cannot find -lQt5MultimediaWidgets
| /home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/sysroots/x86_64-linux/usr/libexec/armv5te-oe-linux-gnueabi/gcc/arm-oe-linux-gnueabi/4.8.2/ld: error: cannot find -lQt5Multimedia
| collect2: error: ld returned 1 exit status
| make[3]: *** [framecapture] Error 1

Patch

diff --git a/recipes-qt/qt5/qtwebkit.inc b/recipes-qt/qt5/qtwebkit.inc
index 90bd981..a6322cb 100644
--- a/recipes-qt/qt5/qtwebkit.inc
+++ b/recipes-qt/qt5/qtwebkit.inc
@@ -7,10 +7,11 @@  LIC_FILES_CHKSUM = "file://Source/WebCore/rendering/RenderApplet.h;endline=22;md
 
 DEPENDS += "qtbase qtdeclarative icu ruby-native sqlite3 glib-2.0 libxslt"
 
-PACKAGECONFIG ??= "gstreamer qtlocation qtsensors"
+PACKAGECONFIG ??= "gstreamer qtlocation qtmultimedia qtsensors"
 PACKAGECONFIG[gstreamer] = ",,gstreamer1.0 gstreamer1.0-plugins-base"
 PACKAGECONFIG[gstreamer010] = ",,gstreamer gst-plugins-base"
 PACKAGECONFIG[qtlocation] = ",,qtlocation"
+PACKAGECONFIG[qtmultimedia] = ",,qtmultimedia"
 PACKAGECONFIG[qtsensors] = ",,qtsensors"
 
 do_configure_prepend() {
@@ -20,6 +21,8 @@  do_configure_prepend() {
     sed -e 's/\s\(packagesExist(".*\<gstreamer-0.10\>.*")\)/ OE_GSTREAMER010_ENABLED:\1/' -i ${S}/Tools/qmake/mkspecs/features/features.prf
     # disable qtlocation test if it isn't enabled by PACKAGECONFIG
     sed -e 's/\s\(qtHaveModule(positioning)\)/ OE_QTLOCATION_ENABLED:\1/' -i ${S}/Tools/qmake/mkspecs/features/features.prf
+    # disable qtmultimedia test if it isn't enabled by PACKAGECONFIG
+    sed -e 's/(video):\(qtHaveModule(multimediawidgets)\)/(video):OE_QTMULTIMEDIA_ENABLED:\1/' -i ${S}/Tools/qmake/mkspecs/features/features.prf
     # disable qtsensors test if it isn't enabled by PACKAGECONFIG
     sed -e 's/\s\(qtHaveModule(sensors)\)/ OE_QTSENSORS_ENABLED:\1/' -i ${S}/Tools/qmake/mkspecs/features/features.prf
 }
@@ -27,6 +30,7 @@  do_configure_prepend() {
 EXTRA_QMAKEVARS_PRE += "${@base_contains('PACKAGECONFIG', 'gstreamer', 'CONFIG+=OE_GSTREAMER_ENABLED', '', d)}"
 EXTRA_QMAKEVARS_PRE += "${@base_contains('PACKAGECONFIG', 'gstreamer010', 'CONFIG+=OE_GSTREAMER010_ENABLED', '', d)}"
 EXTRA_QMAKEVARS_PRE += "${@base_contains('PACKAGECONFIG', 'qtlocation', 'CONFIG+=OE_QTLOCATION_ENABLED', '', d)}"
+EXTRA_QMAKEVARS_PRE += "${@base_contains('PACKAGECONFIG', 'qtmultimedia', 'CONFIG+=OE_QTMULTIMEDIA_ENABLED', '', d)}"
 EXTRA_QMAKEVARS_PRE += "${@base_contains('PACKAGECONFIG', 'qtsensors', 'CONFIG+=OE_QTSENSORS_ENABLED', '', d)}"
 
 # qtwebkit gets terribly big when linking with all debug info, disable by default