Skip to contentSkip to conversation

qtbase: prevent artifacts on raster windows using eglfs plugin

PATCH Superseded Jonathan Liu 3 participants 3 messages Mar 4, 2014

v2 of 3 Superseded Latest is v3 →

lore
Share & tools
lore
#0 lore raw

PATCH v2 1/1 qtbase: prevent artifacts on raster windows using eglfs plugin

---
 recipes-qt/qt5/qtbase.inc                          |  1 +
 .../qt5/qtbase/0001-Add-linux-oe-g-platform.patch  |  2 +-
 ...o-allow-to-set-qt.conf-from-the-outside-u.patch |  2 +-
 .../0003-Add-external-hostbindir-option.patch      |  2 +-
 ...p-Prefix-default-LIBDIRS-and-INCDIRS-with.patch |  2 +-
 .../0005-qt_module-Fix-pkgconfig-replacement.patch |  2 +-
 ...on-t-export-SYSTEM_VARIABLES-to-.qmake.va.patch |  2 +-
 ....prf-Allow-to-add-extra-arguments-to-make.patch |  2 +-
 ...ake-pulseaudio-alsa-freetype-a-configurab.patch |  2 +-
 ...E_QMAKE_PATH_EXTERNAL_HOST_BINS-to-determ.patch |  2 +-
 ...0-qmake-is-already-built-in-qtbase-native.patch |  2 +-
 ...-building-a-separate-qmake-for-the-target.patch |  2 +-
 .../0012-qtbase-allow-build-of-examples.patch      |  2 +-
 .../0013-QOpenGLPaintDevice-sub-area-support.patch |  2 +-
 ...gl-error-for-platforms-only-supporting-on.patch |  2 +-
 .../0015-Fix-linuxfb-argument-mmsize-parsing.patch |  2 +-
 .../qtbase/0016-eglfs-Fix-quad-coordinates.patch   | 39 ++++++++++++++++++++++
 17 files changed, 55 insertions(+), 15 deletions(-)
 create mode 100644 recipes-qt/qt5/qtbase/0016-eglfs-Fix-quad-coordinates.patch
recipes-qt/qt5/qtbase.inc +1 -0
index f1a10bb..e5d98df 100644
@@ -20,6 +20,7 @@ SRC_URI += "\
     file://0013-QOpenGLPaintDevice-sub-area-support.patch \
     file://0014-eglfs-fix-egl-error-for-platforms-only-supporting-on.patch \
     file://0015-Fix-linuxfb-argument-mmsize-parsing.patch \
+    file://0016-eglfs-Fix-quad-coordinates.patch \
 "
 
 DEPENDS += "qtbase-native"
recipes-qt/qt5/qtbase/0001-Add-linux-oe-g-platform.patch +1 -1
index 030a091..b256f14 100644
@@ -1,7 +1,7 @@
 From f883ec8652ee603d9bb9def7eb669ed82c493961 Mon Sep 17 00:00:00 2001
 From: Martin Jansa <[email protected]>
 Date: Mon, 15 Apr 2013 04:29:32 +0200
-Subject: [PATCH 01/15] Add linux-oe-g++ platform
+Subject: [PATCH 01/16] Add linux-oe-g++ platform
 
 * This qmake.conf unlike other platforms reads most variables from
   shell environment, because it's easier for qt recipes to export
recipes-qt/qt5/qtbase/0002-qlibraryinfo-allow-to-set-qt.conf-from-the-outside-u.patch +1 -1
index 525260a..870aa9f 100644
@@ -1,7 +1,7 @@
 From 841d1f06f3fd2f59f6b18067b02d5fcfc93aaa7a Mon Sep 17 00:00:00 2001
 From: Holger Freyther <[email protected]>
 Date: Wed, 26 Sep 2012 17:22:30 +0200
-Subject: [PATCH 02/15] qlibraryinfo: allow to set qt.conf from the outside
+Subject: [PATCH 02/16] qlibraryinfo: allow to set qt.conf from the outside
  using the environment
 
 Allow to set a qt.conf from the outside using the environment. This allows
recipes-qt/qt5/qtbase/0003-Add-external-hostbindir-option.patch +1 -1
index 91b0a6c..c82e9d1 100644
@@ -1,7 +1,7 @@
 From 3648eeddaed0cf31fba226ec713d2321f398974f Mon Sep 17 00:00:00 2001
 From: Martin Jansa <[email protected]>
 Date: Sat, 6 Apr 2013 13:15:07 +0200
-Subject: [PATCH 03/15] Add -external-hostbindir option
+Subject: [PATCH 03/16] Add -external-hostbindir option
 
 * when cross-compiling it's sometimes useful to use existing tools from machine
   (or in OpenEmbedded built with separate native recipe) when building for target
recipes-qt/qt5/qtbase/0004-configureapp-Prefix-default-LIBDIRS-and-INCDIRS-with.patch +1 -1
index b1cdfa4..f1184e5 100644
@@ -1,7 +1,7 @@
 From 698f073fb8cc6dc1ced277b6ae2056cb9d02f2d5 Mon Sep 17 00:00:00 2001
 From: Martin Jansa <[email protected]>
 Date: Sat, 27 Apr 2013 22:33:33 +0200
-Subject: [PATCH 04/15] configureapp: Prefix default LIBDIRS and INCDIRS with
+Subject: [PATCH 04/16] configureapp: Prefix default LIBDIRS and INCDIRS with
  SYSROOT
 
 Upstream-Status: Pending
recipes-qt/qt5/qtbase/0005-qt_module-Fix-pkgconfig-replacement.patch +1 -1
index 9ac5f6a..f1770bd 100644
@@ -1,7 +1,7 @@
 From 7999eeb3f2ab1150aa301ec26ae9bf0788d09c9e Mon Sep 17 00:00:00 2001
 From: Martin Jansa <[email protected]>
 Date: Sat, 27 Apr 2013 23:15:37 +0200
