[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#898542: qt4-x11: FTBFS with libicu60



Control: tags 898542 +patch

On 05/13/2018 03:35 PM, John Paul Adrian Glaubitz wrote:
openSUSE seems to have a patch [1] we can use that is also already used
in Fedora. I'll test it.

Attaching openSUSE's patch which fixes the problem for me.

Adrian

--
 .''`.  John Paul Adrian Glaubitz
: :' :  Debian Developer - glaubitz@debian.org
`. `'   Freie Universitaet Berlin - glaubitz@physik.fu-berlin.de
  `-    GPG: 62FF 8A75 84E0 2956 9546  0006 7426 3B37 F5B5 F913
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
 }
 

Reply to: