summaryrefslogtreecommitdiffstats
path: root/recipes-qt
diff options
context:
space:
mode:
authorSamuli Piippo <samuli.piippo@qt.io>2016-11-16 22:24:01 +0200
committerSamuli Piippo <samuli.piippo@qt.io>2016-11-16 22:27:09 +0200
commit4e113c7b8e0a7512d2f0ad306decc8b4885ef807 (patch)
tree02e337512c2b061d6d3e9b8523491d3441556237 /recipes-qt
parent8c7e11523eb0bc1044e79593a1ffa823867ff567 (diff)
parent81fb771c3f31110e50eebcb004809361fdb28194 (diff)
downloadmeta-qt5-4e113c7b8e0a7512d2f0ad306decc8b4885ef807.tar.gz
Merge remote-tracking branch 'qtyocto/upstream/master' into 5.8
Conflicts: classes/qmake5_base.bbclass recipes-qt/qt5/nativesdk-qtbase_git.bb recipes-qt/qt5/qtbase_git.bb recipes-qt/qt5/qtwayland-native_git.bb recipes-qt/qt5/qtwayland_git.bb Change-Id: I4d383e069efb8f64b7469e414ab368c9ca0ff1ad
Diffstat (limited to 'recipes-qt')
-rw-r--r--recipes-qt/examples/qt5everywheredemo_1.0.bb2
-rw-r--r--recipes-qt/qt5/qt5-creator_3.5.1.bb6
-rw-r--r--recipes-qt/qt5/qtdeclarative_git.bb4
-rw-r--r--recipes-qt/qt5/qtmultimedia/0001-qtmultimedia-fix-a-conflicting-declaration.patch103
-rw-r--r--recipes-qt/qt5/qtmultimedia_git.bb1
-rw-r--r--recipes-qt/qt5/qtwayland/0001-Fix-building-of-QWaylandIntegration-if-some-Qt5-feat.patch117
-rw-r--r--recipes-qt/qt5/qtwayland_git.bb5
-rw-r--r--recipes-qt/qt5/qtwebengine_git.bb1
8 files changed, 233 insertions, 6 deletions
diff --git a/recipes-qt/examples/qt5everywheredemo_1.0.bb b/recipes-qt/examples/qt5everywheredemo_1.0.bb
index ab2bbd4a..7735d902 100644
--- a/recipes-qt/examples/qt5everywheredemo_1.0.bb
+++ b/recipes-qt/examples/qt5everywheredemo_1.0.bb
@@ -7,7 +7,7 @@ LIC_FILES_CHKSUM = "file://main.cpp;md5=1187cb795a0f96bce64e63dd1a67dc2b"
7DEPENDS = "qtdeclarative qtgraphicaleffects" 7DEPENDS = "qtdeclarative qtgraphicaleffects"
8 8
9SRCREV = "c17fe9e0ec0882ac4c4dc1168095f569acab5d09" 9SRCREV = "c17fe9e0ec0882ac4c4dc1168095f569acab5d09"
10SRC_URI = "${QT_GIT}/qt-labs-qt5-everywhere-demo" 10SRC_URI = "${QT_LABS_GIT}/qt-labs-qt5-everywhere-demo"
11 11
12S = "${WORKDIR}/git/QtDemo" 12S = "${WORKDIR}/git/QtDemo"
13 13
diff --git a/recipes-qt/qt5/qt5-creator_3.5.1.bb b/recipes-qt/qt5/qt5-creator_3.5.1.bb
index 2d8cee9d..f4ba8580 100644
--- a/recipes-qt/qt5/qt5-creator_3.5.1.bb
+++ b/recipes-qt/qt5/qt5-creator_3.5.1.bb
@@ -32,8 +32,8 @@ EXTRA_QMAKEVARS_PRE += "IDE_LIBRARY_BASENAME=${baselib}${QT_DIR_NAME}"
32 32
33do_configure_append() { 33do_configure_append() {
34 # Find native tools 34 # Find native tools
35 sed -i 's:${STAGING_BINDIR}.*/lrelease:${STAGING_BINDIR_NATIVE}${QT_DIR_NAME}/lrelease:g' ${B}/share/qtcreator/translations/Makefile 35 sed -i 's:${STAGING_BINDIR}.*/lrelease:${OE_QMAKE_PATH_EXTERNAL_HOST_BINS}/lrelease:g' ${B}/share/qtcreator/translations/Makefile
36 sed -i 's:${STAGING_BINDIR}.*/qdoc:${STAGING_BINDIR_NATIVE}${QT_DIR_NAME}/qdoc:g' ${B}/Makefile 36 sed -i 's:${STAGING_BINDIR}.*/qdoc:${OE_QMAKE_PATH_EXTERNAL_HOST_BINS}/qdoc:g' ${B}/Makefile
37 37
38 # see qtbase-native.inc 38 # see qtbase-native.inc
39 # sed -i 's:QT_INSTALL_DOCS=${docdir}:QT_INSTALL_DOCS=${STAGING_DATADIR_NATIVE}${QT_DIR_NAME}/doc:g' ${B}/Makefile 39 # sed -i 's:QT_INSTALL_DOCS=${docdir}:QT_INSTALL_DOCS=${STAGING_DATADIR_NATIVE}${QT_DIR_NAME}/doc:g' ${B}/Makefile
@@ -50,7 +50,7 @@ do_install() {
50 # install desktop and ensure that qt-creator finds qmake 50 # install desktop and ensure that qt-creator finds qmake
51 install -d ${D}${datadir}/applications 51 install -d ${D}${datadir}/applications
52 install -m 0644 ${WORKDIR}/qtcreator.desktop.in ${D}${datadir}/applications/qtcreator.desktop 52 install -m 0644 ${WORKDIR}/qtcreator.desktop.in ${D}${datadir}/applications/qtcreator.desktop
53 sed -i 's:@QT5_QMAKE@:${bindir}${QT_DIR_NAME}:g' ${D}${datadir}/applications/qtcreator.desktop 53 sed -i 's:@QT5_QMAKE@:${OE_QMAKE_PATH_QT_BINS}:g' ${D}${datadir}/applications/qtcreator.desktop
54} 54}
55 55
56FILES_${PN} += " \ 56FILES_${PN} += " \
diff --git a/recipes-qt/qt5/qtdeclarative_git.bb b/recipes-qt/qt5/qtdeclarative_git.bb
index c1d6b77f..6912ea87 100644
--- a/recipes-qt/qt5/qtdeclarative_git.bb
+++ b/recipes-qt/qt5/qtdeclarative_git.bb
@@ -21,7 +21,7 @@ SRC_URI += " \
21 file://0002-qquickviewcomparison-fix-QCoreApplication-has-not-be.patch \ 21 file://0002-qquickviewcomparison-fix-QCoreApplication-has-not-be.patch \
22" 22"
23 23
24EXTRA_OEMAKE += "QMAKE_SYNCQT=${STAGING_BINDIR_NATIVE}${QT_DIR_NAME}/syncqt" 24EXTRA_OEMAKE += "QMAKE_SYNCQT=${OE_QMAKE_PATH_EXTERNAL_HOST_BINS}/syncqt"
25 25
26PACKAGECONFIG ??= "qtxmlpatterns" 26PACKAGECONFIG ??= "qtxmlpatterns"
27PACKAGECONFIG[qtxmlpatterns] = ",,qtxmlpatterns" 27PACKAGECONFIG[qtxmlpatterns] = ",,qtxmlpatterns"
@@ -32,7 +32,7 @@ do_configure_prepend() {
32 sed -e 's/^\(!qtHaveModule(xmlpatterns)\)/!OE_QTXMLPATTERNS_ENABLED|\1/' -i ${S}/tests/auto/quick/quick.pro 32 sed -e 's/^\(!qtHaveModule(xmlpatterns)\)/!OE_QTXMLPATTERNS_ENABLED|\1/' -i ${S}/tests/auto/quick/quick.pro
33 33
34 #set the path for syncqt properly 34 #set the path for syncqt properly
35 echo "QT_TOOL.syncqt.binary = \"${STAGING_BINDIR_NATIVE}${QT_DIR_NAME}/syncqt\"" > ${B}/.qmake.cache 35 echo "QT_TOOL.syncqt.binary = \"${OE_QMAKE_PATH_EXTERNAL_HOST_BINS}/syncqt\"" > ${B}/.qmake.cache
36} 36}
37 37
38do_install_append_class-nativesdk() { 38do_install_append_class-nativesdk() {
diff --git a/recipes-qt/qt5/qtmultimedia/0001-qtmultimedia-fix-a-conflicting-declaration.patch b/recipes-qt/qt5/qtmultimedia/0001-qtmultimedia-fix-a-conflicting-declaration.patch
new file mode 100644
index 00000000..8547f72a
--- /dev/null
+++ b/recipes-qt/qt5/qtmultimedia/0001-qtmultimedia-fix-a-conflicting-declaration.patch
@@ -0,0 +1,103 @@
1From 849355a1c59d76fa39dc93b537458a084190fa45 Mon Sep 17 00:00:00 2001
2From: Wenlin Kang <wenlin.kang@windriver.com>
3Date: Thu, 8 Sep 2016 12:18:13 +0800
4Subject: [PATCH] qtmultimedia: fix a conflicting declaration
5
6Use lgl2.h instead of gl2.h and gl2ext.h,
7fix a "conflicting declaration" error.
8
9Signed-off-by: Wenlin Kang <wenlin.kang@windriver.com>
10---
11 src/plugins/videonode/imx6/lgl2.h | 46 ++++++++++++++++++++++
12 .../videonode/imx6/qsgvivantevideomaterial.cpp | 5 ++-
13 src/plugins/videonode/imx6/qsgvivantevideonode.cpp | 5 ++-
14 3 files changed, 52 insertions(+), 4 deletions(-)
15 create mode 100644 src/plugins/videonode/imx6/lgl2.h
16
17diff --git a/src/plugins/videonode/imx6/lgl2.h b/src/plugins/videonode/imx6/lgl2.h
18new file mode 100644
19index 0000000..2423697
20--- /dev/null
21+++ b/src/plugins/videonode/imx6/lgl2.h
22@@ -0,0 +1,46 @@
23+#ifndef __L_GL2_H__
24+#define __L_GL2_H__
25+
26+// this file comes from <GLES2/gl2.h> and <GLES2/gl2ext.h>,
27+// it's a light gl2.h.
28+
29+/*-------------------------------------------------------------------------
30+ * Definition of KHRONOS_APIENTRY
31+ *-------------------------------------------------------------------------
32+ * This follows the return type of the function and precedes the function
33+ * name in the function prototype.
34+ */
35+#if defined(_WIN32) && !defined(_WIN32_WCE) && !defined(__SCITECH_SNAP__)
36+ /* Win32 but not WinCE */
37+# define KHRONOS_APIENTRY __stdcall
38+#else
39+# define KHRONOS_APIENTRY
40+#endif
41+
42+#ifndef GL_APIENTRY
43+# define GL_APIENTRY KHRONOS_APIENTRY
44+#endif
45+
46+#ifndef GL_APIENTRYP
47+# define GL_APIENTRYP GL_APIENTRY*
48+#endif
49+
50+typedef void GLvoid;
51+typedef unsigned int GLenum;
52+typedef unsigned int GLuint;
53+typedef int GLsizei;
54+
55+#define GL_VIV_YV12 0x8FC0
56+#define GL_VIV_NV12 0x8FC1
57+#define GL_VIV_YUY2 0x8FC2
58+#define GL_VIV_UYVY 0x8FC3
59+#define GL_VIV_NV21 0x8FC4
60+#define GL_VIV_I420 0x8FC5
61+
62+typedef void (GL_APIENTRYP PFNGLTEXDIRECTVIVMAPPROC) (GLenum Target, GLsizei Width, GLsizei Height, GLenum Format, GLvoid ** Logical, const GLuint * Physical);
63+typedef void (GL_APIENTRYP PFNGLTEXDIRECTMAPVIVPROC) (GLenum Target, GLsizei Width, GLsizei Height, GLenum Format, GLvoid ** Logical, const GLuint * Physical);
64+typedef void (GL_APIENTRYP PFNGLTEXDIRECTVIVPROC) (GLenum Target, GLsizei Width, GLsizei Height, GLenum Format, GLvoid ** Pixels);
65+typedef void (GL_APIENTRYP PFNGLTEXDIRECTINVALIDATEVIVPROC) (GLenum Target);
66+typedef void (GL_APIENTRYP PFNGLTEXDIRECTTILEDMAPVIVPROC) (GLenum Target, GLsizei Width, GLsizei Height, GLenum Format, GLvoid ** Logical, const GLuint * Physical);
67+
68+#endif
69diff --git a/src/plugins/videonode/imx6/qsgvivantevideomaterial.cpp b/src/plugins/videonode/imx6/qsgvivantevideomaterial.cpp
70index 2e2092b..54568db 100644
71--- a/src/plugins/videonode/imx6/qsgvivantevideomaterial.cpp
72+++ b/src/plugins/videonode/imx6/qsgvivantevideomaterial.cpp
73@@ -31,8 +31,9 @@
74 **
75 ****************************************************************************/
76
77-#include <GLES2/gl2.h>
78-#include <GLES2/gl2ext.h>
79+// use lgl2.h instead of <GLES2/gl2.h> and <GLES2/gl2ext.h>,
80+// fixes a conflicting declaration issue.
81+#include "lgl2.h"
82
83 #include "qsgvivantevideomaterial.h"
84 #include "qsgvivantevideomaterialshader.h"
85diff --git a/src/plugins/videonode/imx6/qsgvivantevideonode.cpp b/src/plugins/videonode/imx6/qsgvivantevideonode.cpp
86index 229a69b..184fd12 100644
87--- a/src/plugins/videonode/imx6/qsgvivantevideonode.cpp
88+++ b/src/plugins/videonode/imx6/qsgvivantevideonode.cpp
89@@ -31,8 +31,9 @@
90 **
91 ****************************************************************************/
92
93-#include <GLES2/gl2.h>
94-#include <GLES2/gl2ext.h>
95+// use lgl2.h instead of <GLES2/gl2.h> and <GLES2/gl2ext.h>,
96+// fixes a conflicting declaration issue.
97+#include "lgl2.h"
98
99 #include "qsgvivantevideonode.h"
100 #include "qsgvivantevideomaterialshader.h"
101--
1021.9.1
103
diff --git a/recipes-qt/qt5/qtmultimedia_git.bb b/recipes-qt/qt5/qtmultimedia_git.bb
index e93904ae..4fe2d8e6 100644
--- a/recipes-qt/qt5/qtmultimedia_git.bb
+++ b/recipes-qt/qt5/qtmultimedia_git.bb
@@ -36,6 +36,7 @@ EXTRA_QMAKEVARS_PRE += "${@bb.utils.contains_any('PACKAGECONFIG', 'gstreamer gst
36 36
37SRC_URI += "\ 37SRC_URI += "\
38 file://0001-Initial-porting-effort-to-GStreamer-1.0.patch \ 38 file://0001-Initial-porting-effort-to-GStreamer-1.0.patch \
39 file://0001-qtmultimedia-fix-a-conflicting-declaration.patch \
39" 40"
40 41
41SRCREV = "0cb4dc5c1fded81b4f47945b51b8de0b0151bf67" 42SRCREV = "0cb4dc5c1fded81b4f47945b51b8de0b0151bf67"
diff --git a/recipes-qt/qt5/qtwayland/0001-Fix-building-of-QWaylandIntegration-if-some-Qt5-feat.patch b/recipes-qt/qt5/qtwayland/0001-Fix-building-of-QWaylandIntegration-if-some-Qt5-feat.patch
new file mode 100644
index 00000000..982c60c5
--- /dev/null
+++ b/recipes-qt/qt5/qtwayland/0001-Fix-building-of-QWaylandIntegration-if-some-Qt5-feat.patch
@@ -0,0 +1,117 @@
1From 4fd9d8ce8289e0b7d5ecf01c7cce89d20d93b0d4 Mon Sep 17 00:00:00 2001
2From: =?UTF-8?q?Vesa=20J=C3=A4=C3=A4skel=C3=A4inen?= <dachaac@gmail.com>
3Date: Sun, 18 Sep 2016 11:51:59 +0300
4Subject: [PATCH] Fix building of QWaylandIntegration if some Qt5 features are
5 disabled.
6
7QPlatformIntegration's interface methods are disabled based on QT_NO_OPENGL,
8QT_NO_CLIPBOARD, QT_NO_DRAGANDDROP, QT_NO_ACCESSIBILITY and
9QT_NO_SESSIONMANAGER, these has to be taken into account when compiling
10QtWayland.
11---
12 src/client/qwaylandintegration.cpp | 17 ++++++++++++++++-
13 src/client/qwaylandintegration_p.h | 8 ++++++++
14 2 files changed, 24 insertions(+), 1 deletion(-)
15
16diff --git a/src/client/qwaylandintegration.cpp b/src/client/qwaylandintegration.cpp
17index 48517fc..9ea8647 100644
18--- a/src/client/qwaylandintegration.cpp
19+++ b/src/client/qwaylandintegration.cpp
20@@ -45,7 +45,9 @@
21 #include "qwaylandinputcontext_p.h"
22 #include "qwaylandshmbackingstore_p.h"
23 #include "qwaylandnativeinterface_p.h"
24+#ifndef QT_NO_CLIPBOARD
25 #include "qwaylandclipboard_p.h"
26+#endif
27 #include "qwaylanddnd_p.h"
28 #include "qwaylandwindowmanagerintegration_p.h"
29 #include "qwaylandscreen_p.h"
30@@ -63,7 +65,9 @@
31 #include <QSocketNotifier>
32
33 #include <qpa/qplatforminputcontextfactory_p.h>
34+#ifndef QT_NO_ACCESSIBILITY
35 #include <qpa/qplatformaccessibility.h>
36+#endif
37 #include <qpa/qplatforminputcontext.h>
38
39 #include "qwaylandhardwareintegration_p.h"
40@@ -132,9 +136,12 @@ QWaylandIntegration::QWaylandIntegration()
41 {
42 initializeInputDeviceIntegration();
43 mDisplay = new QWaylandDisplay(this);
44+#ifndef QT_NO_CLIPBOARD
45 mClipboard = new QWaylandClipboard(mDisplay);
46+#endif
47+#ifndef QT_NO_DRAGANDDROP
48 mDrag = new QWaylandDrag(mDisplay);
49-
50+#endif
51 QString icStr = QPlatformInputContextFactory::requested();
52 if (!icStr.isNull()) {
53 mInputContext.reset(QPlatformInputContextFactory::create(icStr));
54@@ -153,8 +160,12 @@ QWaylandIntegration::QWaylandIntegration()
55
56 QWaylandIntegration::~QWaylandIntegration()
57 {
58+#ifndef QT_NO_DRAGANDDROP
59 delete mDrag;
60+#endif
61+#ifndef QT_NO_CLIPBOARD
62 delete mClipboard;
63+#endif
64 #ifndef QT_NO_ACCESSIBILITY
65 delete mAccessibility;
66 #endif
67@@ -230,15 +241,19 @@ QPlatformFontDatabase *QWaylandIntegration::fontDatabase() const
68 return mFontDb;
69 }
70
71+#ifndef QT_NO_CLIPBOARD
72 QPlatformClipboard *QWaylandIntegration::clipboard() const
73 {
74 return mClipboard;
75 }
76+#endif
77
78+#ifndef QT_NO_DRAGANDDROP
79 QPlatformDrag *QWaylandIntegration::drag() const
80 {
81 return mDrag;
82 }
83+#endif
84
85 QPlatformInputContext *QWaylandIntegration::inputContext() const
86 {
87diff --git a/src/client/qwaylandintegration_p.h b/src/client/qwaylandintegration_p.h
88index 9a49902..082e0c8 100644
89--- a/src/client/qwaylandintegration_p.h
90+++ b/src/client/qwaylandintegration_p.h
91@@ -86,9 +86,13 @@ public:
92
93 QPlatformNativeInterface *nativeInterface() const Q_DECL_OVERRIDE;
94
95+#ifndef QT_NO_CLIPBOARD
96 QPlatformClipboard *clipboard() const Q_DECL_OVERRIDE;
97+#endif
98
99+#ifndef QT_NO_DRAGANDDROP
100 QPlatformDrag *drag() const Q_DECL_OVERRIDE;
101+#endif
102
103 QPlatformInputContext *inputContext() const Q_DECL_OVERRIDE;
104
105@@ -126,8 +130,12 @@ private:
106 QWaylandShellIntegration *createShellIntegration(const QString& interfaceName);
107
108 QPlatformFontDatabase *mFontDb;
109+#ifndef QT_NO_CLIPBOARD
110 QPlatformClipboard *mClipboard;
111+#endif
112+#ifndef QT_NO_DRAGANDDROP
113 QPlatformDrag *mDrag;
114+#endif
115 QWaylandDisplay *mDisplay;
116 QPlatformNativeInterface *mNativeInterface;
117 QScopedPointer<QPlatformInputContext> mInputContext;
diff --git a/recipes-qt/qt5/qtwayland_git.bb b/recipes-qt/qt5/qtwayland_git.bb
index c2931257..c64a92f1 100644
--- a/recipes-qt/qt5/qtwayland_git.bb
+++ b/recipes-qt/qt5/qtwayland_git.bb
@@ -15,6 +15,7 @@ LIC_FILES_CHKSUM = " \
15 file://LGPL_EXCEPTION.txt;md5=9625233da42f9e0ce9d63651a9d97654 \ 15 file://LGPL_EXCEPTION.txt;md5=9625233da42f9e0ce9d63651a9d97654 \
16 file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e \ 16 file://LICENSE.FDL;md5=6d9f2a9af4c8b8c3c769f6cc1b6aaf7e \
17" 17"
18
18#FIXME: xkb should be optional; we add it here to fix the build error without it 19#FIXME: xkb should be optional; we add it here to fix the build error without it
19# (https://bugreports.qt.io/browse/QTBUG-54851) 20# (https://bugreports.qt.io/browse/QTBUG-54851)
20PACKAGECONFIG ?= " \ 21PACKAGECONFIG ?= " \
@@ -41,6 +42,10 @@ PACKAGECONFIG[libhybris-egl] = "CONFIG+=config_libhybris_egl_server CONFIG+=done
41 42
42EXTRA_QMAKEVARS_PRE += "${PACKAGECONFIG_CONFARGS}" 43EXTRA_QMAKEVARS_PRE += "${PACKAGECONFIG_CONFARGS}"
43 44
45SRC_URI += " \
46 file://0001-Fix-building-of-QWaylandIntegration-if-some-Qt5-feat.patch \
47"
48
44SRCREV = "3443483c9efdcfbfe049f96c83f83a5bf1d81e61" 49SRCREV = "3443483c9efdcfbfe049f96c83f83a5bf1d81e61"
45 50
46BBCLASSEXTEND =+ "native nativesdk" 51BBCLASSEXTEND =+ "native nativesdk"
diff --git a/recipes-qt/qt5/qtwebengine_git.bb b/recipes-qt/qt5/qtwebengine_git.bb
index 24f94d56..4152ef0a 100644
--- a/recipes-qt/qt5/qtwebengine_git.bb
+++ b/recipes-qt/qt5/qtwebengine_git.bb
@@ -19,6 +19,7 @@ DEPENDS += " \
19 qtlocation \ 19 qtlocation \
20 libdrm fontconfig pixman openssl pango cairo icu pciutils \ 20 libdrm fontconfig pixman openssl pango cairo icu pciutils \
21 libcap \ 21 libcap \
22 gperf-native \
22" 23"
23 24
24# when qtbase is built with xcb enabled (default with x11 in DISTRO_FEATURES), 25# when qtbase is built with xcb enabled (default with x11 in DISTRO_FEATURES),