-Subject: [PATCH 05/15] qt_module: Fix pkgconfig replacement
+Subject: [PATCH 05/16] qt_module: Fix pkgconfig replacement
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: 8bit
recipes-qt/qt5/qtbase/0006-configure-don-t-export-SYSTEM_VARIABLES-to-.qmake.va.patch +1 -1
index d514da3..0bd53cf 100644
@@ -1,7 +1,7 @@
 From ebd38fc708cf7190e47a75754235f56fa5d86300 Mon Sep 17 00:00:00 2001
 From: Martin Jansa <[email protected]>
 Date: Wed, 8 May 2013 23:54:35 +0200
-Subject: [PATCH 06/15] configure: don't export SYSTEM_VARIABLES to .qmake.vars
+Subject: [PATCH 06/16] configure: don't export SYSTEM_VARIABLES to .qmake.vars
 
 * linux-oe-g++ should handle this correctly and exporting LD as QMAKE_LINK is
   causing issues as we need g++ to be used as linker
recipes-qt/qt5/qtbase/0007-configure.prf-Allow-to-add-extra-arguments-to-make.patch +1 -1
index 821e5b8..abe26a1 100644
@@ -1,7 +1,7 @@
 From 828eecd8f361cb965bd40f535435efa91665c8e5 Mon Sep 17 00:00:00 2001
 From: Martin Jansa <[email protected]>
 Date: Thu, 9 May 2013 10:06:50 +0200
-Subject: [PATCH 07/15] configure.prf: Allow to add extra arguments to make
+Subject: [PATCH 07/16] configure.prf: Allow to add extra arguments to make
 
 * sometimes we would like to add -e or define some variable and respect it from both
   Makefiles used in configure tests and also Makefiles to build the application
recipes-qt/qt5/qtbase/0008-configure-make-pulseaudio-alsa-freetype-a-configurab.patch +1 -1
index 4abc465..7011025 100644
@@ -1,7 +1,7 @@
 From 3923edc900d1b3dd23e0a6af3a32255707cd497c Mon Sep 17 00:00:00 2001
 From: Paul Eggleton <[email protected]>
 Date: Tue, 28 Feb 2012 15:10:24 +0000
-Subject: [PATCH 08/15] configure: make pulseaudio, alsa, freetype a
+Subject: [PATCH 08/16] configure: make pulseaudio, alsa, freetype a
  configurable option
 
 Allows disabling pulseaudio, alsa, freetype support at configure time
recipes-qt/qt5/qtbase/0009-cmake-Use-OE_QMAKE_PATH_EXTERNAL_HOST_BINS-to-determ.patch +1 -1
index b52d02d..6b7bc1e 100644
@@ -1,7 +1,7 @@
 From acbd622d1b91c1aa9ec8c48d10d91354d175345c Mon Sep 17 00:00:00 2001
 From: Simon Busch <[email protected]>
 Date: Mon, 22 Jul 2013 21:09:41 +0000
-Subject: [PATCH 09/15] cmake: Use OE_QMAKE_PATH_EXTERNAL_HOST_BINS to
+Subject: [PATCH 09/16] cmake: Use OE_QMAKE_PATH_EXTERNAL_HOST_BINS to
  determine path to host binaries
 
 Upstream-Status: Inappropiate (configuration)
recipes-qt/qt5/qtbase/0010-qmake-is-already-built-in-qtbase-native.patch +1 -1
index eb2da1e..e9266cb 100644
@@ -1,7 +1,7 @@
 From 77a18a9fe2d0e4a1dcd95e2d78c85eb37452bc73 Mon Sep 17 00:00:00 2001
 From: Michael Krelin <[email protected]>
 Date: Mon, 29 Oct 2012 20:07:49 -0700
-Subject: [PATCH 10/15] qmake is already built in qtbase-native
+Subject: [PATCH 10/16] qmake is already built in qtbase-native
 
 Ported from OE by: Yu Ke <[email protected]>
 Upstream-Status: Inappropriate [configuration]
recipes-qt/qt5/qtbase/0011-Allow-building-a-separate-qmake-for-the-target.patch +1 -1
index e028f35..a477348 100644
@@ -1,7 +1,7 @@
 From dd14f3eda61669c66c95dbcbca3afbd61f9aa746 Mon Sep 17 00:00:00 2001
 From: Paul Eggleton <[email protected]>
 Date: Mon, 29 Oct 2012 20:26:36 -0700
-Subject: [PATCH 11/15] Allow building a separate qmake for the target
+Subject: [PATCH 11/16] Allow building a separate qmake for the target
 
 Upstream-Status: Inappropriate [config]
 
recipes-qt/qt5/qtbase/0012-qtbase-allow-build-of-examples.patch +1 -1
index 3e8f1e2..19ba150 100644
@@ -1,7 +1,7 @@
 From 6e5e22110b4731b4324d309bc579393f422ba99d Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Eric=20B=C3=A9nard?= <[email protected]>
 Date: Sat, 25 May 2013 17:34:32 +0200
-Subject: [PATCH 12/15] qtbase: allow build of examples
+Subject: [PATCH 12/16] qtbase: allow build of examples
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: 8bit
recipes-qt/qt5/qtbase/0013-QOpenGLPaintDevice-sub-area-support.patch +1 -1
index 8366364..e1eabb5 100644
@@ -1,7 +1,7 @@
 From 2fad0a6fa3c06577995ac44ed0a2a12eaef819c2 Mon Sep 17 00:00:00 2001
 From: Jani Hautakangas <[email protected]>
 Date: Thu, 16 May 2013 09:52:07 +0300
-Subject: [PATCH 13/15] QOpenGLPaintDevice sub-area support
+Subject: [PATCH 13/16] QOpenGLPaintDevice sub-area support
 
 Allows creating QOpenGLPaintDevice targetting sub-area
 of binded framebuffer.
