Debian

Available patches from Ubuntu

To see Ubuntu differences wrt. to Debian, write down a grep-dctrl query identifying the packages you're interested in:
grep-dctrl -n -sPackage Sources.Debian
(e.g. -FPackage linux-ntfs or linux-ntfs)

Modified packages are listed below:

Debian ( Changelog | PTS | Bugs ) Ubuntu ( Changelog | txt | LP | Bugs ) | Diff from Ubuntu

Source: qt4-x11

qt4-x11 (4:4.8.7+dfsg-7ubuntu2) eoan; urgency=medium * Cherry pick from latest Debian patches to fix FTBFS. - Add gcc9-qforeach.patch to backport Q_FOREACH changes from Qt 5 - Update qt-everywhere-opensource-src-4.8.7-gcc6.patch to add GCC 9 to the compiler checks - Add fix-build-icu59.patch from OpenSuse. Fixes build with icu59 - Add openssl_1.1.patch to let Qt4 use OpenSSL 1.1 * Update symbols from build logs. -- Rik Mills <rikmills@kubuntu.org> Tue, 16 Jul 2019 10:59:10 +0100 qt4-x11 (4:4.8.7+dfsg-7ubuntu1) yakkety; urgency=medium * Merge with Debian since qtchooser has versioned Breaks. (LP: #1584654) -- Timo Jyrinki <timo-jyrinki@ubuntu.com> Mon, 23 May 2016 15:02:32 +0000

Modifications :
  1. Download patch debian/patches/kubuntu_43_no_meego_helper.patch

    --- 4:4.8.7+dfsg-7/debian/patches/kubuntu_43_no_meego_helper.patch 1970-01-01 00:00:00.000000000 +0000 +++ 4:4.8.7+dfsg-7ubuntu2/debian/patches/kubuntu_43_no_meego_helper.patch 2016-01-07 10:57:47.000000000 +0000 @@ -0,0 +1,21 @@ +Description: do not build QtMeegoGraphicsSystemHelper library +Author: Dmitry Shachnev <mitya57@ubuntu.com> +Forwarded: no +Last-Update: 2014-11-04 + +--- a/tools/tools.pro ++++ b/tools/tools.pro +@@ -50,5 +50,3 @@ + QTDIR_build:REQUIRES = "contains(QT_CONFIG, full-config)" + + !win32:!embedded:!mac:!symbian:CONFIG += x11 +- +-x11:contains(QT_CONFIG, opengles2):contains(QT_CONFIG, egl):SUBDIRS += qmeegographicssystemhelper +--- a/src/plugins/graphicssystems/graphicssystems.pro ++++ b/src/plugins/graphicssystems/graphicssystems.pro +@@ -11,5 +11,3 @@ + } + + !win32:!embedded:!mac:!symbian:CONFIG += x11 +- +-x11:contains(QT_CONFIG, opengles2):contains(QT_CONFIG, egl):SUBDIRS += meego
  2. Download patch debian/qt4-designer.links
  3. Download patch debian/libqtgui4.symbols

    --- 4:4.8.7+dfsg-7/debian/libqtgui4.symbols 2016-02-10 14:02:40.000000000 +0000 +++ 4:4.8.7+dfsg-7ubuntu2/debian/libqtgui4.symbols 2019-07-16 09:59:10.000000000 +0000 @@ -1,4 +1,4 @@ -# SymbolsHelper-Confirmed: 4:4.8.7 alpha amd64 armel hurd-i386 i386 kfreebsd-i386 mips mips64el mipsel s390x sh4 x32 +# SymbolsHelper-Confirmed: 4:4.8.7 alpha amd64 arm64 armel armhf hurd-i386 i386 kfreebsd-i386 mips mips64el mipsel ppc64el s390x sh4 x32 libQtGui.so.4 libqtgui4 #MINVER# * Build-Depends-Package: libqt4-dev _Z10qDrawArrowP8QPainterN2Qt9ArrowTypeENS1_8GUIStyleEbiiiiRK8QPaletteb@Base 4:4.5.3 @@ -70,7 +70,7 @@ libQtGui.so.4 libqtgui4 #MINVER# _Z29qt_draw_decoration_for_glyphsP8QPainterPKjPK11QFixedPointiP11QFontEngineRK5QFontRK15QTextCharFormat@Base 4:4.7.4 _Z29qt_set_sequence_auto_mnemonicb@Base 4:4.5.3 _Z30qt_x11_wait_for_window_managerP7QWidget@Base 4:4.5.3 - (arch=armhf)_Z31qt_convert_rgb888_to_rgb32_neonPjPKhi@Base 4:4.8.0 +#MISSING: 4:4.8.7# (arch=armhf)_Z31qt_convert_rgb888_to_rgb32_neonPjPKhi@Base 4:4.8.0 _Z31qt_x11_set_fallback_font_familyiRK7QString@Base 4:4.5.3 _Z31qt_x11_set_global_double_bufferb@Base 4:4.5.3 _Z32qGamma_correct_back_to_linear_csP6QImage@Base 4:4.8.0 @@ -711,6 +711,22 @@ libQtGui.so.4 libqtgui4 #MINVER# _ZN11QDockWidgetD0Ev@Base 4:4.5.3 _ZN11QDockWidgetD1Ev@Base 4:4.5.3 _ZN11QDockWidgetD2Ev@Base 4:4.5.3 + (arch=armhf)_ZN11QEglContext11doneCurrentEv@Base 4:4.8.7 + (arch=armhf)_ZN11QEglContext11makeCurrentEPv@Base 4:4.8.7 + (arch=armhf)_ZN11QEglContext11swapBuffersEPv@Base 4:4.8.7 + (arch=armhf)_ZN11QEglContext12chooseConfigERK14QEglPropertiesN4QEgl16PixelFormatMatchE@Base 4:4.8.7 + (arch=armhf)_ZN11QEglContext13createContextEPS_PK14QEglProperties@Base 4:4.8.7 + (arch=armhf)_ZN11QEglContext13createSurfaceEP12QPaintDevicePK14QEglProperties@Base 4:4.8.7 + (arch=armhf)_ZN11QEglContext14currentContextEN4QEgl3APIE@Base 4:4.8.7 + (arch=armhf)_ZN11QEglContext14destroyContextEv@Base 4:4.8.7 + (arch=armhf)_ZN11QEglContext14destroySurfaceEPv@Base 4:4.8.7 + (arch=armhf)_ZN11QEglContext15lazyDoneCurrentEv@Base 4:4.8.7 + (arch=armhf)_ZN11QEglContext17setCurrentContextEN4QEgl3APIEPS_@Base 4:4.8.7 + (arch=armhf)_ZN11QEglContext21swapBuffersRegion2NOKEPvPK7QRegion@Base 4:4.8.7 + (arch=armhf)_ZN11QEglContextC1Ev@Base 4:4.8.7 + (arch=armhf)_ZN11QEglContextC2Ev@Base 4:4.8.7 + (arch=armhf)_ZN11QEglContextD1Ev@Base 4:4.8.7 + (arch=armhf)_ZN11QEglContextD2Ev@Base 4:4.8.7 _ZN11QFileDialog10selectFileERK7QString@Base 4:4.5.3 _ZN11QFileDialog10setFiltersERK11QStringList@Base 4:4.5.3 _ZN11QFileDialog10setHistoryERK11QStringList@Base 4:4.5.3 @@ -824,7 +840,8 @@ libQtGui.so.4 libqtgui4 #MINVER# (subst)_ZN11QFontEngine19addBitmapFontToPathE{qreal}{qreal}RK12QGlyphLayoutP12QPainterPath6QFlagsIN9QTextItem10RenderFlagEE@Base 4:4.5.3 _ZN11QFontEngine19alphaRGBMapForGlyphEj6QFixediRK10QTransform@Base 4:4.8.0 _ZN11QFontEngine20removeGlyphFromCacheEj@Base 4:4.5.3 - _ZN11QFontEngine21getTrueTypeGlyphIndexEPKhj@Base 4:4.5.3 + (arch=amd64 arm64 armhf i386 ppc64el s390x)_ZN11QFontEngine21getTrueTypeGlyphIndexEPKhij@Base 4:4.8.7 + (arch=!amd64 !arm64 !armhf !i386 !ppc64el !s390x)_ZN11QFontEngine21getTrueTypeGlyphIndexEPKhj@Base 4:4.8.7 _ZN11QFontEngine33convertToPostscriptFontFamilyNameERK10QByteArray@Base 4:4.7.2 _ZN11QFontEngine7getCMapEPKhjPbPi@Base 4:4.5.3 _ZN11QFontEngineC1Ev@Base 4:4.5.3 @@ -3077,6 +3094,18 @@ libQtGui.so.4 libqtgui4 #MINVER# _ZN14QDragMoveEventD0Ev@Base 4:4.5.3 _ZN14QDragMoveEventD1Ev@Base 4:4.5.3 _ZN14QDragMoveEventD2Ev@Base 4:4.5.3 + (arch=armhf)_ZN14QEglProperties11removeValueEi@Base 4:4.8.7 + (arch=armhf)_ZN14QEglProperties13setDeviceTypeEi@Base 4:4.8.7 + (arch=armhf)_ZN14QEglProperties14setPixelFormatEN6QImage6FormatE@Base 4:4.8.7 + (arch=armhf)_ZN14QEglProperties15setVisualFormatEPK8QX11Info@Base 4:4.8.7 + (arch=armhf)_ZN14QEglProperties17setRenderableTypeEN4QEgl3APIE@Base 4:4.8.7 + (arch=armhf)_ZN14QEglProperties19reduceConfigurationEv@Base 4:4.8.7 + (arch=armhf)_ZN14QEglProperties20setPaintDeviceFormatEP12QPaintDevice@Base 4:4.8.7 + (arch=armhf)_ZN14QEglProperties8setValueEii@Base 4:4.8.7 + (arch=armhf)_ZN14QEglPropertiesC1EPv@Base 4:4.8.7 + (arch=armhf)_ZN14QEglPropertiesC1Ev@Base 4:4.8.7 + (arch=armhf)_ZN14QEglPropertiesC2EPv@Base 4:4.8.7 + (arch=armhf)_ZN14QEglPropertiesC2Ev@Base 4:4.8.7 _ZN14QFileOpenEventC1ERK4QUrl@Base 4:4.6.1 _ZN14QFileOpenEventC1ERK7QString@Base 4:4.5.3 _ZN14QFileOpenEventC2ERK4QUrl@Base 4:4.6.1 @@ -3437,6 +3466,7 @@ libQtGui.so.4 libqtgui4 #MINVER# _ZN14QWidgetPrivate18_q_showIfNotHiddenEv@Base 4:4.5.3 _ZN14QWidgetPrivate18setConstraints_sysEv@Base 4:4.5.3 _ZN14QWidgetPrivate18setWindowTitle_sysERK7QString@Base 4:4.5.3 + _ZN14QWidgetPrivate19registerTouchWindowEv@Base 4:4.8.7 _ZN14QWidgetPrivate19setNetWmWindowTypesEv@Base 4:4.5.3 _ZN14QWidgetPrivate19updateIsTranslucentEv@Base 4:4.5.3 _ZN14QWidgetPrivate20reparentFocusWidgetsEP7QWidget@Base 4:4.5.3 @@ -4097,6 +4127,8 @@ libQtGui.so.4 libqtgui4 #MINVER# (subst)_ZN16QConicalGradientC2E{qreal}{qreal}{qreal}@Base 4:4.5.3 (optional=gccinternal|arch=powerpcspe)_ZN16QConicalGradientD1Ev@Base 4:4.8.5+git209 (optional=gccinternal|arch=powerpcspe)_ZN16QConicalGradientD2Ev@Base 4:4.8.5+git209 + (arch=amd64 arm64 armhf i386 ppc64el s390x)_ZN16QCoreApplication20sendSpontaneousEventEP7QObjectP6QEvent@Base 4:4.8.7 + (arch=amd64 arm64 armhf i386 ppc64el s390x)_ZN16QCoreApplication9sendEventEP7QObjectP6QEvent@Base 4:4.8.7 _ZN16QDesktopServices11displayNameENS_16StandardLocationE@Base 4:4.5.3 _ZN16QDesktopServices13setUrlHandlerERK7QStringP7QObjectPKc@Base 4:4.5.3 _ZN16QDesktopServices15storageLocationENS_16StandardLocationE@Base 4:4.5.3 @@ -4961,6 +4993,7 @@ libQtGui.so.4 libqtgui4 #MINVER# _ZN19QApplicationPrivate21cleanupMultitouch_sysEv@Base 4:4.6.1 _ZN19QApplicationPrivate21createEventDispatcherEv@Base 4:4.5.3 _ZN19QApplicationPrivate21obey_desktop_settingsE@Base 4:4.5.3 + _ZN19QApplicationPrivate21x11GetTouchDeviceInfoEv@Base 4:4.8.7 _ZN19QApplicationPrivate22quitOnLastWindowClosedE@Base 4:4.5.3 _ZN19QApplicationPrivate22reset_instance_pointerEv@Base 4:4.5.3 _ZN19QApplicationPrivate22translateRawTouchEventEP7QWidgetN11QTouchEvent10DeviceTypeERK5QListINS2_10TouchPointEE@Base 4:4.6.1 @@ -5891,6 +5924,9 @@ libQtGui.so.4 libqtgui4 #MINVER# _ZN24QAbstractPageSetupDialogD0Ev@Base 4:4.5.3 _ZN24QAbstractPageSetupDialogD1Ev@Base 4:4.5.3 _ZN24QAbstractPageSetupDialogD2Ev@Base 4:4.5.3 + _ZN24QAccessibleTextInterface22textAtOffsetFromStringEiN12QAccessible212BoundaryTypeEPiS2_RK7QString@Base 4:4.8.7 + _ZN24QAccessibleTextInterface25textAfterOffsetFromStringEiN12QAccessible212BoundaryTypeEPiS2_RK7QString@Base 4:4.8.7 + _ZN24QAccessibleTextInterface26textBeforeOffsetFromStringEiN12QAccessible212BoundaryTypeEPiS2_RK7QString@Base 4:4.8.7 _ZN24QGraphicsSceneHoverEvent10setLastPosERK7QPointF@Base 4:4.5.3 _ZN24QGraphicsSceneHoverEvent11setScenePosERK7QPointF@Base 4:4.5.3 _ZN24QGraphicsSceneHoverEvent12setModifiersE6QFlagsIN2Qt16KeyboardModifierEE@Base 4:4.5.3 @@ -6187,6 +6223,21 @@ libQtGui.so.4 libqtgui4 #MINVER# _ZN4QCss6ParserC1Ev@Base 4:4.5.3 _ZN4QCss6ParserC2ERK7QStringb@Base 4:4.5.3 _ZN4QCss6ParserC2Ev@Base 4:4.5.3 + (arch=armhf)_ZN4QEgl10extensionsEv@Base 4:4.8.7 + (arch=armhf)_ZN4QEgl11errorStringEi@Base 4:4.8.7 + (arch=armhf)_ZN4QEgl12chooseConfigEPK14QEglPropertiesNS_16PixelFormatMatchE@Base 4:4.8.7 + (arch=armhf)_ZN4QEgl12hasExtensionEPKc@Base 4:4.8.7 + (arch=armhf)_ZN4QEgl12nativePixmapEP7QPixmap@Base 4:4.8.7 + (arch=armhf)_ZN4QEgl12nativeWindowEP7QWidget@Base 4:4.8.7 + (arch=armhf)_ZN4QEgl13createSurfaceEP12QPaintDevicePvPK14QEglProperties@Base 4:4.8.7 + (arch=armhf)_ZN4QEgl13defaultConfigEiNS_3APIE6QFlagsINS_12ConfigOptionEE@Base 4:4.8.7 + (arch=armhf)_ZN4QEgl13nativeDisplayEv@Base 4:4.8.7 + (arch=armhf)_ZN4QEgl14dumpAllConfigsEv@Base 4:4.8.7 + (arch=armhf)_ZN4QEgl17eglCreateImageKHREPvS0_jS0_PKi@Base 4:4.8.7 + (arch=armhf)_ZN4QEgl18eglDestroyImageKHREPvS0_@Base 4:4.8.7 + (arch=armhf)_ZN4QEgl21getCompatibleVisualIdEPv@Base 4:4.8.7 + (arch=armhf)_ZN4QEgl24eglSwapBuffersRegion2NOKEPvS0_iPKi@Base 4:4.8.7 + (arch=armhf)_ZN4QEgl7displayEv@Base 4:4.8.7 _ZN4QPen10isDetachedEv@Base 4:4.5.3 _ZN4QPen11setCapStyleEN2Qt11PenCapStyleE@Base 4:4.5.3 _ZN4QPen11setCosmeticEb@Base 4:4.5.3 @@ -7683,8 +7734,8 @@ libQtGui.so.4 libqtgui4 #MINVER# _ZN8QX11InfoD1Ev@Base 4:4.5.3 _ZN8QX11InfoD2Ev@Base 4:4.5.3 _ZN8QX11InfoaSERKS_@Base 4:4.5.3 - (arch=!hurd-i386 !i386 !kfreebsd-i386 !x32)_ZN9QBitArray6setBitEi@Base 4:4.8.7 - _ZN9QBitArray8clearBitEi@Base 4:4.8.7 + (arch=!amd64 !arm64 !armhf !hurd-i386 !i386 !kfreebsd-i386 !ppc64el !s390x !x32)_ZN9QBitArray6setBitEi@Base 4:4.8.7 + (arch=!amd64 !arm64 !armhf !i386 !ppc64el !s390x)_ZN9QBitArray8clearBitEi@Base 4:4.8.7 _ZN9QCDEStyle11qt_metacallEN11QMetaObject4CallEiPPv@Base 4:4.5.3 _ZN9QCDEStyle11qt_metacastEPKc@Base 4:4.5.3 _ZN9QCDEStyle16staticMetaObjectE@Base 4:4.5.3 @@ -8647,6 +8698,9 @@ libQtGui.so.4 libqtgui4 #MINVER# _ZNK11QDockWidget16toggleViewActionEv@Base 4:4.5.3 _ZNK11QDockWidget6widgetEv@Base 4:4.5.3 _ZNK11QDockWidget8featuresEv@Base 4:4.5.3 + (arch=armhf)_ZNK11QEglContext12configAttribEi@Base 4:4.8.7 + (arch=armhf)_ZNK11QEglContext7isValidEv@Base 4:4.8.7 + (arch=armhf)_ZNK11QEglContext9isCurrentEv@Base 4:4.8.7 _ZNK11QFileDialog10acceptModeEv@Base 4:4.5.3 _ZNK11QFileDialog10isReadOnlyEv@Base 4:4.5.3 _ZNK11QFileDialog10metaObjectEv@Base 4:4.5.3 @@ -9887,6 +9941,8 @@ libQtGui.so.4 libqtgui4 #MINVER# _ZNK14QDoubleSpinBox8decimalsEv@Base 4:4.5.3 _ZNK14QDoubleSpinBox8validateER7QStringRi@Base 4:4.5.3 _ZNK14QDoubleSpinBox9cleanTextEv@Base 4:4.5.3 + (arch=armhf)_ZNK14QEglProperties5valueEi@Base 4:4.8.7 + (arch=armhf)_ZNK14QEglProperties8toStringEv@Base 4:4.8.7 _ZNK14QFileOpenEvent3urlEv@Base 4:4.6.1 _ZNK14QFileOpenEvent8openFileER5QFile6QFlagsIN9QIODevice12OpenModeFlagEE@Base 4:4.8.0 _ZNK14QGraphicsScale10metaObjectEv@Base 4:4.6.1
  4. Download patch debian/libqtcore4.symbols

    --- 4:4.8.7+dfsg-7/debian/libqtcore4.symbols 2015-11-30 19:11:25.000000000 +0000 +++ 4:4.8.7+dfsg-7ubuntu2/debian/libqtcore4.symbols 2019-07-16 09:59:10.000000000 +0000 @@ -1,4 +1,4 @@ -# SymbolsHelper-Confirmed: 4:4.8.7 alpha amd64 arm64 armel armhf hppa m68k mips mips64el mipsel powerpc ppc64 ppc64el s390x sparc64 x32 +# SymbolsHelper-Confirmed: 4:4.8.7 alpha amd64 arm64 armel armhf hppa i386 m68k mips mips64el mipsel powerpc ppc64 ppc64el s390x sparc64 x32 libQtCLucene.so.4 libqtcore4 #MINVER# * Build-Depends-Package: libqt4-dev _ZN12QCLuceneHits2idEi@Base 4:4.5.3 @@ -440,12 +440,16 @@ libQtCLucene.so.4 libqtcore4 #MINVER# _ZNK21QCLuceneMultiSearcher13searcherIndexEi@Base 4:4.5.3 _ZNK21QCLuceneMultiSearcher6maxDocEv@Base 4:4.5.3 _ZNK21QCLuceneMultiSearcher6subDocEi@Base 4:4.5.3 - (optional=templinst)_ZNSt6vectorIPKwSaIS1_EE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPS1_S3_EERKS1_@Base 4:4.5.3 + (optional=templinst|arch=!amd64 !arm64 !armhf !i386 !ppc64el !s390x)_ZNSt6vectorIPKwSaIS1_EE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPS1_S3_EERKS1_@Base 4:4.5.3 + (optional=templinst|arch=amd64 arm64 armhf i386 ppc64el s390x)_ZNSt6vectorIPKwSaIS1_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS1_S3_EERKS1_@Base 4:4.8.7 (optional=templinst|arch=powerpcspe)_ZNSt6vectorIPKwSaIS1_EED1Ev@Base 4:4.8.5+git209 (optional=templinst|arch=powerpcspe)_ZNSt6vectorIPKwSaIS1_EED2Ev@Base 4:4.8.5+git209 - (optional=templinst)_ZNSt6vectorIPhSaIS0_EE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPS0_S2_EERKS0_@Base 4:4.5.3 - (optional=templinst)_ZNSt6vectorIPwSaIS0_EE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPS0_S2_EERKS0_@Base 4:4.5.3 - (optional=templinst)_ZNSt6vectorIiSaIiEE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPiS1_EERKi@Base 4:4.5.3 + (optional=templinst|arch=!amd64 !arm64 !armhf !i386 !ppc64el !s390x)_ZNSt6vectorIPhSaIS0_EE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPS0_S2_EERKS0_@Base 4:4.5.3 + (optional=templinst|arch=amd64 arm64 armhf i386 ppc64el s390x)_ZNSt6vectorIPhSaIS0_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS0_S2_EERKS0_@Base 4:4.8.7 + (optional=templinst|arch=!amd64 !arm64 !armhf !i386 !ppc64el !s390x)_ZNSt6vectorIPwSaIS0_EE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPS0_S2_EERKS0_@Base 4:4.5.3 + (optional=templinst|arch=amd64 arm64 armhf i386 ppc64el s390x)_ZNSt6vectorIPwSaIS0_EE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPS0_S2_EERKS0_@Base 4:4.8.7 + (optional=templinst|arch=!amd64 !arm64 !armhf !i386 !ppc64el !s390x)_ZNSt6vectorIiSaIiEE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPiS1_EERKi@Base 4:4.5.3 + (optional=templinst|arch=amd64 arm64 armhf i386 ppc64el s390x)_ZNSt6vectorIiSaIiEE17_M_realloc_insertEN9__gnu_cxx17__normal_iteratorIPiS1_EERKi@Base 4:4.8.7 (optional=templinst)_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_RKS8_@Base 4:4.8.7 _ZTI12QCLuceneHits@Base 4:4.5.3 _ZTI12QCLuceneSort@Base 4:4.5.3 @@ -2653,7 +2657,7 @@ libQtCore.so.4 libqtcore4 #MINVER# _ZN7QString4freeEPNS_4DataE@Base 4:4.5.3 _ZN7QString4growEi@Base 4:4.5.3 _ZN7QString4nullE@Base 4:4.5.3 - (optional=gccinternal)_ZN7QString5clearEv@Base 4:4.8.5+git192 + (optional=gccinternal|arch=!amd64 !i386)_ZN7QString5clearEv@Base 4:4.8.5+git192 _ZN7QString6appendE5QChar@Base 4:4.5.3 _ZN7QString6appendERK10QStringRef@Base 4:4.5.3 _ZN7QString6appendERK13QLatin1String@Base 4:4.5.3 @@ -2978,7 +2982,7 @@ libQtCore.so.4 libqtcore4 #MINVER# _ZN9QHashData6rehashEi@Base 4:4.5.3 _ZN9QHashData8freeNodeEPv@Base 4:4.5.3 _ZN9QHashData8nextNodeEPNS_4NodeE@Base 4:4.5.3 - (optional=gccinternal|arch=alpha arm64 armel armhf hppa m68k mips mips64el mipsel powerpc powerpcspe ppc64 ppc64el s390x sh4 sparc64)_ZN9QHashData9hasShrunkEv@Base 4:4.8.5+git209 + (optional=gccinternal|arch=alpha armel hppa m68k mips mips64el mipsel powerpc powerpcspe ppc64 sh4 sparc64)_ZN9QHashData9hasShrunkEv@Base 4:4.8.5+git209 _ZN9QIODevice11qt_metacallEN11QMetaObject4CallEiPPv@Base 4:4.5.3 _ZN9QIODevice11qt_metacastEPKc@Base 4:4.5.3 _ZN9QIODevice11resetStatusEv@Base 4:4.5.3
  5. Download patch debian/qt4-dev-tools.links
  6. Download patch debian/patches/kubuntu_qclipboard_fix_recursive.diff

    --- 4:4.8.7+dfsg-7/debian/patches/kubuntu_qclipboard_fix_recursive.diff 1970-01-01 00:00:00.000000000 +0000 +++ 4:4.8.7+dfsg-7ubuntu2/debian/patches/kubuntu_qclipboard_fix_recursive.diff 2016-01-07 10:57:47.000000000 +0000 @@ -0,0 +1,105 @@ +Description: Repaint errors when run with X11 clipboard code branch + Fixes crash in LibreOffice with KDE integration +Author: Jan-Marek Glogowski +Origin: see bug +Bug: https://bugreports.qt-project.org/browse/QTBUG-34614 +Forwarded: see bug +Applied-Upstream: nope +Reviewed-by: Jonathan Riddell +Last-Update: 2014-11-22 +--- +This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ +--- qt/src/corelib/kernel/qeventdispatcher_glib.cpp.sav 2014-03-28 15:26:37.000000000 +0100 ++++ qt/src/corelib/kernel/qeventdispatcher_glib.cpp 2014-04-24 09:44:09.358659204 +0200 +@@ -255,22 +255,30 @@ struct GPostEventSource + GSource source; + QAtomicInt serialNumber; + int lastSerialNumber; ++ QEventLoop::ProcessEventsFlags processEventsFlags; + QEventDispatcherGlibPrivate *d; + }; + + static gboolean postEventSourcePrepare(GSource *s, gint *timeout) + { ++ GPostEventSource *source = reinterpret_cast<GPostEventSource *>(s); + QThreadData *data = QThreadData::current(); + if (!data) + return false; + ++ QEventLoop::ProcessEventsFlags excludeAllFlags ++ = QEventLoop::ExcludeUserInputEvents ++ | QEventLoop::ExcludeSocketNotifiers ++ | QEventLoop::X11ExcludeTimers; ++ if ((source->processEventsFlags & excludeAllFlags) == excludeAllFlags) ++ return false; ++ + gint dummy; + if (!timeout) + timeout = &dummy; + const bool canWait = data->canWaitLocked(); + *timeout = canWait ? -1 : 0; + +- GPostEventSource *source = reinterpret_cast<GPostEventSource *>(s); + return (!canWait + || (source->serialNumber != source->lastSerialNumber)); + } +@@ -284,8 +292,14 @@ static gboolean postEventSourceDispatch( + { + GPostEventSource *source = reinterpret_cast<GPostEventSource *>(s); + source->lastSerialNumber = source->serialNumber; +- QCoreApplication::sendPostedEvents(); +- source->d->runTimersOnceWithNormalPriority(); ++ QEventLoop::ProcessEventsFlags excludeAllFlags ++ = QEventLoop::ExcludeUserInputEvents ++ | QEventLoop::ExcludeSocketNotifiers ++ | QEventLoop::X11ExcludeTimers; ++ if ((source->processEventsFlags & excludeAllFlags) != excludeAllFlags) { ++ QCoreApplication::sendPostedEvents(); ++ source->d->runTimersOnceWithNormalPriority(); ++ } + return true; // i dunno, george... + } + +@@ -329,6 +343,7 @@ QEventDispatcherGlibPrivate::QEventDispa + postEventSource = reinterpret_cast<GPostEventSource *>(g_source_new(&postEventSourceFuncs, + sizeof(GPostEventSource))); + postEventSource->serialNumber = 1; ++ postEventSource->processEventsFlags = QEventLoop::AllEvents; + postEventSource->d = this; + g_source_set_can_recurse(&postEventSource->source, true); + g_source_attach(&postEventSource->source, mainContext); +@@ -423,6 +438,7 @@ bool QEventDispatcherGlib::processEvents + + // tell postEventSourcePrepare() and timerSource about any new flags + QEventLoop::ProcessEventsFlags savedFlags = d->timerSource->processEventsFlags; ++ d->postEventSource->processEventsFlags = flags; + d->timerSource->processEventsFlags = flags; + d->socketNotifierSource->processEventsFlags = flags; + +@@ -435,6 +451,7 @@ bool QEventDispatcherGlib::processEvents + while (!result && canWait) + result = g_main_context_iteration(d->mainContext, canWait); + ++ d->postEventSource->processEventsFlags = savedFlags; + d->timerSource->processEventsFlags = savedFlags; + d->socketNotifierSource->processEventsFlags = savedFlags; + +--- qt/src/corelib/kernel/qeventdispatcher_unix.cpp.sav 2013-06-07 07:16:52.000000000 +0200 ++++ qt/src/corelib/kernel/qeventdispatcher_unix.cpp 2014-04-24 09:43:06.927589535 +0200 +@@ -905,7 +905,15 @@ bool QEventDispatcherUNIX::processEvents + + // we are awake, broadcast it + emit awake(); +- QCoreApplicationPrivate::sendPostedEvents(0, 0, d->threadData); ++ ++ QEventLoop::ProcessEventsFlags excludeAllFlags ++ = QEventLoop::ExcludeUserInputEvents ++ | QEventLoop::ExcludeSocketNotifiers ++ | QEventLoop::X11ExcludeTimers; ++ if ((flags & excludeAllFlags) == excludeAllFlags) ++ return false; ++ if(( flags & excludeAllFlags ) != excludeAllFlags ) ++ QCoreApplicationPrivate::sendPostedEvents(0, 0, d->threadData); + + int nevents = 0; + const bool canWait = (d->threadData->canWaitLocked()
  7. Download patch debian/patches/kubuntu_10_ibus_input_method.diff

    --- 4:4.8.7+dfsg-7/debian/patches/kubuntu_10_ibus_input_method.diff 1970-01-01 00:00:00.000000000 +0000 +++ 4:4.8.7+dfsg-7ubuntu2/debian/patches/kubuntu_10_ibus_input_method.diff 2016-01-07 10:57:47.000000000 +0000 @@ -0,0 +1,44 @@ +Description: change default input method from xim to ibus for kubuntu + Probably neeeds a more invasive change to go upstream. +Author: Jonathan Riddell <jriddell@ubuntu.com> +Forwarded: no +Last-Update: 2009-12-23 +--- + src/gui/kernel/qapplication_x11.cpp | 2 +- + src/plugins/inputmethods/imsw-multi/qmultiinputcontext.cpp | 2 +- + tools/qtconfig/mainwindow.cpp | 2 +- + 3 files changed, 3 insertions(+), 3 deletions(-) + +--- a/src/gui/kernel/qapplication_x11.cpp ++++ b/src/gui/kernel/qapplication_x11.cpp +@@ -1089,7 +1089,7 @@ + X11->default_im = QLatin1String("imsw-multi"); + } else { + X11->default_im = settings.value(QLatin1String("DefaultInputMethod"), +- QLatin1String("xim")).toString(); ++ QLatin1String("ibus")).toString(); + } + #endif //QT_NO_IM + settings.endGroup(); // Qt +--- a/src/plugins/inputmethods/imsw-multi/qmultiinputcontext.cpp ++++ b/src/plugins/inputmethods/imsw-multi/qmultiinputcontext.cpp +@@ -79,7 +79,7 @@ + if (def.isEmpty()) { + QSettings settings(QSettings::UserScope, QLatin1String("Trolltech")); + settings.beginGroup(QLatin1String("Qt")); +- def = settings.value(QLatin1String("DefaultInputMethod"), QLatin1String("xim")).toString(); ++ def = settings.value(QLatin1String("DefaultInputMethod"), QLatin1String("ibus")).toString(); + } + current = keys.indexOf(def); + if (current < 0) +--- a/tools/qtconfig/mainwindow.cpp ++++ b/tools/qtconfig/mainwindow.cpp +@@ -397,7 +397,7 @@ + #if defined(Q_WS_X11) && !defined(QT_NO_XIM) + QStringList inputMethodCombo = QInputContextFactory::keys(); + int inputMethodComboIndex = -1; +- QString defaultInputMethod = settings.value(QLatin1String("DefaultInputMethod"), QLatin1String("xim")).toString(); ++ QString defaultInputMethod = settings.value(QLatin1String("DefaultInputMethod"), QLatin1String("ibus")).toString(); + for (int i = inputMethodCombo.size()-1; i >= 0; --i) { + const QString &im = inputMethodCombo.at(i); + if (im.contains(QLatin1String("imsw"))) {
  8. Download patch debian/patches/kubuntu_98_a11y_fix_crash.diff

    --- 4:4.8.7+dfsg-7/debian/patches/kubuntu_98_a11y_fix_crash.diff 1970-01-01 00:00:00.000000000 +0000 +++ 4:4.8.7+dfsg-7ubuntu2/debian/patches/kubuntu_98_a11y_fix_crash.diff 2016-01-07 10:57:47.000000000 +0000 @@ -0,0 +1,37 @@ +Index: qt4-x11-4.8.6-64-g5dc8b2b/src/declarative/qml/qdeclarativeengine.cpp +=================================================================== +--- qt4-x11-4.8.6-64-g5dc8b2b.orig/src/declarative/qml/qdeclarativeengine.cpp ++++ qt4-x11-4.8.6-64-g5dc8b2b/src/declarative/qml/qdeclarativeengine.cpp +@@ -2567,4 +2567,10 @@ bool QDeclarative_isFileCaseCorrect(cons + return true; + } + ++QDeclarativeAccessibilityUpdater *QDeclarativeEnginePrivate::getAccessibilityUpdater(QDeclarativeEngine *e) ++{ ++ static QDeclarativeAccessibilityUpdater accessibilityUpdater; ++ return &accessibilityUpdater; ++} ++ + QT_END_NAMESPACE +Index: qt4-x11-4.8.6-64-g5dc8b2b/src/declarative/qml/qdeclarativeengine_p.h +=================================================================== +--- qt4-x11-4.8.6-64-g5dc8b2b.orig/src/declarative/qml/qdeclarativeengine_p.h ++++ qt4-x11-4.8.6-64-g5dc8b2b/src/declarative/qml/qdeclarativeengine_p.h +@@ -238,8 +238,6 @@ public: + + mutable QMutex mutex; + +- QDeclarativeAccessibilityUpdater accessibilityUpdater; +- + QDeclarativeTypeLoader typeLoader; + QDeclarativeImportDatabase importDatabase; + +@@ -314,7 +312,7 @@ public: + static QScriptValue formatTime(QScriptContext*, QScriptEngine*); + static QScriptValue formatDateTime(QScriptContext*, QScriptEngine*); + #endif +- static QDeclarativeAccessibilityUpdater *getAccessibilityUpdater(QDeclarativeEngine *e) { return &e->d_func()->accessibilityUpdater; } ++ static QDeclarativeAccessibilityUpdater *getAccessibilityUpdater(QDeclarativeEngine *e); + static QScriptEngine *getScriptEngine(QDeclarativeEngine *e) { if (!e) return 0; return &e->d_func()->scriptEngine; } + static QDeclarativeEngine *getEngine(QScriptEngine *e) { return static_cast<QDeclarativeScriptEngine*>(e)->p->q_func(); } + static QDeclarativeEnginePrivate *get(QDeclarativeEngine *e) { return e->d_func(); }
  9. Download patch debian/rules

    --- 4:4.8.7+dfsg-7/debian/rules 2016-05-22 14:19:42.000000000 +0000 +++ 4:4.8.7+dfsg-7ubuntu2/debian/rules 2019-07-16 09:59:10.000000000 +0000 @@ -60,7 +60,7 @@ else gles2_architectures := none_for_now endif ifeq ($(DEB_HOST_ARCH),$(findstring $(DEB_HOST_ARCH), $(gles2_architectures))) - extra_configure_opts += -opengl es2 + extra_configure_opts += -opengl es2 -no-neon else extra_configure_opts += -opengl desktop \ -no-egl @@ -142,7 +142,7 @@ endif -xmlpatterns \ -no-multimedia \ -audio-backend \ - -phonon \ + -no-phonon \ -no-phonon-backend \ -svg \ -no-webkit \ @@ -350,13 +350,11 @@ override_dh_installchangelogs: override_dh_strip: $(foreach pkg,$(pkgs_dbg),dh_strip -p$(pkg) --dbg-package=$(pkg)-dbg;) dh_strip $(foreach pkg,$(pkgs_dbgbin),-p$(pkg)) --dbg-package=qt4-bin-dbg - dh_strip -plibqt4-phonon dh_strip --remaining-packages --dbg-package=libqt4-dbg override_dh_makeshlibs: # Specific shlibs version (e.g.: 4:4.5.2) $(foreach pkg,$(pkgs_lib),dh_makeshlibs -p$(pkg) -V '$(pkg) (>= $(shlibs_version))' -- -c0;) - dh_makeshlibs -plibqt4-phonon -V'$(libqt4phonon_shlibs)' # Generate shlibs local files for pkg in $(pkgs_lib); do \ if test -e debian/$${pkg}/DEBIAN/shlibs ; then \ @@ -364,10 +362,10 @@ override_dh_makeshlibs: fi \ done -override_dh_shlibdeps: - # Exclude phonon deps from libqt4-phonon itself (they get injected there somehow) - dh_shlibdeps -plibqt4-phonon -- -xlibphonon4 -xlibqt4-phonon - dh_shlibdeps --remaining-packages +#override_dh_shlibdeps: +# # Exclude phonon deps from libqt4-phonon itself (they get injected there somehow) +# dh_shlibdeps -plibqt4-phonon -- -xlibphonon4 -xlibqt4-phonon +# dh_shlibdeps --remaining-packages override_dh_builddeb: dh_builddeb -- -Zxz
  10. Download patch debian/patches/fix-build-icu59.patch

    --- 4:4.8.7+dfsg-7/debian/patches/fix-build-icu59.patch 1970-01-01 00:00:00.000000000 +0000 +++ 4:4.8.7+dfsg-7ubuntu2/debian/patches/fix-build-icu59.patch 2019-07-16 09:54:29.000000000 +0000 @@ -0,0 +1,31 @@ +Description: 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. +Origin: https://build.opensuse.org/package/view_file/KDE:Qt/libqt4/fix-build-icu59.patch +Author: Fabian Vogt <fabian@ritter-vogt.de> +Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=898542 +Forwarded: not-needed +Reviewd-by: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de> + +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 + } +
  11. Download patch debian/patches/kubuntu_95_qt_disable_bounce.diff

    --- 4:4.8.7+dfsg-7/debian/patches/kubuntu_95_qt_disable_bounce.diff 1970-01-01 00:00:00.000000000 +0000 +++ 4:4.8.7+dfsg-7ubuntu2/debian/patches/kubuntu_95_qt_disable_bounce.diff 2016-01-07 10:57:47.000000000 +0000 @@ -0,0 +1,31 @@ +Description: Manually remove panning gesture subscription from qabstractscrollarea.cpp. + Thus all scrolling happens via mouse wheel events synthesised by X. +Author: Jussi Pakkanen <jussi.pakkanen@canonical.com> +Bug-Ubuntu: https://bugs.launchpad.net/bugs/805972 +Forwarded: no + +=== modified file 'src/gui/widgets/qabstractscrollarea.cpp' +--- + src/gui/widgets/qabstractscrollarea.cpp | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +--- a/src/gui/widgets/qabstractscrollarea.cpp ++++ b/src/gui/widgets/qabstractscrollarea.cpp +@@ -296,7 +296,7 @@ void QAbstractScrollAreaPrivate::init() + layoutChildren(); + #ifndef Q_WS_MAC + #ifndef QT_NO_GESTURES +- viewport->grabGesture(Qt::PanGesture); ++ //viewport->grabGesture(Qt::PanGesture); + #endif + #endif + } +@@ -549,7 +549,7 @@ void QAbstractScrollArea::setViewport(QW + d->viewport->installEventFilter(d->viewportFilter.data()); + #ifndef Q_WS_MAC + #ifndef QT_NO_GESTURES +- d->viewport->grabGesture(Qt::PanGesture); ++// d->viewport->grabGesture(Qt::PanGesture); + #endif + #endif + d->layoutChildren();
  12. Download patch debian/patches/kubuntu_12_fix_stack_protector.diff

    --- 4:4.8.7+dfsg-7/debian/patches/kubuntu_12_fix_stack_protector.diff 1970-01-01 00:00:00.000000000 +0000 +++ 4:4.8.7+dfsg-7ubuntu2/debian/patches/kubuntu_12_fix_stack_protector.diff 2016-01-07 10:57:47.000000000 +0000 @@ -0,0 +1,27 @@ +Description: There should be no reason to disable stack protector unless one + is building with an ancient version of GCC. +Author: Kees Cook <kees@ubuntu.com> +Bug-Ubuntu: https://launchpad.net/bugs/538237 +Forwarded: no + +--- + src/3rdparty/javascriptcore/JavaScriptCore/JavaScriptCore.pri | 8 -------- + 1 file changed, 8 deletions(-) + +--- a/src/3rdparty/javascriptcore/JavaScriptCore/JavaScriptCore.pri ++++ b/src/3rdparty/javascriptcore/JavaScriptCore/JavaScriptCore.pri +@@ -58,14 +58,6 @@ contains(JAVASCRIPTCORE_JIT,no) { + DEFINES+=ENABLE_YARR=0 + } + +-# Rules when JIT enabled (not disabled) +-!contains(DEFINES, ENABLE_JIT=0) { +- linux*-g++*:greaterThan(QT_GCC_MAJOR_VERSION,3):greaterThan(QT_GCC_MINOR_VERSION,0) { +- QMAKE_CXXFLAGS += -fno-stack-protector +- QMAKE_CFLAGS += -fno-stack-protector +- } +-} +- + wince* { + INCLUDEPATH += $$QT_SOURCE_TREE/src/3rdparty/ce-compat + SOURCES += $$QT_SOURCE_TREE/src/3rdparty/ce-compat/ce_time.c
  13. Download patch debian/libqt4-designer.symbols

    --- 4:4.8.7+dfsg-7/debian/libqt4-designer.symbols 2016-02-10 14:04:49.000000000 +0000 +++ 4:4.8.7+dfsg-7ubuntu2/debian/libqt4-designer.symbols 2019-07-16 09:59:10.000000000 +0000 @@ -1,4 +1,4 @@ -# SymbolsHelper-Confirmed: 4:4.8.7 alpha amd64 arm64 armel armhf hppa kfreebsd-amd64 m68k mips mips64el mipsel powerpc ppc64el s390x sh4 sparc64 x32 +# SymbolsHelper-Confirmed: 4:4.8.7 alpha amd64 arm64 armel armhf hppa i386 kfreebsd-amd64 m68k mips mips64el mipsel powerpc ppc64el s390x sh4 sparc64 x32 libQtDesigner.so.4 libqt4-designer #MINVER# * Build-Depends-Package: libqt4-dev _Z20domPropertyToVariantP20QAbstractFormBuilderPK11QMetaObjectPK11DomProperty@Base 4:4.5.3 @@ -2829,7 +2829,7 @@ libQtDesigner.so.4 libqt4-designer #MINV _ZN7DomTimeC2Ev@Base 4:4.5.3 _ZN7DomTimeD1Ev@Base 4:4.5.3 _ZN7DomTimeD2Ev@Base 4:4.5.3 - (optional=external|arch=alpha arm64 armel armhf hppa m68k mips mips64el mipsel powerpc powerpcspe ppc64 ppc64el s390x sh4 sparc64)_ZN7QString5clearEv@Base 4:4.8.1 + (optional=external|arch=alpha arm64 armel armhf hppa m68k mips mips64el mipsel powerpc powerpcspe ppc64 s390x sh4 sparc64)_ZN7QString5clearEv@Base 4:4.8.1 _ZN8DomBrush15setElementColorEP8DomColor@Base 4:4.5.3 _ZN8DomBrush16takeElementColorEv@Base 4:4.5.3 _ZN8DomBrush17setElementTextureEP11DomProperty@Base 4:4.5.3 @@ -4340,7 +4340,7 @@ libQtDesignerComponents.so.4 libqt4-desi _ZN19QDesignerComponents21createObjectInspectorEP28QDesignerFormEditorInterfaceP7QWidget@Base 4:4.5.3 _ZN19QDesignerComponents22createSignalSlotEditorEP28QDesignerFormEditorInterfaceP7QWidget@Base 4:4.5.3 (arch=powerpcspe)_ZN9QHashData8willGrowEv@Base 4:4.8.5+git209 - (optional=gccinternal|arch=alpha arm64 armel armhf hppa m68k mips mips64el mipsel powerpc powerpcspe ppc64 ppc64el s390x sh4 sparc64)_ZN9QHashData9hasShrunkEv@Base 4:4.8.6 + (optional=gccinternal|arch=alpha armel hppa m68k mips mips64el mipsel powerpc powerpcspe ppc64 sh4 sparc64)_ZN9QHashData9hasShrunkEv@Base 4:4.8.6 _ZTI22QItemEditorCreatorBase@Base 4:4.5.3 _ZTS22QItemEditorCreatorBase@Base 4:4.5.3 - (optional=external)_ZeqRK6QRectFS1_@Base 4:4.8.1 + (optional=external|arch=!amd64 !arm64 !armhf !i386 !ppc64el !s390x)_ZeqRK6QRectFS1_@Base 4:4.8.1
  14. Download patch debian/control

    --- 4:4.8.7+dfsg-7/debian/control 2016-05-03 18:58:24.000000000 +0000 +++ 4:4.8.7+dfsg-7ubuntu2/debian/control 2016-05-23 08:54:21.000000000 +0000 @@ -1,14 +1,14 @@ Source: qt4-x11 Section: libs Priority: optional -Maintainer: Debian Qt/KDE Maintainers <debian-qt-kde@lists.debian.org> +Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com> +XSBC-Original-Maintainer: Debian/Kubuntu Qt/KDE Maintainers <debian-qt-kde@lists.debian.org> Uploaders: Sune Vuorela <debian@pusling.com>, Pino Toscano <pino@debian.org>, Lisandro Damián Nicanor Pérez Meyer <lisandro@debian.org>, Timo Jyrinki <timo@debian.org> Build-Depends: debhelper (>= 9), dpkg-dev (>= 1.16.1), - firebird-dev [amd64 armel i386 ia64 kfreebsd-amd64 kfreebsd-i386 mips mipsel powerpc s390 sh4 sparc], flex, freetds-dev, libasound2-dev [linux-any], @@ -16,9 +16,10 @@ Build-Depends: debhelper (>= 9), libcups2-dev, libdbus-1-dev, libfreetype6-dev, - libgl1-mesa-dev, + libgl1-mesa-dev [!armel !armhf], + libgles2-mesa-dev [armel armhf], libglib2.0-dev, - libglu1-mesa-dev, + libglu1-mesa-dev [!armel !armhf], libgtk2.0-dev, libice-dev, libicu-dev, @@ -30,7 +31,6 @@ Build-Depends: debhelper (>= 9), libpq-dev, libreadline-dev, libsm-dev, - libsqlite0-dev, libsqlite3-dev, libssl-dev, libtiff-dev, @@ -153,7 +153,7 @@ Architecture: any Multi-Arch: same Pre-Depends: ${misc:Pre-Depends} Depends: ${misc:Depends}, ${shlibs:Depends} -Recommends: libqt4-sql-mysql | libqt4-sql-odbc | libqt4-sql-psql | libqt4-sql-sqlite | libqt4-sql-sqlite2 | libqt4-sql-ibase [amd64 armel i386 ia64 kfreebsd-amd64 kfreebsd-i386 mips mipsel powerpc s390 sh4 sparc] +Recommends: libqt4-sql-mysql | libqt4-sql-odbc | libqt4-sql-psql | libqt4-sql-sqlite Suggests: libqt4-dev Description: Qt 4 SQL module Qt is a cross-platform C++ application framework. Qt's primary feature @@ -165,18 +165,6 @@ Description: Qt 4 SQL module If you wish to use the SQL module for development, you should install the libqt4-dev package. -Package: libqt4-sql-ibase -Architecture: amd64 armel i386 ia64 kfreebsd-amd64 kfreebsd-i386 mips mipsel powerpc s390 sh4 sparc -Multi-Arch: same -Pre-Depends: ${misc:Pre-Depends} -Depends: ${misc:Depends}, ${shlibs:Depends} -Suggests: libqt4-dev -Description: Qt 4 InterBase/FireBird database driver - This package contains the InterBase/FireBird plugin for Qt 4. - . - Install it if you intend to use or write Qt programs that are to access an - InterBase/FireBird DB. - Package: libqt4-sql-mysql Architecture: any Multi-Arch: same @@ -225,18 +213,6 @@ Description: Qt 4 SQLite 3 database driv Install it if you intend to use or write Qt programs that are to access an SQLite 3 DB. -Package: libqt4-sql-sqlite2 -Architecture: any -Multi-Arch: same -Pre-Depends: ${misc:Pre-Depends} -Depends: ${misc:Depends}, ${shlibs:Depends} -Suggests: libqt4-dev -Description: Qt 4 SQLite 2 database driver - This package contains the SQLite 2 plugin for Qt 4. - . - Install it if you intend to use or write Qt programs that are to access an - SQLite 2 DB. - Package: libqt4-sql-tds Architecture: any Multi-Arch: same @@ -304,9 +280,6 @@ Description: Qt 4 D-Bus module Applications using the QtDBus module can provide services to other, remote applications by exporting objects, as well as use services exported by those applications by placing calls and accessing properties. - . - This package depends on qdbus and libqtdbus4 to break their circular dependency - and allow easy updates from Squeeze to Wheezy. Package: libqtdbus4 Architecture: any @@ -378,23 +351,6 @@ Description: Qt 4 test module The QtTest module provides classes for unit testing Qt applications and libraries. -Package: libqt4-phonon -Architecture: any -Multi-Arch: same -Pre-Depends: ${misc:Pre-Depends} -Depends: ${misc:Depends}, ${shlibs:Depends} -Conflicts: libphonon4 -Description: Qt 4 Phonon module - Qt is a cross-platform C++ application framework. Qt's primary feature - is its rich set of widgets that provide standard GUI functionality. - . - The Qt Phonon module provides a cross-platform multimedia framework that - enables the use of audio and video content in Qt applications. - . - The sole purpose of this package to provide Phonon libraries until libphonon4 - is built from the phonon source package. Therefore it's only useful when - bootstraping new architectures or rebuilding the whole archive from scratch. - Package: libqt4-declarative Architecture: any Multi-Arch: same @@ -513,8 +469,9 @@ Description: Qt 4 development programs Package: libqt4-opengl-dev Architecture: any Section: libdevel -Depends: libgl1-mesa-dev | libgl-dev, - libglu1-mesa-dev, +Depends: libgl1-mesa-dev [!armel !armhf], + libgles2-mesa-dev [armel armhf], + libglu1-mesa-dev [!armel !armhf], libqt4-dev (= ${binary:Version}), libqt4-opengl (= ${binary:Version}), ${misc:Depends}
  15. Download patch debian/patches/gcc9-qforeach.patch

    --- 4:4.8.7+dfsg-7/debian/patches/gcc9-qforeach.patch 1970-01-01 00:00:00.000000000 +0000 +++ 4:4.8.7+dfsg-7ubuntu2/debian/patches/gcc9-qforeach.patch 2019-07-16 09:54:29.000000000 +0000 @@ -0,0 +1,64 @@ +From c35a3f519007af44c3b364b9af86f6a336f6411b Mon Sep 17 00:00:00 2001 +From: Thiago Macieira <thiago.macieira@intel.com> +Date: Tue, 11 Feb 2014 16:17:46 -0800 +Subject: [PATCH] Redo the Q_FOREACH loop control without GCC statement + expressions + +It's possible to do without them, which probably makes the number of +supported compilers a lot bigger: they just need to support decltype() +or __typeof__. + +That includes the Intel compiler. The old code was also apparently +working, but no one had realized the old workaround for some old version +was still in place. + +The loop overhead is more or less the same. I have not done benchmarks, +but inspection of the generated assembly shows more or less the same +number of instructions. + +Change-Id: I32d499c84a6ddd19d994b49f17a469acb5c3a3f1 +Reviewed-by: Olivier Goffart <ogoffart@woboq.com> +Reviewed-by: Marc Mutz <marc.mutz@kdab.com> + +Backported to Qt 4 + +--- a/src/corelib/global/qglobal.h ++++ b/src/corelib/global/qglobal.h +@@ -2482,22 +2482,32 @@ typedef uint Flags; + + #endif /* Q_NO_TYPESAFE_FLAGS */ + +-#if defined(Q_CC_GNU) && !defined(Q_CC_INTEL) && !defined(Q_CC_RVCT) ++#if (defined(Q_CC_GNU) && !defined(Q_CC_RVCT)) + /* make use of typeof-extension */ + template <typename T> + class QForeachContainer { + public: +- inline QForeachContainer(const T& t) : c(t), brk(0), i(c.begin()), e(c.end()) { } ++ inline QForeachContainer(const T& t) : c(t), i(c.begin()), e(c.end()), control(1) { } + const T c; + int brk; + typename T::const_iterator i, e; ++ int control; + }; + ++// Explanation of the control word: ++// - it's initialized to 1 ++// - that means both the inner and outer loops start ++// - if there were no breaks, at the end of the inner loop, it's set to 0, which ++// causes it to exit (the inner loop is run exactly once) ++// - at the end of the outer loop, it's inverted, so it becomes 1 again, allowing ++// the outer loop to continue executing ++// - if there was a break inside the inner loop, it will exit with control still ++// set to 1; in that case, the outer loop will invert it to 0 and will exit too + #define Q_FOREACH(variable, container) \ + for (QForeachContainer<__typeof__(container)> _container_(container); \ +- !_container_.brk && _container_.i != _container_.e; \ +- __extension__ ({ ++_container_.brk; ++_container_.i; })) \ +- for (variable = *_container_.i;; __extension__ ({--_container_.brk; break;})) ++ _container_.control && _container_.i != _container_.e; \ ++ ++_container_.i, _container_.control ^= 1) \ ++ for (variable = *_container_.i; _container_.control; _container_.control = 0) + + #else +
  16. Download patch debian/patches/kubuntu_28_xi2.1.patch
  17. Download patch debian/patches/kubuntu_94_xinput_valuators_fix.diff

    --- 4:4.8.7+dfsg-7/debian/patches/kubuntu_94_xinput_valuators_fix.diff 1970-01-01 00:00:00.000000000 +0000 +++ 4:4.8.7+dfsg-7ubuntu2/debian/patches/kubuntu_94_xinput_valuators_fix.diff 2016-01-07 10:57:47.000000000 +0000 @@ -0,0 +1,146 @@ +Description: Fix XInput event valuator access. + Fix was proposed upstream at + https://qt.gitorious.org/qt/qt/merge_requests/1397 but Qt since moved to + gerrit. Needs re-forwarding. +Author: Jussi Pakkanen <jussi.pakkanen@ubuntu.com> +Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/+source/qt4-x11/+bug/799202 +Forwarded: no + +--- + src/gui/kernel/qapplication_x11.cpp | 96 ++++++++++++++++++++++++++++++------ + 1 file changed, 82 insertions(+), 14 deletions(-) + +--- a/src/gui/kernel/qapplication_x11.cpp ++++ b/src/gui/kernel/qapplication_x11.cpp +@@ -4809,6 +4809,20 @@ + return false; + } + ++/* XInput only reports those valuators whose values have changed. ++ * We have to preserve old values. This is a quick hack to test ++ * whether it works or not. It will most likely fail in several ++ * ways if, for example, there is more than one tablet event ++ * source or anything like that. ++ */ ++ ++static int previousXLoc = 0; ++static int previousYLoc = 0; ++static int previousXTilt = 0; ++static int previousYTilt = 0; ++static qreal previousPressure = 0; ++static qreal previousRotation = 0; ++ + bool QETWidget::translateXinputEvent(const XEvent *ev, QTabletDeviceData *tablet) + { + #if defined (Q_OS_IRIX) +@@ -4827,12 +4841,14 @@ + QPoint global, + curr; + QPointF hiRes; +- qreal pressure = 0; +- int xTilt = 0, +- yTilt = 0, ++ qreal pressure = previousPressure; ++ int xLoc = previousXLoc, ++ yLoc = previousYLoc, ++ xTilt = previousXTilt, ++ yTilt = previousYTilt, + z = 0; + qreal tangentialPressure = 0; +- qreal rotation = 0; ++ qreal rotation = previousRotation; + int deviceType = QTabletEvent::NoDevice; + int pointerType = QTabletEvent::UnknownPointer; + const XDeviceMotionEvent *motion = 0; +@@ -4976,22 +4992,64 @@ + fetchWacomToolId(deviceType, uid); + + QRect screenArea = qApp->desktop()->rect(); ++ const unsigned char xIndex = 0; ++ const unsigned char yIndex = 1; ++ const unsigned char pressureIndex = 2; ++ const unsigned char xTiltIndex = 3; ++ const unsigned char yTiltIndex = 4; ++ const unsigned char rotationIndex = 5; + if (motion) { +- xTilt = (short) motion->axis_data[3]; +- yTilt = (short) motion->axis_data[4]; +- rotation = ((short) motion->axis_data[5]) / 64.0; +- pressure = (short) motion->axis_data[2]; ++ const unsigned char firstAxis = motion->first_axis; ++ const unsigned char axesCount = motion->axes_count; ++ const unsigned char maxIndex = firstAxis + axesCount; ++ ++ if (xIndex >= firstAxis && xIndex < maxIndex) ++ xLoc = motion->axis_data[xIndex - firstAxis]; ++ ++ if (yIndex >= firstAxis && yIndex < maxIndex) ++ yLoc = motion->axis_data[yIndex - firstAxis]; ++ ++ if (xTiltIndex >= firstAxis && xTiltIndex < maxIndex) ++ xTilt = (short) motion->axis_data[xTiltIndex - firstAxis]; ++ ++ if (yTiltIndex >= firstAxis && yTiltIndex < maxIndex) ++ yTilt = (short) motion->axis_data[yTiltIndex - firstAxis]; ++ ++ if (rotationIndex >= firstAxis && rotationIndex < maxIndex) ++ rotation = ((short) motion->axis_data[rotationIndex - firstAxis]) / 64.0; ++ ++ if (pressureIndex >= firstAxis && pressureIndex < maxIndex) ++ pressure = (short) motion->axis_data[pressureIndex - firstAxis]; ++ + modifiers = X11->translateModifiers(motion->state); +- hiRes = tablet->scaleCoord(motion->axis_data[0], motion->axis_data[1], ++ hiRes = tablet->scaleCoord(xLoc, yLoc, + screenArea.x(), screenArea.width(), + screenArea.y(), screenArea.height()); + } else if (button) { +- xTilt = (short) button->axis_data[3]; +- yTilt = (short) button->axis_data[4]; +- rotation = ((short) button->axis_data[5]) / 64.0; +- pressure = (short) button->axis_data[2]; ++ const unsigned char firstAxis = button->first_axis; ++ const unsigned char axesCount = button->axes_count; ++ const unsigned char maxIndex = firstAxis + axesCount; ++ ++ if (xIndex >= firstAxis && xIndex < maxIndex) ++ xLoc = button->axis_data[xIndex - firstAxis]; ++ ++ if (yIndex >= firstAxis && yIndex < maxIndex) ++ yLoc = button->axis_data[yIndex - firstAxis]; ++ ++ if (xTiltIndex >= firstAxis && xTiltIndex < maxIndex) ++ xTilt = (short) button->axis_data[xTiltIndex - firstAxis]; ++ ++ if (yTiltIndex >= firstAxis && yTiltIndex < maxIndex) ++ yTilt = (short) button->axis_data[yTiltIndex - firstAxis]; ++ ++ if (rotationIndex >= firstAxis && rotationIndex < maxIndex) ++ rotation = ((short) button->axis_data[rotationIndex - firstAxis]) / 64.0; ++ ++ if (pressureIndex >= firstAxis && pressureIndex < maxIndex) ++ pressure = (short) button->axis_data[pressureIndex - firstAxis]; ++ + modifiers = X11->translateModifiers(button->state); +- hiRes = tablet->scaleCoord(button->axis_data[0], button->axis_data[1], ++ hiRes = tablet->scaleCoord(xLoc, yLoc, + screenArea.x(), screenArea.width(), + screenArea.y(), screenArea.height()); + } else if (proximity) { +@@ -5025,6 +5083,16 @@ + deviceType, pointerType, + qreal(pressure / qreal(tablet->maxPressure - tablet->minPressure)), + xTilt, yTilt, tangentialPressure, rotation, z, modifiers, uid); ++ /* Preserve current values because the X server will *not* ++ * re-send them if they do not change. ++ */ ++ previousXLoc = xLoc; ++ previousYLoc = yLoc; ++ previousXTilt = xTilt; ++ previousYTilt = yTilt; ++ previousPressure = pressure; ++ previousRotation = rotation; ++ + if (proximity) { + QApplication::sendSpontaneousEvent(qApp, &e); + } else {
  18. Download patch debian/qt4-qtconfig.links
  19. Download patch debian/patches/openssl_1.1.patch
  20. Download patch debian/libqt4-dev-bin.links
  21. Download patch debian/libqt4-qt3support.symbols

    --- 4:4.8.7+dfsg-7/debian/libqt4-qt3support.symbols 2016-02-10 14:04:49.000000000 +0000 +++ 4:4.8.7+dfsg-7ubuntu2/debian/libqt4-qt3support.symbols 2019-07-16 09:59:10.000000000 +0000 @@ -1531,7 +1531,7 @@ libQt3Support.so.4 libqt4-qt3support #MI _ZN12Q3TextFormat8pntr_ldgE@Base 4:4.5.3 _ZN12Q3TextFormat8setColorERK6QColor@Base 4:4.5.3 _ZN12Q3TextFormat9applyFontERK5QFont@Base 4:4.5.3 - (optional=gccinternal|arch=!amd64 !hurd-i386 !i386 !kfreebsd-amd64 !kfreebsd-i386 !x32)_ZN12Q3TextFormat9removeRefEv@Base 4:4.8.7 + (optional=gccinternal|arch=!amd64 !arm64 !armhf !hurd-i386 !i386 !kfreebsd-amd64 !kfreebsd-i386 !ppc64el !s390x !x32)_ZN12Q3TextFormat9removeRefEv@Base 4:4.8.7 _ZN12Q3TextFormat9setFamilyERK7QString@Base 4:4.5.3 _ZN12Q3TextFormat9setItalicEb@Base 4:4.5.3 _ZN12Q3TextFormat9setVAlignENS_17VerticalAlignmentE@Base 4:4.5.3 @@ -3339,7 +3339,7 @@ libQt3Support.so.4 libqt4-qt3support #MI _ZN7Q3TableD0Ev@Base 4:4.5.3 _ZN7Q3TableD1Ev@Base 4:4.5.3 _ZN7Q3TableD2Ev@Base 4:4.5.3 - (arch=!m68k)_ZN7QString5clearEv@Base 4:4.8.7 + (arch=!amd64 !arm64 !armhf !i386 !m68k !ppc64el !s390x)_ZN7QString5clearEv@Base 4:4.8.7 _ZN8Q3Action10removeFromEP7QWidget@Base 4:4.5.3 _ZN8Q3Action10setEnabledEb@Base 4:4.5.3 _ZN8Q3Action10setIconSetERK5QIcon@Base 4:4.5.3 @@ -4339,7 +4339,7 @@ libQt3Support.so.4 libqt4-qt3support #MI _ZNK12Q3TextFormat7descentEv@Base 4:4.5.3 _ZNK12Q3TextFormat7leadingEv@Base 4:4.5.3 _ZNK12Q3TextString5widthEi@Base 4:4.5.3 - (optional=gccinternal|arch=!amd64 !hurd-i386 !i386 !kfreebsd-amd64 !kfreebsd-i386 !x32)_ZNK12Q3TextString8toStringEv@Base 4:4.8.7 + (optional=gccinternal|arch=!amd64 !arm64 !armhf !hurd-i386 !i386 !kfreebsd-amd64 !kfreebsd-i386 !ppc64el !s390x !x32)_ZNK12Q3TextString8toStringEv@Base 4:4.8.7 _ZNK12Q3TextString9checkBidiEv@Base 4:4.5.3 _ZNK12QPaintDevice7devTypeEv@Base 4:4.5.3 _ZNK13Q3ActionGroup10metaObjectEv@Base 4:4.5.3 @@ -4684,7 +4684,7 @@ libQt3Support.so.4 libqt4-qt3support #MI _ZNK16Q3TextStringChar10anchorHrefEv@Base 4:4.5.3 _ZNK16Q3TextStringChar10anchorNameEv@Base 4:4.5.3 (optional=gccinternal|arch=sh4)_ZNK16Q3TextStringChar6ascentEv@Base 4:4.8.7 - (optional=gccinternal|arch=!amd64 !hurd-i386 !i386 !kfreebsd-amd64 !kfreebsd-i386 !x32)_ZNK16Q3TextStringChar6heightEv@Base 4:4.8.7 + (optional=gccinternal|arch=!amd64 !arm64 !armhf !hurd-i386 !i386 !kfreebsd-amd64 !kfreebsd-i386 !ppc64el !s390x !x32)_ZNK16Q3TextStringChar6heightEv@Base 4:4.8.7 _ZNK17Q3CanvasRectangle10areaPointsEv@Base 4:4.5.3 _ZNK17Q3CanvasRectangle12collidesWithEPK12Q3CanvasItem@Base 4:4.5.3 _ZNK17Q3CanvasRectangle12collidesWithEPK14Q3CanvasSpritePK21Q3CanvasPolygonalItemPKS_PK15Q3CanvasEllipsePK12Q3CanvasText@Base 4:4.5.3
  22. Download patch debian/patches/kubuntu_40_disable_neon.patch

    --- 4:4.8.7+dfsg-7/debian/patches/kubuntu_40_disable_neon.patch 1970-01-01 00:00:00.000000000 +0000 +++ 4:4.8.7+dfsg-7ubuntu2/debian/patches/kubuntu_40_disable_neon.patch 2016-01-07 10:57:47.000000000 +0000 @@ -0,0 +1,15 @@ +Description: armel is no longer supported in Ubuntu, disable neon + . + qt4-x11 (4:4.8.4+dfsg-0ubuntu2) raring; urgency=low + . + * Disable neon for Ubuntu since armel is no longer supported. +Author: Tim Gardner <tim.gardner@canonical.com> + +--- /dev/null ++++ qt4-x11-4.8.4+dfsg/imports/junk +@@ -0,0 +1 @@ ++1 +--- /dev/null ++++ qt4-x11-4.8.4+dfsg/templates/junk +@@ -0,0 +1 @@ ++1
  23. Download patch debian/libqt4-xml.symbols

    --- 4:4.8.7+dfsg-7/debian/libqt4-xml.symbols 2015-08-04 21:03:37.000000000 +0000 +++ 4:4.8.7+dfsg-7ubuntu2/debian/libqt4-xml.symbols 2019-07-16 09:59:10.000000000 +0000 @@ -1,4 +1,4 @@ -# SymbolsHelper-Confirmed: 4:4.8.7 amd64 hppa hurd-i386 i386 kfreebsd-amd64 kfreebsd-i386 +# SymbolsHelper-Confirmed: 4:4.8.7 amd64 arm64 armhf hppa hurd-i386 i386 kfreebsd-amd64 kfreebsd-i386 ppc64el s390x libQtXml.so.4 libqt4-xml #MINVER# * Build-Depends-Package: libqt4-dev _ZN10QDomEntityC1EP17QDomEntityPrivate@Base 4:4.5.3 @@ -252,7 +252,7 @@ libQtXml.so.4 libqt4-xml #MINVER# _ZN25QDomProcessingInstructionC2ERKS_@Base 4:4.5.3 _ZN25QDomProcessingInstructionC2Ev@Base 4:4.5.3 _ZN25QDomProcessingInstructionaSERKS_@Base 4:4.5.3 - (optional=gccinternal)_ZN7QString5clearEv@Base 4:4.8.6 + (optional=gccinternal|arch=!amd64 !arm64 !i386 !ppc64el)_ZN7QString5clearEv@Base 4:4.8.6 _ZN8QDomAttr8setValueERK7QString@Base 4:4.5.3 _ZN8QDomAttrC1EP15QDomAttrPrivate@Base 4:4.5.3 _ZN8QDomAttrC1ERKS_@Base 4:4.5.3
  24. Download patch debian/patches/kubuntu_39_fix_medium_font.diff

    --- 4:4.8.7+dfsg-7/debian/patches/kubuntu_39_fix_medium_font.diff 1970-01-01 00:00:00.000000000 +0000 +++ 4:4.8.7+dfsg-7ubuntu2/debian/patches/kubuntu_39_fix_medium_font.diff 2016-01-07 10:57:47.000000000 +0000 @@ -0,0 +1,105 @@ +From: Ken VanDine <ken.vandine@canonical.com> +Description: Default to regular font in X11 + Default to Regular/Normal instead of Medium in QFontDatabase for X11. + . + Tweak the buckets so that Medium has preference over Bold when DemiBold + is requested. +Bug-Ubuntu: https://launchpad.net/bugs/744812 +Bug: https://bugreports.qt-project.org/browse/QTBUG-27301 +Forwarded: https://codereview.qt-project.org/#change,35591 +Author: Michał Sawicz<michal.sawicz@canonical.com> + +--- a/src/gui/text/qfontdatabase_x11.cpp ++++ b/src/gui/text/qfontdatabase_x11.cpp +@@ -729,10 +729,17 @@ + static int getFCWeight(int fc_weight) + { + int qtweight = QFont::Black; +- if (fc_weight <= (FC_WEIGHT_LIGHT + FC_WEIGHT_MEDIUM) / 2) ++ if (fc_weight <= (FC_WEIGHT_LIGHT + FC_WEIGHT_REGULAR) / 2) + qtweight = QFont::Light; +- else if (fc_weight <= (FC_WEIGHT_MEDIUM + FC_WEIGHT_DEMIBOLD) / 2) ++ else if (fc_weight <= (FC_WEIGHT_REGULAR + FC_WEIGHT_MEDIUM) / 2) + qtweight = QFont::Normal; ++#if 0 ++ // FIXME: Uncomment this when it's safe to expand the Enum to include ::Medium ++ // Will map Medium to DemiBold via fallthrough for the moment, ++ // but avoids API/ABI break ++ else if (fc_weight <= (FC_WEIGHT_MEDIUM + FC_WEIGHT_DEMIBOLD) / 2) ++ qtweight = QFont::Medium; ++#endif + else if (fc_weight <= (FC_WEIGHT_DEMIBOLD + FC_WEIGHT_BOLD) / 2) + qtweight = QFont::DemiBold; + else if (fc_weight <= (FC_WEIGHT_BOLD + FC_WEIGHT_BLACK) / 2) +@@ -772,9 +779,13 @@ + fontDef.styleHint + */ + ++ // Default to Regular and thus to the common case. Previous ++ // versions of Qt requested Medium as default. This is fine until ++ // a Medium weight is actually provided by a font, and so gets ++ // promoted to bold fallthrough. + int weight; + if (FcPatternGetInteger(pattern, FC_WEIGHT, 0, &weight) != FcResultMatch) +- weight = FC_WEIGHT_MEDIUM; ++ weight = FC_WEIGHT_REGULAR; + fontDef.weight = getFCWeight(weight); + + int slant; +@@ -1066,16 +1077,19 @@ + // capitalize(value); + familyName = QString::fromUtf8((const char *)value); + slant_value = FC_SLANT_ROMAN; +- weight_value = FC_WEIGHT_MEDIUM; ++ weight_value = FC_WEIGHT_REGULAR; + spacing_value = FC_PROPORTIONAL; + file_value = 0; + index_value = 0; + scalable = FcTrue; + ++ // Fallthroughs in case a match was not found. In previous ++ // versions of Qt, Medium was requested from FontConfig, ++ // leading to a promotion from Medium to Bold. + if (FcPatternGetInteger (fonts->fonts[i], FC_SLANT, 0, &slant_value) != FcResultMatch) + slant_value = FC_SLANT_ROMAN; + if (FcPatternGetInteger (fonts->fonts[i], FC_WEIGHT, 0, &weight_value) != FcResultMatch) +- weight_value = FC_WEIGHT_MEDIUM; ++ weight_value = FC_WEIGHT_REGULAR; + if (FcPatternGetInteger (fonts->fonts[i], FC_SPACING, 0, &spacing_value) != FcResultMatch) + spacing_value = FC_PROPORTIONAL; + if (FcPatternGetString (fonts->fonts[i], FC_FILE, 0, &file_value) != FcResultMatch) +@@ -1487,14 +1501,32 @@ + } + + int weight_value = FC_WEIGHT_BLACK; ++ // Default and request Regular font weight if none specified ++ // Previous versions of Qt default to requesting Medium, even ++ // though this weight does not typically exist. + if (request.weight == 0) +- weight_value = FC_WEIGHT_MEDIUM; ++ weight_value = FC_WEIGHT_REGULAR; + else if (request.weight < (QFont::Light + QFont::Normal) / 2) + weight_value = FC_WEIGHT_LIGHT; +- else if (request.weight < (QFont::Normal + QFont::DemiBold) / 2) ++#if 0 ++ // FIXME: Avoid ABI Break; active this full codepath when ++ // QFont::Medium enum is available in the future ++ else if (request.weight < (QFont::Normal + QFont::Medium) / 2) ++ weight_value = FC_WEIGHT_REGULAR; ++ else if (request.weight < (QFont::Medium + QFont::DemiBold) / 2) + weight_value = FC_WEIGHT_MEDIUM; + else if (request.weight < (QFont::DemiBold + QFont::Bold) / 2) + weight_value = FC_WEIGHT_DEMIBOLD; ++#else ++ // For the moment This may still not full-circle correctly; via ++ // Medium->DemiBold->Bold promotion. However It's hard to do much ++ // about this without an ABI/API tweak to include the fuller set ++ // of standard TTF/CSS/FontConfig weights. ++ else if (request.weight < (QFont::Normal + QFont::DemiBold) / 2) ++ weight_value = FC_WEIGHT_REGULAR; ++ else if (request.weight < (QFont::DemiBold + QFont::Bold) / 2) ++ weight_value = (FC_WEIGHT_MEDIUM + FC_WEIGHT_DEMIBOLD) / 2; ++#endif + else if (request.weight < (QFont::Bold + QFont::Black) / 2) + weight_value = FC_WEIGHT_BOLD; + FcPatternDel(pattern, FC_WEIGHT);
  25. Download patch debian/patches/kubuntu_93_disable_overlay_scrollbars.diff

    --- 4:4.8.7+dfsg-7/debian/patches/kubuntu_93_disable_overlay_scrollbars.diff 1970-01-01 00:00:00.000000000 +0000 +++ 4:4.8.7+dfsg-7ubuntu2/debian/patches/kubuntu_93_disable_overlay_scrollbars.diff 2016-01-07 10:57:47.000000000 +0000 @@ -0,0 +1,59 @@ +From b3460f7aa01262374c014092b618407de5cb0390 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Aur=C3=A9lien=20G=C3=A2teau?= <aurelien.gateau@canonical.com> +Date: Wed, 28 Sep 2011 16:19:18 +0200 +Subject: [PATCH] Use ubuntu_gtk_disable_overlay_scrollbar() to get rid of + overlay scrollbars +Forwarded: no + +This is more robust than using the LIBOVERLAY_SCROLLBAR environment variable +as some programs (vlc) do not let us set variables. +--- + src/gui/styles/qgtkstyle_p.cpp | 4 ++++ + src/gui/styles/qgtkstyle_p.h | 2 ++ + 2 files changed, 6 insertions(+) + +--- a/src/gui/styles/qgtkstyle_p.cpp ++++ b/src/gui/styles/qgtkstyle_p.cpp +@@ -84,6 +84,7 @@ + + Ptr_gtk_container_forall QGtkStylePrivate::gtk_container_forall = 0; + Ptr_gtk_init QGtkStylePrivate::gtk_init = 0; ++Ptr_ubuntu_gtk_set_use_overlay_scrollbar QGtkStylePrivate::ubuntu_gtk_set_use_overlay_scrollbar = 0; + Ptr_gtk_style_attach QGtkStylePrivate::gtk_style_attach = 0; + Ptr_gtk_window_new QGtkStylePrivate::gtk_window_new = 0; + Ptr_gtk_widget_destroy QGtkStylePrivate::gtk_widget_destroy = 0; +@@ -316,6 +317,7 @@ + libgtk.setLoadHints(QLibrary::ImprovedSearchHeuristics); + + gtk_init = (Ptr_gtk_init)libgtk.resolve("gtk_init"); ++ ubuntu_gtk_set_use_overlay_scrollbar = (Ptr_ubuntu_gtk_set_use_overlay_scrollbar)libgtk.resolve("ubuntu_gtk_set_use_overlay_scrollbar"); + gtk_window_new = (Ptr_gtk_window_new)libgtk.resolve("gtk_window_new"); + gtk_style_attach = (Ptr_gtk_style_attach)libgtk.resolve("gtk_style_attach"); + gtk_widget_destroy = (Ptr_gtk_widget_destroy)libgtk.resolve("gtk_widget_destroy"); +@@ -520,6 +522,8 @@ + x11ErrorHandler qt_x_errhandler = XSetErrorHandler(0); + QGtkStylePrivate::gtk_init (NULL, NULL); + XSetErrorHandler(qt_x_errhandler); ++ if (QGtkStylePrivate::ubuntu_gtk_set_use_overlay_scrollbar) ++ QGtkStylePrivate::ubuntu_gtk_set_use_overlay_scrollbar(false); + + // make a window + GtkWidget* gtkWindow = QGtkStylePrivate::gtk_window_new(GTK_WINDOW_POPUP); +--- a/src/gui/styles/qgtkstyle_p.h ++++ b/src/gui/styles/qgtkstyle_p.h +@@ -137,6 +137,7 @@ + typedef bool (*Ptr_gconf_client_get_bool)(GConfClient*, const char*, GError **); + + typedef void (*Ptr_gtk_init)(int *, char ***); ++typedef void (*Ptr_ubuntu_gtk_set_use_overlay_scrollbar) (gboolean); + typedef GtkWidget* (*Ptr_gtk_window_new) (GtkWindowType); + typedef GtkStyle* (*Ptr_gtk_style_attach)(GtkStyle *, GdkWindow *); + typedef void (*Ptr_gtk_widget_destroy) (GtkWidget *); +@@ -358,6 +359,7 @@ + + static Ptr_gtk_container_forall gtk_container_forall; + static Ptr_gtk_init gtk_init; ++ static Ptr_ubuntu_gtk_set_use_overlay_scrollbar ubuntu_gtk_set_use_overlay_scrollbar; + static Ptr_gtk_style_attach gtk_style_attach; + static Ptr_gtk_window_new gtk_window_new; + static Ptr_gtk_widget_destroy gtk_widget_destroy;
  26. Download patch debian/patches/series

    --- 4:4.8.7+dfsg-7/debian/patches/series 2016-05-03 21:00:01.000000000 +0000 +++ 4:4.8.7+dfsg-7ubuntu2/debian/patches/series 2019-07-16 09:59:10.000000000 +0000 @@ -47,7 +47,6 @@ buildable_appchooser_states_demos.patch powerpcspe.diff sh.diff kfreebsd_monotonic_clock.diff -powerpc_designer_gstabs.diff qt-multiarch-plugin-path-compat.diff s390x_jscore.diff add_missing_method_for_QBasicAtomicPointer_on_s390.patch @@ -61,3 +60,24 @@ QtScript_x32_config.diff x32.diff no-ssl3.patch qt-everywhere-opensource-src-4.8.7-gcc6.patch +openssl_1.1.patch +fix-build-icu59.patch +gcc9-qforeach.patch + +# Kubuntu patches +kubuntu_10_ibus_input_method.diff +kubuntu_12_fix_stack_protector.diff +kubuntu_28_xi2.1.patch +kubuntu_30_translucent_drag_pixmap.diff +kubuntu_37_cups_settings.diff +kubuntu_39_fix_medium_font.diff +kubuntu_40_disable_neon.patch +kubuntu_43_no_meego_helper.patch +kubuntu_93_disable_overlay_scrollbars.diff +kubuntu_94_xinput_valuators_fix.diff +kubuntu_95_qt_disable_bounce.diff +kubuntu_97_a11y_qt_and_qml_backport.diff +kubuntu_98_a11y_fix_crash.diff +kubuntu_glib-honor-ExcludeSocketNotifiers-flag.diff +kubuntu_qclipboard_delay.diff +kubuntu_qclipboard_fix_recursive.diff
  27. Download patch debian/Trolltech.conf

    --- 4:4.8.7+dfsg-7/debian/Trolltech.conf 1970-01-01 00:00:00.000000000 +0000 +++ 4:4.8.7+dfsg-7ubuntu2/debian/Trolltech.conf 2016-01-07 10:57:47.000000000 +0000 @@ -0,0 +1,2 @@ +[qt] +4.8\libraryPath=/usr/lib/kde4/plugins
  28. Download patch debian/libqtcore4.install

    --- 4:4.8.7+dfsg-7/debian/libqtcore4.install 2016-05-03 18:58:24.000000000 +0000 +++ 4:4.8.7+dfsg-7ubuntu2/debian/libqtcore4.install 2016-05-23 08:54:52.000000000 +0000 @@ -2,3 +2,4 @@ usr/lib/*/libQtCLucene.so.* usr/lib/*/libQtCore.so.* usr/lib/*/qt-default/qtchooser/default.conf usr/lib/*/qt4/plugins/codecs/*.so +debian/Trolltech.conf etc/xdg/
  29. Download patch debian/patches/kubuntu_97_a11y_qt_and_qml_backport.diff
  30. Download patch debian/qt4-linguist-tools.links
  31. Download patch debian/libqt4-declarative.symbols

    --- 4:4.8.7+dfsg-7/debian/libqt4-declarative.symbols 2015-11-17 00:56:49.000000000 +0000 +++ 4:4.8.7+dfsg-7ubuntu2/debian/libqt4-declarative.symbols 2016-01-07 11:25:17.000000000 +0000 @@ -71,6 +71,7 @@ libQtDeclarative.so.4 libqt4-declarative _ZN16QDeclarativeItem16setKeepMouseGrabEb@Base 4:4.7.0~beta1 _ZN16QDeclarativeItem16staticMetaObjectE@Base 4:4.7.0~beta1 _ZN16QDeclarativeItem17componentCompleteEv@Base 4:4.7.0~beta1 + _ZN16QDeclarativeItem17setAccessibleRoleEN11QAccessible4RoleE@Base 4:4.8.7 (subst)_ZN16QDeclarativeItem17setBaselineOffsetE{qreal}@Base 4:4.7.0~beta1 (subst)_ZN16QDeclarativeItem17setImplicitHeightE{qreal}@Base 4:4.7.0~beta1 _ZN16QDeclarativeItem18activeFocusChangedEb@Base 4:4.7.0~rc1 @@ -840,6 +841,7 @@ libQtDeclarative.so.4 libqt4-declarative _ZN23QDeclarativeItemPrivate21implicitHeightChangedEv@Base 4:4.7.4 _ZN23QDeclarativeItemPrivate23setImplicitLayoutMirrorEbb@Base 4:4.7.4 _ZN23QDeclarativeItemPrivate24removeItemChangeListenerEP30QDeclarativeItemChangeListener6QFlagsINS_10ChangeTypeEE@Base 4:4.7.0~beta1 + _ZN23QDeclarativeItemPrivate28setAccessibleFlagAndListenerEv@Base 4:4.8.7 _ZN23QDeclarativeItemPrivate4dataEv@Base 4:4.7.0~beta2 _ZN23QDeclarativeItemPrivate5startER13QElapsedTimer@Base 4:4.7.0~beta2 _ZN23QDeclarativeItemPrivate6statesEv@Base 4:4.7.0~beta1 @@ -1224,6 +1226,18 @@ libQtDeclarative.so.4 libqt4-declarative _ZN29QDeclarativeDebugEnginesQueryD0Ev@Base 4:4.7.0~beta1 _ZN29QDeclarativeDebugEnginesQueryD1Ev@Base 4:4.7.0~beta1 _ZN29QDeclarativeDebugEnginesQueryD2Ev@Base 4:4.7.0~beta1 + _ZN30QDeclarativeAccessibleAttached11nameChangedEv@Base 4:4.8.7 + _ZN30QDeclarativeAccessibleAttached11qt_metacallEN11QMetaObject4CallEiPPv@Base 4:4.8.7 + _ZN30QDeclarativeAccessibleAttached11qt_metacastEPKc@Base 4:4.8.7 + _ZN30QDeclarativeAccessibleAttached11roleChangedEv@Base 4:4.8.7 + _ZN30QDeclarativeAccessibleAttached16staticMetaObjectE@Base 4:4.8.7 + _ZN30QDeclarativeAccessibleAttached18descriptionChangedEv@Base 4:4.8.7 + _ZN30QDeclarativeAccessibleAttached21qmlAttachedPropertiesEP7QObject@Base 4:4.8.7 + _ZN30QDeclarativeAccessibleAttachedC1EP7QObject@Base 4:4.8.7 + _ZN30QDeclarativeAccessibleAttachedC2EP7QObject@Base 4:4.8.7 + _ZN30QDeclarativeAccessibleAttachedD0Ev@Base 4:4.8.7 + _ZN30QDeclarativeAccessibleAttachedD1Ev@Base 4:4.8.7 + _ZN30QDeclarativeAccessibleAttachedD2Ev@Base 4:4.8.7 _ZN30QDeclarativeDebugFileReference13setLineNumberEi@Base 4:4.7.0~beta1 _ZN30QDeclarativeDebugFileReference15setColumnNumberEi@Base 4:4.7.0~beta1 _ZN30QDeclarativeDebugFileReference6setUrlERK4QUrl@Base 4:4.7.0~beta1 @@ -1354,6 +1368,7 @@ libQtDeclarative.so.4 libqt4-declarative _ZNK16QDeclarativeItem12boundingRectEv@Base 4:4.7.0~beta1 _ZNK16QDeclarativeItem13implicitWidthEv@Base 4:4.7.0~beta1 _ZNK16QDeclarativeItem13keepMouseGrabEv@Base 4:4.7.0~beta1 + _ZNK16QDeclarativeItem14accessibleRoleEv@Base 4:4.8.7 _ZNK16QDeclarativeItem14baselineOffsetEv@Base 4:4.7.0~beta1 _ZNK16QDeclarativeItem14hasActiveFocusEv@Base 4:4.7.0~rc1 _ZNK16QDeclarativeItem14implicitHeightEv@Base 4:4.7.0~beta1 @@ -1424,6 +1439,7 @@ libQtDeclarative.so.4 libqt4-declarative _ZNK16QDeclarativeView10rootObjectEv@Base 4:4.7.0~beta1 _ZNK16QDeclarativeView11initialSizeEv@Base 4:4.7.0~beta2 _ZNK16QDeclarativeView11rootContextEv@Base 4:4.7.0~rc1 + _ZNK16QDeclarativeView18accessibleRootItemEv@Base 4:4.8.7 _ZNK16QDeclarativeView6engineEv@Base 4:4.7.0~rc1 _ZNK16QDeclarativeView6errorsEv@Base 4:4.7.0~beta1 _ZNK16QDeclarativeView6sourceEv@Base 4:4.7.0~beta1 @@ -1828,6 +1844,7 @@ libQtDeclarative.so.4 libqt4-declarative _ZNK29QDeclarativeAbstractAnimation9isRunningEv@Base 4:4.7.1 _ZNK29QDeclarativeDebugEnginesQuery10metaObjectEv@Base 4:4.7.0~beta1 _ZNK29QDeclarativeDebugEnginesQuery7enginesEv@Base 4:4.7.0~beta1 + _ZNK30QDeclarativeAccessibleAttached10metaObjectEv@Base 4:4.8.7 _ZNK30QDeclarativeDebugFileReference10lineNumberEv@Base 4:4.7.0~beta1 _ZNK30QDeclarativeDebugFileReference12columnNumberEv@Base 4:4.7.0~beta1 _ZNK30QDeclarativeDebugFileReference3urlEv@Base 4:4.7.0~beta1 @@ -1940,6 +1957,7 @@ libQtDeclarative.so.4 libqt4-declarative _ZTI28QDeclarativeInspectorService@Base 4:4.8.0 _ZTI29QDeclarativeAbstractAnimation@Base 4:4.7.1 _ZTI29QDeclarativeDebugEnginesQuery@Base 4:4.7.0~beta1 + _ZTI30QDeclarativeAccessibleAttached@Base 4:4.8.7 _ZTI30QDeclarativeDebugPropertyWatch@Base 4:4.7.0~beta1 _ZTI30QDeclarativeExtensionInterface@Base 4:4.7.0~beta1 _ZTI30QDeclarativeOpenMetaObjectType@Base 4:4.7.0~beta1 @@ -2009,6 +2027,7 @@ libQtDeclarative.so.4 libqt4-declarative _ZTS28QDeclarativeInspectorService@Base 4:4.8.0 _ZTS29QDeclarativeAbstractAnimation@Base 4:4.7.1 _ZTS29QDeclarativeDebugEnginesQuery@Base 4:4.7.0~beta1 + _ZTS30QDeclarativeAccessibleAttached@Base 4:4.8.7 _ZTS30QDeclarativeDebugPropertyWatch@Base 4:4.7.0~beta1 _ZTS30QDeclarativeExtensionInterface@Base 4:4.7.0~beta1 _ZTS30QDeclarativeOpenMetaObjectType@Base 4:4.7.0~beta1 @@ -2076,6 +2095,7 @@ libQtDeclarative.so.4 libqt4-declarative _ZTV28QDeclarativeInspectorService@Base 4:4.8.0 _ZTV29QDeclarativeAbstractAnimation@Base 4:4.7.1 _ZTV29QDeclarativeDebugEnginesQuery@Base 4:4.7.0~beta1 + _ZTV30QDeclarativeAccessibleAttached@Base 4:4.8.7 _ZTV30QDeclarativeDebugPropertyWatch@Base 4:4.7.0~beta1 _ZTV30QDeclarativeOpenMetaObjectType@Base 4:4.7.0~beta1 _ZTV31QDeclarativePropertyValueSource@Base 4:4.7.0~beta1
  32. Download patch debian/patches/qt-everywhere-opensource-src-4.8.7-gcc6.patch

    --- 4:4.8.7+dfsg-7/debian/patches/qt-everywhere-opensource-src-4.8.7-gcc6.patch 2016-05-03 20:53:08.000000000 +0000 +++ 4:4.8.7+dfsg-7ubuntu2/debian/patches/qt-everywhere-opensource-src-4.8.7-gcc6.patch 2019-07-16 09:58:03.000000000 +0000 @@ -20,7 +20,7 @@ Last-Update: 2016-05-03 # Check gcc's version case "$(${QMAKE_CONF_COMPILER} -dumpversion)" in - 5*|4*|3.4*) -+ 8*|7*|6*|5*|4*|3.4*) ++ 9*|8*|7*|6*|5*|4*|3.4*) ;; 3.3*) canBuildWebKit="no" @@ -29,7 +29,7 @@ Last-Update: 2016-05-03 COMPILER_VERSION="3.*" ;; - 5*|4.*) -+ 8*|7*|6*|5*|4.*) ++ 9*|8*|7*|6*|5*|4.*) COMPILER_VERSION="4" ;; *)
  33. Download patch debian/libqt4-opengl.symbols

    --- 4:4.8.7+dfsg-7/debian/libqt4-opengl.symbols 2015-11-17 00:56:49.000000000 +0000 +++ 4:4.8.7+dfsg-7ubuntu2/debian/libqt4-opengl.symbols 2019-07-16 09:59:10.000000000 +0000 @@ -8,7 +8,8 @@ libQtOpenGL.so.4 libqt4-opengl #MINVER# _Z22qt_set_gl_library_nameRK7QString@Base 4:4.5.3 _Z26qt_destroy_gl_share_widgetv@Base 4:4.7.1 _Z28qt_resolve_buffer_extensionsP10QGLContext@Base 4:4.8.0 - _Z32qt_resolve_version_2_0_functionsP10QGLContext@Base 4:4.8.0 + (arch=!armhf)_Z32qt_resolve_version_2_0_functionsP10QGLContext@Base 4:4.8.7 + (arch=armhf)_Z33qt_resolve_eglimage_gl_extensionsP10QGLContext@Base 4:4.8.7 (optional=gcc5|arch=!amd64 !hurd-i386 !i386 !kfreebsd-amd64 !kfreebsd-i386 !x32)_ZN10QByteArrayD1Ev@Base 4:4.8.7 (optional=gcc5|arch=!amd64 !hurd-i386 !i386 !kfreebsd-amd64 !kfreebsd-i386 !x32)_ZN10QByteArrayD2Ev@Base 4:4.8.7 _ZN10QGLContext10areSharingEPKS_S1_@Base 4:4.6.1 @@ -119,9 +120,9 @@ libQtOpenGL.so.4 libqt4-opengl #MINVER# _ZN14QGLSignalProxyD0Ev@Base 4:4.6.1 _ZN14QGLSignalProxyD1Ev@Base 4:4.6.1 _ZN14QGLSignalProxyD2Ev@Base 4:4.8.1 - _ZN14QPaintEngineEx12pixmapFilterEiPK13QPixmapFilter@Base 4:4.6.1 - _ZN14QPaintEngineEx17endNativePaintingEv@Base 4:4.6.1 - _ZN14QPaintEngineEx19beginNativePaintingEv@Base 4:4.6.1 + (arch=!armhf)_ZN14QPaintEngineEx12pixmapFilterEiPK13QPixmapFilter@Base 4:4.8.7 + (arch=!armhf)_ZN14QPaintEngineEx17endNativePaintingEv@Base 4:4.8.7 + (arch=!armhf)_ZN14QPaintEngineEx19beginNativePaintingEv@Base 4:4.8.7 _ZN14QPaintEngineEx4syncEv@Base 4:4.6.1 (optional=external|arch=sh4)_ZN15QBasicAtomicInt3refEv@Base 4:4.5.3 (optional=gccinternal|arch=sh4)_ZN15QBasicAtomicInt5derefEv@Base 4:4.8.6 @@ -458,11 +459,11 @@ libQtOpenGL.so.4 libqt4-opengl #MINVER# _ZN27QGLContextGroupResourceBaseD1Ev@Base 4:4.8.0 _ZN27QGLContextGroupResourceBaseD2Ev@Base 4:4.8.0 _ZN3QGL23setPreferredPaintEngineEN12QPaintEngine4TypeE@Base 4:4.6.1 - (optional=external)_ZN6QDebugC1E9QtMsgType@Base 4:4.8.1 - (optional=external)_ZN6QDebugC2E9QtMsgType@Base 4:4.8.1 + (optional=external|arch=!amd64 !arm64 !armhf !i386 !ppc64el !s390x)_ZN6QDebugC1E9QtMsgType@Base 4:4.8.1 + (optional=external|arch=!amd64 !arm64 !armhf !i386 !ppc64el !s390x)_ZN6QDebugC2E9QtMsgType@Base 4:4.8.1 (optional=external)_ZN6QDebugD1Ev@Base 4:4.5.3 (optional=external)_ZN6QDebugD2Ev@Base 4:4.8.1 - (optional=external)_ZN6QDebuglsEPKc@Base 4:4.8.1 + (optional=external|arch=!amd64 !arm64 !armhf !i386 !ppc64el !s390x)_ZN6QDebuglsEPKc@Base 4:4.8.1 (optional=gccinternal)_ZN6QMutex12unlockInlineEv@Base 4:4.8.4 (optional=gcc5|arch=!amd64 !hurd-i386 !i386 !kfreebsd-amd64 !kfreebsd-i386 !x32)_ZN7QStringD1Ev@Base 4:4.8.7 (optional=gcc5|arch=!amd64 !hurd-i386 !i386 !kfreebsd-amd64 !kfreebsd-i386 !x32)_ZN7QStringD2Ev@Base 4:4.8.7
  34. Download patch debian/patches/qt-everywhere-opensource-src-4.8.5-QTBUG-22829.patch

    --- 4:4.8.7+dfsg-7/debian/patches/qt-everywhere-opensource-src-4.8.5-QTBUG-22829.patch 2015-05-01 15:48:50.000000000 +0000 +++ 4:4.8.7+dfsg-7ubuntu2/debian/patches/qt-everywhere-opensource-src-4.8.5-QTBUG-22829.patch 2016-04-26 13:42:57.000000000 +0000 @@ -6,10 +6,11 @@ Bug-RedHat: https://bugzilla.redhat.com/ Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/+source/qt4-x11/+bug/1119656 Applied-Upstream: Qt5 has proper parsing support. -diff -up qt-everywhere-opensource-src-4.8.5/src/tools/moc/main.cpp.QTBUG-22829 qt-everywhere-opensource-src-4.8.5/src/tools/moc/main.cpp ---- qt-everywhere-opensource-src-4.8.5/src/tools/moc/main.cpp.QTBUG-22829 2013-06-09 17:04:02.762459323 -0500 -+++ qt-everywhere-opensource-src-4.8.5/src/tools/moc/main.cpp 2013-06-09 17:08:20.409680813 -0500 -@@ -188,8 +188,9 @@ int runMoc(int _argc, char **_argv) +Index: qt4-x11-4.8.7+dfsg/src/tools/moc/main.cpp +=================================================================== +--- qt4-x11-4.8.7+dfsg.orig/src/tools/moc/main.cpp ++++ qt4-x11-4.8.7+dfsg/src/tools/moc/main.cpp +@@ -188,8 +188,11 @@ int runMoc(int _argc, char **_argv) pp.macros["Q_MOC_RUN"]; pp.macros["__cplusplus"]; @@ -17,6 +18,8 @@ diff -up qt-everywhere-opensource-src-4. + // Workaround a bugs while parsing some boost headers. See QTBUG-22829 pp.macros["BOOST_TT_HAS_OPERATOR_HPP_INCLUDED"]; + pp.macros["BOOST_LEXICAL_CAST_INCLUDED"]; ++ // ditto for boost 1.60 ++ pp.macros["BOOST_TYPE_TRAITS_HPP"]; QByteArray filename; QByteArray output;
  35. Download patch debian/patches/kubuntu_glib-honor-ExcludeSocketNotifiers-flag.diff

    --- 4:4.8.7+dfsg-7/debian/patches/kubuntu_glib-honor-ExcludeSocketNotifiers-flag.diff 1970-01-01 00:00:00.000000000 +0000 +++ 4:4.8.7+dfsg-7ubuntu2/debian/patches/kubuntu_glib-honor-ExcludeSocketNotifiers-flag.diff 2016-01-07 10:57:47.000000000 +0000 @@ -0,0 +1,67 @@ +Description: Honor QEventLoop::ExcludeSocketNotifiers in glib event loop. + Implements QEventLoop::ExcludeSocketNotifiers in the same way + QEventLoop::X11ExcludeTimers is already implemented for the glib + event loop. + Fixes crash in Libreoffice with KDE theme +Forwarded: https://codereview.qt-project.org/#change,80528 +Bug-Qt: https://bugreports.qt-project.org/browse/QTBUG-37380 +Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/+source/qt4-x11/+bug/1290514 +Author: Jan-Marek Glogowski <glogow@fbihome.de> +Last-Update: 2014-03-11 + +Index: qt4-x11-4.8.5+git192-g085f851+dfsg/src/corelib/kernel/qeventdispatcher_glib.cpp +=================================================================== +--- qt4-x11-4.8.5+git192-g085f851+dfsg.orig/src/corelib/kernel/qeventdispatcher_glib.cpp 2014-03-11 13:28:12.330924177 +0000 ++++ qt4-x11-4.8.5+git192-g085f851+dfsg/src/corelib/kernel/qeventdispatcher_glib.cpp 2014-03-11 13:28:12.314924177 +0000 +@@ -65,6 +65,7 @@ + struct GSocketNotifierSource + { + GSource source; ++ QEventLoop::ProcessEventsFlags processEventsFlags; + QList<GPollFDWithQSocketNotifier *> pollfds; + }; + +@@ -80,6 +81,9 @@ + GSocketNotifierSource *src = reinterpret_cast<GSocketNotifierSource *>(source); + + bool pending = false; ++ if (src->processEventsFlags & QEventLoop::ExcludeSocketNotifiers) ++ return pending; ++ + for (int i = 0; !pending && i < src->pollfds.count(); ++i) { + GPollFDWithQSocketNotifier *p = src->pollfds.at(i); + +@@ -103,6 +107,9 @@ + QEvent event(QEvent::SockAct); + + GSocketNotifierSource *src = reinterpret_cast<GSocketNotifierSource *>(source); ++ if (src->processEventsFlags & QEventLoop::ExcludeSocketNotifiers) ++ return true; ++ + for (int i = 0; i < src->pollfds.count(); ++i) { + GPollFDWithQSocketNotifier *p = src->pollfds.at(i); + +@@ -331,6 +338,7 @@ + reinterpret_cast<GSocketNotifierSource *>(g_source_new(&socketNotifierSourceFuncs, + sizeof(GSocketNotifierSource))); + (void) new (&socketNotifierSource->pollfds) QList<GPollFDWithQSocketNotifier *>(); ++ socketNotifierSource->processEventsFlags = QEventLoop::AllEvents; + g_source_set_can_recurse(&socketNotifierSource->source, true); + g_source_attach(&socketNotifierSource->source, mainContext); + +@@ -416,6 +424,7 @@ + // tell postEventSourcePrepare() and timerSource about any new flags + QEventLoop::ProcessEventsFlags savedFlags = d->timerSource->processEventsFlags; + d->timerSource->processEventsFlags = flags; ++ d->socketNotifierSource->processEventsFlags = flags; + + if (!(flags & QEventLoop::EventLoopExec)) { + // force timers to be sent at normal priority +@@ -427,6 +436,7 @@ + result = g_main_context_iteration(d->mainContext, canWait); + + d->timerSource->processEventsFlags = savedFlags; ++ d->socketNotifierSource->processEventsFlags = savedFlags; + + if (canWait) + emit awake();
  36. Download patch debian/patches/kubuntu_37_cups_settings.diff

    --- 4:4.8.7+dfsg-7/debian/patches/kubuntu_37_cups_settings.diff 1970-01-01 00:00:00.000000000 +0000 +++ 4:4.8.7+dfsg-7ubuntu2/debian/patches/kubuntu_37_cups_settings.diff 2016-01-07 10:57:47.000000000 +0000 @@ -0,0 +1,92 @@ +Description: use CUPS settings in print dialog +Bug: https://bugreports.qt-project.org/browse/QTBUG-25372 +Bug-KDE: https://bugs.kde.org/180051 +Bug-Ubuntu: https://launchpad.net/bugs/905147 +Forwarded: no + +Index: precise-updates-qt4-x11/src/gui/dialogs/qprintdialog_unix.cpp +=================================================================== +--- precise-updates-qt4-x11.orig/src/gui/dialogs/qprintdialog_unix.cpp 2012-07-25 17:06:19.586211000 +0200 ++++ precise-updates-qt4-x11/src/gui/dialogs/qprintdialog_unix.cpp 2012-07-25 17:18:27.612092214 +0200 +@@ -579,6 +579,32 @@ + void QPrintDialogPrivate::selectPrinter(QCUPSSupport *cups) + { + options.duplex->setEnabled(cups && cups->ppdOption("Duplex")); ++ ++ if (cups) { ++ const ppd_option_t* duplex = cups->ppdOption("Duplex"); ++ if (duplex) { ++ // copy default ppd duplex to qt dialog ++ if (qstrcmp(duplex->defchoice, "DuplexTumble") == 0) ++ options.duplexShort->setChecked(true); ++ else if (qstrcmp(duplex->defchoice, "DuplexNoTumble") == 0) ++ options.duplexLong->setChecked(true); ++ else ++ options.noDuplex->setChecked(true); ++ } ++ ++ if (cups->currentPPD()) { ++ // set default color ++ if (cups->currentPPD()->color_device) ++ options.color->setChecked(true); ++ else ++ options.grayscale->setChecked(true); ++ } ++ ++ // set collation ++ const ppd_option_t *collate = cups->ppdOption("Collate"); ++ if (collate) ++ options.collate->setChecked(qstrcmp(collate->defchoice, "True")==0); ++ } + } + #endif + +Index: precise-updates-qt4-x11/src/gui/painting/qprinter.cpp +=================================================================== +--- precise-updates-qt4-x11.orig/src/gui/painting/qprinter.cpp 2012-07-25 17:06:19.586211000 +0200 ++++ precise-updates-qt4-x11/src/gui/painting/qprinter.cpp 2012-07-25 17:18:27.612092214 +0200 +@@ -609,6 +609,44 @@ + && d_ptr->paintEngine->type() != QPaintEngine::MacPrinter) { + setOutputFormat(QPrinter::PdfFormat); + } ++ ++#if !defined(QT_NO_CUPS) && !defined(QT_NO_LIBRARY) ++ // fill in defaults from ppd file ++ QCUPSSupport cups; ++ ++ int printernum = -1; ++ for (int i = 0; i < cups.availablePrintersCount(); i++) { ++ if (printerName().toLocal8Bit() == cups.availablePrinters()[i].name) ++ printernum = i; ++ } ++ if (printernum >= 0) { ++ cups.setCurrentPrinter(printernum); ++ ++ const ppd_option_t* duplex = cups.ppdOption("Duplex"); ++ if (duplex) { ++ // copy default ppd duplex to qt dialog ++ if (qstrcmp(duplex->defchoice, "DuplexTumble") == 0) ++ setDuplex(DuplexShortSide); ++ else if (qstrcmp(duplex->defchoice, "DuplexNoTumble") == 0) ++ setDuplex(DuplexLongSide); ++ else ++ setDuplex(DuplexNone); ++ } ++ ++ if (cups.currentPPD()) { ++ // set default color ++ if (cups.currentPPD()->color_device) ++ setColorMode(Color); ++ else ++ setColorMode(GrayScale); ++ } ++ ++ // set collation ++ const ppd_option_t *collate = cups.ppdOption("Collate"); ++ if (collate) ++ setCollateCopies(qstrcmp(collate->defchoice, "True")==0); ++ } ++#endif + } + + /*!
  37. Download patch debian/qt4-qmake.links
  38. Download patch debian/patches/kubuntu_30_translucent_drag_pixmap.diff

    --- 4:4.8.7+dfsg-7/debian/patches/kubuntu_30_translucent_drag_pixmap.diff 1970-01-01 00:00:00.000000000 +0000 +++ 4:4.8.7+dfsg-7ubuntu2/debian/patches/kubuntu_30_translucent_drag_pixmap.diff 2016-01-07 10:57:47.000000000 +0000 @@ -0,0 +1,33 @@ +Description Change I469e3d39: use a translucent drag pixmap if compositing is active + due to be accepted after Qt 5 d'n'd is fixed(!) +Author: Ignat Semenov +Forwarded: http://codereview.qt-project.org/#change,16809 + +--- + src/gui/kernel/qdnd_x11.cpp | 12 ++++++++---- + 1 file changed, 8 insertions(+), 4 deletions(-) + +Index: qt-everywhere-opensource-src-4.8.4/src/gui/kernel/qdnd_x11.cpp +=================================================================== +--- qt-everywhere-opensource-src-4.8.4.orig/src/gui/kernel/qdnd_x11.cpp 2013-01-09 12:39:43.617142864 +0000 ++++ qt-everywhere-opensource-src-4.8.4/src/gui/kernel/qdnd_x11.cpp 2013-01-09 12:39:43.609142864 +0000 +@@ -290,11 +290,15 @@ + + void setPixmap(const QPixmap &pm) + { +- QBitmap mask = pm.mask(); +- if (!mask.isNull()) { +- setMask(mask); +- } else { ++ if (QX11Info::isCompositingManagerRunning()) { ++ setAttribute(Qt::WA_TranslucentBackground); + clearMask(); ++ } else { ++ QBitmap mask = pm.mask(); ++ if (!mask.isNull()) ++ setMask(mask); ++ else ++ clearMask(); + } + resize(pm.width(),pm.height()); + pixmap = pm;
  39. Download patch debian/patches/kubuntu_qclipboard_delay.diff

    --- 4:4.8.7+dfsg-7/debian/patches/kubuntu_qclipboard_delay.diff 1970-01-01 00:00:00.000000000 +0000 +++ 4:4.8.7+dfsg-7ubuntu2/debian/patches/kubuntu_qclipboard_delay.diff 2016-01-07 10:57:47.000000000 +0000 @@ -0,0 +1,35 @@ +Description: Delays with QClipboard and "useEventLoop" + If LibreOffice is running with KDE integration and KFileDialog is + open, if clipboard contents are held by LO (i.e. Ctrl+C in LO before + the dialog is opened), then there is a visible delay when moving the + mouse over the dialog contents. This is because KFileDialog + repeatedly checks clipboard contents and these checks take visibly + long (and there's not so few of them). + . + LO/Qt integration needs to set QClipboard to "useEventLoop" mode. The + code there adds 50ms delay to every single clipboard data fetch, + presumably to avoid busy-looping, but it's quite long and often + needless. + . + The attached patch avoids any visible delay in the KFileDialog in this case. +Author: Luboš Luňák +Origin: other>, see bug +Bug: https://bugreports.qt-project.org/browse/QTBUG-38585 +Forwarded: see bug +Applied-Upstream: not yet +Reviewed-by: Jonathan Riddell +Last-Update: 2014-11-22 +--- +This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ +--- qt/src/gui/kernel/qclipboard_x11.cpp.sav 2014-04-25 09:52:03.855693228 +0200 ++++ qt/src/gui/kernel/qclipboard_x11.cpp 2014-04-25 09:51:58.038693777 +0200 +@@ -548,7 +548,8 @@ bool QX11Data::clipboardWaitForEvent(Win + return false; + + XSync(X11->display, false); +- usleep(50000); ++ if (!XPending(X11->display)) ++ usleep(5000); + + now.start(); +
  1. qt4-x11