summaryrefslogtreecommitdiff
path: root/source/l/qt/qt.icu59.c++11.diff
blob: 3edcdef02b4e3b3217e4b203ab8f0073af2de293 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
From: Fabian Vogt <fabian@ritter-vogt.de>
Subject: Fix build with ICU >= 59

ICU >= 59 requires C++11 for its header files.
Qt can't be compiled with -std=c++11 as a whole, so only enable
it for qlocale_icu.cpp.

Index: qt-everywhere-opensource-src-4.8.7/src/corelib/tools/tools.pri
===================================================================
--- qt-everywhere-opensource-src-4.8.7.orig/src/corelib/tools/tools.pri
+++ qt-everywhere-opensource-src-4.8.7/src/corelib/tools/tools.pri
@@ -102,7 +102,15 @@ contains(QT_CONFIG, zlib):include($$PWD/
 else:include($$PWD/../../3rdparty/zlib_dependency.pri)
 
 contains(QT_CONFIG,icu) {
-    SOURCES += tools/qlocale_icu.cpp
+    cpp11.name = cpp11
+    cpp11.input = SOURCES_CPP11
+    cpp11.dependency_type = TYPE_C
+    cpp11.variable_out = OBJECTS
+    cpp11.output = ${QMAKE_VAR_OBJECTS_DIR}${QMAKE_FILE_IN_BASE}$${first(QMAKE_EXT_OBJ)}
+    cpp11.commands = $${QMAKE_CXX} $(CXXFLAGS) -std=c++11 $(INCPATH) -c ${QMAKE_FILE_IN} -o ${QMAKE_FILE_OUT}
+    QMAKE_EXTRA_COMPILERS += cpp11
+
+    SOURCES_CPP11 += tools/qlocale_icu.cpp
     DEFINES += QT_USE_ICU
 }