recipes-qt/qt5/qtbase/0014-eglfs-fix-egl-error-for-platforms-only-supporting-on.patch +1 -1
index 9c366b6..0835a6f 100644
@@ -1,7 +1,7 @@
 From c8995c6eb6cf4bfa8daf1e3e96bd4885a096f405 Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Andreas=20M=C3=BCller?= <[email protected]>
 Date: Wed, 5 Feb 2014 18:35:08 +0100
-Subject: [PATCH 14/15] eglfs: fix egl error for platforms only supporting one
+Subject: [PATCH 14/16] eglfs: fix egl error for platforms only supporting one
  window/surface
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
recipes-qt/qt5/qtbase/0015-Fix-linuxfb-argument-mmsize-parsing.patch +1 -1
index c9836c8..a4b1379 100644
@@ -1,7 +1,7 @@
 From 99979159a404df09495c8ddd6a052837f66b8739 Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Peter=20K=C3=BCmmel?= <[email protected]>
 Date: Fri, 7 Feb 2014 13:12:37 +0100
-Subject: [PATCH 15/15] Fix linuxfb argument 'mmsize' parsing
+Subject: [PATCH 15/16] Fix linuxfb argument 'mmsize' parsing
 
 Parse first for 'mmsize' because the regex for 'size' also fits to 'mmsize'.
 
recipes-qt/qt5/qtbase/0016-eglfs-Fix-quad-coordinates.patch new file +39 -0
new file mode 100644
index 0000000..f0dfc9c
@@ -0,0 +1,39 @@
+From 84756d94c73885803ad8044099ab47c0c49b5076 Mon Sep 17 00:00:00 2001
+From: Laszlo Agocs <[email protected]>
+Date: Thu, 23 Jan 2014 11:45:22 +0100
+Subject: [PATCH 16/16] eglfs: Fix quad coordinates
+
+Prevent artifacts on raster windows by properly mapping
+the coordinates to [-1,1].
+
+Upstream-Status: Backport
+
+Task-number: QTBUG-36370
+Change-Id: I95d0d03952f597ef4ce6a950c6533a3af2df964a
+Reviewed-by: Andy Nichols <[email protected]>
+Signed-off-by: Jonathan Liu <[email protected]>
+---
+ src/plugins/platforms/eglfs/qeglfscompositor.cpp | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/src/plugins/platforms/eglfs/qeglfscompositor.cpp b/src/plugins/platforms/eglfs/qeglfscompositor.cpp
+index 845bb5b..1efc4f7 100644
+--- a/src/plugins/platforms/eglfs/qeglfscompositor.cpp
++++ b/src/plugins/platforms/eglfs/qeglfscompositor.cpp
+@@ -153,10 +153,11 @@ void QEglFSCompositor::render(QEglFSWindow *window, uint texture, bool raster)
+     QPoint tl = r.topLeft();
+     QPoint br = r.bottomRight();
+ 
++    // Map to [-1,1]
+     GLfloat x1 = (tl.x() / sr.width()) * 2 - 1;
+-    GLfloat x2 = (br.x() / sr.width()) * 2 - 1;
+     GLfloat y1 = ((sr.height() - tl.y()) / sr.height()) * 2 - 1;
+-    GLfloat y2 = ((sr.height() - br.y()) / sr.height()) * 2 - 1;
++    GLfloat x2 = ((br.x() + 1) / sr.width()) * 2 - 1;
++    GLfloat y2 = ((sr.height() - (br.y() + 1)) / sr.height()) * 2 - 1;
+ 
+     if (!raster)
+         qSwap(y1, y2);
+-- 
+1.7.1
+
Signature · 1 line
1.9.0
#1 lore raw
Quoted 39 lines · Jonathan Liu
---
 recipes-qt/qt5/qtbase.inc                          |  1 +
 .../qt5/qtbase/0001-Add-linux-oe-g-platform.patch  |  2 +-
 ...o-allow-to-set-qt.conf-from-the-outside-u.patch |  2 +-
 .../0003-Add-external-hostbindir-option.patch      |  2 +-
 ...p-Prefix-default-LIBDIRS-and-INCDIRS-with.patch |  2 +-
 .../0005-qt_module-Fix-pkgconfig-replacement.patch |  2 +-
 ...on-t-export-SYSTEM_VARIABLES-to-.qmake.va.patch |  2 +-
 ....prf-Allow-to-add-extra-arguments-to-make.patch |  2 +-
 ...ake-pulseaudio-alsa-freetype-a-configurab.patch |  2 +-
 ...E_QMAKE_PATH_EXTERNAL_HOST_BINS-to-determ.patch |  2 +-
 ...0-qmake-is-already-built-in-qtbase-native.patch |  2 +-
 ...-building-a-separate-qmake-for-the-target.patch |  2 +-
 .../0012-qtbase-allow-build-of-examples.patch      |  2 +-
 .../0013-QOpenGLPaintDevice-sub-area-support.patch |  2 +-
 ...gl-error-for-platforms-only-supporting-on.patch |  2 +-
 .../0015-Fix-linuxfb-argument-mmsize-parsing.patch |  2 +-
 .../qtbase/0016-eglfs-Fix-quad-coordinates.patch   | 39 ++++++++++++++++++++++
 17 files changed, 55 insertions(+), 15 deletions(-)
 create mode 100644 recipes-qt/qt5/qtbase/0016-eglfs-Fix-quad-coordinates.patch
recipes-qt/qt5/qtbase.inc +1 -0
index f1a10bb..e5d98df 100644
@@ -20,6 +20,7 @@ SRC_URI += "\
     file://0013-QOpenGLPaintDevice-sub-area-support.patch \
     file://0014-eglfs-fix-egl-error-for-platforms-only-supporting-on.patch \
     file://0015-Fix-linuxfb-argument-mmsize-parsing.patch \
+    file://0016-eglfs-Fix-quad-coordinates.patch \
 "
 
 DEPENDS += "qtbase-native"
recipes-qt/qt5/qtbase/0001-Add-linux-oe-g-platform.patch +0 -0
index 030a091..b256f14 100644

recipes-qt/qt5/qtbase/0001-Add-linux-oe-g-platform.patch line 4

