md5=3a2f25b9b115037277f4fb759194a7a5
sha256=e05256d560ca7d674cd4310bb791748900ad14ad662cbfe22b6d72ada43e7955
+[ftp://ftp.trolltech.com/qt/source/qt-everywhere-opensource-src-4.7.1.tar.gz]
+md5=6f88d96507c84e9fea5bf3a71ebeb6d7
+sha256=8cb5277c41f824cfc6dcee0e95e0bf23a9ad2c8d18d245105137481d092b124a
+
[ftp://ftp.trolltech.com/qt/source/qt-x11-free-3.3.5.tar.bz2]
md5=05d04688c0c0230ed54e89102d689ca4
sha256=aac89e862c74b2f3ead768e50e9fa7ada1e4225fe9d1d9e05723a3279259eb96
--- /dev/null
+Security advisory: Fraudulent certificates
+
+Background:
+
+Recently a group of people managed to get fraudulent SSL certificates signed
+by a Certificate Authority (CA).
+
+These certificates potentially enable their owners to pretend to be other
+entities on the Web; the attackers can present valid certificates for e.g.
+mail.google.com, login.yahoo.com and login.live.com, among others.
+
+The patch below solves this problem by blacklisting those fake certificates
+and aborting an SSL handshake with entities that present these certificates.
+The patch applies to all 4.6 and 4.7 versions, and should be applied to all Qt
+4.6.x and 4.7.x versions; upcoming Qt releases will contain a fix for this
+problem.
+
+More technical background:
+
+In order to trick a user into establishing an SSL connection to a site using
+one of those fake certificates, in addition to controlling the certificate, an
+attacker would need to either control the DNS server used by the victim, or
+have control over a proxy that the victim uses. That way, the attacker could
+trick the victim to connect to the attacker?s site and then present the user
+with a valid certificate.
+
+One obvious question now is: Should those certificates not just be revoked,
+which would solve the problem?
+
+First, they have been revoked by the affected Certificate Authority (see above
+link).
+
+However, the problem in this case, and probably part of the reason why most
+browser vendors release new versions blacklisting those certificates, is that
+by default browsers do not treat invalid responses from an OCSP server (a
+server used for checking the revocation status of a certificate) as fatal, and
+will allow the SSL connection to proceed anyway. Qt itself does not support
+OCSP yet, which makes blacklisting the certificates the only valid option (now
+would be a good moment to vote on the task for implementing OCSP in Qt); since
+Qt is relying on the system root certificates since version 4.7, it cannot
+control the root certificates that Qt trusts automatically anymore.
+
+http://www.comodo.com/Comodo-Fraud-Incident-2011-03-23.html
+http://qt.nokia.com/files/qt-patches/blacklist-fraudulent-comodo-certificates-patch.diff/view
+
+diff --git a/src/network/ssl/qsslcertificate.cpp b/src/network/ssl/qsslcertificate.cpp
+index 618ac79..a5cdf01 100644
+--- a/src/network/ssl/qsslcertificate.cpp
++++ b/src/network/ssl/qsslcertificate.cpp
+@@ -219,17 +219,19 @@ bool QSslCertificate::isNull() const
+ Returns true if this certificate is valid; otherwise returns
+ false.
+
+- Note: Currently, this function only checks that the current
++ Note: Currently, this function checks that the current
+ data-time is within the date-time range during which the
+- certificate is considered valid. No other checks are
+- currently performed.
++ certificate is considered valid, and checks that the
++ certificate is not in a blacklist of fraudulent certificates.
+
+ \sa isNull()
+ */
+ bool QSslCertificate::isValid() const
+ {
+ const QDateTime currentTime = QDateTime::currentDateTime();
+- return currentTime >= d->notValidBefore && currentTime <= d->notValidAfter;
++ return currentTime >= d->notValidBefore &&
++ currentTime <= d->notValidAfter &&
++ ! QSslCertificatePrivate::isBlacklisted(*this);
+ }
+
+ /*!
+@@ -798,6 +800,30 @@ QList<QSslCertificate> QSslCertificatePrivate::certificatesFromDer(const QByteAr
+ return certificates;
+ }
+
++// These certificates are known to be fraudulent and were created during the comodo
++// compromise. See http://www.comodo.com/Comodo-Fraud-Incident-2011-03-23.html
++static const char *certificate_blacklist[] = {
++ "04:7e:cb:e9:fc:a5:5f:7b:d0:9e:ae:36:e1:0c:ae:1e",
++ "f5:c8:6a:f3:61:62:f1:3a:64:f5:4f:6d:c9:58:7c:06",
++ "d7:55:8f:da:f5:f1:10:5b:b2:13:28:2b:70:77:29:a3",
++ "39:2a:43:4f:0e:07:df:1f:8a:a3:05:de:34:e0:c2:29",
++ "3e:75:ce:d4:6b:69:30:21:21:88:30:ae:86:a8:2a:71",
++ "e9:02:8b:95:78:e4:15:dc:1a:71:0a:2b:88:15:44:47",
++ "92:39:d5:34:8f:40:d1:69:5a:74:54:70:e1:f2:3f:43",
++ "b0:b7:13:3e:d0:96:f9:b5:6f:ae:91:c8:74:bd:3a:c0",
++ "d8:f3:5f:4e:b7:87:2b:2d:ab:06:92:e3:15:38:2f:b0",
++ 0
++};
++
++bool QSslCertificatePrivate::isBlacklisted(const QSslCertificate &certificate)
++{
++ for (int a = 0; certificate_blacklist[a] != 0; a++) {
++ if (certificate.serialNumber() == certificate_blacklist[a])
++ return true;
++ }
++ return false;
++}
++
+ #ifndef QT_NO_DEBUG_STREAM
+ QDebug operator<<(QDebug debug, const QSslCertificate &certificate)
+ {
+diff --git a/src/network/ssl/qsslcertificate_p.h b/src/network/ssl/qsslcertificate_p.h
+index cdceb0f..1ce33d3 100644
+--- a/src/network/ssl/qsslcertificate_p.h
++++ b/src/network/ssl/qsslcertificate_p.h
+@@ -96,6 +96,7 @@ public:
+ static QSslCertificate QSslCertificate_from_X509(X509 *x509);
+ static QList<QSslCertificate> certificatesFromPem(const QByteArray &pem, int count = -1);
+ static QList<QSslCertificate> certificatesFromDer(const QByteArray &der, int count = -1);
++ static bool isBlacklisted(const QSslCertificate &certificate);
+
+ friend class QSslSocketBackendPrivate;
+
+diff --git a/src/network/ssl/qsslsocket_openssl.cpp b/src/network/ssl/qsslsocket_openssl.cpp
+index 0866534..2427193 100644
+--- a/src/network/ssl/qsslsocket_openssl.cpp
++++ b/src/network/ssl/qsslsocket_openssl.cpp
+@@ -1193,6 +1193,13 @@ bool QSslSocketBackendPrivate::startHandshake()
+ X509 *x509 = q_SSL_get_peer_certificate(ssl);
+ configuration.peerCertificate = QSslCertificatePrivate::QSslCertificate_from_X509(x509);
+ q_X509_free(x509);
++ if (QSslCertificatePrivate::isBlacklisted(configuration.peerCertificate)) {
++ q->setErrorString(QSslSocket::tr("The peer certificate is blacklisted"));
++ q->setSocketError(QAbstractSocket::SslHandshakeFailedError);
++ emit q->error(QAbstractSocket::SslHandshakeFailedError);
++ plainSocket->disconnectFromHost();
++ return false;
++ }
+
+ // Start translating errors.
+ QList<QSslError> errors;
qtconfig = qmake_libraryInfoFile();
+ if (!QFile::exists(qtconfig)) {
+ QByteArray config = getenv("QT_CONF_PATH");
-+ qtconfig = config;
++ qtconfig = QFile::decodeName(config);
+ }
#else
if (!QFile::exists(qtconfig) && QCoreApplication::instance()) {
--- /dev/null
+#!/bin/sh
+
+if [ -e /dev/input/touchscreen0 ]
+then
+ QWS_MOUSE_PROTO=Tslib:/dev/input/touchscreen0
+ export QWS_MOUSE_PROTO
+fi
--- /dev/null
+Upstream: http://trac.webkit.org/changeset/82142/trunk/Source/WebKit/qt/WebCoreSupport/ChromeClientQt.cpp\r
+\r
+Index: trunk/Source/WebKit/qt/WebCoreSupport/ChromeClientQt.cpp\r
+===================================================================\r
+--- a/src/3rdparty/webkit/WebKit/qt/WebCoreSupport/ChromeClientQt.cpp (revision 80716)\r
++++ b/src/3rdparty/webkit/WebKit/qt/WebCoreSupport/ChromeClientQt.cpp (revision 82142)\r
+@@ -412,5 +412,5 @@\r
+ platformPageClient()->update(rect);\r
+ }\r
+- emit m_webPage->repaintRequested(windowRect);\r
++ QMetaObject::invokeMethod(m_webPage, "repaintRequested", Qt::QueuedConnection, Q_ARG(QRect, windowRect));\r
+ \r
+ // FIXME: There is no "immediate" support for window painting. This should be done always whenever the flag\r
+++ /dev/null
-DEFAULT_PREFERENCE = "-1"
-DEFAULT_PREFERENCE_opendreambox = "1"
-
-FILESPATHPKG .= ":qt-${PV}"
-
-SRC_URI = "ftp://ftp.trolltech.com/qt/source/qt-everywhere-opensource-src-${PV}.tar.gz \
- file://configure-conf_compiler-fix.patch;patch=1 \
- file://0004-no-qmake.patch;patch=1 \
- file://0006-freetype-host-includes.patch;patch=1 \
- file://0010-no-simpledecoration-example.patch;patch=1 \
- file://0001-Added-Openembedded-crossarch-option.patch;patch=1 \
- file://0002-Disable-tools-assistant.patch;patch=1 \
- file://0003-Disable-examples-designer.patch;patch=1 \
- file://0004-Disable-exaqmples-dbus-remotecontrolledcar.patch;patch=1 \
- file://0005-Disable-examples-help.patch;patch=1 \
- file://0007-Disable-demos-qtdemos.patch;patch=1 \
- file://0008-Disable-examples-declarative.patch;patch=1 \
- file://demos.browser.add.mediaservices.lib.patch;patch=1 \
- file://add.xmlpatterns.lib.patch;patch=1 \
- file://g++.conf \
- file://linux.conf \
- "
-
-S = "${WORKDIR}/qt-everywhere-opensource-src-${PV}"
-
-QT_LIB_NAMES += "QtDeclarative"
-FILES_${QT_BASE_NAME}-tools += "${bindir}/qml"
-
-do_configure_prepend() {
- for pro in $(find ${S} -name "*.pro") ; do
- sed -i 's:$$QT_BUILD_TREE/bin/lrelease:${OE_QMAKE_LRELEASE}:g' $pro
- done
-
- sed -i s:SEDME:${S}: ${WORKDIR}/linux.conf
- sed -i \
- -e /QMAKE_MOC\ /d \
- -e /QMAKE_UIC\ /d \
- -e /QMAKE_UIC3\ /d \
- -e /QMAKE_RCC\ /d \
- ${S}/configure
-}
-
-do_configure_append() {
- sed -e '/QMAKE_TARGET /d' -e '/TARGET /d' -i ${S}/translations/Makefile
-}
-
-QT_GLFLAGS ?= ""
-QT_CONFIG_FLAGS += " -xmlpatterns -no-rpath -qt3support -reduce-relocations -silent ${QT_GLFLAGS}"
-
-do_compile() {
- # Fixup missing wsegl header in some SGX SDKs
- if ! [ -e ${STAGING_INCDIR}/wsegl.h ] ; then
- cp src/3rdparty/powervr/wsegl.h src/plugins/gfxdrivers/powervr/QWSWSEGL/
- fi
-
- unset CFLAGS CXXFLAGS
- install -m 0755 ${STAGING_BINDIR_NATIVE}/rcc4 ${S}/bin/rcc
- install -m 0755 ${STAGING_BINDIR_NATIVE}/moc4 ${S}/bin/moc
- install -m 0755 ${STAGING_BINDIR_NATIVE}/uic4 ${S}/bin/uic
- install -m 0755 ${STAGING_BINDIR_NATIVE}/lrelease4 ${S}/bin/lrelease
-
- oe_runmake ${EXTRA_ENV}
-}
-
-do_install_append() {
- install -d ${D}${bindir}
- for i in rcc uic moc ; do
- install -m 0755 ${S}/bin/$i ${D}${bindir}/
- done
-}
-
-LICENSE = "LGPLv2.1 GPLv3"
-SRC_URI += " \
- file://hack-out-pg_config.patch;patch=1"
+++ /dev/null
-From b1ba119f6a824dc01bd42ee00dba4a1653867b72 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Matthias=20G=C3=BCnther?= <matgnt@gmail.com>
-Date: Wed, 12 May 2010 16:52:45 +0200
-Subject: [PATCH 1/9] Added Openembedded "-crossarch" option
-
----
- configure | 7 ++++++-
- 1 files changed, 6 insertions(+), 1 deletions(-)
-
-diff --git a/configure b/configure
-index facd192..9d15136 100755
---- a/configure
-+++ b/configure
-@@ -954,7 +954,7 @@ while [ "$#" -gt 0 ]; do
- shift
- VAL=$1
- ;;
-- -prefix|-docdir|-headerdir|-plugindir|-importdir|-datadir|-libdir|-bindir|-translationdir|-sysconfdir|-examplesdir|-demosdir|-depths|-make|-nomake|-platform|-xplatform|-buildkey|-sdk|-arch|-host-arch|-mysql_config)
-+ -prefix|-docdir|-headerdir|-plugindir|-importdir|-datadir|-libdir|-bindir|-translationdir|-sysconfdir|-examplesdir|-demosdir|-depths|-make|-nomake|-platform|-xplatform|-buildkey|-sdk|-arch|-host-arch|-mysql_config|-crossarch)
- VAR=`echo $1 | sed "s,^-\(.*\),\1,"`
- shift
- VAL="$1"
-@@ -1443,6 +1443,9 @@ while [ "$#" -gt 0 ]; do
- xplatform)
- XPLATFORM="$VAL"
- ;;
-+ crossarch)
-+ CROSSARCH="$VAL"
-+ ;;
- debug-and-release)
- if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
- CFG_DEBUG_RELEASE="$VAL"
-@@ -2918,6 +2921,8 @@ elif [ "$PLATFORM_MAC" = "yes" ] || [ -z "$CFG_ARCH" ]; then
- CFG_ARCH=$CFG_HOST_ARCH
- fi
-
-+CFG_ARCH="$CROSSARCH"
-+
- if [ -d "$relpath/src/corelib/arch/$CFG_ARCH" ]; then
- if [ "$OPT_VERBOSE" = "yes" ]; then
- echo " '$CFG_ARCH' is supported"
---
-1.7.0.4
-
+++ /dev/null
-From f107d9957f8382dfc2c7b28248eee2d628342a93 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Matthias=20G=C3=BCnther?= <matgnt@gmail.com>
-Date: Wed, 12 May 2010 19:41:13 +0200
-Subject: [PATCH 2/9] Disable tools/assistant
-
----
- tools/tools.pro | 2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
-diff --git a/tools/tools.pro b/tools/tools.pro
-index 7598962..1d35a3f 100644
---- a/tools/tools.pro
-+++ b/tools/tools.pro
-@@ -9,7 +9,7 @@ TEMPLATE = subdirs
- } else:wince* {
- SUBDIRS = qtestlib designer
- } else {
-- SUBDIRS = assistant \
-+ SUBDIRS = \
- pixeltool \
- porting \
- qtestlib \
---
-1.7.0.4
-
+++ /dev/null
-From 82aaf21a465d0d693916c4b82932371a090482a7 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Matthias=20G=C3=BCnther?= <matgnt@gmail.com>
-Date: Wed, 12 May 2010 20:33:11 +0200
-Subject: [PATCH 3/9] Disable examples/designer
-
----
- examples/examples.pro | 1 -
- 1 files changed, 0 insertions(+), 1 deletions(-)
-
-diff --git a/examples/examples.pro b/examples/examples.pro
-index 43cad55..785c35c 100644
---- a/examples/examples.pro
-+++ b/examples/examples.pro
-@@ -53,7 +53,6 @@ contains(QT_CONFIG, script): SUBDIRS += script
- contains(QT_CONFIG, phonon):!static: SUBDIRS += phonon
- embedded:SUBDIRS += qws
- !wince*:!symbian: {
-- !contains(QT_EDITION, Console):!contains(QT_CONFIG, no-gui):contains(QT_BUILD_PARTS, tools):SUBDIRS += designer
- contains(QT_BUILD_PARTS, tools):!contains(QT_CONFIG, no-gui):SUBDIRS += qtestlib help
- } else {
- contains(QT_BUILD_PARTS, tools):!contains(QT_CONFIG, no-gui):SUBDIRS += qtestlib
---
-1.7.0.4
-
+++ /dev/null
-From 753cc5766d51c5b7d599fada569d6b262f2a3b1a Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Matthias=20G=C3=BCnther?= <matgnt@gmail.com>
-Date: Wed, 12 May 2010 20:49:30 +0200
-Subject: [PATCH 4/9] Disable exaqmples/dbus/remotecontrolledcar
-
----
- examples/dbus/dbus.pro | 3 +--
- 1 files changed, 1 insertions(+), 2 deletions(-)
-
-diff --git a/examples/dbus/dbus.pro b/examples/dbus/dbus.pro
-index e599334..daa89b0 100644
---- a/examples/dbus/dbus.pro
-+++ b/examples/dbus/dbus.pro
-@@ -4,8 +4,7 @@ SUBDIRS = listnames \
- complexpingpong
-
- !contains(QT_CONFIG, no-gui) {
-- SUBDIRS += dbus-chat \
-- remotecontrolledcar
-+ SUBDIRS += dbus-chat
- }
-
- # install
---
-1.7.0.4
-
+++ /dev/null
-From c7f749b564b473f0160a201c769153cfcaf3bc0b Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Matthias=20G=C3=BCnther?= <matgnt@gmail.com>
-Date: Thu, 13 May 2010 14:27:22 +0200
-Subject: [PATCH 5/9] Disable examples/help
-
----
- examples/examples.pro | 2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
-diff --git a/examples/examples.pro b/examples/examples.pro
-index 785c35c..e37f580 100644
---- a/examples/examples.pro
-+++ b/examples/examples.pro
-@@ -53,7 +53,7 @@ contains(QT_CONFIG, script): SUBDIRS += script
- contains(QT_CONFIG, phonon):!static: SUBDIRS += phonon
- embedded:SUBDIRS += qws
- !wince*:!symbian: {
-- contains(QT_BUILD_PARTS, tools):!contains(QT_CONFIG, no-gui):SUBDIRS += qtestlib help
-+ contains(QT_BUILD_PARTS, tools):!contains(QT_CONFIG, no-gui):SUBDIRS += qtestlib
- } else {
- contains(QT_BUILD_PARTS, tools):!contains(QT_CONFIG, no-gui):SUBDIRS += qtestlib
- }
---
-1.7.0.4
-
+++ /dev/null
-From 11657d8c4b964b7c16b1d216522a92d6280007e1 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Matthias=20G=C3=BCnther?= <matgnt@gmail.com>
-Date: Thu, 13 May 2010 15:53:29 +0200
-Subject: [PATCH 6/9] Disable /demos/browser
-
----
- demos/demos.pro | 1 -
- 1 files changed, 0 insertions(+), 1 deletions(-)
-
-diff --git a/demos/demos.pro b/demos/demos.pro
-index 5e8a4ea..8008ccb 100644
---- a/demos/demos.pro
-+++ b/demos/demos.pro
-@@ -56,7 +56,6 @@ wince*:SUBDIRS += demos_sqlbrowser
- }
- }
- contains(QT_CONFIG, phonon):!static:SUBDIRS += demos_mediaplayer
--contains(QT_CONFIG, webkit):contains(QT_CONFIG, svg):!symbian:SUBDIRS += demos_browser
- contains(QT_CONFIG, multimedia):SUBDIRS += demos_multimedia
- contains(QT_CONFIG, declarative):SUBDIRS += demos_declarative
-
---
-1.7.0.4
-
+++ /dev/null
-From 6a4b829736399fef4a6f1d3223cf0d813caf7062 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Matthias=20G=C3=BCnther?= <matgnt@gmail.com>
-Date: Thu, 13 May 2010 16:00:06 +0200
-Subject: [PATCH 7/9] Disable demos/qtdemos
-
----
- demos/demos.pro | 2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
-diff --git a/demos/demos.pro b/demos/demos.pro
-index 8008ccb..a0691bc 100644
---- a/demos/demos.pro
-+++ b/demos/demos.pro
-@@ -51,7 +51,7 @@ wince*|symbian|embedded|x11: SUBDIRS += demos_embedded
-
- !cross_compile:{
- contains(QT_BUILD_PARTS, tools):{
--!wince*:SUBDIRS += demos_sqlbrowser demos_qtdemo
-+!wince*:SUBDIRS += demos_sqlbrowser
- wince*:SUBDIRS += demos_sqlbrowser
- }
- }
---
-1.7.0.4
-
+++ /dev/null
-From 1b855a946a1d060c52ddb04f308fb25f1d391b6a Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Matthias=20G=C3=BCnther?= <matgnt@gmail.com>
-Date: Thu, 13 May 2010 19:49:45 +0200
-Subject: [PATCH 8/9] Disable examples/declarative
-
----
- examples/examples.pro | 1 -
- 1 files changed, 0 insertions(+), 1 deletions(-)
-
-diff --git a/examples/examples.pro b/examples/examples.pro
-index e37f580..8681a41 100644
---- a/examples/examples.pro
-+++ b/examples/examples.pro
-@@ -60,7 +60,6 @@ embedded:SUBDIRS += qws
- contains(QT_CONFIG, opengl): SUBDIRS += opengl
- contains(QT_CONFIG, openvg): SUBDIRS += openvg
- contains(QT_CONFIG, dbus): SUBDIRS += dbus
--contains(QT_CONFIG, declarative): SUBDIRS += declarative
- win32: SUBDIRS += activeqt
- contains(QT_CONFIG, xmlpatterns):!contains(QT_CONFIG, no-gui): SUBDIRS += xmlpatterns
- contains(DEFINES, QT_NO_CURSOR): SUBDIRS -= mainwindows
---
-1.7.0.4
-
+++ /dev/null
-diff -uNr qt-everywhere-opensource-src-4.7.0-beta1.orig//demos/browser/browser.pro qt-everywhere-opensource-src-4.7.0-beta1/demos/browser/browser.pro
---- qt-everywhere-opensource-src-4.7.0-beta1.orig//demos/browser/browser.pro 2010-06-26 13:15:06.000000000 +0200
-+++ qt-everywhere-opensource-src-4.7.0-beta1/demos/browser/browser.pro 2010-06-26 13:18:17.000000000 +0200
-@@ -1,6 +1,6 @@
- TEMPLATE = app
- TARGET = browser
--QT += webkit network mediaservices
-+QT += webkit network mediaservices xmlpatterns phonon
-
- CONFIG += qt warn_on
- contains(QT_BUILD_PARTS, tools):!embedded: CONFIG += uitools
-diff -uNr qt-everywhere-opensource-src-4.7.0-beta1.orig//examples/xmlpatterns/qobjectxmlmodel/qobjectxmlmodel.pro qt-everywhere-opensource-src-4.7.0-beta1/examples/xmlpatterns/qobjectxmlmodel/qobjectxmlmodel.pro
---- qt-everywhere-opensource-src-4.7.0-beta1.orig//examples/xmlpatterns/qobjectxmlmodel/qobjectxmlmodel.pro 2010-05-04 02:43:18.000000000 +0200
-+++ qt-everywhere-opensource-src-4.7.0-beta1/examples/xmlpatterns/qobjectxmlmodel/qobjectxmlmodel.pro 2010-06-26 13:17:42.000000000 +0200
-@@ -1,6 +1,6 @@
-
- FORMS += forms/mainwindow.ui
--QT += xmlpatterns webkit
-+QT += xmlpatterns webkit mediaservices phonon
- SOURCES += qobjectxmlmodel.cpp main.cpp mainwindow.cpp ../shared/xmlsyntaxhighlighter.cpp
- HEADERS += qobjectxmlmodel.h mainwindow.h ../shared/xmlsyntaxhighlighter.h
- RESOURCES = queries.qrc
+++ /dev/null
---- qt-everywhere-opensource-src-4.7.0/configure.orig 2010-09-22 15:51:20.000000000 +0000
-+++ qt-everywhere-opensource-src-4.7.0/configure 2010-09-22 15:52:04.000000000 +0000
-@@ -3068,6 +3068,7 @@
- fi
-
- QMAKE_CONF_COMPILER=`getQMakeConf "$XQMAKESPEC" | grep "^QMAKE_CXX[^_A-Z0-9]" | sed "s,.* *= *\(.*\)$,\1," | tail -1`
-+eval QMAKE_CONF_COMPILER=$(echo $QMAKE_CONF_COMPILER | sed "s/(/{/" | sed "s/)/}/")
- TEST_COMPILER="$CXX"
- [ -z "$TEST_COMPILER" ] && TEST_COMPILER=$QMAKE_CONF_COMPILER
- if [ -z "$TEST_COMPILER" ]; then
+++ /dev/null
-Index: qt-everywhere-opensource-src-4.7.0-beta1/demos/browser/browser.pro
-===================================================================
---- qt-everywhere-opensource-src-4.7.0-beta1.orig/demos/browser/browser.pro
-+++ qt-everywhere-opensource-src-4.7.0-beta1/demos/browser/browser.pro
-@@ -1,6 +1,6 @@
- TEMPLATE = app
- TARGET = browser
--QT += webkit network
-+QT += webkit network mediaservices
-
- CONFIG += qt warn_on
- contains(QT_BUILD_PARTS, tools):!embedded: CONFIG += uitools
--- /dev/null
+DEFAULT_PREFERENCE = "-1"
+DEFAULT_PREFERENCE_opendreambox = "1"
+LICENSE = "LGPLv2.1 GPLv3"
+
+FILESPATHPKG =. "qt-${PV}:"
+
+SRC_URI = "\
+ ftp://ftp.trolltech.com/qt/source/qt-everywhere-opensource-src-${PV}.tar.gz \
+ file://blacklist-fraudulent-comodo-certificates-patch.diff;patch=1 \
+ file://0004-no-qmake.patch;patch=1 \
+ file://hack-out-pg2-4.7.0.patch;patch=1 \
+ file://0006-freetype-host-includes.patch;patch=1 \
+ file://0001-Added-Openembedded-crossarch-option.patch;patch=1 \
+ file://0010-phonon-gstreamer-rgb-endianess.patch;patch=1 \
+ file://webkit_r82142.patch;patch=1 \
+ file://g++.conf \
+ file://linux.conf \
+ "
+# Set necessary variables in the profile
+SRC_URI += "file://qte.sh"
+
+S = "${WORKDIR}/qt-everywhere-opensource-src-${PV}"
+
+FILES_${QT_BASE_NAME}-tools += "${bindir}/qml"
+
+do_configure_prepend() {
+ for pro in $(find ${S} -name "*.pro") ; do
+ sed -i 's:$$QT_BUILD_TREE/bin/lrelease:${OE_QMAKE_LRELEASE}:g' $pro
+ done
+
+ sed -i s:SEDME:${S}: ${WORKDIR}/linux.conf
+ sed -i \
+ -e /QMAKE_MOC\ /d \
+ -e /QMAKE_UIC\ /d \
+ -e /QMAKE_UIC3\ /d \
+ -e /QMAKE_RCC\ /d \
+ ${S}/configure
+}
+
+do_configure_append() {
+ sed -e '/QMAKE_TARGET /d' -e '/TARGET /d' -i ${S}/translations/Makefile
+}
+
+QT_GLFLAGS ?= ""
+QT_CONFIG_FLAGS += " -xmlpatterns -no-rpath -qt3support -reduce-relocations -silent ${QT_GLFLAGS}"
+
+do_compile() {
+ # Fixup missing wsegl header in some SGX SDKs
+ if ! [ -e ${STAGING_INCDIR}/wsegl.h ] ; then
+ cp src/3rdparty/powervr/wsegl.h src/plugins/gfxdrivers/powervr/QWSWSEGL/
+ fi
+
+ unset CFLAGS CXXFLAGS
+ install -m 0755 ${STAGING_BINDIR_NATIVE}/rcc4 ${S}/bin/rcc
+ install -m 0755 ${STAGING_BINDIR_NATIVE}/moc4 ${S}/bin/moc
+ install -m 0755 ${STAGING_BINDIR_NATIVE}/uic4 ${S}/bin/uic
+ install -m 0755 ${STAGING_BINDIR_NATIVE}/lrelease4 ${S}/bin/lrelease
+
+ oe_runmake ${EXTRA_ENV}
+}
+
+do_install_append() {
+ install -d ${D}${bindir}
+ for i in rcc uic moc ; do
+ install -m 0755 ${S}/bin/$i ${D}${bindir}/
+ done
+
+ #Append an E to the qtdemo file
+ if [ -n "${QT_LIBINFIX}" ] ; then
+ mv ${D}${bindir}/qtdemo ${D}${bindir}/qtdemo${QT_LIBINFIX}
+ fi
+}
+
--- /dev/null
+From b1ba119f6a824dc01bd42ee00dba4a1653867b72 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Matthias=20G=C3=BCnther?= <matgnt@gmail.com>
+Date: Wed, 12 May 2010 16:52:45 +0200
+Subject: [PATCH 1/9] Added Openembedded "-crossarch" option
+
+---
+ configure | 7 ++++++-
+ 1 files changed, 6 insertions(+), 1 deletions(-)
+
+diff --git a/configure b/configure
+index facd192..9d15136 100755
+--- a/configure
++++ b/configure
+@@ -954,7 +954,7 @@ while [ "$#" -gt 0 ]; do
+ shift
+ VAL=$1
+ ;;
+- -prefix|-docdir|-headerdir|-plugindir|-importdir|-datadir|-libdir|-bindir|-translationdir|-sysconfdir|-examplesdir|-demosdir|-depths|-make|-nomake|-platform|-xplatform|-buildkey|-sdk|-arch|-host-arch|-mysql_config)
++ -prefix|-docdir|-headerdir|-plugindir|-importdir|-datadir|-libdir|-bindir|-translationdir|-sysconfdir|-examplesdir|-demosdir|-depths|-make|-nomake|-platform|-xplatform|-buildkey|-sdk|-arch|-host-arch|-mysql_config|-crossarch)
+ VAR=`echo $1 | sed "s,^-\(.*\),\1,"`
+ shift
+ VAL="$1"
+@@ -1443,6 +1443,9 @@ while [ "$#" -gt 0 ]; do
+ xplatform)
+ XPLATFORM="$VAL"
+ ;;
++ crossarch)
++ CROSSARCH="$VAL"
++ ;;
+ debug-and-release)
+ if [ "$VAL" = "yes" ] || [ "$VAL" = "no" ]; then
+ CFG_DEBUG_RELEASE="$VAL"
+@@ -2918,6 +2921,8 @@ elif [ "$PLATFORM_MAC" = "yes" ] || [ -z "$CFG_ARCH" ]; then
+ CFG_ARCH=$CFG_HOST_ARCH
+ fi
+
++CFG_ARCH="$CROSSARCH"
++
+ if [ -d "$relpath/src/corelib/arch/$CFG_ARCH" ]; then
+ if [ "$OPT_VERBOSE" = "yes" ]; then
+ echo " '$CFG_ARCH' is supported"
+--
+1.7.0.4
+
--- /dev/null
+--- a/src/3rdparty/phonon/gstreamer/qwidgetvideosink.cpp
++++ b/src/3rdparty/phonon/gstreamer/qwidgetvideosink.cpp
+@@ -18,6 +18,7 @@
+ #include <QApplication>
+ #include "videowidget.h"
+ #include "qwidgetvideosink.h"
++#include <gst/video/video.h>
+
+ QT_BEGIN_NAMESPACE
+
+@@ -106,11 +107,7 @@ static GstStaticPadTemplate template_factory_rgb =
+ GST_STATIC_PAD_TEMPLATE("sink",
+ GST_PAD_SINK,
+ GST_PAD_ALWAYS,
+- GST_STATIC_CAPS("video/x-raw-rgb, "
+- "framerate = (fraction) [ 0, MAX ], "
+- "width = (int) [ 1, MAX ], "
+- "height = (int) [ 1, MAX ],"
+- "bpp = (int) 32"));
++ GST_STATIC_CAPS(GST_VIDEO_CAPS_xRGB_HOST_ENDIAN));
+
+ template <VideoFormat FMT>
+ struct template_factory;
--- /dev/null
+#
+# qmake configuration for common gcc
+#
+
+QMAKE_CC = $(OE_QMAKE_CC)
+QMAKE_CFLAGS += -pipe $(OE_QMAKE_CFLAGS)
+QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += $(OE_QMAKE_CFLAGS)
+QMAKE_CFLAGS_DEPS += -M
+QMAKE_CFLAGS_WARN_ON += -Wall -W
+QMAKE_CFLAGS_WARN_OFF += -w
+QMAKE_CFLAGS_RELEASE +=
+QMAKE_CFLAGS_DEBUG += -g
+QMAKE_CFLAGS_SHLIB += -fPIC
+QMAKE_CFLAGS_STATIC_LIB += -fPIC
+QMAKE_CFLAGS_YACC += -Wno-unused -Wno-parentheses
+QMAKE_CFLAGS_HIDESYMS += -fvisibility=hidden
+QMAKE_CFLAGS_PRECOMPILE += -x c-header -c ${QMAKE_PCH_INPUT} -o ${QMAKE_PCH_OUTPUT}
+QMAKE_CFLAGS_USE_PRECOMPILE += -include ${QMAKE_PCH_OUTPUT_BASE}
+
+QMAKE_CXX = $(OE_QMAKE_CXX)
+QMAKE_CXXFLAGS += $$QMAKE_CFLAGS $(OE_QMAKE_CXXFLAGS)
+QMAKE_CXXFLAGS_DEPS += $$QMAKE_CFLAGS_DEPS
+QMAKE_CXXFLAGS_WARN_ON += $$QMAKE_CFLAGS_WARN_ON
+QMAKE_CXXFLAGS_WARN_OFF += $$QMAKE_CFLAGS_WARN_OFF
+QMAKE_CXXFLAGS_RELEASE += $$QMAKE_CFLAGS_RELEASE
+QMAKE_CXXFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO
+QMAKE_CXXFLAGS_DEBUG += $$QMAKE_CFLAGS_DEBUG
+QMAKE_CXXFLAGS_SHLIB += $$QMAKE_CFLAGS_SHLIB
+QMAKE_CXXFLAGS_STATIC_LIB += $$QMAKE_CFLAGS_STATIC_LIB
+QMAKE_CXXFLAGS_YACC += $$QMAKE_CFLAGS_YACC
+QMAKE_CXXFLAGS_HIDESYMS += $$QMAKE_CFLAGS_HIDESYMS -fvisibility-inlines-hidden
+QMAKE_CXXFLAGS_PRECOMPILE += -x c++-header -c ${QMAKE_PCH_INPUT} -o ${QMAKE_PCH_OUTPUT}
+QMAKE_CXXFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE
+
+QMAKE_LINK = $(OE_QMAKE_LINK)
+QMAKE_LINK_SHLIB = $(OE_QMAKE_LINK)
+QMAKE_LINK_C = $(OE_QMAKE_LINK)
+QMAKE_LINK_C_SHLIB = $(OE_QMAKE_LINK)
+QMAKE_LFLAGS += $(OE_QMAKE_LDFLAGS)
+QMAKE_LFLAGS_RELEASE +=
+QMAKE_LFLAGS_DEBUG +=
+QMAKE_LFLAGS_APP +=
+QMAKE_LFLAGS_SHLIB += -shared
+QMAKE_LFLAGS_PLUGIN += $$QMAKE_LFLAGS_SHLIB
+QMAKE_LFLAGS_SONAME += -Wl,-soname,
+QMAKE_LFLAGS_THREAD +=
+QMAKE_LFLAGS_NOUNDEF += -Wl,--no-undefined
+QMAKE_LFLAGS_RPATH = -Wl,-rpath-link,
+
+QMAKE_PCH_OUTPUT_EXT = .gch
+
+# -Bsymbolic-functions (ld) support
+QMAKE_LFLAGS_BSYMBOLIC_FUNC = -Wl,-Bsymbolic-functions
+QMAKE_LFLAGS_DYNAMIC_LIST = -Wl,--dynamic-list,
+
+# some linking helper...
+CONFIG += rpath_libdirs
+
+# for the SDK
+isEmpty(QMAKE_QT_CONFIG):QMAKE_QT_CONFIG = $(OE_QMAKE_QT_CONFIG)
--- /dev/null
+Index: qt-everywhere-opensource-src-4.7.0/configure
+===================================================================
+--- qt-everywhere-opensource-src-4.7.0.orig/configure 2010-09-22 15:43:51.191162141 -0400
++++ qt-everywhere-opensource-src-4.7.0/configure 2010-09-22 15:44:35.179981232 -0400
+@@ -4921,10 +4921,10 @@
+ psql)
+ if [ "$CFG_SQL_psql" != "no" ]; then
+ # Be careful not to use native pg_config when cross building.
+- if [ "$XPLATFORM_MINGW" != "yes" ] && "$WHICH" pg_config >/dev/null 2>&1; then
+- QT_CFLAGS_PSQL=`pg_config --includedir 2>/dev/null`
+- QT_LFLAGS_PSQL=`pg_config --libdir 2>/dev/null`
+- fi
++# if [ "$XPLATFORM_MINGW" != "yes" ] && "$WHICH" pg_config >/dev/null 2>&1; then
++# QT_CFLAGS_PSQL=`pg_config --includedir 2>/dev/null`
++# QT_LFLAGS_PSQL=`pg_config --libdir 2>/dev/null`
++# fi
+ [ -z "$QT_CFLAGS_PSQL" ] || QT_CFLAGS_PSQL="-I$QT_CFLAGS_PSQL"
+ [ -z "$QT_LFLAGS_PSQL" ] || QT_LFLAGS_PSQL="-L$QT_LFLAGS_PSQL"
+ # But, respect PSQL_LIBS if set
--- /dev/null
+#
+# qmake configuration for common linux
+#
+
+QMAKE_CFLAGS_THREAD += -D_REENTRANT
+QMAKE_CXXFLAGS_THREAD += $$QMAKE_CFLAGS_THREAD
+
+QMAKE_INCDIR =
+QMAKE_LIBDIR =
+QMAKE_INCDIR_X11 =
+QMAKE_LIBDIR_X11 =
+QMAKE_INCDIR_QT = $(OE_QMAKE_INCDIR_QT)
+QMAKE_LIBDIR_QT = $(OE_QMAKE_LIBDIR_QT)
+QMAKE_INCDIR_OPENGL =
+QMAKE_LIBDIR_OPENGL =
+QMAKE_INCDIR_OPENGL_ES1 = $$QMAKE_INCDIR_OPENGL
+QMAKE_LIBDIR_OPENGL_ES1 = $$QMAKE_LIBDIR_OPENGL
+QMAKE_INCDIR_OPENGL_ES2 = $$QMAKE_INCDIR_OPENGL
+QMAKE_LIBDIR_OPENGL_ES2 = $$QMAKE_LIBDIR_OPENGL
+QMAKE_INCDIR_EGL =
+QMAKE_LIBDIR_EGL =
+QMAKE_INCDIR_OPENVG =
+QMAKE_LIBDIR_OPENVG =
+
+
+QMAKE_LIBS =
+QMAKE_LIBS_DYNLOAD = -ldl
+QMAKE_LIBS_X11 = $(OE_QMAKE_LIBS_X11)
+QMAKE_LIBS_X11SM = $(OE_QMAKE_LIBS_X11SM)
+QMAKE_LIBS_NIS = -lnsl
+QMAKE_LIBS_EGL = -lEGL
+QMAKE_LIBS_OPENGL = -lGLU -lGL
+QMAKE_LIBS_OPENGL_QT = -lGL
+QMAKE_LIBS_OPENGL_ES1 = -lGLES_CM
+QMAKE_LIBS_OPENGL_ES2 = -lGLESv2
+QMAKE_LIBS_OPENVG = -lOpenVG
+QMAKE_LIBS_THREAD = -lpthread
+
+QMAKE_MOC = $(OE_QMAKE_MOC)
+QMAKE_UIC = $(OE_QMAKE_UIC)
+QMAKE_UIC3 = $(OE_QMAKE_UIC3)
+QMAKE_RCC = $(OE_QMAKE_RCC)
+QMAKE_QDBUSCPP2XML = $(OE_QMAKE_QDBUSCPP2XML)
+QMAKE_QDBUSXML2CPP = $(OE_QMAKE_QDBUSXML2CPP)
+
+QMAKE_AR = $(OE_QMAKE_AR) cqs
+QMAKE_OBJCOPY = objcopy
+QMAKE_RANLIB =
+
+QMAKE_TAR = tar -cf
+QMAKE_GZIP = gzip -9f
+
+QMAKE_COPY = cp -f
+QMAKE_COPY_FILE = $(COPY)
+QMAKE_COPY_DIR = $(COPY) -r
+QMAKE_MOVE = mv -f
+QMAKE_DEL_FILE = rm -f
+QMAKE_DEL_DIR = rmdir
+QMAKE_STRIP = $(OE_QMAKE_STRIP)
+QMAKE_STRIPFLAGS_LIB += --strip-unneeded
+QMAKE_CHK_DIR_EXISTS = test -d
+QMAKE_MKDIR = mkdir -p
+QMAKE_INSTALL_FILE = install -m 644 -p
+QMAKE_INSTALL_PROGRAM = install -m 755 -p
+
+include(unix.conf)
+++ /dev/null
-From c9ab62bd9a56643574b3ae6e59e0ca776d4860d2 Mon Sep 17 00:00:00 2001
-From: Michael Krelin <hacker@klever.net>
-Date: Mon, 4 Jun 2007 14:48:50 +0200
-Subject: [PATCH] freetype host includes
-
----
- config.tests/unix/freetype/freetype.pri | 2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
-Index: qt-embedded-linux-opensource-src-4.5.0/config.tests/unix/freetype/freetype.pri
-===================================================================
---- qt-embedded-linux-opensource-src-4.5.0.orig/config.tests/unix/freetype/freetype.pri 2009-02-25 22:32:32.000000000 +0100
-+++ qt-embedded-linux-opensource-src-4.5.0/config.tests/unix/freetype/freetype.pri 2009-03-26 17:14:16.000000000 +0100
-@@ -1,5 +1,5 @@
- !cross_compile {
-- TRY_INCLUDEPATHS = /include /usr/include $$QMAKE_INCDIR $$QMAKE_INCDIR_X11 $$INCLUDEPATH
-+ TRY_INCLUDEPATHS = $$QMAKE_INCDIR $$QMAKE_INCDIR_X11 $$INCLUDEPATH
- # LSB doesn't allow using headers from /include or /usr/include
- linux-lsb-g++:TRY_INCLUDEPATHS = $$QMAKE_INCDIR $$QMAKE_INCDIR_X11 $$INCLUDEPATH
- for(p, TRY_INCLUDEPATHS) {
+++ /dev/null
---- /tmp/uitools.prf 2009-12-01 18:38:22.000000000 +0100
-+++ qt-everywhere-opensource-src-4.6.0/mkspecs/features/uitools.prf 2009-12-01 18:58:16.000000000 +0100
-@@ -3,11 +3,11 @@
-
- # Include the correct version of the UiLoader library
- symbian: QTUITOOLS_LINKAGE = -lQtUiTools.lib
--else: QTUITOOLS_LINKAGE = -lQtUiTools
-+else: QTUITOOLS_LINKAGE = -lQtUiTools$${QT_LIBINFIX}
-
- CONFIG(debug, debug|release) {
-- mac: QTUITOOLS_LINKAGE = -lQtUiTools_debug
-- win32: QTUITOOLS_LINKAGE = -lQtUiToolsd
-+ mac: QTUITOOLS_LINKAGE = -lQtUiTools$${QT_LIBINFIX}_debug
-+ win32: QTUITOOLS_LINKAGE = -lQtUiTools$${QT_LIBINFIX}d
- }
- LIBS += $$QTUITOOLS_LINKAGE
-
---- /tmp/uitools.pro 2009-12-01 18:40:28.000000000 +0100
-+++ qt-everywhere-opensource-src-4.6.0/tools/designer/src/uitools/uitools.pro 2009-12-01 18:59:18.000000000 +0100
-@@ -1,5 +1,5 @@
- TEMPLATE = lib
--TARGET = $$qtLibraryTarget(QtUiTools)
-+TARGET = QtUiTools
- QT += xml
- CONFIG += qt staticlib
- DESTDIR = ../../../../lib
-@@ -43,3 +43,5 @@
- QMAKE_PKGCONFIG_DESTDIR = pkgconfig
- QMAKE_PKGCONFIG_REQUIRES += QtXml
- }
-+
-+TARGET = $$qtLibraryTarget($$TARGET$$QT_LIBINFIX) #do this towards the end
+++ /dev/null
---- /tmp/qws.pro 2009-12-10 19:30:08.000000000 +0100
-+++ qt-everywhere-opensource-src-4.6.0/examples/qws/qws.pro 2009-12-10 19:30:21.000000000 +0100
-@@ -1,7 +1,7 @@
- TEMPLATE = subdirs
- # no /dev/fbX
- !qnx:!vxworks:SUBDIRS = framebuffer
--SUBDIRS += mousecalibration simpledecoration
-+SUBDIRS += mousecalibration
-
- # install
- sources.files = $$SOURCES $$HEADERS $$RESOURCES $$FORMS README *.pro
+++ /dev/null
-#
-# qmake configuration for common gcc
-#
-
-QMAKE_CC = $(OE_QMAKE_CC)
-QMAKE_CFLAGS += -pipe $(OE_QMAKE_CFLAGS)
-QMAKE_CFLAGS_DEPS += -M
-QMAKE_CFLAGS_WARN_ON += -Wall -W
-QMAKE_CFLAGS_WARN_OFF += -w
-QMAKE_CFLAGS_RELEASE +=
-QMAKE_CFLAGS_DEBUG += -g
-QMAKE_CFLAGS_SHLIB += -fPIC
-QMAKE_CFLAGS_STATIC_LIB += -fPIC
-QMAKE_CFLAGS_YACC += -Wno-unused -Wno-parentheses
-QMAKE_CFLAGS_HIDESYMS += -fvisibility=hidden
-QMAKE_CFLAGS_PRECOMPILE += -x c-header -c ${QMAKE_PCH_INPUT} -o ${QMAKE_PCH_OUTPUT}
-QMAKE_CFLAGS_USE_PRECOMPILE += -include ${QMAKE_PCH_OUTPUT_BASE}
-
-QMAKE_CXX = $(OE_QMAKE_CXX)
-QMAKE_CXXFLAGS += $$QMAKE_CFLAGS $(OE_QMAKE_CXXFLAGS)
-QMAKE_CXXFLAGS_DEPS += $$QMAKE_CFLAGS_DEPS
-QMAKE_CXXFLAGS_WARN_ON += $$QMAKE_CFLAGS_WARN_ON
-QMAKE_CXXFLAGS_WARN_OFF += $$QMAKE_CFLAGS_WARN_OFF
-QMAKE_CXXFLAGS_RELEASE += $$QMAKE_CFLAGS_RELEASE
-QMAKE_CXXFLAGS_DEBUG += $$QMAKE_CFLAGS_DEBUG
-QMAKE_CXXFLAGS_SHLIB += $$QMAKE_CFLAGS_SHLIB
-QMAKE_CXXFLAGS_STATIC_LIB += $$QMAKE_CFLAGS_STATIC_LIB
-QMAKE_CXXFLAGS_YACC += $$QMAKE_CFLAGS_YACC
-QMAKE_CXXFLAGS_HIDESYMS += $$QMAKE_CFLAGS_HIDESYMS -fvisibility-inlines-hidden
-QMAKE_CXXFLAGS_PRECOMPILE += -x c++-header -c ${QMAKE_PCH_INPUT} -o ${QMAKE_PCH_OUTPUT}
-QMAKE_CXXFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE
-
-QMAKE_LINK = $(OE_QMAKE_LINK)
-QMAKE_LINK_SHLIB = $(OE_QMAKE_LINK)
-QMAKE_LFLAGS += $(OE_QMAKE_LDFLAGS)
-QMAKE_LFLAGS_RELEASE +=
-QMAKE_LFLAGS_DEBUG +=
-QMAKE_LFLAGS_APP +=
-QMAKE_LFLAGS_SHLIB += -shared
-QMAKE_LFLAGS_PLUGIN += $$QMAKE_LFLAGS_SHLIB
-QMAKE_LFLAGS_SONAME += -Wl,-soname,
-QMAKE_LFLAGS_THREAD +=
-QMAKE_LFLAGS_NOUNDEF += -Wl,--no-undefined
-QMAKE_LFLAGS_RPATH = -Wl,-rpath-link,
-
-QMAKE_PCH_OUTPUT_EXT = .gch
-
-# -Bsymbolic-functions (ld) support
-QMAKE_LFLAGS_BSYMBOLIC_FUNC = -Wl,-Bsymbolic-functions
-QMAKE_LFLAGS_DYNAMIC_LIST = -Wl,--dynamic-list,
-
-# for the SDK
-isEmpty(QMAKE_QT_CONFIG):QMAKE_QT_CONFIG = $(OE_QMAKE_QT_CONFIG)
+++ /dev/null
-Hack to not use the pg_config of the host system which will add /usr/include
-
-pg_config is a native binary so using that when cross compiling
-will always fail. The commented out fix would do, but for OE
-our -platform and -xplatform is the same so we are actually not
-really cross compiling. Just comment out the test, we are passing
-the location to the postgres headers and if they are okay we
-will padd.
-
-
-
---- qt-everywhere-opensource-src-4.7.0-rc1/configure.orig 2010-09-08 11:42:37.000000000 +0000
-+++ qt-everywhere-opensource-src-4.7.0-rc1/configure 2010-09-08 11:44:06.000000000 +0000
-@@ -4916,7 +4916,7 @@
- psql)
- if [ "$CFG_SQL_psql" != "no" ]; then
- # Be careful not to use native pg_config when cross building.
-- if [ "$XPLATFORM_MINGW" != "yes" ] && "$WHICH" pg_config >/dev/null 2>&1; then
-+ if [ "$QT_CROSS_COMPILE" = "no" ] && [ "$XPLATFORM_MINGW" != "yes" ] && "$WHICH" pg_config >/dev/null 2>&1; then
- QT_CFLAGS_PSQL=`pg_config --includedir 2>/dev/null`
- QT_LFLAGS_PSQL=`pg_config --libdir 2>/dev/null`
- fi
+++ /dev/null
-#
-# qmake configuration for common linux
-#
-
-QMAKE_CFLAGS_THREAD += -D_REENTRANT
-QMAKE_CXXFLAGS_THREAD += $$QMAKE_CFLAGS_THREAD
-
-QMAKE_INCDIR =
-QMAKE_LIBDIR =
-QMAKE_INCDIR_X11 =
-QMAKE_LIBDIR_X11 =
-QMAKE_INCDIR_QT = $(OE_QMAKE_INCDIR_QT)
-QMAKE_LIBDIR_QT = $(OE_QMAKE_LIBDIR_QT)
-QMAKE_INCDIR_OPENGL =
-QMAKE_LIBDIR_OPENGL =
-
-
-QMAKE_LIBS = -Wl,-rpath-link,SEDME/lib -lglib-2.0
-QMAKE_LIBS_DYNLOAD = -ldl
-QMAKE_LIBS_X11 = $(OE_QMAKE_LIBS_X11)
-QMAKE_LIBS_X11SM = $(OE_QMAKE_LIBS_X11SM)
-QMAKE_LIBS_NIS = -lnsl
-QMAKE_LIBS_OPENGL = -lGLU -lGL
-QMAKE_LIBS_OPENGL_QT = -lGL
-QMAKE_LIBS_THREAD = -lpthread
-
-QMAKE_MOC = $(OE_QMAKE_MOC)
-QMAKE_UIC = $(OE_QMAKE_UIC)
-QMAKE_UIC3 = $(OE_QMAKE_UIC3)
-QMAKE_RCC = $(OE_QMAKE_RCC)
-QMAKE_QDBUSCPP2XML = $(OE_QMAKE_QDBUSCPP2XML)
-QMAKE_QDBUSXML2CPP = $(OE_QMAKE_QDBUSXML2CPP)
-
-QMAKE_AR = $(OE_QMAKE_AR) cqs
-QMAKE_OBJCOPY = ${OBJCOPY}
-QMAKE_RANLIB =
-
-QMAKE_TAR = tar -cf
-QMAKE_GZIP = gzip -9f
-
-QMAKE_COPY = cp -f
-QMAKE_COPY_FILE = $(COPY)
-QMAKE_COPY_DIR = $(COPY) -r
-QMAKE_MOVE = mv -f
-QMAKE_DEL_FILE = rm -f
-QMAKE_DEL_DIR = rmdir
-QMAKE_STRIP = $(OE_QMAKE_STRIP)
-QMAKE_STRIPFLAGS_LIB += --strip-unneeded
-QMAKE_CHK_DIR_EXISTS = test -d
-QMAKE_MKDIR = mkdir -p
-QMAKE_INSTALL_FILE = install -m 644 -p
-QMAKE_INSTALL_PROGRAM = install -m 755 -p
-
-include(unix.conf)
QMAKE_INCDIR_QT = $(OE_QMAKE_INCDIR_QT)
QMAKE_LIBDIR_QT = $(OE_QMAKE_LIBDIR_QT)
QMAKE_INCDIR_EGL = ${STAGING_INCDIR}/GLES2
-QMAKE_INCDIR_OPENGL = ${STAGING_INCDIR}/GLES2
+QMAKE_INCDIR_OPENGL = ${STAGING_INCDIR}/GLES
+QMAKE_INCDIR_OPENGL_ES1 = ${STAGING_INCDIR}/GLES
QMAKE_INCDIR_OPENGL_ES2 = ${STAGING_INCDIR}/GLES2
QMAKE_LIBDIR_EGL = ${STAGING_LIBDIR}
QMAKE_LIBDIR_OPENGL = ${STAGING_LIBDIR}
+QMAKE_LIBDIR_OPENGL_ES1 = ${STAGING_LIBDIR}
QMAKE_LIBDIR_OPENGL_ES2 = ${STAGING_LIBDIR}
QMAKE_LIBS = -Wl,-rpath-link,SEDME/lib -lglib-2.0
QMAKE_LIBS_X11SM = $(OE_QMAKE_LIBS_X11SM)
QMAKE_LIBS_NIS = -lnsl
QMAKE_LIBS_EGL = -lEGL -lIMGegl -lsrv_um
-QMAKE_LIBS_OPENGL_QT = -lEGL -lGLESv2 -lGLES_CM -lIMGegl -lsrv_um
-QMAKE_LIBS_OPENVG = -lEGL -lGLESv2 -lGLES_CM -lIMGegl -lsrv_um -lOpenVG -lOpenVGU
+QMAKE_LIBS_OPENGL = -lEGL -lGLES_CM -lIMGegl -lsrv_um
+QMAKE_LIBS_OPENGL_QT = -lEGL -lGLES_CM -lIMGegl -lsrv_um
+QMAKE_LIBS_OPENGL_ES1 = -lEGL -lGLES_CM -lIMGegl -lsrv_um
QMAKE_LIBS_OPENGL_ES2 = -lEGL -lGLESv2 -lGLES_CM -lIMGegl -lsrv_um
QMAKE_LIBS_THREAD = -lpthread
QMAKE_INSTALL_PROGRAM = install -m 755 -p
#These defines are documented in the powervr README, please read it
-DEFINES += QT_QWS_CLIENTBLIT QT_NO_QWS_CURSOR
+DEFINES += QT_QWS_CLIENTBLIT
include(unix.conf)
PRIORITY = "optional"
HOMEPAGE = "http://www.trolltech.com"
DEPENDS += "directfb tslib"
-INC_PR = "r15"
+INC_PR = "r29"
QT_BASE_NAME ?= "qt4-embedded"
QT_BASE_LIB ?= "libqt-embedded"
file://g++.conf \
file://linux.conf \
"
+
+# Set necessary variables in the profile
+SRC_URI += "file://qte.sh"
+
S = "${WORKDIR}/qt-embedded-linux-opensource-src-${PV}"
QT_CONFIG_FLAGS += " \
-qtlibinfix ${QT_LIBINFIX} \
- -qt-decoration-styled -plugin-decoration-default -plugin-decoration-windows \
-plugin-gfx-transformed -plugin-gfx-qvfb -plugin-gfx-vnc -plugin-gfx-directfb \
- -plugin-mouse-tslib -qt-mouse-pc -qt-mouse-qvfb \
- -qt-kbd-tty \
+ -plugin-mouse-tslib -qt-mouse-pc -qt-mouse-qvfb -qt-mouse-linuxinput \
+ -qt-kbd-tty -qt-kbd-linuxinput \
-DQT_KEYPAD_NAVIGATION \
"
require qt4.inc
+do_install_append() {
+ install -d ${D}${sysconfdir}/profile.d/
+ install -m 0755 ${WORKDIR}/qte.sh ${D}${sysconfdir}/profile.d/
+}
+
+FILES_${PN} += " ${sysconfdir}/profile.d/qte.sh"
+
inherit qt4e
--- /dev/null
+From c9ab62bd9a56643574b3ae6e59e0ca776d4860d2 Mon Sep 17 00:00:00 2001
+From: Michael Krelin <hacker@klever.net>
+Date: Mon, 4 Jun 2007 14:48:50 +0200
+Subject: [PATCH] freetype host includes
+
+---
+ config.tests/unix/freetype/freetype.pri | 2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+Index: qt-embedded-linux-opensource-src-4.5.0/config.tests/unix/freetype/freetype.pri
+===================================================================
+--- qt-embedded-linux-opensource-src-4.5.0.orig/config.tests/unix/freetype/freetype.pri 2009-02-25 22:32:32.000000000 +0100
++++ qt-embedded-linux-opensource-src-4.5.0/config.tests/unix/freetype/freetype.pri 2009-03-26 17:14:16.000000000 +0100
+@@ -1,5 +1,5 @@
+ !cross_compile {
+- TRY_INCLUDEPATHS = /include /usr/include $$QMAKE_INCDIR $$QMAKE_INCDIR_X11 $$INCLUDEPATH
++ TRY_INCLUDEPATHS = $$QMAKE_INCDIR $$QMAKE_INCDIR_X11 $$INCLUDEPATH
+ # LSB doesn't allow using headers from /include or /usr/include
+ linux-lsb-g++:TRY_INCLUDEPATHS = $$QMAKE_INCDIR $$QMAKE_INCDIR_X11 $$INCLUDEPATH
+ for(p, TRY_INCLUDEPATHS) {
+++ /dev/null
-require qt4-embedded.inc
-
-PR = "${INC_PR}.0"
-
-QT_CONFIG_FLAGS_append_armv6 = " -no-neon "
-
-require qt-${PV}.inc
-
-QT_CONFIG_FLAGS += " \
- -exceptions \
-"
-
--- /dev/null
+DEFAULT_PREFERENCE = "-1"
+DEFAULT_PREFERENCE_opendreambox = "1"
+
+require qt4-embedded.inc
+
+PR = "${INC_PR}.1"
+
+QT_CONFIG_FLAGS_append_armv6 = " -no-neon "
+
+require qt-${PV}.inc
+
+QT_CONFIG_FLAGS += " \
+ -exceptions \
+"
+
+++ /dev/null
-Index: qt-everywhere-opensource-src-4.7.0-beta1/config.tests/x11/xlib/xlib.pro
-===================================================================
---- qt-everywhere-opensource-src-4.7.0-beta1.orig/config.tests/x11/xlib/xlib.pro
-+++ qt-everywhere-opensource-src-4.7.0-beta1/config.tests/x11/xlib/xlib.pro
-@@ -1,3 +1,4 @@
- CONFIG += x11
- CONFIG -= qt
- SOURCES = xlib.cpp
-+LIBS += -lXau -lXdmcp
+++ /dev/null
---- /tmp/qlibraryinfo.cpp 2008-08-02 17:16:41.000000000 +0200
-+++ qt-embedded-linux-opensource-src-4.4.1/src/corelib/global/qlibraryinfo.cpp 2008-08-02 17:17:42.000000000 +0200
-@@ -113,6 +113,8 @@
- #ifdef QT_BUILD_QMAKE
- if(!QFile::exists(qtconfig))
- qtconfig = qmake_libraryInfoFile();
-+ if (!QFile::exists(qtconfig))
-+ qtconfig = QString::fromLocal8Bit(qgetenv("QT_CONF_PATH"));
- #else
- if (!QFile::exists(qtconfig) && QCoreApplication::instance()) {
- #ifdef Q_OS_MAC
DESCRIPTION = "Native tools for Qt/[X11|Mac|Embedded] version 4.x"
-DEPENDS = "zlib-native dbus-native libsm-native"
+DEPENDS = "zlib-native dbus-native"
SECTION = "libs"
HOMEPAGE = "http://www.trolltech.com"
PRIORITY = "optional"
LICENSE = "GPL"
-INC_PR = "r5"
+INC_PR = "r10"
inherit native
-SRC_URI = "ftp://ftp.trolltech.com/qt/source/qt-embedded-linux-opensource-src-${PV}.tar.bz2 \
- file://configure-lflags.patch;patch=1 \
+SRC_URI = "ftp://ftp.trolltech.com/qt/source/qt-everywhere-opensource-src-${PV}.tar.gz \
file://qt-config.patch;patch=1 \
file://g++.conf \
file://linux.conf"
-S = "${WORKDIR}/qt-embedded-linux-opensource-src-${PV}"
+S = "${WORKDIR}/qt-everywhere-opensource-src-${PV}"
EXTRA_OECONF = "-prefix ${prefix} \
+ -L ${STAGING_LIBDIR_NATIVE} \
+ -I ${STAGING_INCDIR_NATIVE} \
-qt-libjpeg -qt-gif -system-zlib \
- -no-libjpeg -no-libpng \
+ -no-libjpeg -no-libpng -no-libmng -no-libtiff \
-no-accessibility \
-no-cups \
-no-exceptions \
-no-nas-sound \
- -no-nis \
- -verbose -release -fast -static \
+ -no-nis -no-openssl \
+ -verbose -release -static \
+ -embedded -no-freetype -no-glib -no-iconv \
-qt3support"
# yank default -e, otherwise we get the following error:
EXTRA_OEMAKE = " "
do_configure() {
- (echo o; echo yes) | LFLAGS="-L${STAGING_LIBDIR_NATIVE}" ./configure ${EXTRA_OECONF} || die "Configuring qt failed. EXTRA_OECONF was ${EXTRA_OECONF}"
+ (echo o; echo yes) | ./configure ${EXTRA_OECONF} || die "Configuring qt failed. EXTRA_OECONF was ${EXTRA_OECONF}"
}
TOBUILD = "\
done
}
-do_stage() {
- install -d ${STAGING_BINDIR_NATIVE}/
- install -m 0755 bin/qmake ${STAGING_BINDIR_NATIVE}/qmake2
+NATIVE_INSTALL_WORKS = "1"
+
+do_install() {
+ install -d ${D}${bindir}/
+ install -m 0755 bin/qmake ${D}${bindir}/qmake2
for i in moc uic uic3 rcc lrelease lupdate qdbuscpp2xml qdbusxml2cpp; do
- install -m 0755 bin/${i} ${STAGING_BINDIR_NATIVE}/${i}4
+ install -m 0755 bin/${i} ${D}${bindir}/${i}4
done
- install -d ${STAGING_DATADIR_NATIVE}/qt4/
- cp -PfR mkspecs ${STAGING_DATADIR_NATIVE}/qt4/
- ln -sf linux-g++ ${STAGING_DATADIR_NATIVE}/qt4/mkspecs/${BUILD_OS}-oe-g++
- cp -f ${WORKDIR}/g++.conf ${WORKDIR}/linux.conf ${STAGING_DATADIR_NATIVE}/qt4/mkspecs/common/
+ install -d ${D}${datadir}/qt4/
+ cp -PfR mkspecs ${D}${datadir}/qt4/
+ ln -sf linux-g++ ${D}${datadir}/qt4/mkspecs/${BUILD_OS}-oe-g++
+ cp -f ${WORKDIR}/g++.conf ${WORKDIR}/linux.conf ${D}${datadir}/qt4/mkspecs/common/
- install -m 0644 tools/porting/src/q3porting.xml ${STAGING_DATADIR_NATIVE}/qt4/
+ install -m 0644 tools/porting/src/q3porting.xml ${D}${datadir}/qt4/
}
-
+++ /dev/null
-DEFAULT_PREFERENCE = "-1"
-DEFAULT_PREFERENCE_opendreambox = "1"
-
-require qt4-tools-native.inc
-LICENSE = "LGPLv2.1 GPLv3"
-
-DEPENDS += "libxau-native libxdmcp-native"
-
-PR = "${INC_PR}.0"
-
-SRC_URI = "ftp://ftp.trolltech.com/qt/source/qt-everywhere-opensource-src-${PV}.tar.gz \
- file://configure-lflags.patch;patch=1 \
- file://fix.xlib-test.libs.patch;patch=1 \
- file://qt-config.patch;patch=1 \
- file://g++.conf \
- file://linux.conf"
-S = "${WORKDIR}/qt-everywhere-opensource-src-${PV}"
-
-EXTRA_OECONF += " -no-fast -silent -no-rpath"
-
-TOBUILD := "src/tools/bootstrap ${TOBUILD}"
--- /dev/null
+DEFAULT_PREFERENCE = "-1"
+DEFAULT_PREFERENCE_opendreambox = "1"
+
+require qt4-tools-native.inc
+LICENSE = "LGPLv2.1 GPLv3"
+
+PR = "${INC_PR}.0"
+
+# Find the g++.conf/linux.conf in the right directory.
+FILESPATHPKG =. "qt-${PV}:"
+SRC_URI = "ftp://ftp.trolltech.com/qt/source/qt-everywhere-opensource-src-${PV}.tar.gz \
+ file://qt-config.patch;patch=1 \
+ file://g++.conf \
+ file://linux.conf"
+S = "${WORKDIR}/qt-everywhere-opensource-src-${PV}"
+
+EXTRA_OECONF += " -no-fast -silent -no-rpath"
+
+TOBUILD := "src/tools/bootstrap ${TOBUILD}"
QMAKE_INCDIR_QT = $(OE_QMAKE_INCDIR_QT)
QMAKE_LIBDIR_QT = $(OE_QMAKE_LIBDIR_QT)
QMAKE_INCDIR_EGL = ${STAGING_INCDIR}/GLES2
-QMAKE_INCDIR_OPENGL = ${STAGING_INCDIR}/GLES2
+QMAKE_INCDIR_OPENGL = ${STAGING_INCDIR}/GLES
+QMAKE_INCDIR_OPENGL_ES1 = ${STAGING_INCDIR}/GLES
QMAKE_INCDIR_OPENGL_ES2 = ${STAGING_INCDIR}/GLES2
QMAKE_LIBDIR_EGL = ${STAGING_LIBDIR}
QMAKE_LIBDIR_OPENGL = ${STAGING_LIBDIR}
+QMAKE_LIBDIR_OPENGL_ES1 = ${STAGING_LIBDIR}
QMAKE_LIBDIR_OPENGL_ES2 = ${STAGING_LIBDIR}
QMAKE_LIBS = -Wl,-rpath-link,SEDME/lib -lglib-2.0
QMAKE_LIBS_X11SM = $(OE_QMAKE_LIBS_X11SM)
QMAKE_LIBS_NIS = -lnsl
QMAKE_LIBS_EGL = -lEGL -lIMGegl -lsrv_um
-QMAKE_LIBS_OPENGL_QT = -lEGL -lGLESv2 -lGLES_CM -lIMGegl -lsrv_um
-QMAKE_LIBS_OPENVG = -lEGL -lGLESv2 -lGLES_CM -lIMGegl -lsrv_um -lOpenVG -lOpenVGU
+QMAKE_LIBS_OPENGL = -lEGL -lGLES_CM -lIMGegl -lsrv_um
+QMAKE_LIBS_OPENGL_QT = -lEGL -lGLES_CM -lIMGegl -lsrv_um
+QMAKE_LIBS_OPENGL_ES1 = -lEGL -lGLES_CM -lIMGegl -lsrv_um
QMAKE_LIBS_OPENGL_ES2 = -lEGL -lGLESv2 -lGLES_CM -lIMGegl -lsrv_um
QMAKE_LIBS_THREAD = -lpthread
PRIORITY = "optional"
HOMEPAGE = "http://www.trolltech.com"
LICENSE = "GPL QPL"
-DEPENDS += "virtual/libx11 fontconfig xft libxext libxrender libxrandr libxcursor"
+DEPENDS += "virtual/libx11 fontconfig libxft libxext libxrender libxrandr libxcursor"
-INC_PR = "r14"
+INC_PR = "r25"
SRC_URI = "ftp://ftp.trolltech.com/qt/source/qt-x11-opensource-src-${PV}.tar.gz \
file://0001-cross-compile.patch;patch=1 \
export QT_CONF_PATH="${WORKDIR}/qt.conf"
# Library packages
-QT_LIB_NAMES = "Qt3Support QtAssistantClient QtCLucene QtCore QtDBus QtDesigner QtDesignerComponents QtGui QtHelp QtNetwork QtOpenGL QtScript QtScriptTools QtSql QtSvg QtTest QtUiTools QtWebKit QtXml phonon QtMultimedia QtOpenVG"
+QT_LIB_NAMES = "Qt3Support QtAssistantClient QtCLucene QtCore QtDBus QtDesigner QtDesignerComponents QtGui QtHelp QtNetwork QtOpenGL QtScript QtScriptTools QtSql QtSvg QtTest QtUiTools QtWebKit QtXml QtXmlPatterns phonon QtMultimedia QtOpenVG QtMediaServices QtDeclarative"
QT_EXTRA_LIBS = "pvrQWSWSEGL"
dev_packages = []
dbg_packages = []
for name in bb.data.getVar("QT_LIB_NAMES", d, 1).split():
- pkg = "${QT_BASE_LIB}" + name.lower().replace("qt", "") + "4"
+ pkg = "${QT_BASE_LIB}" + name.lower().replace("qt", "").replace("_", "-") + "4"
# NOTE: the headers for QtAssistantClient are different
incname = name.replace("QtAssistantClient", "QtAssistant")
bb.data.setVar("FILES_%s" % pkg, "${libdir}/lib%(name)s${QT_LIBINFIX}.so.*" % locals(), d)
dbg_packages.append("%s-dbg" % name)
for name in bb.data.getVar("QT_EXTRA_LIBS", d, 1).split():
- pkg = "${QT_BASE_LIB}" + name.lower().replace("qt", "") + "4"
+ pkg = "${QT_BASE_LIB}" + name.lower().replace("qt", "").replace("_", "-") + "4"
bb.data.setVar("FILES_%s" % pkg, "${libdir}/lib%(name)s.so.*" % locals(), d)
bb.data.setVar("FILES_%s-dev" % pkg, """${libdir}/lib%(name)s.prl
${libdir}/lib%(name)s.a
${QT_BASE_NAME}-designer \
${QT_BASE_NAME}-examples \
${QT_BASE_NAME}-fonts \
+ ${QT_BASE_NAME}-fonts-ttf-vera \
+ ${QT_BASE_NAME}-fonts-ttf-dejavu \
+ ${QT_BASE_NAME}-fonts-pfa \
+ ${QT_BASE_NAME}-fonts-pfb \
+ ${QT_BASE_NAME}-fonts-qpf \
${QT_BASE_NAME}-linguist \
${QT_BASE_NAME}-makeqpf \
${QT_BASE_NAME}-mkspecs \
${QT_BASE_NAME}-pixeltool \
+ ${QT_BASE_NAME}-qmlviewer \
+ ${QT_BASE_NAME}-xmlpatterns \
${QT_BASE_NAME}-qt3to4"
PACKAGES += "${LIB_PACKAGES} ${DEV_PACKAGES} ${DBG_PACKAGES} ${OTHER_PACKAGES}"
-PACKAGES_DYNAMIC = "${QT_BASE_NAME}-plugin-* ${QT_BASE_NAME}-translation-*"
+PACKAGES_DYNAMIC = "${QT_BASE_NAME}-plugin-* ${QT_BASE_NAME}-translation-* ${QT_BASE_NAME}-fonts-*"
ALLOW_EMPTY_${PN} = "1"
+ALLOW_EMPTY_${QT_BASE_NAME}-fonts = "1"
FILES_${PN} = ""
FILES_${PN}-dev = "${includedir}/${QT_DIR_NAME}/Qt/*"
FILES_${PN}-dbg = ""
RRECOMMENDS_${PN} = "${LIB_PACKAGES} ${OTHER_PACKAGES}"
RRECOMMENDS_${PN}-dev = "${DEV_PACKAGES}"
RRECOMMENDS_${PN}-dbg = "${DBG_PACKAGES}"
-
-FILES_${QT_BASE_NAME}-tools = "${bindir}/uic* ${bindir}/moc ${bindir}/rcc ${bindir}/qttracereplay"
+RRECOMMENDS_${QT_BASE_NAME}-fonts = " \
+ ${QT_BASE_NAME}-fonts-ttf-vera \
+ ${QT_BASE_NAME}-fonts-ttf-dejavu \
+ ${QT_BASE_NAME}-fonts-pfa \
+ ${QT_BASE_NAME}-fonts-pfb \
+ ${QT_BASE_NAME}-fonts-qpf"
+
+FILES_${QT_BASE_NAME}-tools = "${bindir}/uic* ${bindir}/moc ${bindir}/rcc ${bindir}/qttracereplay ${bindir}/qdoc*"
+FILES_${QT_BASE_NAME}-tools-dbg = "${bindir}/.debug/uic* ${bindir}/.debug/moc ${bindir}/.debug/rcc ${bindir}/.debug/qttracereplay ${bindir}/.debug/qdoc*"
FILES_${QT_BASE_NAME}-assistant = "${bindir}/*assistant* ${bindir}/qcollectiongenerator ${bindir}/qhelpconverter ${bindir}/qhelpgenerator"
FILES_${QT_BASE_NAME}-assistant-dbg = "${bindir}/.debug/*assistant* ${bindir}/.debug/qcollectiongenerator ${bindir}/.debug/qhelpconverter ${bindir}/.debug/qhelpgenerator"
FILES_${QT_BASE_NAME}-common = "${bindir}/qtconfig"
FILES_${QT_BASE_NAME}-common-dbg = "${bindir}/.debug/qtconfig"
FILES_${QT_BASE_NAME}-dbus = "${bindir}/qdbus ${bindir}/qdbusxml2cpp ${bindir}/qdbuscpp2xml ${bindir}/qdbusviewer"
FILES_${QT_BASE_NAME}-dbus-dbg = "${bindir}/.debug/qdbus ${bindir}/.debug/qdbusxml2cpp ${bindir}/.debug/qdbuscpp2xml ${bindir}/.debug/qdbusviewer"
-FILES_${QT_BASE_NAME}-demos = "${bindir}/qtdemo ${bindir}/${QT_DIR_NAME}/demos/*"
-FILES_${QT_BASE_NAME}-demos-dbg = "${bindir}/.debug/qtdemo ${bindir}/${QT_DIR_NAME}/demos/.debug/* ${bindir}/${QT_DIR_NAME}/demos/*/.debug ${bindir}/${QT_DIR_NAME}/demos/*/*/.debug ${bindir}/${QT_DIR_NAME}/demos/*/*/*/.debug"
+FILES_${QT_BASE_NAME}-demos = "${bindir}/qtdemo* ${bindir}/${QT_DIR_NAME}/demos/*"
+FILES_${QT_BASE_NAME}-demos-dbg = "${bindir}/.debug/qtdemo* ${bindir}/${QT_DIR_NAME}/demos/.debug/* ${bindir}/${QT_DIR_NAME}/demos/*/.debug ${bindir}/${QT_DIR_NAME}/demos/*/*/.debug ${bindir}/${QT_DIR_NAME}/demos/*/*/*/.debug"
FILES_${QT_BASE_NAME}-designer = "${bindir}/*designer*"
FILES_${QT_BASE_NAME}-designer-dbg = "${bindir}/.debug/*designer*"
FILES_${QT_BASE_NAME}-examples = "${bindir}/${QT_DIR_NAME}/examples/*"
-FILES_${QT_BASE_NAME}-examples-dbg = "${bindir}/${QT_DIR_NAME}/examples/.debug ${bindir}/${QT_DIR_NAME}/examples/*/.debug ${bindir}/${QT_DIR_NAME}/examples/*/*/.debug ${bindir}/${QT_DIR_NAME}/examples/*/*/*/.debug ${bindir}/${QT_DIR_NAME}/examples/*/*/*/*/.debug"
-FILES_${QT_BASE_NAME}-fonts = "${libdir}/fonts"
+FILES_${QT_BASE_NAME}-examples-dbg = "${bindir}/${QT_DIR_NAME}/examples/.debug ${bindir}/${QT_DIR_NAME}/examples/*/.debug ${bindir}/${QT_DIR_NAME}/examples/*/*/.debug ${bindir}/${QT_DIR_NAME}/examples/*/*/*/.debug ${bindir}/${QT_DIR_NAME}/examples/*/*/*/*/.debug ${bindir}/${QT_DIR_NAME}/examples/declarative/*/*/*/*/*/.debug/* ${bindir}/${QT_DIR_NAME}/examples/declarative/*/*/*/*/.debug/*"
+FILES_${QT_BASE_NAME}-fonts-ttf-vera = "${libdir}/fonts/Vera*.ttf"
+FILES_${QT_BASE_NAME}-fonts-ttf-dejavu = "${libdir}/fonts/DejaVu*.ttf"
+FILES_${QT_BASE_NAME}-fonts-pfa = "${libdir}/fonts/*.pfa"
+FILES_${QT_BASE_NAME}-fonts-pfb = "${libdir}/fonts/*.pfb"
+FILES_${QT_BASE_NAME}-fonts-qpf = "${libdir}/fonts/*.qpf"
FILES_${QT_BASE_NAME}-linguist = "${bindir}/*linguist* ${bindir}/lrelease ${bindir}/lupdate ${bindir}/lconvert ${bindir}/qm2ts"
FILES_${QT_BASE_NAME}-linguist-dbg = "${bindir}/.debug/*linguist* ${bindir}/.debug/lrelease ${bindir}/.debug/lupdate ${bindir}/.debug/lconvert ${bindir}/.debug/qm2ts"
FILES_${QT_BASE_NAME}-pixeltool = "${bindir}/pixeltool"
FILES_${QT_BASE_NAME}-pixeltool-dbg = "${bindir}/.debug/pixeltool"
FILES_${QT_BASE_NAME}-qt3to4 = "${bindir}/qt3to4 ${datadir}/${QT_DIR_NAME}/q3porting.xml"
FILES_${QT_BASE_NAME}-qt3to4-dbg = "${bindir}/.debug/qt3to4"
+FILES_${QT_BASE_NAME}-qmlviewer = "${bindir}/qmlviewer"
+FILES_${QT_BASE_NAME}-qmlviewer-dbg = "${bindir}/.debug/qmlviewer"
FILES_${QT_BASE_NAME}-makeqpf = "${bindir}/makeqpf"
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*"
do_configure() {
-demosdir ${bindir}/${QT_DIR_NAME}/demos \
-platform ${TARGET_OS}-oe-g++ \
-xplatform ${TARGET_OS}-oe-g++ \
- -embedded ${QT_ARCH} ${QT_ENDIAN} -fast \
+ -embedded ${QT_ARCH} ${QT_ENDIAN} \
-crossarch ${QT_ARCH} \
- ${QT_CONFIG_FLAGS} -fast \
+ ${QT_CONFIG_FLAGS} -no-fast \
-L${STAGING_LIBDIR} -I${STAGING_INCDIR} \
-I${STAGING_INCDIR}/freetype2 \
-I${STAGING_INCDIR}/mysql \
qtopia_split('script', 'script', '^libqtscript(.*)\.so$')
qtopia_split('styles', 'style', '^libq(.*)\.so$')
qtopia_split('phonon_backend','phonon-backend','^libphonon_(.*)\.so$')
+ qtopia_split('bearer', 'bearer', '^libq(.*)bearer\.so$')
}
do_install() {
# fix pkgconfig, libtool and prl files
sed -i -e s#-L${S}/lib##g \
-e s#-L${STAGING_LIBDIR}##g \
+ -e 's#STAGING_LIBDIR}#libdir}'#g \
-e s#-L${libdir}##g \
-e s#'$(OE_QMAKE_LIBS_X11)'#"${OE_QMAKE_LIBS_X11}"#g \
- -e s#"-Wl,-rpath-link,${S}/lib"##g \
+ -e s#" -Wl,-rpath-link,${S}/lib"##g \
+ -e s#" -Wl,-rpath-link,${libdir}"##g \
+ -e 's#I/usr/include#Iincludedir}#g' \
+ -e 's#Iin#I${in#g' \
${D}${libdir}/*.la ${D}${libdir}/*.prl ${D}${libdir}/pkgconfig/*.pc
+ sed -i -e s#" -Wl,-rpath-link,${S}/lib"##g \
+ ${D}${datadir}/${QT_DIR_NAME}/mkspecs/common/linux.conf
+
# fix pkgconfig files
sed -i -e s#"moc_location=.*$"#"moc_location=${bindir}/moc4"# \
-e s#"uic_location=.*$"#"uic_location=${bindir}/uic4"# \
${D}${libdir}/pkgconfig/*.pc
for name in ${QT_LIB_NAMES}; do
sed -i -e /Requires/s#"${name}"#"${name}${QT_LIBINFIX}"#g ${D}${libdir}/pkgconfig/*.pc
+ if [ -f ${D}${libdir}/pkgconfig/${name}${QT_LIBINFIX}.pc ]; then
+ sed -i -e /^includedir=/s#"/${name}"## \
+ -e /^Cflags:/s#"${QT_DIR_NAME}"#"${name}"# \
+ ${D}${libdir}/pkgconfig/${name}${QT_LIBINFIX}.pc
+ fi
done
install -d ${D}/${libdir}/fonts