[OE-core] [PATCH] qt4: Added support for QtMobility 1.2

Dmitry Cherukhin dima_ch at emcraft.com
Wed Sep 21 12:19:12 UTC 2011


Added two recipes:
1) qt-mobility-x11 builds the QtMobility 1.2 package
   on the basis of qt4-x11-free;
2) qt-mobility-embedded builds the QtMobility 1.2 package
   on the basis of qt4-embedded.

Signed-off-by: Dmitry Cherukhin <dima_ch at emcraft.com>
---
 meta/recipes-qt/qt4/files/qtm_qtmobility_pro.patch |   19 ++++++++
 .../qt4/files/qtme_connectivity_pro.patch          |   12 +++++
 meta/recipes-qt/qt4/files/qtme_gstreamer_pro.patch |   11 +++++
 .../qt4/files/qtme_staticconfig_pri.patch          |   18 ++++++++
 .../qt4/files/qtmx_staticconfig_pri.patch          |   10 ++++
 meta/recipes-qt/qt4/qt-mobility-embedded_1.2.0.bb  |   12 +++++
 meta/recipes-qt/qt4/qt-mobility-x11_1.2.0.bb       |   10 ++++
 meta/recipes-qt/qt4/qt-mobility_1.2.0.inc          |   44 ++++++++++++++++++++
 8 files changed, 136 insertions(+), 0 deletions(-)
 create mode 100644 meta/recipes-qt/qt4/files/qtm_qtmobility_pro.patch
 create mode 100644 meta/recipes-qt/qt4/files/qtme_connectivity_pro.patch
 create mode 100644 meta/recipes-qt/qt4/files/qtme_gstreamer_pro.patch
 create mode 100644 meta/recipes-qt/qt4/files/qtme_staticconfig_pri.patch
 create mode 100644 meta/recipes-qt/qt4/files/qtmx_staticconfig_pri.patch
 create mode 100644 meta/recipes-qt/qt4/qt-mobility-embedded_1.2.0.bb
 create mode 100644 meta/recipes-qt/qt4/qt-mobility-x11_1.2.0.bb
 create mode 100644 meta/recipes-qt/qt4/qt-mobility_1.2.0.inc

diff --git a/meta/recipes-qt/qt4/files/qtm_qtmobility_pro.patch b/meta/recipes-qt/qt4/files/qtm_qtmobility_pro.patch
new file mode 100644
index 0000000..740e9cb
--- /dev/null
+++ b/meta/recipes-qt/qt4/files/qtm_qtmobility_pro.patch
@@ -0,0 +1,19 @@
+--- qt-mobility-opensource-src-1.0.0/qtmobility.pro.orig	2010-05-21 14:20:19.547363661 +0200
++++ qt-mobility-opensource-src-1.0.0/qtmobility.pro	2010-05-21 14:22:01.967353682 +0200
+@@ -53,15 +53,6 @@ win32:!contains(CONFIG_WIN32,build_all) 
+    }
+ }
+ 
+-lessThan(QT_MAJOR_VERSION, 4) {
+-    error(Qt Mobility requires Qt 4.6 or higher. Qt $${QT_VERSION} was found.);
+-}
+-
+-contains(QT_MAJOR_VERSION, 4):lessThan(QT_MINOR_VERSION, 6) {
+-    error(Qt Mobility requires Qt 4.6 or higher. Qt $${QT_VERSION} was found.);
+-}
+-
+-
+ # MCL builds for Symbian do not run configure and require some manual setup steps.
+ # This test permits SD builds to skip installation of mobility.prf from within qmake.
+ # It is installed in a separate step. MCL builds for SD must set the
+
diff --git a/meta/recipes-qt/qt4/files/qtme_connectivity_pro.patch b/meta/recipes-qt/qt4/files/qtme_connectivity_pro.patch
new file mode 100644
index 0000000..d4c8938
--- /dev/null
+++ b/meta/recipes-qt/qt4/files/qtme_connectivity_pro.patch
@@ -0,0 +1,12 @@
+--- qt-mobility-opensource-src-1.2.0/src/connectivity/connectivity.pro.old	2011-05-10 10:06:11.000000000 +0200
++++ qt-mobility-opensource-src-1.2.0/src/connectivity/connectivity.pro	2011-09-17 12:11:17.000000000 +0200
+@@ -3,7 +3,8 @@
+ TARGET   = QtConnectivity
+ 
+ include(../../common.pri)
+-DEFINES += QT_BUILD_CONNECTIVITY_LIB QT_MAKEDLL
++DEFINES += QT_BUILD_CONNECTIVITY_LIB QT_MAKEDLL QT_NO_DBUS
++QT_CONFIG -= dbus
+ 
+ QT = core
+ 
diff --git a/meta/recipes-qt/qt4/files/qtme_gstreamer_pro.patch b/meta/recipes-qt/qt4/files/qtme_gstreamer_pro.patch
new file mode 100644
index 0000000..5d436d6
--- /dev/null
+++ b/meta/recipes-qt/qt4/files/qtme_gstreamer_pro.patch
@@ -0,0 +1,11 @@
+--- qt-mobility-opensource-src-1.2.0/plugins/multimedia/gstreamer/gstreamer.pro.orig	2011-09-13 09:19:05.000000000 +0200
++++ qt-mobility-opensource-src-1.2.0/plugins/multimedia/gstreamer/gstreamer.pro	2011-09-13 09:37:58.609252481 +0200
+@@ -81,7 +81,7 @@
+     qgstutils.cpp
+ 
+ 
+-!win32:!embedded:!mac:!symbian:!simulator:!contains(QT_CONFIG, qpa) {
++!win32:!embedded:!mac:!symbian:!simulator:!contains(QT_CONFIG, qpa):!contains(qt_embedded,yes) {
+     LIBS += -lXv -lX11 -lXext
+ 
+     HEADERS += \
diff --git a/meta/recipes-qt/qt4/files/qtme_staticconfig_pri.patch b/meta/recipes-qt/qt4/files/qtme_staticconfig_pri.patch
new file mode 100644
index 0000000..dc9af16
--- /dev/null
+++ b/meta/recipes-qt/qt4/files/qtme_staticconfig_pri.patch
@@ -0,0 +1,18 @@
+--- qt-mobility-opensource-src-1.2.0/staticconfig.pri.orig	2011-05-10 10:06:13.000000000 +0200
++++ qt-mobility-opensource-src-1.2.0/staticconfig.pri	2011-09-13 09:06:06.365700519 +0200
+@@ -7,9 +7,15 @@
+ # This has the disadvantage that shadow builds are not supported for symbian
+ # but they are on other platforms.
+ 
++QT_CONFIG += dbus
++QT_LIBINFIX = E
++qt_embedded = yes
+ 
+ isEmpty(QT_MOBILITY_SOURCE_TREE):QT_MOBILITY_SOURCE_TREE = $$PWD 
+ isEmpty(QT_MOBILITY_BUILD_TREE):QT_MOBILITY_BUILD_TREE = $$PWD 
+ 
+ #now include the dynamic config
+ include($$QT_MOBILITY_BUILD_TREE/config.pri)
++
++gstreamer-photography_enabled = no
++
diff --git a/meta/recipes-qt/qt4/files/qtmx_staticconfig_pri.patch b/meta/recipes-qt/qt4/files/qtmx_staticconfig_pri.patch
new file mode 100644
index 0000000..f130125
--- /dev/null
+++ b/meta/recipes-qt/qt4/files/qtmx_staticconfig_pri.patch
@@ -0,0 +1,10 @@
+--- qt-mobility-opensource-src-1.2.0/staticconfig.pri.orig	2011-05-10 10:06:13.000000000 +0200
++++ qt-mobility-opensource-src-1.2.0/staticconfig.pri	2011-09-09 17:18:09.438411521 +0200
+@@ -7,6 +7,7 @@
+ # This has the disadvantage that shadow builds are not supported for symbian
+ # but they are on other platforms.
+ 
++QT_CONFIG += dbus
+ 
+ isEmpty(QT_MOBILITY_SOURCE_TREE):QT_MOBILITY_SOURCE_TREE = $$PWD 
+ isEmpty(QT_MOBILITY_BUILD_TREE):QT_MOBILITY_BUILD_TREE = $$PWD 
diff --git a/meta/recipes-qt/qt4/qt-mobility-embedded_1.2.0.bb b/meta/recipes-qt/qt4/qt-mobility-embedded_1.2.0.bb
new file mode 100644
index 0000000..03c1c67
--- /dev/null
+++ b/meta/recipes-qt/qt4/qt-mobility-embedded_1.2.0.bb
@@ -0,0 +1,12 @@
+DESCRIPTION = "Qt Mobility 1.2.0 - version for Qt/Embedded"
+DEPENDS = "qt4-embedded"
+SECTION = "libs"
+qtm_dir = "qtopia"
+qtm_glflags := "-=opengl"
+
+inherit qt4e
+require qt-mobility_${PV}.inc
+
+SRC_URI += "file://qtme_staticconfig_pri.patch;patch=1 \
+	    file://qtme_gstreamer_pro.patch;patch=1 \
+	    file://qtme_connectivity_pro.patch;patch=1 "
diff --git a/meta/recipes-qt/qt4/qt-mobility-x11_1.2.0.bb b/meta/recipes-qt/qt4/qt-mobility-x11_1.2.0.bb
new file mode 100644
index 0000000..b790508
--- /dev/null
+++ b/meta/recipes-qt/qt4/qt-mobility-x11_1.2.0.bb
@@ -0,0 +1,10 @@
+DESCRIPTION = "Qt Mobility 1.2.0 - version for Qt/X11"
+DEPENDS = "qt4-x11-free"
+SECTION = "x11/libs"
+qtm_dir = "qt4"
+qtm_glflags := "${@base_contains('DISTRO_FEATURES', 'opengl', '+=opengl', '-=opengl', d)} "
+
+inherit qt4x11
+require qt-mobility_${PV}.inc
+
+SRC_URI += "file://qtmx_staticconfig_pri.patch;patch=1"
diff --git a/meta/recipes-qt/qt4/qt-mobility_1.2.0.inc b/meta/recipes-qt/qt4/qt-mobility_1.2.0.inc
new file mode 100644
index 0000000..04cab20
--- /dev/null
+++ b/meta/recipes-qt/qt4/qt-mobility_1.2.0.inc
@@ -0,0 +1,44 @@
+HOMEPAGE = "http://qt.nokia.com"
+DEPENDS += "pulseaudio"
+
+LICENSE = "LGPLv2.1"
+LIC_FILES_CHKSUM = "file://LICENSE.LGPL;md5=fbc093901857fcd118f065f900982c24 \
+		    file://LGPL_EXCEPTION.txt;md5=411080a56ff917a5a1aa08c98acae354"
+
+SRC_URI = "http://get.qt.nokia.com/qt/add-ons/qt-mobility-opensource-src-${PV}.tar.gz \
+		    file://qtm_qtmobility_pro.patch;patch=1 "
+
+SRC_URI[md5sum]="ea5db5a8d3dd4709c2926dceda646bd8"
+SRC_URI[sha256sum]="ee3c88975e04139ac9589f76d4be646d44fcbc4c8c1cf2db621abc154cf0ba44"
+
+S = "${WORKDIR}/qt-mobility-opensource-src-${PV}"
+
+qtm_bin := "/usr/bin"
+qtm_lib := "/usr/lib"
+qtm_examples := "/usr/bin/${qtm_dir}/examples/qtmobility"
+qtm_demos := "/usr/bin/${qtm_dir}/demos/qtmobility"
+qtm_plugins := "/usr/lib/${qtm_dir}/plugins/qtmobility"
+
+do_configure_prepend() {
+	./configure -qmake-exec qmake2 -prefix /usr -examples -demos
+	echo QT_MOBILITY_BIN = ${qtm_bin} >>./config.pri
+	echo QT_MOBILITY_LIB = ${qtm_lib} >>./config.pri
+	echo QT_MOBILITY_PLUGINS = ${qtm_plugins} >>./config.pri
+	echo QT_MOBILITY_EXAMPLES = ${qtm_examples} >>./config.pri
+	echo QT_MOBILITY_DEMOS = ${qtm_demos} >>./config.pri
+	echo QT_CONFIG ${qtm_glflags} >>./config.pri
+}
+
+do_install() {
+        oe_runmake install INSTALL_ROOT=${D}
+	for NAME in */*.prf
+	do
+	    install -m 644 -D -T $NAME ${D}/usr/share/${qtm_dir}/mkspecs/features/`basename $NAME`
+        done
+}
+
+PACKAGES = "${PN}-dbg ${PN} ${PN}-dev"
+
+FILES_${PN}-dbg = "${qtm_bin}/.debug ${qtm_examples}/.debug ${qtm_demos}/.debug ${qtm_lib}/.debug ${qtm_plugins}/*/.debug /usr/src/debug"
+FILES_${PN} = "${qtm_bin} ${qtm_examples} ${qtm_demos} ${qtm_lib}/*.so.1* ${qtm_plugins}"
+FILES_${PN}-dev = "/usr"
-- 
1.7.6





More information about the Openembedded-core mailing list