Quoted 5 lines
recipes-qt/qt5/qtbase/0001-Add-linux-oe-g-platform.patch +1 -1
@@ -1,7 +1,7 @@
 From f883ec8652ee603d9bb9def7eb669ed82c493961 Mon Sep 17 00:00:00 2001
 From: Martin Jansa <[email protected]>
 Date: Mon, 15 Apr 2013 04:29:32 +0200
-Subject: [PATCH 01/15] Add linux-oe-g++ platform
+Subject: [PATCH 01/16] Add linux-oe-g++ platform

Not sure you need to touch every patch in the original series to update the count. Maintainers should probably do that when they feel the need... But it's up to them to decide one way or another, just saying that this patch will be cleaner otherwise...

Quoted 236 lines
recipes-qt/qt5/qtbase/0001-Add-linux-oe-g-platform.patch +0 -0
 * This qmake.conf unlike other platforms reads most variables from
   shell environment, because it's easier for qt recipes to export
recipes-qt/qt5/qtbase/0002-qlibraryinfo-allow-to-set-qt.conf-from-the-outside-u.patch +1 -1
index 525260a..870aa9f 100644
@@ -1,7 +1,7 @@
 From 841d1f06f3fd2f59f6b18067b02d5fcfc93aaa7a Mon Sep 17 00:00:00 2001
 From: Holger Freyther <[email protected]>
 Date: Wed, 26 Sep 2012 17:22:30 +0200
-Subject: [PATCH 02/15] qlibraryinfo: allow to set qt.conf from the outside
+Subject: [PATCH 02/16] qlibraryinfo: allow to set qt.conf from the outside
  using the environment
 
 Allow to set a qt.conf from the outside using the environment. This allows
recipes-qt/qt5/qtbase/0003-Add-external-hostbindir-option.patch +1 -1
index 91b0a6c..c82e9d1 100644
@@ -1,7 +1,7 @@
 From 3648eeddaed0cf31fba226ec713d2321f398974f Mon Sep 17 00:00:00 2001
 From: Martin Jansa <[email protected]>
 Date: Sat, 6 Apr 2013 13:15:07 +0200
-Subject: [PATCH 03/15] Add -external-hostbindir option
+Subject: [PATCH 03/16] Add -external-hostbindir option
 
 * when cross-compiling it's sometimes useful to use existing tools from machine
   (or in OpenEmbedded built with separate native recipe) when building for target
recipes-qt/qt5/qtbase/0004-configureapp-Prefix-default-LIBDIRS-and-INCDIRS-with.patch +1 -1
index b1cdfa4..f1184e5 100644
@@ -1,7 +1,7 @@
 From 698f073fb8cc6dc1ced277b6ae2056cb9d02f2d5 Mon Sep 17 00:00:00 2001
 From: Martin Jansa <[email protected]>
 Date: Sat, 27 Apr 2013 22:33:33 +0200
-Subject: [PATCH 04/15] configureapp: Prefix default LIBDIRS and INCDIRS with
+Subject: [PATCH 04/16] configureapp: Prefix default LIBDIRS and INCDIRS with
  SYSROOT
 
 Upstream-Status: Pending
recipes-qt/qt5/qtbase/0005-qt_module-Fix-pkgconfig-replacement.patch +1 -1
index 9ac5f6a..f1770bd 100644
@@ -1,7 +1,7 @@
 From 7999eeb3f2ab1150aa301ec26ae9bf0788d09c9e Mon Sep 17 00:00:00 2001
 From: Martin Jansa <[email protected]>
 Date: Sat, 27 Apr 2013 23:15:37 +0200
-Subject: [PATCH 05/15] qt_module: Fix pkgconfig replacement
+Subject: [PATCH 05/16] qt_module: Fix pkgconfig replacement
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: 8bit
recipes-qt/qt5/qtbase/0006-configure-don-t-export-SYSTEM_VARIABLES-to-.qmake.va.patch +1 -1
index d514da3..0bd53cf 100644
@@ -1,7 +1,7 @@
 From ebd38fc708cf7190e47a75754235f56fa5d86300 Mon Sep 17 00:00:00 2001
 From: Martin Jansa <[email protected]>
 Date: Wed, 8 May 2013 23:54:35 +0200
-Subject: [PATCH 06/15] configure: don't export SYSTEM_VARIABLES to .qmake.vars
+Subject: [PATCH 06/16] configure: don't export SYSTEM_VARIABLES to .qmake.vars
 
 * linux-oe-g++ should handle this correctly and exporting LD as QMAKE_LINK is
   causing issues as we need g++ to be used as linker
recipes-qt/qt5/qtbase/0007-configure.prf-Allow-to-add-extra-arguments-to-make.patch +1 -1
index 821e5b8..abe26a1 100644
@@ -1,7 +1,7 @@
 From 828eecd8f361cb965bd40f535435efa91665c8e5 Mon Sep 17 00:00:00 2001
 From: Martin Jansa <[email protected]>
 Date: Thu, 9 May 2013 10:06:50 +0200
-Subject: [PATCH 07/15] configure.prf: Allow to add extra arguments to make
+Subject: [PATCH 07/16] configure.prf: Allow to add extra arguments to make
 
 * sometimes we would like to add -e or define some variable and respect it from both
   Makefiles used in configure tests and also Makefiles to build the application
recipes-qt/qt5/qtbase/0008-configure-make-pulseaudio-alsa-freetype-a-configurab.patch +1 -1
index 4abc465..7011025 100644
@@ -1,7 +1,7 @@
 From 3923edc900d1b3dd23e0a6af3a32255707cd497c Mon Sep 17 00:00:00 2001
 From: Paul Eggleton <[email protected]>
 Date: Tue, 28 Feb 2012 15:10:24 +0000
-Subject: [PATCH 08/15] configure: make pulseaudio, alsa, freetype a
+Subject: [PATCH 08/16] configure: make pulseaudio, alsa, freetype a
  configurable option
 
 Allows disabling pulseaudio, alsa, freetype support at configure time
recipes-qt/qt5/qtbase/0009-cmake-Use-OE_QMAKE_PATH_EXTERNAL_HOST_BINS-to-determ.patch +1 -1
index b52d02d..6b7bc1e 100644
@@ -1,7 +1,7 @@
 From acbd622d1b91c1aa9ec8c48d10d91354d175345c Mon Sep 17 00:00:00 2001
 From: Simon Busch <[email protected]>
 Date: Mon, 22 Jul 2013 21:09:41 +0000
-Subject: [PATCH 09/15] cmake: Use OE_QMAKE_PATH_EXTERNAL_HOST_BINS to
+Subject: [PATCH 09/16] cmake: Use OE_QMAKE_PATH_EXTERNAL_HOST_BINS to
  determine path to host binaries
 
 Upstream-Status: Inappropiate (configuration)
recipes-qt/qt5/qtbase/0010-qmake-is-already-built-in-qtbase-native.patch +1 -1
index eb2da1e..e9266cb 100644
@@ -1,7 +1,7 @@
 From 77a18a9fe2d0e4a1dcd95e2d78c85eb37452bc73 Mon Sep 17 00:00:00 2001
 From: Michael Krelin <[email protected]>
 Date: Mon, 29 Oct 2012 20:07:49 -0700
-Subject: [PATCH 10/15] qmake is already built in qtbase-native
+Subject: [PATCH 10/16] qmake is already built in qtbase-native
 
 Ported from OE by: Yu Ke <[email protected]>
 Upstream-Status: Inappropriate [configuration]
recipes-qt/qt5/qtbase/0011-Allow-building-a-separate-qmake-for-the-target.patch +1 -1
index e028f35..a477348 100644
@@ -1,7 +1,7 @@
 From dd14f3eda61669c66c95dbcbca3afbd61f9aa746 Mon Sep 17 00:00:00 2001
 From: Paul Eggleton <[email protected]>
 Date: Mon, 29 Oct 2012 20:26:36 -0700
-Subject: [PATCH 11/15] Allow building a separate qmake for the target
+Subject: [PATCH 11/16] Allow building a separate qmake for the target
 
 Upstream-Status: Inappropriate [config]
 
recipes-qt/qt5/qtbase/0012-qtbase-allow-build-of-examples.patch +1 -1
index 3e8f1e2..19ba150 100644
@@ -1,7 +1,7 @@
 From 6e5e22110b4731b4324d309bc579393f422ba99d Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Eric=20B=C3=A9nard?= <[email protected]>
 Date: Sat, 25 May 2013 17:34:32 +0200
-Subject: [PATCH 12/15] qtbase: allow build of examples
+Subject: [PATCH 12/16] qtbase: allow build of examples
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: 8bit
recipes-qt/qt5/qtbase/0013-QOpenGLPaintDevice-sub-area-support.patch +1 -1
index 8366364..e1eabb5 100644
@@ -1,7 +1,7 @@
 From 2fad0a6fa3c06577995ac44ed0a2a12eaef819c2 Mon Sep 17 00:00:00 2001
 From: Jani Hautakangas <[email protected]>
 Date: Thu, 16 May 2013 09:52:07 +0300
-Subject: [PATCH 13/15] QOpenGLPaintDevice sub-area support
+Subject: [PATCH 13/16] QOpenGLPaintDevice sub-area support
 
 Allows creating QOpenGLPaintDevice targetting sub-area
 of binded framebuffer.
recipes-qt/qt5/qtbase/0014-eglfs-fix-egl-error-for-platforms-only-supporting-on.patch +1 -1
index 9c366b6..0835a6f 100644
@@ -1,7 +1,7 @@
 From c8995c6eb6cf4bfa8daf1e3e96bd4885a096f405 Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Andreas=20M=C3=BCller?= <[email protected]>
 Date: Wed, 5 Feb 2014 18:35:08 +0100
-Subject: [PATCH 14/15] eglfs: fix egl error for platforms only supporting one
+Subject: [PATCH 14/16] eglfs: fix egl error for platforms only supporting one
  window/surface
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
recipes-qt/qt5/qtbase/0015-Fix-linuxfb-argument-mmsize-parsing.patch +1 -1
index c9836c8..a4b1379 100644
@@ -1,7 +1,7 @@
 From 99979159a404df09495c8ddd6a052837f66b8739 Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Peter=20K=C3=BCmmel?= <[email protected]>
 Date: Fri, 7 Feb 2014 13:12:37 +0100
-Subject: [PATCH 15/15] Fix linuxfb argument 'mmsize' parsing
+Subject: [PATCH 15/16] Fix linuxfb argument 'mmsize' parsing
 
 Parse first for 'mmsize' because the regex for 'size' also fits to 'mmsize'.
 
recipes-qt/qt5/qtbase/0016-eglfs-Fix-quad-coordinates.patch new file +39 -0
new file mode 100644
index 0000000..f0dfc9c
@@ -0,0 +1,39 @@
+From 84756d94c73885803ad8044099ab47c0c49b5076 Mon Sep 17 00:00:00 2001
+From: Laszlo Agocs <[email protected]>
+Date: Thu, 23 Jan 2014 11:45:22 +0100
+Subject: [PATCH 16/16] eglfs: Fix quad coordinates
+
+Prevent artifacts on raster windows by properly mapping
+the coordinates to [-1,1].
+
+Upstream-Status: Backport
+
+Task-number: QTBUG-36370
+Change-Id: I95d0d03952f597ef4ce6a950c6533a3af2df964a
+Reviewed-by: Andy Nichols <[email protected]>
+Signed-off-by: Jonathan Liu <[email protected]>
+---
+ src/plugins/platforms/eglfs/qeglfscompositor.cpp | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/src/plugins/platforms/eglfs/qeglfscompositor.cpp b/src/plugins/platforms/eglfs/qeglfscompositor.cpp
+index 845bb5b..1efc4f7 100644
+--- a/src/plugins/platforms/eglfs/qeglfscompositor.cpp
++++ b/src/plugins/platforms/eglfs/qeglfscompositor.cpp
+@@ -153,10 +153,11 @@ void QEglFSCompositor::render(QEglFSWindow *window, uint texture, bool raster)
+     QPoint tl = r.topLeft();
+     QPoint br = r.bottomRight();
+ 
++    // Map to [-1,1]
+     GLfloat x1 = (tl.x() / sr.width()) * 2 - 1;
+-    GLfloat x2 = (br.x() / sr.width()) * 2 - 1;
+     GLfloat y1 = ((sr.height() - tl.y()) / sr.height()) * 2 - 1;
+-    GLfloat y2 = ((sr.height() - br.y()) / sr.height()) * 2 - 1;
++    GLfloat x2 = ((br.x() + 1) / sr.width()) * 2 - 1;
++    GLfloat y2 = ((sr.height() - (br.y() + 1)) / sr.height()) * 2 - 1;
+ 
+     if (!raster)
+         qSwap(y1, y2);
+-- 
+1.7.1
+
Signature · 6 lines
1.9.0

_______________________________________________
Openembedded-devel mailing list
[email protected]
http://lists.openembedded.org/mailman/listinfo/openembedded-devel
#2 lore raw
Quoted 34 lines · Denys Dmytriyenko
Quoted 33 lines · Jonathan Liu
---
 recipes-qt/qt5/qtbase.inc                          |  1 +
 .../qt5/qtbase/0001-Add-linux-oe-g-platform.patch  |  2 +-
 ...o-allow-to-set-qt.conf-from-the-outside-u.patch |  2 +-
 .../0003-Add-external-hostbindir-option.patch      |  2 +-
 ...p-Prefix-default-LIBDIRS-and-INCDIRS-with.patch |  2 +-
 .../0005-qt_module-Fix-pkgconfig-replacement.patch |  2 +-
 ...on-t-export-SYSTEM_VARIABLES-to-.qmake.va.patch |  2 +-
 ....prf-Allow-to-add-extra-arguments-to-make.patch |  2 +-
 ...ake-pulseaudio-alsa-freetype-a-configurab.patch |  2 +-
 ...E_QMAKE_PATH_EXTERNAL_HOST_BINS-to-determ.patch |  2 +-
 ...0-qmake-is-already-built-in-qtbase-native.patch |  2 +-
 ...-building-a-separate-qmake-for-the-target.patch |  2 +-
 .../0012-qtbase-allow-build-of-examples.patch      |  2 +-
 .../0013-QOpenGLPaintDevice-sub-area-support.patch |  2 +-
 ...gl-error-for-platforms-only-supporting-on.patch |  2 +-
 .../0015-Fix-linuxfb-argument-mmsize-parsing.patch |  2 +-
 .../qtbase/0016-eglfs-Fix-quad-coordinates.patch   | 39 ++++++++++++++++++++++
 17 files changed, 55 insertions(+), 15 deletions(-)
 create mode 100644 recipes-qt/qt5/qtbase/0016-eglfs-Fix-quad-coordinates.patch
recipes-qt/qt5/qtbase.inc +1 -0
index f1a10bb..e5d98df 100644
@@ -20,6 +20,7 @@ SRC_URI += "\
     file://0013-QOpenGLPaintDevice-sub-area-support.patch \
     file://0014-eglfs-fix-egl-error-for-platforms-only-supporting-on.patch \
     file://0015-Fix-linuxfb-argument-mmsize-parsing.patch \
+    file://0016-eglfs-Fix-quad-coordinates.patch \
 "
 
Quoted 16 lines

recipes-qt/qt5/qtbase/0001-Add-linux-oe-g-platform.patch line 4

Quoted 11 lines
recipes-qt/qt5/qtbase.inc +0 -0
 DEPENDS += "qtbase-native"
recipes-qt/qt5/qtbase/0001-Add-linux-oe-g-platform.patch +1 -1
index 030a091..b256f14 100644
@@ -1,7 +1,7 @@
 From f883ec8652ee603d9bb9def7eb669ed82c493961 Mon Sep 17 00:00:00 2001
 From: Martin Jansa <[email protected]>
 Date: Mon, 15 Apr 2013 04:29:32 +0200
-Subject: [PATCH 01/15] Add linux-oe-g++ platform
+Subject: [PATCH 01/16] Add linux-oe-g++ platform

Not sure you need to touch every patch in the original series to update the count. Maintainers should probably do that when they feel the need... But it's up to them to decide one way or another, just saying that this patch will be cleaner otherwise...

From my perspective, I usually use https://github.com/meta-qt5/qtbase to prepare the patches and then dump them all, put them to qtbase dir just to see if they are different and if the only change are these numbers I don't include them in commit.

In some cases (e.g. when upgrading) when there is even small change in only one .patch file, I'll update the numbers in all of them. Or when I forgot to exclude them.

So I agree it would be a bit cleaner, but still I plan to take this and I'm happy to see patches which I can easily add to qtbase fork on github.

Quoted 240 lines
Quoted 236 lines
recipes-qt/qt5/qtbase/0001-Add-linux-oe-g-platform.patch +0 -0
 * This qmake.conf unlike other platforms reads most variables from
   shell environment, because it's easier for qt recipes to export
recipes-qt/qt5/qtbase/0002-qlibraryinfo-allow-to-set-qt.conf-from-the-outside-u.patch +1 -1
index 525260a..870aa9f 100644
@@ -1,7 +1,7 @@
 From 841d1f06f3fd2f59f6b18067b02d5fcfc93aaa7a Mon Sep 17 00:00:00 2001
 From: Holger Freyther <[email protected]>
 Date: Wed, 26 Sep 2012 17:22:30 +0200
-Subject: [PATCH 02/15] qlibraryinfo: allow to set qt.conf from the outside
+Subject: [PATCH 02/16] qlibraryinfo: allow to set qt.conf from the outside
  using the environment
 
 Allow to set a qt.conf from the outside using the environment. This allows
