Skip to contentSkip to conversation

qt4-native, Qt QA fixes

PATCH Applied Paul Eggleton 3 participants 7 messages Aug 15, 2011

lore
Share & tools
lore
#0 lore raw

cover qt4-native, Qt QA fixes

Bring over qt4-native from OE and tidy up some QA warnings.

The following changes since commit d126e22f6b3f27196144f87e22b36ebccd6dea65:

rt-tests: use an explicit commit ID (2011-08-12 17:51:18 +0100)

are available in the git repository at:
git://git.openembedded.org/openembedded-core-contrib paule/qt4-fixes4
http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=paule/qt4-fixes4

Paul Eggleton (4):
qt4: replace qt4-tools-native with qt4-native
qt4-native: restore build of uic3, qdbuscpp2xml and qdbusxml2cpp
qt4: package QML plugins and correct their install directory
qt4: delete unpackaged uic3 to avoid unpackaged file warning

 meta/recipes-qt/qt4/qt4-embedded.inc               |    2 +-
 .../qt4/{qt4-tools-native.inc => qt4-native.inc}   |   25 ++++++++++++++-----
 ...4-tools-native_4.7.3.bb => qt4-native_4.7.3.bb} |    2 +-
 meta/recipes-qt/qt4/qt4-x11-free.inc               |    2 +-
 meta/recipes-qt/qt4/qt4.inc                        |   15 +++++++++--
 5 files changed, 33 insertions(+), 13 deletions(-)
 rename meta/recipes-qt/qt4/{qt4-tools-native.inc => qt4-native.inc} (82%)
 rename meta/recipes-qt/qt4/{qt4-tools-native_4.7.3.bb => qt4-native_4.7.3.bb} (92%)
Signature · 1 line
1.7.4.1
#1 lore raw

PATCH 1/4 qt4: replace qt4-tools-native with qt4-native

Installs native versions of the Qt libraries in addition to the tools, allowing compilation of external native tools that require Qt libs. PROVIDES qt4-tools-native so it should be a drop-in replacement.

Developed with reference to the corresponding qt4-native changes in OE.

---
 .../qt4/{qt4-tools-native.inc => qt4-native.inc}   |   20 ++++++++++++++------
 ...4-tools-native_4.7.3.bb => qt4-native_4.7.3.bb} |    2 +-
 2 files changed, 15 insertions(+), 7 deletions(-)
 rename meta/recipes-qt/qt4/{qt4-tools-native.inc => qt4-native.inc} (87%)
 rename meta/recipes-qt/qt4/{qt4-tools-native_4.7.3.bb => qt4-native_4.7.3.bb} (92%)
meta/recipes-qt/qt4/qt4-native.inc renamed from meta/recipes-qt/qt4/qt4-tools-native.inc +14 -6
similarity index 87%
rename from meta/recipes-qt/qt4/qt4-tools-native.inc
rename to meta/recipes-qt/qt4/qt4-native.inc
index c4a58ed..3baea20 100644
@@ -1,7 +1,8 @@
-DESCRIPTION = "Native tools for Qt/[X11|Mac|Embedded] version 4.x"
+DESCRIPTION = "Native version of Qt/[X11|Mac|Embedded]"
 DEPENDS = "zlib-native dbus-native"
 SECTION = "libs"
 HOMEPAGE = "http://qt.nokia.com"
+PROVIDES = "qt4-tools-native"
 
 LICENSE = "LGPLv2.1 | GPLv3"
 LIC_FILES_CHKSUM = "file://LICENSE.LGPL;md5=fbc093901857fcd118f065f900982c24 \
@@ -25,11 +26,11 @@ EXTRA_OECONF = "-prefix ${prefix} \
                 -no-libjpeg -no-libpng -no-libmng -no-libtiff \
                 -no-accessibility \
                 -no-cups \
-                -no-exceptions  \
                 -no-nas-sound \
                 -no-nis -no-openssl \
-                -verbose -release -static \
+                -verbose -release \
                 -embedded -no-freetype -no-glib -no-iconv \
