summaryrefslogtreecommitdiffstats
path: root/meta/recipes-qt
diff options
context:
space:
mode:
authorWenzong Fan <wenzong.fan@windriver.com>2012-08-02 09:43:02 +0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2012-08-02 15:28:38 +0100
commit1b138d167cefdcbcc969e4f9d2639cdc647945d7 (patch)
tree5bcf879abfd3762372d3549d2d0280f087a054e5 /meta/recipes-qt
parent438df0f1d0c5d986ef67eaf57de9a0f5fef2d7e0 (diff)
downloadpoky-1b138d167cefdcbcc969e4f9d2639cdc647945d7.tar.gz
qt4: fix qt4-native build failure on SLED-11
This issue is that with C++ compiler process an old version of kernel header file, coincidently that file has a variable named 'new': * 'embedded/qkbdtty_qws.cpp' include 'linux/vt.h'; * '/usr/include/linux/vt.h' has below code on SLED-11.x: + unsigned int new; On mostly hosts it has been changed to: new -> newev. [YOCTO #2845] (From OE-Core rev: bb4b71552da0d1f4396955f35db5819f88a7d2ae) Signed-off-by: Wenzong Fan <wenzong.fan@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-qt')
-rw-r--r--meta/recipes-qt/qt4/files/fix_qkbdtty_qws.patch37
-rw-r--r--meta/recipes-qt/qt4/qt4-native.inc6
2 files changed, 41 insertions, 2 deletions
diff --git a/meta/recipes-qt/qt4/files/fix_qkbdtty_qws.patch b/meta/recipes-qt/qt4/files/fix_qkbdtty_qws.patch
new file mode 100644
index 0000000000..c2aed5ca0f
--- /dev/null
+++ b/meta/recipes-qt/qt4/files/fix_qkbdtty_qws.patch
@@ -0,0 +1,37 @@
1Upstream-Status: Pending
2
3This issue is that with C++ compiler process an old version of kernel
4header file, coincidently that file has a variable named 'new':
5
6* 'embedded/qkbdtty_qws.cpp' include 'linux/vt.h';
7* '/usr/include/linux/vt.h' has below code on SLED-11.x:
8 + unsigned int new;
9
10On mostly hosts it has been changed to: new -> newev.
11
12Signed-off-by: Wenzong Fan <wenzong.fan@windriver.com>
13=======================================
14diff --git a/src/gui/embedded/qkbdtty_qws.cpp b/src/gui/embedded/qkbdtty_qws.cpp
15--- a/src/gui/embedded/qkbdtty_qws.cpp 2012-07-27 13:16:58.420198350 +0800
16+++ b/src/gui/embedded/qkbdtty_qws.cpp 2012-07-27 13:24:43.924191127 +0800
17@@ -54,8 +54,20 @@
18
19 #if defined Q_OS_LINUX
20 # include <linux/kd.h>
21+
22+/* Workaround kernel headers using "new" as variable name. The problem
23+ is specific to SLED-11, other distros use "newev" rather than "new" */
24+#ifdef __cplusplus
25+#warning "workaround kernel headers using new as variable name on SLED 11"
26+#define new newev
27+#endif
28+
29 # include <linux/vt.h> //TODO: move vt handling somewhere else (QLinuxFbScreen?)
30
31+#ifdef __cplusplus
32+#undef new
33+#endif
34+
35 # include "qscreen_qws.h"
36 # include "qwindowsystem_qws.h"
37 # include "qapplication.h"
diff --git a/meta/recipes-qt/qt4/qt4-native.inc b/meta/recipes-qt/qt4/qt4-native.inc
index 70adec40fc..90ea63c950 100644
--- a/meta/recipes-qt/qt4/qt4-native.inc
+++ b/meta/recipes-qt/qt4/qt4-native.inc
@@ -9,14 +9,16 @@ LIC_FILES_CHKSUM = "file://LICENSE.LGPL;md5=fbc093901857fcd118f065f900982c24 \
9 file://LICENSE.GPL3;md5=babc5b6b77441da277f5c06b2e547720 \ 9 file://LICENSE.GPL3;md5=babc5b6b77441da277f5c06b2e547720 \
10 file://LGPL_EXCEPTION.txt;md5=411080a56ff917a5a1aa08c98acae354" 10 file://LGPL_EXCEPTION.txt;md5=411080a56ff917a5a1aa08c98acae354"
11 11
12INC_PR = "r14" 12INC_PR = "r15"
13 13
14inherit native 14inherit native
15 15
16SRC_URI = "http://get.qt.nokia.com/qt/source/qt-everywhere-opensource-src-${PV}.tar.gz \ 16SRC_URI = "http://get.qt.nokia.com/qt/source/qt-everywhere-opensource-src-${PV}.tar.gz \
17 file://qt-config.patch \ 17 file://qt-config.patch \
18 file://g++.conf \ 18 file://g++.conf \
19 file://linux.conf" 19 file://linux.conf \
20 file://fix_qkbdtty_qws.patch \
21 "
20S = "${WORKDIR}/qt-everywhere-opensource-src-${PV}" 22S = "${WORKDIR}/qt-everywhere-opensource-src-${PV}"
21 23
22EXTRA_OECONF = "-prefix ${prefix} \ 24EXTRA_OECONF = "-prefix ${prefix} \