recipes-qt/qt5/qtbase/0003-Add-external-hostbindir-option.patch +1 -1
index 91b0a6c..c82e9d1 100644
@@ -1,7 +1,7 @@
 From 3648eeddaed0cf31fba226ec713d2321f398974f Mon Sep 17 00:00:00 2001
 From: Martin Jansa <[email protected]>
 Date: Sat, 6 Apr 2013 13:15:07 +0200
-Subject: [PATCH 03/15] Add -external-hostbindir option
+Subject: [PATCH 03/16] Add -external-hostbindir option
 
 * when cross-compiling it's sometimes useful to use existing tools from machine
   (or in OpenEmbedded built with separate native recipe) when building for target
recipes-qt/qt5/qtbase/0004-configureapp-Prefix-default-LIBDIRS-and-INCDIRS-with.patch +1 -1
index b1cdfa4..f1184e5 100644
@@ -1,7 +1,7 @@
 From 698f073fb8cc6dc1ced277b6ae2056cb9d02f2d5 Mon Sep 17 00:00:00 2001
 From: Martin Jansa <[email protected]>
 Date: Sat, 27 Apr 2013 22:33:33 +0200
-Subject: [PATCH 04/15] configureapp: Prefix default LIBDIRS and INCDIRS with
+Subject: [PATCH 04/16] configureapp: Prefix default LIBDIRS and INCDIRS with
  SYSROOT
 
 Upstream-Status: Pending
recipes-qt/qt5/qtbase/0005-qt_module-Fix-pkgconfig-replacement.patch +1 -1
index 9ac5f6a..f1770bd 100644
@@ -1,7 +1,7 @@
 From 7999eeb3f2ab1150aa301ec26ae9bf0788d09c9e Mon Sep 17 00:00:00 2001
 From: Martin Jansa <[email protected]>
 Date: Sat, 27 Apr 2013 23:15:37 +0200
-Subject: [PATCH 05/15] qt_module: Fix pkgconfig replacement
+Subject: [PATCH 05/16] qt_module: Fix pkgconfig replacement
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: 8bit
recipes-qt/qt5/qtbase/0006-configure-don-t-export-SYSTEM_VARIABLES-to-.qmake.va.patch +1 -1
index d514da3..0bd53cf 100644
@@ -1,7 +1,7 @@
 From ebd38fc708cf7190e47a75754235f56fa5d86300 Mon Sep 17 00:00:00 2001
 From: Martin Jansa <[email protected]>
 Date: Wed, 8 May 2013 23:54:35 +0200
-Subject: [PATCH 06/15] configure: don't export SYSTEM_VARIABLES to .qmake.vars
+Subject: [PATCH 06/16] configure: don't export SYSTEM_VARIABLES to .qmake.vars
 
 * linux-oe-g++ should handle this correctly and exporting LD as QMAKE_LINK is
   causing issues as we need g++ to be used as linker
recipes-qt/qt5/qtbase/0007-configure.prf-Allow-to-add-extra-arguments-to-make.patch +1 -1
index 821e5b8..abe26a1 100644
@@ -1,7 +1,7 @@
 From 828eecd8f361cb965bd40f535435efa91665c8e5 Mon Sep 17 00:00:00 2001
 From: Martin Jansa <[email protected]>
 Date: Thu, 9 May 2013 10:06:50 +0200
-Subject: [PATCH 07/15] configure.prf: Allow to add extra arguments to make
+Subject: [PATCH 07/16] configure.prf: Allow to add extra arguments to make
 
 * sometimes we would like to add -e or define some variable and respect it from both
   Makefiles used in configure tests and also Makefiles to build the application
recipes-qt/qt5/qtbase/0008-configure-make-pulseaudio-alsa-freetype-a-configurab.patch +1 -1
index 4abc465..7011025 100644
@@ -1,7 +1,7 @@
 From 3923edc900d1b3dd23e0a6af3a32255707cd497c Mon Sep 17 00:00:00 2001
 From: Paul Eggleton <[email protected]>
 Date: Tue, 28 Feb 2012 15:10:24 +0000
-Subject: [PATCH 08/15] configure: make pulseaudio, alsa, freetype a
+Subject: [PATCH 08/16] configure: make pulseaudio, alsa, freetype a
  configurable option
 
 Allows disabling pulseaudio, alsa, freetype support at configure time
recipes-qt/qt5/qtbase/0009-cmake-Use-OE_QMAKE_PATH_EXTERNAL_HOST_BINS-to-determ.patch +1 -1
index b52d02d..6b7bc1e 100644
@@ -1,7 +1,7 @@
 From acbd622d1b91c1aa9ec8c48d10d91354d175345c Mon Sep 17 00:00:00 2001
 From: Simon Busch <[email protected]>
 Date: Mon, 22 Jul 2013 21:09:41 +0000
-Subject: [PATCH 09/15] cmake: Use OE_QMAKE_PATH_EXTERNAL_HOST_BINS to
+Subject: [PATCH 09/16] cmake: Use OE_QMAKE_PATH_EXTERNAL_HOST_BINS to
  determine path to host binaries
 
 Upstream-Status: Inappropiate (configuration)
recipes-qt/qt5/qtbase/0010-qmake-is-already-built-in-qtbase-native.patch +1 -1
index eb2da1e..e9266cb 100644
@@ -1,7 +1,7 @@
 From 77a18a9fe2d0e4a1dcd95e2d78c85eb37452bc73 Mon Sep 17 00:00:00 2001
 From: Michael Krelin <[email protected]>
 Date: Mon, 29 Oct 2012 20:07:49 -0700
-Subject: [PATCH 10/15] qmake is already built in qtbase-native
+Subject: [PATCH 10/16] qmake is already built in qtbase-native
 
 Ported from OE by: Yu Ke <[email protected]>
 Upstream-Status: Inappropriate [configuration]