+                -exceptions -xmlpatterns \
                 -qt3support"
 
 # yank default -e, otherwise we get the following error:
@@ -44,12 +45,15 @@ TOBUILD = "\
   src/tools/moc \
   src/corelib \
   src/sql \
-  src/dbus \
-  src/qt3support \
   src/xml \
+  src/network \
   src/tools/uic \
   src/tools/rcc \
-  src/network \
+  src/xmlpatterns \
+  src/dbus \
+  src/gui \
+  src/testlib \
+  src/qt3support \
   tools/linguist/lrelease \
   tools/linguist/lupdate \
 "
@@ -73,4 +77,8 @@ do_install() {
 	cp -f ${WORKDIR}/g++.conf ${WORKDIR}/linux.conf ${D}${datadir}/qt4/mkspecs/common/
 
 	install -m 0644 tools/porting/src/q3porting.xml ${D}${datadir}/qt4/
+
+	for i in ${TOBUILD}; do
+		cd ${S}/$i && oe_runmake install INSTALL_ROOT=${D}
+	done
 }
meta/recipes-qt/qt4/qt4-native_4.7.3.bb renamed from meta/recipes-qt/qt4/qt4-tools-native_4.7.3.bb +1 -1
similarity index 92%
rename from meta/recipes-qt/qt4/qt4-tools-native_4.7.3.bb
rename to meta/recipes-qt/qt4/qt4-native_4.7.3.bb
index 8d292af..5c84d4d 100644
@@ -1,4 +1,4 @@
-require qt4-tools-native.inc
+require qt4-native.inc
 
 PR = "${INC_PR}.1"
 
Signature · 1 line
1.7.4.1
#2 lore raw

PATCH 2/4 qt4-native: restore build of uic3, qdbuscpp2xml and qdbusxml2cpp

In reply to Paul Eggleton

These tools are required to build some external utilities (such as those found in KDE). We avoid building qdbus and qdbusviewer as these are not required.

---
 meta/recipes-qt/qt4/qt4-native.inc |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletions(-)
meta/recipes-qt/qt4/qt4-native.inc +4 -1
index 3baea20..7ed6a63 100644
@@ -54,8 +54,11 @@ TOBUILD = "\
   src/gui \
   src/testlib \
   src/qt3support \
+  src/tools/uic3 \
   tools/linguist/lrelease \
   tools/linguist/lupdate \
+  tools/qdbus/qdbuscpp2xml \
+  tools/qdbus/qdbusxml2cpp \
 "
 
 do_compile() {
@@ -67,7 +70,7 @@ do_compile() {
 do_install() {
 	install -d ${D}${bindir}/
 	install -m 0755 bin/qmake ${D}${bindir}/qmake2
-	for i in moc uic rcc lrelease lupdate; do
+	for i in moc uic uic3 rcc lrelease lupdate qdbuscpp2xml qdbusxml2cpp; do
 		install -m 0755 bin/${i} ${D}${bindir}/${i}4
 	done
     
Signature · 1 line
1.7.4.1
#3 lore raw

PATCH 3/4 qt4: package QML plugins and correct their install directory

In reply to Paul Eggleton

QML components from Qt were installed to ${prefix} before and never got packaged. This is now fixed and QML components are now installed into ${libdir}/${QT_DIR_NAME}/imports and packaged into qt4-*-qml-plugins package.

Additionally qmlviewer and the examples/demos are now dependent upon these plugins as needed.

Originally based on OE commit 4adf97be8c5b5f71ad92095a19968af534baa9e2 by Simon Busch <[email protected]>

---
 meta/recipes-qt/qt4/qt4-embedded.inc |    2 +-
 meta/recipes-qt/qt4/qt4-x11-free.inc |    2 +-
 meta/recipes-qt/qt4/qt4.inc          |   14 +++++++++++---
 3 files changed, 13 insertions(+), 5 deletions(-)
meta/recipes-qt/qt4/qt4-embedded.inc +1 -1
index 9b7e071..d464a1d 100644
@@ -3,7 +3,7 @@ SECTION = "libs"
 LICENSE = "LGPLv2.1 | GPLv3"
 HOMEPAGE = "http://qt.nokia.com"
 DEPENDS += "directfb tslib"
-INC_PR = "r28"
+INC_PR = "r29"
 
 QT_BASE_NAME ?= "qt4-embedded"
 QT_BASE_LIB  ?= "libqt-embedded"
meta/recipes-qt/qt4/qt4-x11-free.inc +1 -1
index b8633de..234cb89 100644
@@ -5,7 +5,7 @@ HOMEPAGE = "http://qt.nokia.com"
 SECTION = "x11/libs"
 DEPENDS += "virtual/libgl virtual/libx11 fontconfig libxft libxext libxrender libxrandr libxcursor"
 
-INC_PR = "r25"
+INC_PR = "r26"
 
 QT_GLFLAGS ?= "${@base_contains('DISTRO_FEATURES', 'opengl', '-opengl', '-no-opengl', d)} "
 QT_GLFLAGS_qemux86 = "-opengl"
meta/recipes-qt/qt4/qt4.inc +11 -3
index 881b445..815ebc2 100644
@@ -98,7 +98,8 @@ OTHER_PACKAGES = "\
              ${QT_BASE_NAME}-pixeltool \
              ${QT_BASE_NAME}-qmlviewer \
              ${QT_BASE_NAME}-xmlpatterns \
-             ${QT_BASE_NAME}-qt3to4"
+             ${QT_BASE_NAME}-qt3to4 \
+             ${QT_BASE_NAME}-qml-plugins"
 
 PACKAGES += "${LIB_PACKAGES} ${DEV_PACKAGES} ${DBG_PACKAGES} ${OTHER_PACKAGES}"
 PACKAGES_DYNAMIC = "${QT_BASE_NAME}-plugin-* ${QT_BASE_NAME}-translation-* ${QT_BASE_NAME}-fonts-*"
@@ -122,11 +123,15 @@ RRECOMMENDS_${QT_BASE_NAME}-demos += " \
             ${QT_BASE_NAME}-examples \
             ${QT_BASE_NAME}-plugin-sqldriver-sqlite \
             ${QT_BASE_NAME}-plugin-imageformat-jpeg \
+            ${QT_BASE_NAME}-qml-plugins \
             ${QT_BASE_NAME}-assistant \
             ${PN}-doc"
 RRECOMMENDS_${QT_BASE_NAME}-examples += " \
             ${QT_BASE_NAME}-plugin-sqldriver-sqlite \
-            ${QT_BASE_NAME}-plugin-imageformat-jpeg"
+            ${QT_BASE_NAME}-plugin-imageformat-jpeg \
+            ${QT_BASE_NAME}-qml-plugins"
+RRECOMMENDS_${QT_BASE_NAME}-qmlviewer += " \
+            ${QT_BASE_NAME}-qml-plugins"
 
 FILES_${QT_BASE_NAME}-tools                = "${bindir}/qttracereplay ${bindir}/qdoc*"
 FILES_${QT_BASE_NAME}-tools-dbg            = "${bindir}/.debug/qttracereplay ${bindir}/.debug/qdoc*"
@@ -160,7 +165,8 @@ FILES_${QT_BASE_NAME}-makeqpf-dbg          = "${bindir}/.debug/makeqpf"
 FILES_${QT_BASE_NAME}-mkspecs              = "${datadir}/${QT_DIR_NAME}/mkspecs/*"
 FILES_${QT_BASE_NAME}-xmlpatterns          = "${bindir}/xmlpatterns*"
 FILES_${QT_BASE_NAME}-xmlpatterns-dbg      = "${bindir}/.debug/xmlpatterns*"
-
+FILES_${QT_BASE_NAME}-qml-plugins          = "${libdir}/${QT_DIR_NAME}/imports/* ${libdir}/${QT_DIR_NAME}/plugins/qmltooling/*"
+FILES_${QT_BASE_NAME}-qml-plugins-dbg      = "${libdir}/${QT_DIR_NAME}/imports/*/*/*/.debug/* ${libdir}/${QT_DIR_NAME}/imports/*/.debug"
 
 do_configure() {
 	unset QMAKESPEC
@@ -183,6 +189,7 @@ do_configure() {
 	echo "Libraries=${libdir}"                    >> $QT_CONF_PATH
 	echo "Binaries=${bindir}"                     >> $QT_CONF_PATH
 	echo "Plugins=${libdir}/${QT_DIR_NAME}/plugins" >> $QT_CONF_PATH
+	echo "Imports=${libdir}/${QT_DIR_NAME}/imports" >> $QT_CONF_PATH
 	echo "Data=${datadir}/${QT_DIR_NAME}"         >> $QT_CONF_PATH
 	echo "Translations=${datadir}/${QT_DIR_NAME}/translations" >> $QT_CONF_PATH
 	echo "Settings=${sysconfdir}/${QT_DIR_NAME}"  >> $QT_CONF_PATH
@@ -200,6 +207,7 @@ do_configure() {
 			-docdir ${docdir}/${QT_DIR_NAME} \
 			-headerdir ${includedir}/${QT_DIR_NAME} \
 			-plugindir ${libdir}/${QT_DIR_NAME}/plugins \
+			-importdir ${libdir}/${QT_DIR_NAME}/imports \
 			-translationdir ${datadir}/${QT_DIR_NAME}/translations \
 			-examplesdir ${bindir}/${QT_DIR_NAME}/examples \
 			-demosdir ${bindir}/${QT_DIR_NAME}/demos \
Signature · 1 line
1.7.4.1
#4 lore raw

PATCH 4/4 qt4: delete unpackaged uic3 to avoid unpackaged file warning

In reply to Paul Eggleton

All the other utilities get deleted as they should not be packaged, delete this one as well.

---
 meta/recipes-qt/qt4/qt4.inc |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)
meta/recipes-qt/qt4/qt4.inc +1 -0
index 815ebc2..ba6fad5 100644
@@ -279,6 +279,7 @@ do_install() {
 	# These are host binaries, we should only use them in staging
 	rm ${D}/${bindir}/qmake
 	rm ${D}/${bindir}/uic
+	rm ${D}/${bindir}/uic3
 	rm ${D}/${bindir}/moc
 	rm ${D}/${bindir}/rcc
 	rm ${D}/${bindir}/lrelease
Signature · 1 line
1.7.4.1
#5 lore raw
In reply to Paul Eggleton

Op 15 aug. 2011, om 12:12 heeft Paul Eggleton het volgende geschreven:

Quoted 10 lines

Bring over qt4-native from OE and tidy up some QA warnings.

The following changes since commit d126e22f6b3f27196144f87e22b36ebccd6dea65:

rt-tests: use an explicit commit ID (2011-08-12 17:51:18 +0100)

are available in the git repository at:
git://git.openembedded.org/openembedded-core-contrib paule/qt4-fixes4
http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=paule/qt4-fixes4

Quoted 5 lines

Paul Eggleton (4):
qt4: replace qt4-tools-native with qt4-native
qt4-native: restore build of uic3, qdbuscpp2xml and qdbusxml2cpp
qt4: package QML plugins and correct their install directory
qt4: delete unpackaged uic3 to avoid unpackaged file warning

From a quick look these look good to, I hope to be able to do an actual test later this week

#6 lore raw
In reply to Paul Eggleton
Quoted 10 lines · Paul Eggleton

Bring over qt4-native from OE and tidy up some QA warnings.

The following changes since commit d126e22f6b3f27196144f87e22b36ebccd6dea65:

rt-tests: use an explicit commit ID (2011-08-12 17:51:18 +0100)

are available in the git repository at:
git://git.openembedded.org/openembedded-core-contrib paule/qt4-fixes4
http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=paule/qt4-fixes4

Quoted 6 lines

Paul Eggleton (4):
qt4: replace qt4-tools-native with qt4-native
qt4-native: restore build of uic3, qdbuscpp2xml and qdbusxml2cpp
qt4: package QML plugins and correct their install directory
qt4: delete unpackaged uic3 to avoid unpackaged file warning

Merged to master, thanks.

Richard