diff --git a/qconfig-multilib.h b/qconfig-multilib.h index 7ed351b..a104c37 100644 --- a/qconfig-multilib.h +++ b/qconfig-multilib.h @@ -6,7 +6,10 @@ #ifndef QCONFIG_MULTILIB_H #define QCONFIG_MULTILIB_H + +#ifndef __WORDSIZE #include +#endif #if __WORDSIZE == 32 #include "QtCore/qconfig-32.h" diff --git a/qt5-qtbase.spec b/qt5-qtbase.spec index 8071d4c..d43e7ff 100644 --- a/qt5-qtbase.spec +++ b/qt5-qtbase.spec @@ -39,7 +39,7 @@ Summary: Qt5 - QtBase components Name: qt5-qtbase Version: 5.6.0 -Release: 0.12%{?dist} +Release: 0.13%{?dist} # See LGPL_EXCEPTIONS.txt, for exception details License: LGPLv2 with exceptions or GPLv3 with exceptions @@ -73,6 +73,11 @@ Patch50: qt5-poll.patch # https://bugzilla.redhat.com/show_bug.cgi?id=1083664 Patch51: qtbase-opensource-src-5.5-disconnect_displays.patch +# Workaround moc/multilib issues +# https://bugzilla.redhat.com/show_bug.cgi?id=1290020 +# https://bugreports.qt.io/browse/QTBUG-49972 +Patch52: qtbase-opensource-src-5.6.0-moc_WORDSIZE.patch + ## upstream patches # workaround https://bugreports.qt-project.org/browse/QTBUG-43057 # 'make docs' crash on el6, use qSort instead of std::sort @@ -316,6 +321,7 @@ rm -fv mkspecs/linux-g++*/qmake.conf.multilib-optflags %patch12 -p1 -b .enable_ft_lcdfilter #patch51 -p1 -b .disconnect_displays +%patch52 -p1 -b .moc_WORDSIZE %if 0%{?rhel} == 6 %patch100 -p1 -b .QTBUG-43057 @@ -859,6 +865,9 @@ fi %changelog +* Wed Dec 16 2015 Rex Dieter 5.6.0-0.13 +- workaround moc/qconfig-multilib issues (#1290020,QTBUG-49972) + * Wed Dec 16 2015 Peter Robinson 5.6.0-0.12 - aarch64 is secondary arch too - ppc64le is NOT multilib diff --git a/qtbase-opensource-src-5.6.0-moc_WORDSIZE.patch b/qtbase-opensource-src-5.6.0-moc_WORDSIZE.patch new file mode 100644 index 0000000..62d1e9c --- /dev/null +++ b/qtbase-opensource-src-5.6.0-moc_WORDSIZE.patch @@ -0,0 +1,14 @@ +diff -up qtbase-opensource-src-5.6.0-beta/src/tools/moc/main.cpp.moc_WORDSIZE qtbase-opensource-src-5.6.0-beta/src/tools/moc/main.cpp +--- qtbase-opensource-src-5.6.0-beta/src/tools/moc/main.cpp.moc_WORDSIZE 2015-12-04 18:05:24.000000000 -0600 ++++ qtbase-opensource-src-5.6.0-beta/src/tools/moc/main.cpp 2015-12-15 20:57:55.554485416 -0600 +@@ -184,6 +184,10 @@ int runMoc(int argc, char **argv) + Moc moc; + pp.macros["Q_MOC_RUN"]; + pp.macros["__cplusplus"]; ++ Macro macro; ++ macro.symbols = Preprocessor::tokenize(QByteArray::number(Q_PROCESSOR_WORDSIZE*8), 1, Preprocessor::TokenizeDefine); ++ macro.symbols.removeLast(); // remove the EOF symbol ++ pp.macros.insert("__WORDSIZE", macro); + + // Don't stumble over GCC extensions + Macro dummyVariadicFunctionMacro;