recipes-qt/qt5/qtbase/0011-Allow-building-a-separate-qmake-for-the-target.patch +1 -1
index e028f35..a477348 100644
@@ -1,7 +1,7 @@
 From dd14f3eda61669c66c95dbcbca3afbd61f9aa746 Mon Sep 17 00:00:00 2001
 From: Paul Eggleton <[email protected]>
 Date: Mon, 29 Oct 2012 20:26:36 -0700
-Subject: [PATCH 11/15] Allow building a separate qmake for the target
+Subject: [PATCH 11/16] Allow building a separate qmake for the target
 
 Upstream-Status: Inappropriate [config]
 
recipes-qt/qt5/qtbase/0012-qtbase-allow-build-of-examples.patch +1 -1
index 3e8f1e2..19ba150 100644
@@ -1,7 +1,7 @@
 From 6e5e22110b4731b4324d309bc579393f422ba99d Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Eric=20B=C3=A9nard?= <[email protected]>
 Date: Sat, 25 May 2013 17:34:32 +0200
-Subject: [PATCH 12/15] qtbase: allow build of examples
+Subject: [PATCH 12/16] qtbase: allow build of examples
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
 Content-Transfer-Encoding: 8bit
recipes-qt/qt5/qtbase/0013-QOpenGLPaintDevice-sub-area-support.patch +1 -1
index 8366364..e1eabb5 100644
@@ -1,7 +1,7 @@
 From 2fad0a6fa3c06577995ac44ed0a2a12eaef819c2 Mon Sep 17 00:00:00 2001
 From: Jani Hautakangas <[email protected]>
 Date: Thu, 16 May 2013 09:52:07 +0300
-Subject: [PATCH 13/15] QOpenGLPaintDevice sub-area support
+Subject: [PATCH 13/16] QOpenGLPaintDevice sub-area support
 
 Allows creating QOpenGLPaintDevice targetting sub-area
 of binded framebuffer.
recipes-qt/qt5/qtbase/0014-eglfs-fix-egl-error-for-platforms-only-supporting-on.patch +1 -1
index 9c366b6..0835a6f 100644
@@ -1,7 +1,7 @@
 From c8995c6eb6cf4bfa8daf1e3e96bd4885a096f405 Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Andreas=20M=C3=BCller?= <[email protected]>
 Date: Wed, 5 Feb 2014 18:35:08 +0100
-Subject: [PATCH 14/15] eglfs: fix egl error for platforms only supporting one
+Subject: [PATCH 14/16] eglfs: fix egl error for platforms only supporting one
  window/surface
 MIME-Version: 1.0
 Content-Type: text/plain; charset=UTF-8
recipes-qt/qt5/qtbase/0015-Fix-linuxfb-argument-mmsize-parsing.patch +1 -1
index c9836c8..a4b1379 100644
@@ -1,7 +1,7 @@
 From 99979159a404df09495c8ddd6a052837f66b8739 Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Peter=20K=C3=BCmmel?= <[email protected]>
 Date: Fri, 7 Feb 2014 13:12:37 +0100
-Subject: [PATCH 15/15] Fix linuxfb argument 'mmsize' parsing
+Subject: [PATCH 15/16] Fix linuxfb argument 'mmsize' parsing
 
 Parse first for 'mmsize' because the regex for 'size' also fits to 'mmsize'.
 
recipes-qt/qt5/qtbase/0016-eglfs-Fix-quad-coordinates.patch new file +39 -0
new file mode 100644
index 0000000..f0dfc9c
@@ -0,0 +1,39 @@
+From 84756d94c73885803ad8044099ab47c0c49b5076 Mon Sep 17 00:00:00 2001
+From: Laszlo Agocs <[email protected]>
+Date: Thu, 23 Jan 2014 11:45:22 +0100
+Subject: [PATCH 16/16] eglfs: Fix quad coordinates
+
+Prevent artifacts on raster windows by properly mapping
+the coordinates to [-1,1].
+
+Upstream-Status: Backport
+
+Task-number: QTBUG-36370
+Change-Id: I95d0d03952f597ef4ce6a950c6533a3af2df964a
+Reviewed-by: Andy Nichols <[email protected]>
+Signed-off-by: Jonathan Liu <[email protected]>
+---
+ src/plugins/platforms/eglfs/qeglfscompositor.cpp | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/src/plugins/platforms/eglfs/qeglfscompositor.cpp b/src/plugins/platforms/eglfs/qeglfscompositor.cpp
+index 845bb5b..1efc4f7 100644
+--- a/src/plugins/platforms/eglfs/qeglfscompositor.cpp
++++ b/src/plugins/platforms/eglfs/qeglfscompositor.cpp
+@@ -153,10 +153,11 @@ void QEglFSCompositor::render(QEglFSWindow *window, uint texture, bool raster)
+     QPoint tl = r.topLeft();
+     QPoint br = r.bottomRight();
+ 
++    // Map to [-1,1]
+     GLfloat x1 = (tl.x() / sr.width()) * 2 - 1;
+-    GLfloat x2 = (br.x() / sr.width()) * 2 - 1;
+     GLfloat y1 = ((sr.height() - tl.y()) / sr.height()) * 2 - 1;
+-    GLfloat y2 = ((sr.height() - br.y()) / sr.height()) * 2 - 1;
++    GLfloat x2 = ((br.x() + 1) / sr.width()) * 2 - 1;
++    GLfloat y2 = ((sr.height() - (br.y() + 1)) / sr.height()) * 2 - 1;
+ 
+     if (!raster)
+         qSwap(y1, y2);
+-- 
+1.7.1
+
Signature · 6 lines
1.9.0

_______________________________________________
Openembedded-devel mailing list
[email protected]
http://lists.openembedded.org/mailman/listinfo/openembedded-devel

_______________________________________________
Openembedded-devel mailing list
[email protected]
http://lists.openembedded.org/mailman/listinfo/openembedded-devel

Signature · 1 line
Martin 'JaMa' Jansa     jabber: [email protected]