diff options
Diffstat (limited to 'recipes-qt')
12 files changed, 177 insertions, 7 deletions
diff --git a/recipes-qt/qt5/qtwayland-5.1.0+git/0001-xcbcommon-should-not-be-a-mandatory-dependency.patch b/recipes-qt/qt5/qtwayland-5.1.0+git/0001-xcbcommon-should-not-be-a-mandatory-dependency.patch new file mode 100644 index 00000000..0571ea5e --- /dev/null +++ b/recipes-qt/qt5/qtwayland-5.1.0+git/0001-xcbcommon-should-not-be-a-mandatory-dependency.patch | |||
@@ -0,0 +1,46 @@ | |||
1 | From 7f97da120b5b3dde22c9d89a8da8a4f35a9f2a26 Mon Sep 17 00:00:00 2001 | ||
2 | From: Mikko Levonmaa <mikko.levonmaa@palm.com> | ||
3 | Date: Tue, 19 Feb 2013 11:16:05 -0800 | ||
4 | Subject: [PATCH 1/3] xcbcommon should not be a mandatory dependency | ||
5 | |||
6 | Not all platforms that use qtwayland depend on xcbcommon to be present | ||
7 | for them to be functional | ||
8 | |||
9 | This change won't be needed when this commit from dev branch is merged | ||
10 | to stable: | ||
11 | commit 894adf8a447865119be7c6c4d01577d8032f4177 | ||
12 | Author: Oswald Buddenhagen <oswald.buddenhagen@digia.com> | ||
13 | Date: Mon Apr 8 12:54:58 2013 +0200 | ||
14 | |||
15 | make failure to configure wayland non-fatal for a top-level build of qt | ||
16 | |||
17 | Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> | ||
18 | --- | ||
19 | qtwayland.pro | 4 ++-- | ||
20 | 1 file changed, 2 insertions(+), 2 deletions(-) | ||
21 | |||
22 | diff --git a/qtwayland.pro b/qtwayland.pro | ||
23 | index 24e104b..66dd38a 100644 | ||
24 | --- a/qtwayland.pro | ||
25 | +++ b/qtwayland.pro | ||
26 | @@ -11,7 +11,7 @@ qtCompileTest(xcomposite) | ||
27 | load(qt_parts) | ||
28 | |||
29 | !config_wayland { | ||
30 | - error(QtWayland requires Wayland 1.0.3 or higher) | ||
31 | + error("QtWayland requires Wayland 1.0.3 or higher") | ||
32 | } | ||
33 | |||
34 | !config_xkbcommon { | ||
35 | @@ -19,7 +19,7 @@ load(qt_parts) | ||
36 | } | ||
37 | |||
38 | !config_wayland_scanner { | ||
39 | - error(QtWayland requires wayland-scanner) | ||
40 | + error("QtWayland requires wayland-scanner") | ||
41 | } | ||
42 | |||
43 | !config_wayland_egl { | ||
44 | -- | ||
45 | 1.8.2.1 | ||
46 | |||
diff --git a/recipes-qt/qt5/qtwayland-5.1.0+git/0002-Temporarily-patching-this-out-as-Qt5.0.0-does-not-ha.patch b/recipes-qt/qt5/qtwayland-5.1.0+git/0002-Temporarily-patching-this-out-as-Qt5.0.0-does-not-ha.patch new file mode 100644 index 00000000..77172908 --- /dev/null +++ b/recipes-qt/qt5/qtwayland-5.1.0+git/0002-Temporarily-patching-this-out-as-Qt5.0.0-does-not-ha.patch | |||
@@ -0,0 +1,33 @@ | |||
1 | From 5b7c89d211a193acfd182eb0519b658629af3193 Mon Sep 17 00:00:00 2001 | ||
2 | From: Mikko Levonmaa <mikko.levonmaa@palm.com> | ||
3 | Date: Fri, 1 Mar 2013 13:00:53 -0800 | ||
4 | Subject: [PATCH 2/3] Temporarily patching this out as Qt5.0.0 does not have | ||
5 | qtHaveModule | ||
6 | |||
7 | Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> | ||
8 | --- | ||
9 | src/compositor/compositor_api/compositor_api.pri | 4 ++-- | ||
10 | 1 file changed, 2 insertions(+), 2 deletions(-) | ||
11 | |||
12 | diff --git a/src/compositor/compositor_api/compositor_api.pri b/src/compositor/compositor_api/compositor_api.pri | ||
13 | index f0bbe76..e7905e5 100644 | ||
14 | --- a/src/compositor/compositor_api/compositor_api.pri | ||
15 | +++ b/src/compositor/compositor_api/compositor_api.pri | ||
16 | @@ -12,7 +12,7 @@ SOURCES += \ | ||
17 | |||
18 | QT += core-private | ||
19 | |||
20 | -qtHaveModule(quick) { | ||
21 | +#qtHaveModule(quick) { | ||
22 | SOURCES += \ | ||
23 | compositor_api/qwaylandsurfaceitem.cpp \ | ||
24 | compositor_api/qwaylandsurfacenode.cpp \ | ||
25 | @@ -27,4 +27,4 @@ qtHaveModule(quick) { | ||
26 | |||
27 | QT += qml quick | ||
28 | QT += quick-private gui-private | ||
29 | -} | ||
30 | +#} | ||
31 | -- | ||
32 | 1.8.2.1 | ||
33 | |||
diff --git a/recipes-qt/qt5/qtwayland-5.1.0+git/0003-eglCreateImageKHR-requires-the-context-to-be-NULL.patch b/recipes-qt/qt5/qtwayland-5.1.0+git/0003-eglCreateImageKHR-requires-the-context-to-be-NULL.patch new file mode 100644 index 00000000..58f82663 --- /dev/null +++ b/recipes-qt/qt5/qtwayland-5.1.0+git/0003-eglCreateImageKHR-requires-the-context-to-be-NULL.patch | |||
@@ -0,0 +1,71 @@ | |||
1 | From 2d707f8dc9f0658d889aef4f4c5a62595598402c Mon Sep 17 00:00:00 2001 | ||
2 | From: Mikko Levonmaa <mikko.levonmaa@palm.com> | ||
3 | Date: Wed, 6 Mar 2013 10:18:49 -0800 | ||
4 | Subject: [PATCH 3/3] eglCreateImageKHR requires the context to be NULL | ||
5 | |||
6 | As per the EGL spec the context passed to that function should | ||
7 | be null. | ||
8 | |||
9 | Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> | ||
10 | --- | ||
11 | .../wayland-egl/waylandeglintegration.cpp | 16 ++-------------- | ||
12 | 1 file changed, 2 insertions(+), 14 deletions(-) | ||
13 | |||
14 | diff --git a/src/plugins/waylandcompositors/wayland-egl/waylandeglintegration.cpp b/src/plugins/waylandcompositors/wayland-egl/waylandeglintegration.cpp | ||
15 | index 73877c4..16e77fb 100644 | ||
16 | --- a/src/plugins/waylandcompositors/wayland-egl/waylandeglintegration.cpp | ||
17 | +++ b/src/plugins/waylandcompositors/wayland-egl/waylandeglintegration.cpp | ||
18 | @@ -101,7 +101,6 @@ public: | ||
19 | |||
20 | PFNGLEGLIMAGETARGETTEXTURE2DOESPROC gl_egl_image_target_texture_2d; | ||
21 | |||
22 | - QPlatformNativeInterface::NativeResourceForContextFunction get_egl_context; | ||
23 | }; | ||
24 | |||
25 | WaylandEglIntegration::WaylandEglIntegration() | ||
26 | @@ -121,10 +120,6 @@ void WaylandEglIntegration::initializeHardware(QtWayland::Display *waylandDispla | ||
27 | const char *extensionString = eglQueryString(d->egl_display, EGL_EXTENSIONS); | ||
28 | if (extensionString && strstr(extensionString, "EGL_WL_bind_wayland_display")) | ||
29 | { | ||
30 | - d->get_egl_context = nativeInterface->nativeResourceFunctionForContext("get_egl_context"); | ||
31 | - if (!d->get_egl_context) { | ||
32 | - qWarning("Failed to retrieve the get_egl_context function"); | ||
33 | - } | ||
34 | d->egl_bind_wayland_display = | ||
35 | reinterpret_cast<PFNEGLBINDWAYLANDDISPLAYWL>(eglGetProcAddress("eglBindWaylandDisplayWL")); | ||
36 | d->egl_unbind_wayland_display = | ||
37 | @@ -137,7 +132,6 @@ void WaylandEglIntegration::initializeHardware(QtWayland::Display *waylandDispla | ||
38 | reinterpret_cast<PFNGLEGLIMAGETARGETTEXTURE2DOESPROC>(eglGetProcAddress("glEGLImageTargetTexture2DOES")); | ||
39 | |||
40 | if (d->egl_bind_wayland_display | ||
41 | - && d->get_egl_context | ||
42 | && d->egl_unbind_wayland_display | ||
43 | && d->egl_create_image | ||
44 | && d->egl_destroy_image | ||
45 | @@ -162,10 +156,7 @@ GLuint WaylandEglIntegration::createTextureFromBuffer(wl_buffer *buffer, QOpenGL | ||
46 | return 0; | ||
47 | } | ||
48 | |||
49 | - QPlatformNativeInterface *nativeInterface = QGuiApplication::platformNativeInterface(); | ||
50 | - EGLContext egl_context = d->get_egl_context(context); | ||
51 | - | ||
52 | - EGLImageKHR image = d->egl_create_image(d->egl_display, egl_context, | ||
53 | + EGLImageKHR image = d->egl_create_image(d->egl_display, NULL, | ||
54 | EGL_WAYLAND_BUFFER_WL, | ||
55 | buffer, NULL); | ||
56 | |||
57 | @@ -229,10 +220,7 @@ void *WaylandEglIntegration::lockNativeBuffer(struct wl_buffer *buffer, QOpenGLC | ||
58 | { | ||
59 | Q_D(const WaylandEglIntegration); | ||
60 | |||
61 | - QPlatformNativeInterface *nativeInterface = QGuiApplication::platformNativeInterface(); | ||
62 | - EGLContext egl_context = d->get_egl_context(context); | ||
63 | - | ||
64 | - EGLImageKHR image = d->egl_create_image(d->egl_display, egl_context, | ||
65 | + EGLImageKHR image = d->egl_create_image(d->egl_display, NULL, | ||
66 | EGL_WAYLAND_BUFFER_WL, | ||
67 | buffer, NULL); | ||
68 | return image; | ||
69 | -- | ||
70 | 1.8.2.1 | ||
71 | |||
diff --git a/recipes-qt/qt5/qtwayland/0001-Install-the-qtwaylandscanner-tool-to-the-native-side.patch b/recipes-qt/qt5/qtwayland-git/0001-Install-the-qtwaylandscanner-tool-to-the-native-side.patch index 1fac95b7..1fac95b7 100644 --- a/recipes-qt/qt5/qtwayland/0001-Install-the-qtwaylandscanner-tool-to-the-native-side.patch +++ b/recipes-qt/qt5/qtwayland-git/0001-Install-the-qtwaylandscanner-tool-to-the-native-side.patch | |||
diff --git a/recipes-qt/qt5/qtwayland/0001-xcbcommon-should-not-be-a-mandatory-dependency.patch b/recipes-qt/qt5/qtwayland-git/0001-xcbcommon-should-not-be-a-mandatory-dependency.patch index e9e705cd..e9e705cd 100644 --- a/recipes-qt/qt5/qtwayland/0001-xcbcommon-should-not-be-a-mandatory-dependency.patch +++ b/recipes-qt/qt5/qtwayland-git/0001-xcbcommon-should-not-be-a-mandatory-dependency.patch | |||
diff --git a/recipes-qt/qt5/qtwayland/0002-Temporarily-patching-this-out-as-Qt5.0.0-does-not-ha.patch b/recipes-qt/qt5/qtwayland-git/0002-Temporarily-patching-this-out-as-Qt5.0.0-does-not-ha.patch index 0c9bbbe7..0c9bbbe7 100644 --- a/recipes-qt/qt5/qtwayland/0002-Temporarily-patching-this-out-as-Qt5.0.0-does-not-ha.patch +++ b/recipes-qt/qt5/qtwayland-git/0002-Temporarily-patching-this-out-as-Qt5.0.0-does-not-ha.patch | |||
diff --git a/recipes-qt/qt5/qtwayland/0003-eglCreateImageKHR-requires-the-context-to-be-NULL.patch b/recipes-qt/qt5/qtwayland-git/0003-eglCreateImageKHR-requires-the-context-to-be-NULL.patch index 48eb870b..48eb870b 100644 --- a/recipes-qt/qt5/qtwayland/0003-eglCreateImageKHR-requires-the-context-to-be-NULL.patch +++ b/recipes-qt/qt5/qtwayland-git/0003-eglCreateImageKHR-requires-the-context-to-be-NULL.patch | |||
diff --git a/recipes-qt/qt5/qtwayland/0004-EGL-Specify-vec2d-precision-qualifier-in-fragment-sh.patch b/recipes-qt/qt5/qtwayland-git/0004-EGL-Specify-vec2d-precision-qualifier-in-fragment-sh.patch index 47ea65fd..47ea65fd 100644 --- a/recipes-qt/qt5/qtwayland/0004-EGL-Specify-vec2d-precision-qualifier-in-fragment-sh.patch +++ b/recipes-qt/qt5/qtwayland-git/0004-EGL-Specify-vec2d-precision-qualifier-in-fragment-sh.patch | |||
diff --git a/recipes-qt/qt5/qtwayland-native_git.bb b/recipes-qt/qt5/qtwayland-native_git.bb index 090faafa..20cd2519 100644 --- a/recipes-qt/qt5/qtwayland-native_git.bb +++ b/recipes-qt/qt5/qtwayland-native_git.bb | |||
@@ -2,6 +2,8 @@ require qt5-git.inc | |||
2 | require ${PN}.inc | 2 | require ${PN}.inc |
3 | 3 | ||
4 | # qtwayland wasn't released yet, last tag before this SRCREV is 5.0.0-beta1 | 4 | # qtwayland wasn't released yet, last tag before this SRCREV is 5.0.0-beta1 |
5 | PV = "4.999+5.0.0-beta1+git${SRCPV}" | 5 | # this PV is only to indicate that this recipe is compatible with qt5 5.1.0 |
6 | # while qtwayland_git stays compatible with 5.0.2 | ||
7 | PV = "5.1.0+git${SRCPV}" | ||
6 | 8 | ||
7 | SRCREV = "ede872db1cdfdc2810c2dd29edd5fb6e1cdac0f5" | 9 | SRCREV = "ede872db1cdfdc2810c2dd29edd5fb6e1cdac0f5" |
diff --git a/recipes-qt/qt5/qtwayland.inc b/recipes-qt/qt5/qtwayland.inc index 7cf39351..3ae98ede 100644 --- a/recipes-qt/qt5/qtwayland.inc +++ b/recipes-qt/qt5/qtwayland.inc | |||
@@ -13,13 +13,10 @@ LIC_FILES_CHKSUM = "file://${S}/src/compositor/compositor_api/qwaylandsurfacenod | |||
13 | XKB_DEPENDS = "libxkbcommon xproto" | 13 | XKB_DEPENDS = "libxkbcommon xproto" |
14 | DEPENDS += "qtbase qtdeclarative wayland wayland-native ${XKB_DEPENDS}" | 14 | DEPENDS += "qtbase qtdeclarative wayland wayland-native ${XKB_DEPENDS}" |
15 | 15 | ||
16 | INC_PR = "r1" | ||
17 | |||
18 | SRC_URI += " \ | 16 | SRC_URI += " \ |
19 | file://0001-xcbcommon-should-not-be-a-mandatory-dependency.patch \ | 17 | file://0001-xcbcommon-should-not-be-a-mandatory-dependency.patch \ |
20 | file://0002-Temporarily-patching-this-out-as-Qt5.0.0-does-not-ha.patch \ | 18 | file://0002-Temporarily-patching-this-out-as-Qt5.0.0-does-not-ha.patch \ |
21 | file://0003-eglCreateImageKHR-requires-the-context-to-be-NULL.patch \ | 19 | file://0003-eglCreateImageKHR-requires-the-context-to-be-NULL.patch \ |
22 | file://0004-EGL-Specify-vec2d-precision-qualifier-in-fragment-sh.patch \ | ||
23 | " | 20 | " |
24 | 21 | ||
25 | QT_WAYLAND_CONFIG ?= "wayland-compositor" | 22 | QT_WAYLAND_CONFIG ?= "wayland-compositor" |
diff --git a/recipes-qt/qt5/qtwayland_5.1.0+git.bb b/recipes-qt/qt5/qtwayland_5.1.0+git.bb new file mode 100644 index 00000000..aaa439cf --- /dev/null +++ b/recipes-qt/qt5/qtwayland_5.1.0+git.bb | |||
@@ -0,0 +1,15 @@ | |||
1 | require qt5-git.inc | ||
2 | require ${PN}.inc | ||
3 | |||
4 | FILESEXTRAPATHS =. "${FILE_DIRNAME}/${BPN}-5.1.0+git:" | ||
5 | |||
6 | DEPENDS += "qtwayland-native" | ||
7 | |||
8 | # qtwayland wasn't released yet, last tag before this SRCREV is 5.0.0-beta1 | ||
9 | # this PV is only to indicate that this recipe is compatible with qt5 5.1.0 | ||
10 | # while qtwayland_git stays compatible with 5.0.2 | ||
11 | PV = "5.1.0+git${SRCPV}" | ||
12 | |||
13 | # newer revisions depend on newer wayland-1.1 APIs | ||
14 | SRCREV = "87dba733acfddecd8562e8e26ce5f994aa499fe3" | ||
15 | # SRCREV = "ede872db1cdfdc2810c2dd29edd5fb6e1cdac0f5" | ||
diff --git a/recipes-qt/qt5/qtwayland_git.bb b/recipes-qt/qt5/qtwayland_git.bb index f91df4d5..170b3673 100644 --- a/recipes-qt/qt5/qtwayland_git.bb +++ b/recipes-qt/qt5/qtwayland_git.bb | |||
@@ -1,13 +1,19 @@ | |||
1 | require qt5-git.inc | 1 | require qt5-git.inc |
2 | require ${PN}.inc | 2 | require ${PN}.inc |
3 | 3 | ||
4 | # qtwayland wasn't released yet, last tag before this SRCREV is 5.0.0-beta1 | 4 | # qtwayland wasn't released yet, last tag before this SRCREV is 5.0.0-beta1, |
5 | PV = "4.999+5.0.0-beta1+git${SRCPV}" | 5 | # but we'll use 5.0.2+git to indicate this version is compatible with 5.0.2 |
6 | PV = "5.0.2+git${SRCPV}" | ||
6 | 7 | ||
7 | PR = "${INC_PR}.1" | 8 | # drop when bumping SRCREV |
9 | PR = "r2" | ||
8 | 10 | ||
9 | SRCREV = "5cb159395eccb1d96fb73a78e499eef30aacb46d" | 11 | SRCREV = "5cb159395eccb1d96fb73a78e499eef30aacb46d" |
10 | 12 | ||
13 | SRC_URI += " \ | ||
14 | file://0004-EGL-Specify-vec2d-precision-qualifier-in-fragment-sh.patch \ | ||
15 | " | ||
16 | |||
11 | do_configure_prepend() { | 17 | do_configure_prepend() { |
12 | # Temporary hack to get qtwayland build for Qt 5.0.2 | 18 | # Temporary hack to get qtwayland build for Qt 5.0.2 |
13 | if ! grep -q MODULE_VERSION ${S}/.qmake.conf; then | 19 | if ! grep -q MODULE_VERSION ${S}/.qmake.conf; then |