summaryrefslogtreecommitdiffstats
path: root/source/l/qt
diff options
context:
space:
mode:
author Patrick J Volkerding <volkerdi@slackware.com>2020-12-07 21:49:58 +0000
committer Eric Hameleers <alien@slackware.com>2020-12-08 08:59:51 +0100
commit5584dad3850d8f1aa3459ed8b85b3f8b571df3d4 (patch)
tree42cbbe668c936cf1bc0d35e57cf68afec5657776 /source/l/qt
parent9dce810dc522c70eeca9a928b95df923a70e4f2c (diff)
downloadcurrent-5584dad3850d8f1aa3459ed8b85b3f8b571df3d4.tar.gz
current-5584dad3850d8f1aa3459ed8b85b3f8b571df3d4.tar.xz
Mon Dec 7 21:49:58 UTC 202020201207214958
Goodbye vtown... we hardly knew you. It is indeed the day of the Big Merge(tm) leaving nothing left in /testing (but I'll try to work on that soon). In addition to merging packages from /testing, Qt4 and related packages have gone away, along with some other libraries that were only used by KDE4. Perhaps someone will want to take up maintenance of Qt4 (but I'm also pretty sure that SBo wouldn't touch that build script with a ten foot pole). ConsoleKit2 is gone, replaced by elogind (which also takes over for cgmanager and pm-utils). Huge thanks to Eric Hameleers, Heinz Wiesinger, and Robby Workman for all the help making this possible. There's still more cleanup to do here, but that'll be easier with everything in the main tree instead of maintaining side installs running the /testing packages. I'll look into what can be done about extra/pure-alsa-system/ soon. Enjoy! :-) a/aaa_elflibs-15.0-x86_64-28.txz: Rebuilt. Upgraded: libcap.so.2.45, libelf-0.182.so, libglib-2.0.so.0.6600.3, libgmodule-2.0.so.0.6600.3, libgmp.so.10.4.1, libgmpxx.so.4.6.1, libgobject-2.0.so.0.6600.3, libgthread-2.0.so.0.6600.3, libhistory.so.8.1, libisl.so.23.0.0, liblber-2.4.so.2.11.4, libldap-2.4.so.2.11.4, libpcre2-8.so.0.10.1, libreadline.so.8.1. Removed: libHalf.so.12.0.0, libIex-2_2.so.12.0.0, libIexMath-2_2.so.12.0.0, libIlmImf-2_2.so.22.0.0, libIlmImfUtil-2_2.so.22.0.0, libIlmThread-2_2.so.12.0.0, libImath-2_2.so.12.0.0, libexiv2.so.26.0.0, libpoppler-qt4.so.4.11.0, libpoppler.so.79.0.0, libraw.so.16.0.0, libraw_r.so.16.0.0. a/bash-5.1.000-x86_64-1.txz: Upgraded. a/dbus-1.12.20-x86_64-2.txz: Rebuilt. a/elogind-243.7-x86_64-1.txz: Added. a/eudev-3.2.9-x86_64-2.txz: Rebuilt. Applied Pavilion 13 x360 keys patch from upstream git. Thanks to Robby Workman. a/procps-ng-3.3.16-x86_64-3.txz: Rebuilt. Recompiled using --with-elogind. ap/cgmanager-0.42-x86_64-1.txz: Removed. ap/pm-utils-1.4.1-x86_64-6.txz: Removed. ap/vim-8.2.2105-x86_64-1.txz: Upgraded. d/python-setuptools-51.0.0-x86_64-1.txz: Upgraded. kde/akonadi-20.08.3-x86_64-1.txz: Upgraded. kde/akonadi-calendar-20.08.3-x86_64-1.txz: Added. kde/akonadi-calendar-tools-20.08.3-x86_64-1.txz: Added. kde/akonadi-contacts-20.08.3-x86_64-1.txz: Added. kde/akonadi-import-wizard-20.08.3-x86_64-1.txz: Added. kde/akonadi-mime-20.08.3-x86_64-1.txz: Added. kde/akonadi-notes-20.08.3-x86_64-1.txz: Added. kde/akonadi-search-20.08.3-x86_64-1.txz: Added. kde/akonadiconsole-20.08.3-x86_64-1.txz: Added. kde/akregator-20.08.3-x86_64-1.txz: Added. kde/alkimia-8.0.4-x86_64-1.txz: Added. kde/amarok-2.9.0-x86_64-3.txz: Removed. kde/amor-4.14.3-x86_64-3.txz: Removed. kde/analitza-20.08.3-x86_64-1.txz: Upgraded. kde/ark-20.08.3-x86_64-1.txz: Upgraded. kde/artikulate-20.08.3-x86_64-1.txz: Upgraded. kde/attica-5.76.0-x86_64-1.txz: Upgraded. kde/audiocd-kio-20.08.3-x86_64-1.txz: Upgraded. kde/baloo-5.76.0-x86_64-1.txz: Upgraded. kde/baloo-widgets-20.08.3-x86_64-1.txz: Upgraded. kde/blinken-20.08.3-x86_64-1.txz: Upgraded. kde/bluedevil-5.20.4-x86_64-1.txz: Upgraded. kde/bluez-qt-5.76.0-x86_64-1.txz: Added. kde/bomber-20.08.3-x86_64-1.txz: Upgraded. kde/bovo-20.08.3-x86_64-1.txz: Upgraded. kde/breeze-5.20.4-x86_64-1.txz: Added. kde/breeze-grub-5.20.4-x86_64-1.txz: Added. kde/breeze-gtk-5.20.4-x86_64-1.txz: Added. kde/breeze-icons-5.76.0-noarch-1.txz: Added. kde/calendarsupport-20.08.3-x86_64-1.txz: Added. kde/calligra-3.2.1-x86_64-1.txz: Upgraded. kde/calligraplan-3.2.2-x86_64-1.txz: Added. kde/cantor-20.08.3-x86_64-1.txz: Upgraded. kde/cervisia-20.08.3-x86_64-1.txz: Upgraded. kde/digikam-7.1.0-x86_64-1.txz: Added. kde/dolphin-20.08.3-x86_64-1.txz: Added. kde/dolphin-plugins-20.08.3-x86_64-1.txz: Upgraded. kde/dragon-20.08.3-x86_64-1.txz: Upgraded. kde/drkonqi-5.20.4-x86_64-1.txz: Added. kde/elisa-20.08.3-x86_64-1.txz: Added. kde/eventviews-20.08.3-x86_64-1.txz: Added. kde/extra-cmake-modules-5.76.0-x86_64-1.txz: Added. kde/falkon-3.1.0-x86_64-1.txz: Added. kde/ffmpegthumbs-20.08.3-x86_64-1.txz: Added. kde/filelight-20.08.3-x86_64-1.txz: Upgraded. kde/frameworkintegration-5.76.0-x86_64-1.txz: Added. kde/granatier-20.08.3-x86_64-1.txz: Upgraded. kde/grantlee-editor-20.08.3-x86_64-1.txz: Added. kde/grantleetheme-20.08.3-x86_64-1.txz: Added. kde/gwenview-20.08.3-x86_64-1.txz: Upgraded. kde/incidenceeditor-20.08.3-x86_64-1.txz: Added. kde/juk-20.08.3-x86_64-1.txz: Upgraded. kde/k3b-20.08.3-x86_64-1.txz: Upgraded. kde/kaccessible-4.14.3-x86_64-3.txz: Removed. kde/kactivities-5.76.0-x86_64-1.txz: Upgraded. kde/kactivities-stats-5.76.0-x86_64-1.txz: Added. kde/kactivitymanagerd-5.20.4-x86_64-1.txz: Added. kde/kaddressbook-20.08.3-x86_64-1.txz: Added. kde/kajongg-4.14.3-x86_64-3.txz: Removed. kde/kalarm-20.08.3-x86_64-1.txz: Added. kde/kalarmcal-20.08.3-x86_64-1.txz: Added. kde/kalgebra-20.08.3-x86_64-1.txz: Upgraded. kde/kalzium-20.08.3-x86_64-1.txz: Upgraded. kde/kamera-20.08.3-x86_64-1.txz: Upgraded. kde/kamoso-20.08.3-x86_64-1.txz: Added. kde/kanagram-20.08.3-x86_64-1.txz: Upgraded. kde/kapidox-5.76.0-x86_64-1.txz: Added. kde/kapman-20.08.3-x86_64-1.txz: Upgraded. kde/kapptemplate-20.08.3-x86_64-1.txz: Upgraded. kde/karchive-5.76.0-x86_64-1.txz: Added. kde/kate-20.08.3-x86_64-1.txz: Upgraded. kde/katomic-20.08.3-x86_64-1.txz: Upgraded. kde/kaudiocreator-1.3-x86_64-3.txz: Removed. kde/kauth-5.76.0-x86_64-1.txz: Added. kde/kbackup-20.08.3-x86_64-1.txz: Added. kde/kblackbox-20.08.3-x86_64-1.txz: Upgraded. kde/kblocks-20.08.3-x86_64-1.txz: Upgraded. kde/kbookmarks-5.76.0-x86_64-1.txz: Added. kde/kbounce-20.08.3-x86_64-1.txz: Upgraded. kde/kbreakout-20.08.3-x86_64-1.txz: Upgraded. kde/kbruch-20.08.3-x86_64-1.txz: Upgraded. kde/kcachegrind-20.08.3-x86_64-1.txz: Upgraded. kde/kcalc-20.08.3-x86_64-1.txz: Upgraded. kde/kcalendarcore-5.76.0-x86_64-1.txz: Added. kde/kcalutils-20.08.3-x86_64-1.txz: Added. kde/kcharselect-20.08.3-x86_64-1.txz: Upgraded. kde/kcm-fcitx-0.5.6-x86_64-1.txz: Added. kde/kcmutils-5.76.0-x86_64-1.txz: Added. kde/kcodecs-5.76.0-x86_64-1.txz: Added. kde/kcolorchooser-20.08.3-x86_64-1.txz: Upgraded. kde/kcompletion-5.76.0-x86_64-1.txz: Added. kde/kconfig-5.76.0-x86_64-1.txz: Added. kde/kconfigwidgets-5.76.0-x86_64-1.txz: Added. kde/kcontacts-5.76.0-x86_64-1.txz: Added. kde/kcoreaddons-5.76.0-x86_64-1.txz: Added. kde/kcrash-5.76.0-x86_64-1.txz: Added. kde/kcron-20.08.3-x86_64-1.txz: Upgraded. kde/kdav-5.76.0-x86_64-1.txz: Added. kde/kdbusaddons-5.76.0-x86_64-1.txz: Added. kde/kde-base-artwork-4.14.3-x86_64-3.txz: Removed. kde/kde-baseapps-4.14.3-x86_64-3.txz: Removed. kde/kde-cli-tools-5.20.4-x86_64-1.txz: Added. kde/kde-dev-scripts-20.08.3-x86_64-1.txz: Upgraded. kde/kde-dev-utils-20.08.3-x86_64-1.txz: Upgraded. kde/kde-gtk-config-5.20.4-x86_64-1.txz: Added. kde/kde-runtime-4.14.3-x86_64-8.txz: Removed. kde/kde-wallpapers-4.14.3-noarch-2.txz: Removed. kde/kde-workspace-4.11.22-x86_64-9.txz: Removed. kde/kdeartwork-4.14.3-x86_64-3.txz: Removed. kde/kdebugsettings-20.08.3-x86_64-1.txz: Added. kde/kdeclarative-5.76.0-x86_64-1.txz: Added. kde/kdeconnect-kde-20.08.3-x86_64-1.txz: Upgraded. kde/kdecoration-5.20.4-x86_64-1.txz: Added. kde/kded-5.76.0-x86_64-1.txz: Added. kde/kdeedu-data-20.08.3-x86_64-1.txz: Added. kde/kdegraphics-mobipocket-20.08.3-x86_64-1.txz: Upgraded. kde/kdegraphics-strigi-analyzer-4.14.3-x86_64-3.txz: Removed. kde/kdegraphics-thumbnailers-20.08.3-x86_64-1.txz: Upgraded. kde/kdelibs-4.14.38-x86_64-8.txz: Removed. kde/kdelibs4support-5.76.0-x86_64-1.txz: Added. kde/kdenetwork-filesharing-20.08.3-x86_64-1.txz: Upgraded. kde/kdenetwork-strigi-analyzers-4.14.3-x86_64-3.txz: Removed. kde/kdenlive-20.08.3-x86_64-1.txz: Added. kde/kdepim-4.14.10-x86_64-5.txz: Removed. kde/kdepim-addons-20.08.3-x86_64-1.txz: Added. kde/kdepim-apps-libs-20.08.3-x86_64-1.txz: Added. kde/kdepim-runtime-20.08.3-x86_64-1.txz: Upgraded. kde/kdepimlibs-4.14.10-x86_64-9.txz: Removed. kde/kdeplasma-addons-5.20.4-x86_64-1.txz: Upgraded. kde/kdesdk-kioslaves-20.08.3-x86_64-1.txz: Upgraded. kde/kdesdk-strigi-analyzers-4.14.3-x86_64-3.txz: Removed. kde/kdesdk-thumbnailers-20.08.3-x86_64-1.txz: Upgraded. kde/kdesignerplugin-5.76.0-x86_64-1.txz: Added. kde/kdesu-5.76.0-x86_64-1.txz: Added. kde/kdev-php-5.6.0-x86_64-1.txz: Added. kde/kdev-python-5.6.0-x86_64-1.txz: Upgraded. kde/kdevelop-5.6.0-x86_64-1.txz: Upgraded. kde/kdevelop-pg-qt-2.2.1-x86_64-1.txz: Upgraded. kde/kdevelop-php-1.7.4-x86_64-2.txz: Removed. kde/kdevelop-php-docs-1.7.4-x86_64-2.txz: Removed. kde/kdevplatform-1.7.4-x86_64-2.txz: Removed. kde/kdewebdev-4.14.3-x86_64-3.txz: Removed. kde/kdewebkit-5.76.0-x86_64-1.txz: Added. kde/kdf-20.08.3-x86_64-1.txz: Upgraded. kde/kdiagram-2.7.0-x86_64-1.txz: Added. kde/kdialog-20.08.3-x86_64-1.txz: Added. kde/kdiamond-20.08.3-x86_64-1.txz: Upgraded. kde/kdnssd-5.76.0-x86_64-1.txz: Added. kde/kdoctools-5.76.0-x86_64-1.txz: Added. kde/keditbookmarks-20.08.3-x86_64-1.txz: Added. kde/kemoticons-5.76.0-x86_64-1.txz: Added. kde/kfilemetadata-5.76.0-x86_64-1.txz: Upgraded. kde/kfind-20.08.3-x86_64-1.txz: Added. kde/kfloppy-20.08.3-x86_64-1.txz: Upgraded. kde/kfourinline-20.08.3-x86_64-1.txz: Upgraded. kde/kgamma-4.14.3-x86_64-3.txz: Removed. kde/kgamma5-5.20.4-x86_64-1.txz: Added. kde/kgeography-20.08.3-x86_64-1.txz: Upgraded. kde/kget-20.08.3-x86_64-1.txz: Upgraded. kde/kglobalaccel-5.76.0-x86_64-1.txz: Added. kde/kgoldrunner-20.08.3-x86_64-1.txz: Upgraded. kde/kgpg-20.08.3-x86_64-1.txz: Upgraded. kde/kguiaddons-5.76.0-x86_64-1.txz: Added. kde/khangman-20.08.3-x86_64-1.txz: Upgraded. kde/khelpcenter-20.08.3-x86_64-1.txz: Added. kde/kholidays-5.76.0-x86_64-1.txz: Added. kde/khotkeys-5.20.4-x86_64-1.txz: Added. kde/khtml-5.76.0-x86_64-1.txz: Added. kde/ki18n-5.76.0-x86_64-1.txz: Added. kde/kiconthemes-5.76.0-x86_64-1.txz: Added. kde/kid3-3.8.4-x86_64-1.txz: Added. kde/kidentitymanagement-20.08.3-x86_64-1.txz: Added. kde/kidletime-5.76.0-x86_64-1.txz: Added. kde/kig-20.08.3-x86_64-1.txz: Upgraded. kde/kigo-20.08.3-x86_64-1.txz: Upgraded. kde/kile-2.9.93-x86_64-1.txz: Added. kde/killbots-20.08.3-x86_64-1.txz: Upgraded. kde/kimageformats-5.76.0-x86_64-1.txz: Added. kde/kimagemapeditor-20.08.3-x86_64-1.txz: Added. kde/kimap-20.08.3-x86_64-1.txz: Added. kde/kinfocenter-5.20.4-x86_64-1.txz: Added. kde/kinit-5.76.0-x86_64-1.txz: Added. kde/kio-5.76.0-x86_64-1.txz: Added. kde/kio-extras-20.08.3-x86_64-1.txz: Added. kde/kio-gdrive-20.08.3-x86_64-1.txz: Added. kde/kio-mtp-2063e75_20131020git-x86_64-4.txz: Removed. kde/kipi-plugins-20.08.3-x86_64-1.txz: Added. kde/kirigami-gallery-20.08.3-x86_64-1.txz: Added. kde/kirigami2-5.76.0-x86_64-1.txz: Added. kde/kiriki-20.08.3-x86_64-1.txz: Upgraded. kde/kitemmodels-5.76.0-x86_64-1.txz: Added. kde/kitemviews-5.76.0-x86_64-1.txz: Added. kde/kiten-20.08.3-x86_64-1.txz: Upgraded. kde/kitinerary-20.08.3-x86_64-1.txz: Added. kde/kjobwidgets-5.76.0-x86_64-1.txz: Added. kde/kjots-20200924_355b642-x86_64-1.txz: Added. kde/kjs-5.76.0-x86_64-1.txz: Added. kde/kjsembed-5.76.0-x86_64-1.txz: Added. kde/kjumpingcube-20.08.3-x86_64-1.txz: Upgraded. kde/kldap-20.08.3-x86_64-1.txz: Added. kde/kleopatra-20.08.3-x86_64-1.txz: Added. kde/klettres-4.14.3-x86_64-3.txz: Removed. kde/klickety-20.08.3-x86_64-1.txz: Upgraded. kde/klines-20.08.3-x86_64-1.txz: Upgraded. kde/kmag-20.08.3-x86_64-1.txz: Upgraded. kde/kmahjongg-20.08.3-x86_64-1.txz: Upgraded. kde/kmail-20.08.3-x86_64-1.txz: Added. kde/kmail-account-wizard-20.08.3-x86_64-1.txz: Added. kde/kmailtransport-20.08.3-x86_64-1.txz: Added. kde/kmbox-20.08.3-x86_64-1.txz: Added. kde/kmediaplayer-5.76.0-x86_64-1.txz: Added. kde/kmenuedit-5.20.4-x86_64-1.txz: Added. kde/kmime-20.08.3-x86_64-1.txz: Added. kde/kmines-20.08.3-x86_64-1.txz: Upgraded. kde/kmix-20.08.3-x86_64-1.txz: Upgraded. kde/kmousetool-20.08.3-x86_64-1.txz: Upgraded. kde/kmouth-20.08.3-x86_64-1.txz: Upgraded. kde/kmplot-20.08.3-x86_64-1.txz: Upgraded. kde/kmymoney-5.1.0-x86_64-1.txz: Added. kde/knavalbattle-20.08.3-x86_64-1.txz: Upgraded. kde/knetwalk-20.08.3-x86_64-1.txz: Upgraded. kde/knewstuff-5.76.0-x86_64-1.txz: Added. kde/knights-20.08.3-x86_64-1.txz: Added. kde/knotes-20.08.3-x86_64-1.txz: Added. kde/knotifications-5.76.0-x86_64-1.txz: Added. kde/knotifyconfig-5.76.0-x86_64-1.txz: Added. kde/kolf-20.08.3-x86_64-1.txz: Upgraded. kde/kollision-20.08.3-x86_64-1.txz: Upgraded. kde/kolourpaint-20.08.3-x86_64-1.txz: Upgraded. kde/kompare-20.08.3-x86_64-1.txz: Upgraded. kde/konqueror-20.08.3-x86_64-1.txz: Added. kde/konquest-20.08.3-x86_64-1.txz: Upgraded. kde/konsole-20.08.3-x86_64-1.txz: Upgraded. kde/kontact-20.08.3-x86_64-1.txz: Added. kde/kontactinterface-20.08.3-x86_64-1.txz: Added. kde/kopete-20.08.3-x86_64-1.txz: Upgraded. kde/korganizer-20.08.3-x86_64-1.txz: Added. kde/korundum-4.14.3-x86_64-8.txz: Removed. kde/kpackage-5.76.0-x86_64-1.txz: Added. kde/kparts-5.76.0-x86_64-1.txz: Added. kde/kpat-20.08.3-x86_64-1.txz: Upgraded. kde/kpeople-5.76.0-x86_64-1.txz: Added. kde/kpeoplevcard-0.1-x86_64-1.txz: Added. kde/kpimtextedit-20.08.3-x86_64-1.txz: Added. kde/kpkpass-20.08.3-x86_64-1.txz: Added. kde/kplayer-0.7.2-x86_64-3.txz: Removed. kde/kplotting-5.76.0-x86_64-1.txz: Added. kde/kpmcore-4.2.0-x86_64-1.txz: Added. kde/kppp-4.14.3-x86_64-3.txz: Removed. kde/kpty-5.76.0-x86_64-1.txz: Added. kde/kqtquickcharts-20.08.3-x86_64-1.txz: Upgraded. kde/kquickcharts-5.76.0-x86_64-1.txz: Added. kde/krdc-20.08.3-x86_64-1.txz: Upgraded. kde/kremotecontrol-4.14.3-x86_64-3.txz: Removed. kde/krename-5.0.1-x86_64-1.txz: Added. kde/kreversi-20.08.3-x86_64-1.txz: Upgraded. kde/krfb-20.08.3-x86_64-1.txz: Upgraded. kde/krita-4.4.1-x86_64-1.txz: Added. kde/kross-5.76.0-x86_64-1.txz: Added. kde/kross-interpreters-20.08.3-x86_64-1.txz: Upgraded. kde/kruler-20.08.3-x86_64-1.txz: Upgraded. kde/krunner-5.76.0-x86_64-1.txz: Added. kde/krusader-2.7.2-x86_64-1.txz: Added. kde/ksaneplugin-4.14.3-x86_64-3.txz: Removed. kde/kscreen-5.20.4-x86_64-1.txz: Upgraded. kde/kscreenlocker-5.20.4-x86_64-1.txz: Added. kde/kservice-5.76.0-x86_64-1.txz: Added. kde/kshisen-20.08.3-x86_64-1.txz: Upgraded. kde/ksirk-20.08.3-x86_64-1.txz: Upgraded. kde/ksmtp-20.08.3-x86_64-1.txz: Added. kde/ksnakeduel-20.08.3-x86_64-1.txz: Upgraded. kde/ksnapshot-4.14.3-x86_64-3.txz: Removed. kde/kspaceduel-20.08.3-x86_64-1.txz: Upgraded. kde/ksquares-20.08.3-x86_64-1.txz: Upgraded. kde/ksshaskpass-5.20.4-x86_64-1.txz: Added. kde/kstars-3.5.0-x86_64-1.txz: Upgraded. kde/ksudoku-20.08.3-x86_64-1.txz: Upgraded. kde/ksysguard-5.20.4-x86_64-1.txz: Added. kde/ksystemlog-20.08.3-x86_64-1.txz: Upgraded. kde/kteatime-20.08.3-x86_64-1.txz: Upgraded. kde/ktexteditor-5.76.0-x86_64-1.txz: Added. kde/ktextwidgets-5.76.0-x86_64-1.txz: Added. kde/ktimer-20.08.3-x86_64-1.txz: Upgraded. kde/ktimetracker-5.0.1-x86_64-1.txz: Added. kde/ktnef-20.08.3-x86_64-1.txz: Added. kde/ktorrent-5.2.0-x86_64-1.txz: Upgraded. kde/ktouch-20.08.3-x86_64-1.txz: Upgraded. kde/ktuberling-4.14.3-x86_64-3.txz: Removed. kde/kturtle-20.08.3-x86_64-1.txz: Upgraded. kde/ktux-4.14.3-x86_64-3.txz: Removed. kde/kubrick-20.08.3-x86_64-1.txz: Upgraded. kde/kunitconversion-5.76.0-x86_64-1.txz: Added. kde/kuser-4.14.3-x86_64-3.txz: Removed. kde/kwallet-5.76.0-x86_64-1.txz: Added. kde/kwallet-pam-5.20.4-x86_64-1.txz: Added. kde/kwalletmanager-20.08.3-x86_64-1.txz: Upgraded. kde/kwave-20.08.3-x86_64-1.txz: Added. kde/kwayland-5.76.0-x86_64-1.txz: Added. kde/kwayland-integration-5.20.4-x86_64-1.txz: Added. kde/kwayland-server-5.20.4-x86_64-1.txz: Added. kde/kwebkitpart-1.3.4-x86_64-3.txz: Removed. kde/kwidgetsaddons-5.76.0-x86_64-1.txz: Added. kde/kwin-5.20.4-x86_64-1.txz: Added. kde/kwindowsystem-5.76.0-x86_64-1.txz: Added. kde/kwordquiz-20.08.3-x86_64-1.txz: Upgraded. kde/kwrited-5.20.4-x86_64-1.txz: Added. kde/kxmlgui-5.76.0-x86_64-1.txz: Added. kde/kxmlrpcclient-5.76.0-x86_64-1.txz: Added. kde/latte-dock-0.9.11-x86_64-1.txz: Added. kde/libgravatar-20.08.3-x86_64-1.txz: Added. kde/libkcddb-20.08.3-x86_64-1.txz: Upgraded. kde/libkcompactdisc-20.08.3-x86_64-1.txz: Upgraded. kde/libkdcraw-20.08.3-x86_64-1.txz: Upgraded. kde/libkdeedu-4.14.3-x86_64-3.txz: Removed. kde/libkdegames-20.08.3-x86_64-1.txz: Upgraded. kde/libkdepim-20.08.3-x86_64-1.txz: Added. kde/libkeduvocdocument-20.08.3-x86_64-1.txz: Added. kde/libkexiv2-20.08.3-x86_64-1.txz: Upgraded. kde/libkgapi-20.08.3-x86_64-1.txz: Added. kde/libkgeomap-20.08.3-x86_64-1.txz: Added. kde/libkipi-20.08.3-x86_64-1.txz: Upgraded. kde/libkleo-20.08.3-x86_64-1.txz: Added. kde/libkmahjongg-20.08.3-x86_64-1.txz: Upgraded. kde/libkomparediff2-20.08.3-x86_64-1.txz: Upgraded. kde/libksane-20.08.3-x86_64-1.txz: Upgraded. kde/libkscreen-5.20.4-x86_64-1.txz: Upgraded. kde/libksieve-20.08.3-x86_64-1.txz: Added. kde/libksysguard-5.20.4-x86_64-1.txz: Added. kde/libktorrent-2.2.0-x86_64-1.txz: Upgraded. kde/libmm-qt-1.0.1-x86_64-3.txz: Removed. kde/libnm-qt-0.9.8.4-x86_64-1.txz: Removed. kde/lokalize-20.08.3-x86_64-1.txz: Upgraded. kde/lskat-20.08.3-x86_64-1.txz: Upgraded. kde/mailcommon-20.08.3-x86_64-1.txz: Added. kde/mailimporter-20.08.3-x86_64-1.txz: Added. kde/marble-20.08.3-x86_64-1.txz: Upgraded. kde/mbox-importer-20.08.3-x86_64-1.txz: Added. kde/messagelib-20.08.3-x86_64-1.txz: Added. kde/milou-5.20.4-x86_64-1.txz: Added. kde/minuet-20.08.3-x86_64-1.txz: Added. kde/modemmanager-qt-5.76.0-x86_64-1.txz: Added. kde/mplayerthumbs-4.14.3-x86_64-3.txz: Removed. kde/nepomuk-core-4.14.3-x86_64-5.txz: Removed. kde/nepomuk-widgets-4.14.3-x86_64-3.txz: Removed. kde/networkmanager-qt-5.76.0-x86_64-1.txz: Added. kde/okteta-0.26.4-x86_64-1.txz: Upgraded. kde/okular-20.08.3-x86_64-1.txz: Upgraded. kde/oxygen-5.20.4-x86_64-1.txz: Added. kde/oxygen-fonts-5.4.3-noarch-1.txz: Added. kde/oxygen-gtk2-1.4.6-x86_64-1.txz: Upgraded. kde/oxygen-icons-4.14.3-x86_64-3.txz: Removed. kde/oxygen-icons5-5.76.0-noarch-1.txz: Added. kde/pairs-4.14.3-x86_64-3.txz: Removed. kde/palapeli-20.08.3-x86_64-1.txz: Upgraded. kde/parley-20.08.3-x86_64-1.txz: Upgraded. kde/partitionmanager-4.2.0-x86_64-1.txz: Upgraded. kde/perlkde-4.14.3-x86_64-10.txz: Removed. kde/perlqt-4.14.3-x86_64-11.txz: Removed. kde/picmi-20.08.3-x86_64-1.txz: Upgraded. kde/pim-data-exporter-20.08.3-x86_64-1.txz: Added. kde/pim-sieve-editor-20.08.3-x86_64-1.txz: Added. kde/pimcommon-20.08.3-x86_64-1.txz: Added. kde/plasma-browser-integration-5.20.4-x86_64-1.txz: Added. kde/plasma-desktop-5.20.4-x86_64-1.txz: Added. kde/plasma-disks-5.20.4-x86_64-1.txz: Added. kde/plasma-framework-5.76.0-x86_64-1.txz: Added. kde/plasma-integration-5.20.4-x86_64-1.txz: Added. kde/plasma-nm-5.20.4-x86_64-1.txz: Upgraded. kde/plasma-pa-5.20.4-x86_64-1.txz: Added. kde/plasma-sdk-5.20.4-x86_64-1.txz: Added. kde/plasma-vault-5.20.4-x86_64-1.txz: Added. kde/plasma-wayland-protocols-1.1.1-x86_64-1.txz: Added. kde/plasma-workspace-5.20.4-x86_64-1.txz: Added. kde/plasma-workspace-wallpapers-5.20.4-x86_64-1.txz: Added. kde/polkit-kde-agent-1-5.20.4-x86_64-1.txz: Upgraded. kde/polkit-kde-kcmodules-1-001bdf7_20120111git-x86_64-3.txz: Removed. kde/powerdevil-5.20.4-x86_64-1.txz: Added. kde/poxml-20.08.3-x86_64-1.txz: Upgraded. kde/print-manager-20.08.3-x86_64-1.txz: Upgraded. kde/prison-5.76.0-x86_64-1.txz: Added. kde/pulseaudio-qt-1.2-x86_64-1.txz: Added. kde/purpose-5.76.0-x86_64-1.txz: Added. kde/pykde4-4.14.3-x86_64-11.txz: Removed. kde/qqc2-desktop-style-5.76.0-x86_64-1.txz: Added. kde/qtruby-4.14.3-x86_64-11.txz: Removed. kde/rocs-20.08.3-x86_64-1.txz: Upgraded. kde/sddm-0.19.0-x86_64-1.txz: Added. kde/sddm-kcm-5.20.4-x86_64-1.txz: Added. kde/skanlite-2.2.0-x86_64-1.txz: Upgraded. kde/smokegen-4.14.3-x86_64-3.txz: Removed. kde/smokekde-4.14.3-x86_64-3.txz: Removed. kde/smokeqt-4.14.3-x86_64-6.txz: Removed. kde/solid-5.76.0-x86_64-1.txz: Added. kde/sonnet-5.76.0-x86_64-1.txz: Added. kde/spectacle-20.08.3-x86_64-1.txz: Added. kde/step-20.08.3-x86_64-1.txz: Upgraded. kde/superkaramba-4.14.3-x86_64-4.txz: Removed. kde/svgpart-20.08.3-x86_64-1.txz: Upgraded. kde/sweeper-20.08.3-x86_64-1.txz: Upgraded. kde/syndication-5.76.0-x86_64-1.txz: Added. kde/syntax-highlighting-5.76.0-x86_64-1.txz: Added. kde/systemsettings-5.20.4-x86_64-1.txz: Added. kde/threadweaver-5.76.0-x86_64-1.txz: Added. kde/umbrello-20.08.3-x86_64-1.txz: Upgraded. kde/wacomtablet-20201030_417d9d9-x86_64-1.txz: Added. kde/wicd-kde-0.3.0_bcf27d8-x86_64-3.txz: Removed. kde/xdg-desktop-portal-kde-5.20.4-x86_64-1.txz: Added. kde/yakuake-20.08.3-x86_64-1.txz: Added. kde/zeroconf-ioslave-20.08.3-x86_64-1.txz: Upgraded. kdei/calligra-l10n-bs-2.9.11-noarch-1.txz: Removed. kdei/calligra-l10n-ca-2.9.11-noarch-1.txz: Removed. kdei/calligra-l10n-ca@valencia-2.9.11-noarch-1.txz: Removed. kdei/calligra-l10n-cs-2.9.11-noarch-1.txz: Removed. kdei/calligra-l10n-da-2.9.11-noarch-1.txz: Removed. kdei/calligra-l10n-de-2.9.11-noarch-1.txz: Removed. kdei/calligra-l10n-el-2.9.11-noarch-1.txz: Removed. kdei/calligra-l10n-en_GB-2.9.11-noarch-1.txz: Removed. kdei/calligra-l10n-es-2.9.11-noarch-1.txz: Removed. kdei/calligra-l10n-et-2.9.11-noarch-1.txz: Removed. kdei/calligra-l10n-fi-2.9.11-noarch-1.txz: Removed. kdei/calligra-l10n-fr-2.9.11-noarch-1.txz: Removed. kdei/calligra-l10n-gl-2.9.11-noarch-1.txz: Removed. kdei/calligra-l10n-hu-2.9.11-noarch-1.txz: Removed. kdei/calligra-l10n-it-2.9.11-noarch-1.txz: Removed. kdei/calligra-l10n-ja-2.9.11-noarch-1.txz: Removed. kdei/calligra-l10n-kk-2.9.11-noarch-1.txz: Removed. kdei/calligra-l10n-nb-2.9.11-noarch-1.txz: Removed. kdei/calligra-l10n-nl-2.9.11-noarch-1.txz: Removed. kdei/calligra-l10n-pl-2.9.11-noarch-1.txz: Removed. kdei/calligra-l10n-pt-2.9.11-noarch-1.txz: Removed. kdei/calligra-l10n-pt_BR-2.9.11-noarch-1.txz: Removed. kdei/calligra-l10n-ru-2.9.11-noarch-1.txz: Removed. kdei/calligra-l10n-sk-2.9.11-noarch-1.txz: Removed. kdei/calligra-l10n-sv-2.9.11-noarch-1.txz: Removed. kdei/calligra-l10n-tr-2.9.11-noarch-1.txz: Removed. kdei/calligra-l10n-uk-2.9.11-noarch-1.txz: Removed. kdei/calligra-l10n-zh_CN-2.9.11-noarch-1.txz: Removed. kdei/calligra-l10n-zh_TW-2.9.11-noarch-1.txz: Removed. kdei/kde-l10n-ar-4.14.3-noarch-1.txz: Removed. kdei/kde-l10n-bg-4.14.3-noarch-1.txz: Removed. kdei/kde-l10n-bs-4.14.3-noarch-1.txz: Removed. kdei/kde-l10n-ca-4.14.3-noarch-1.txz: Removed. kdei/kde-l10n-ca@valencia-4.14.3-noarch-1.txz: Removed. kdei/kde-l10n-cs-4.14.3-noarch-1.txz: Removed. kdei/kde-l10n-da-4.14.3-noarch-1.txz: Removed. kdei/kde-l10n-de-4.14.3-noarch-1.txz: Removed. kdei/kde-l10n-el-4.14.3-noarch-1.txz: Removed. kdei/kde-l10n-en_GB-4.14.3-noarch-1.txz: Removed. kdei/kde-l10n-es-4.14.3-noarch-1.txz: Removed. kdei/kde-l10n-et-4.14.3-noarch-1.txz: Removed. kdei/kde-l10n-eu-4.14.3-noarch-1.txz: Removed. kdei/kde-l10n-fa-4.14.3-noarch-1.txz: Removed. kdei/kde-l10n-fi-4.14.3-noarch-1.txz: Removed. kdei/kde-l10n-fr-4.14.3-noarch-1.txz: Removed. kdei/kde-l10n-ga-4.14.3-noarch-1.txz: Removed. kdei/kde-l10n-gl-4.14.3-noarch-1.txz: Removed. kdei/kde-l10n-he-4.14.3-noarch-1.txz: Removed. kdei/kde-l10n-hi-4.14.3-noarch-1.txz: Removed. kdei/kde-l10n-hr-4.14.3-noarch-1.txz: Removed. kdei/kde-l10n-hu-4.14.3-noarch-1.txz: Removed. kdei/kde-l10n-ia-4.14.3-noarch-1.txz: Removed. kdei/kde-l10n-id-4.14.3-noarch-1.txz: Removed. kdei/kde-l10n-is-4.14.3-noarch-1.txz: Removed. kdei/kde-l10n-it-4.14.3-noarch-1.txz: Removed. kdei/kde-l10n-ja-4.14.3-noarch-1.txz: Removed. kdei/kde-l10n-kk-4.14.3-noarch-1.txz: Removed. kdei/kde-l10n-km-4.14.3-noarch-1.txz: Removed. kdei/kde-l10n-ko-4.14.3-noarch-1.txz: Removed. kdei/kde-l10n-lt-4.14.3-noarch-1.txz: Removed. kdei/kde-l10n-lv-4.14.3-noarch-1.txz: Removed. kdei/kde-l10n-mr-4.14.3-noarch-1.txz: Removed. kdei/kde-l10n-nb-4.14.3-noarch-1.txz: Removed. kdei/kde-l10n-nds-4.14.3-noarch-1.txz: Removed. kdei/kde-l10n-nl-4.14.3-noarch-1.txz: Removed. kdei/kde-l10n-nn-4.14.3-noarch-1.txz: Removed. kdei/kde-l10n-pa-4.14.3-noarch-1.txz: Removed. kdei/kde-l10n-pl-4.14.3-noarch-1.txz: Removed. kdei/kde-l10n-pt-4.14.3-noarch-1.txz: Removed. kdei/kde-l10n-pt_BR-4.14.3-noarch-1.txz: Removed. kdei/kde-l10n-ro-4.14.3-noarch-1.txz: Removed. kdei/kde-l10n-ru-4.14.3-noarch-1.txz: Removed. kdei/kde-l10n-sk-4.14.3-noarch-1.txz: Removed. kdei/kde-l10n-sl-4.14.3-noarch-1.txz: Removed. kdei/kde-l10n-sr-4.14.3-noarch-1.txz: Removed. kdei/kde-l10n-sv-4.14.3-noarch-1.txz: Removed. kdei/kde-l10n-tr-4.14.3-noarch-1.txz: Removed. kdei/kde-l10n-ug-4.14.3-noarch-1.txz: Removed. kdei/kde-l10n-uk-4.14.3-noarch-1.txz: Removed. kdei/kde-l10n-wa-4.14.3-noarch-1.txz: Removed. kdei/kde-l10n-zh_CN-4.14.3-noarch-1.txz: Removed. kdei/kde-l10n-zh_TW-4.14.3-noarch-1.txz: Removed. l/ConsoleKit2-1.2.1-x86_64-4.txz: Removed. l/PyQt-4.12.3-x86_64-3.txz: Removed. l/QScintilla-2.11.6-x86_64-1.txz: Upgraded. Drop Qt4 support. l/QtAV-20200910_2a470d2a-x86_64-1.txz: Added. l/SDL2-2.0.12-x86_64-2.txz: Rebuilt. l/accountsservice-0.6.55-x86_64-1.txz: Added. l/automoc4-0.9.88-x86_64-2.txz: Removed. l/cfitsio-3.49-x86_64-1.txz: Added. l/cryfs-0.10.2-x86_64-1.txz: Added. l/cryptopp-8.2.0-x86_64-1.txz: Added. l/dotconf-1.3-x86_64-1.txz: Added. l/dvdauthor-0.7.2-x86_64-1.txz: Added. l/eigen3-3.3.9-x86_64-1.txz: Upgraded. l/frei0r-plugins-1.7.0-x86_64-1.txz: Added. l/fuse3-3.10.1-x86_64-1.txz: Upgraded. l/grantlee-5.2.0-x86_64-1.txz: Upgraded. l/gst-plugins-base-1.18.2-x86_64-1.txz: Upgraded. l/gst-plugins-good-1.18.2-x86_64-1.txz: Upgraded. l/gst-plugins-libav-1.18.2-x86_64-1.txz: Upgraded. l/gstreamer-1.18.2-x86_64-1.txz: Upgraded. l/gtk+3-3.24.24-x86_64-1.txz: Upgraded. l/gvfs-1.46.1-x86_64-2.txz: Rebuilt. Recompiled using -Dlogind=true. l/kdsoap-1.9.1-x86_64-1.txz: Added. l/lensfun-0.3.95-x86_64-1.txz: Added. l/libappindicator-12.10.0-x86_64-1.txz: Added. l/libbluedevil-2.1-x86_64-2.txz: Removed. l/libburn-1.5.2.pl01-x86_64-1.txz: Added. l/libdbusmenu-16.04.0-x86_64-1.txz: Added. l/libdbusmenu-qt-0.9.3+16.04.20160218-x86_64-1.txz: Upgraded. l/libdmtx-0.7.5-x86_64-1.txz: Added. l/libindicator-12.10.1-x86_64-1.txz: Added. l/liblastfm-1.1.0-x86_64-1.txz: Removed. l/libqalculate-3.14.0-x86_64-1.txz: Added. l/mlt-6.22.1-x86_64-1.txz: Added. l/opencv-4.5.0-x86_64-1.txz: Added. l/phonon-4.11.1-x86_64-1.txz: Upgraded. l/phonon-backend-gstreamer-4.10.0-x86_64-1.txz: Added. l/phonon-gstreamer-4.8.2-x86_64-2.txz: Removed. l/pipewire-0.3.13-x86_64-1.txz: Added. l/polkit-0.118-x86_64-2.txz: Rebuilt. l/polkit-qt-1-0.113.0-x86_64-1.txz: Upgraded. l/poppler-20.12.1-x86_64-1.txz: Upgraded. l/python-certifi-2020.12.5-x86_64-1.txz: Upgraded. l/python-pygments-2.7.3-x86_64-1.txz: Upgraded. l/qca-2.3.1-x86_64-1.txz: Upgraded. l/qca-qt5-2.3.1-x86_64-1.txz: Removed. l/qimageblitz-0.0.6-x86_64-2.txz: Removed. l/qjson-0.9.0-x86_64-1.txz: Removed. l/qrencode-4.1.1-x86_64-1.txz: Added. l/qt-4.8.7-x86_64-17.txz: Removed. l/qt-gstreamer-1.2.0-x86_64-2.txz: Removed. l/qt5-5.15.2-x86_64-2.txz: Rebuilt. l/qtkeychain-0.11.1-x86_64-1.txz: Added. l/qtscriptgenerator-0.2.0-x86_64-3.txz: Removed. l/quazip-1.1-x86_64-1.txz: Added. l/raptor2-2.0.15-x86_64-10.txz: Removed. l/rasqal-0.9.33-x86_64-3.txz: Removed. l/readline-8.1.000-x86_64-1.txz: Upgraded. l/redland-1.0.17-x86_64-6.txz: Removed. l/rttr-0.9.6-x86_64-1.txz: Added. l/soprano-2.9.4-x86_64-3.txz: Removed. l/speech-dispatcher-0.10.2-x86_64-1.txz: Added. l/strigi-0.7.8-x86_64-4.txz: Removed. l/vid.stab-20200916_e851e7b-x86_64-1.txz: Added. l/xapian-core-1.4.17-x86_64-2.txz: Rebuilt. n/NetworkManager-1.28.0-x86_64-1.txz: Upgraded. Drop ConsoleKit2 support and add elogind support. Thanks to Robby Workman. x/OpenCC-1.1.1-x86_64-1.txz: Added. x/cldr-emoji-annotation-37.0_13.0_0_2-noarch-1.txz: Added. x/fcitx-4.2.9.8-x86_64-1.txz: Added. Don't build Qt4 components. x/fcitx-anthy-0.2.3-x86_64-1.txz: Added. x/fcitx-configtool-0.4.9-x86_64-1.txz: Added. x/fcitx-hangul-0.3.1-x86_64-1.txz: Added. x/fcitx-kkc-0.1.4-x86_64-1.txz: Added. x/fcitx-libpinyin-0.5.3-x86_64-1.txz: Added. x/fcitx-m17n-0.2.4-x86_64-1.txz: Added. x/fcitx-qt5-1.2.5-x86_64-1.txz: Added. x/fcitx-sayura-0.1.2-x86_64-1.txz: Added. x/fcitx-table-extra-0.3.8-x86_64-1.txz: Added. x/fcitx-table-other-0.2.4-x86_64-1.txz: Added. x/fcitx-unikey-0.2.7-x86_64-1.txz: Added. x/ibus-1.5.23-x86_64-1.txz: Added. x/ibus-anthy-1.5.11-x86_64-1.txz: Added. x/ibus-hangul-1.5.4-x86_64-1.txz: Added. x/ibus-kkc-1.5.22-x86_64-1.txz: Added. x/ibus-libpinyin-1.11.1-x86_64-1.txz: Added. x/ibus-m17n-1.4.3-x86_64-1.txz: Added. x/ibus-table-1.12.1-x86_64-1.txz: Added. x/ibus-unikey-0.6.1-x86_64-1.txz: Added. x/libgee-0.20.1-x86_64-1.txz: Added. x/libkkc-0.3.5-x86_64-1.txz: Added. x/libkkc-data-0.2.7-x86_64-1.txz: Added. x/libpinyin-2.3.0-x86_64-1.txz: Added. x/marisa-0.2.4-x86_64-1.txz: Added. x/motif-2.3.8-x86_64-3.txz: Rebuilt. Added xinitrc.mwm. Thanks to ziprun. x/scim-1.4.18-x86_64-1.txz: Removed. x/scim-anthy-1.2.7-x86_64-2.txz: Removed. x/scim-hangul-0.4.0-x86_64-2.txz: Removed. x/scim-input-pad-0.1.3.1-x86_64-2.txz: Removed. x/scim-m17n-0.2.3-x86_64-2.txz: Removed. x/scim-pinyin-0.5.92-x86_64-2.txz: Removed. x/scim-tables-0.5.14.1-x86_64-2.txz: Removed. x/skkdic-20200128-noarch-1.txz: Added. x/xdm-1.1.11-x86_64-11.txz: Rebuilt. Drop ConsoleKit2 patch, fix pam.d/xdm file. Thanks to Robby Workman. xap/seamonkey-2.53.5.1-x86_64-1.txz: Upgraded. This update contains security fixes and improvements. For more information, see: https://www.seamonkey-project.org/releases/seamonkey2.53.5.1 (* Security fix *) xap/vim-gvim-8.2.2105-x86_64-1.txz: Upgraded. xap/xine-lib-1.2.11-x86_64-1.txz: Upgraded. xfce/Greybird-3.22.12-noarch-1.txz: Added. xfce/elementary-xfce-0.15.1-x86_64-1.txz: Added. xfce/exo-0.12.11-x86_64-2.txz: Rebuilt. xfce/garcon-0.6.4-x86_64-2.txz: Rebuilt. xfce/gtk-xfce-engine-2.10.1-x86_64-3.txz: Removed. xfce/libxfce4ui-4.14.1-x86_64-1.txz: Upgraded. xfce/libxfce4util-4.14.0-x86_64-1.txz: Upgraded. xfce/mousepad-0.4.2-x86_64-1.txz: Added. xfce/orage-4.12.1-x86_64-5.txz: Removed. xfce/thunar-1.8.16-x86_64-2.txz: Rebuilt. xfce/thunar-volman-0.9.5-x86_64-2.txz: Rebuilt. xfce/tumbler-0.2.9-x86_64-2.txz: Rebuilt. xfce/xfce4-appfinder-4.14.0-x86_64-1.txz: Upgraded. xfce/xfce4-clipman-plugin-1.6.1-x86_64-1.txz: Upgraded. xfce/xfce4-dev-tools-4.14.0-x86_64-1.txz: Upgraded. xfce/xfce4-notifyd-0.6.2-x86_64-1.txz: Upgraded. xfce/xfce4-panel-4.14.4-x86_64-1.txz: Upgraded. xfce/xfce4-panel-profiles-1.0.10-x86_64-1.txz: Added. xfce/xfce4-power-manager-1.6.6-x86_64-1.txz: Upgraded. xfce/xfce4-pulseaudio-plugin-0.4.3-x86_64-1.txz: Upgraded. xfce/xfce4-screensaver-0.1.11-x86_64-1.txz: Added. xfce/xfce4-screenshooter-1.9.7-x86_64-1.txz: Upgraded. xfce/xfce4-session-4.14.2-x86_64-1.txz: Upgraded. xfce/xfce4-settings-4.14.3-x86_64-1.txz: Upgraded. xfce/xfce4-systemload-plugin-1.2.3-x86_64-2.txz: Rebuilt. xfce/xfce4-taskmanager-1.2.3-x86_64-1.txz: Upgraded. xfce/xfce4-terminal-0.8.9.2-x86_64-1.txz: Upgraded. xfce/xfce4-weather-plugin-0.10.2-x86_64-1.txz: Upgraded. xfce/xfce4-whiskermenu-plugin-2.4.6-x86_64-1.txz: Added. xfce/xfconf-4.14.4-x86_64-1.txz: Upgraded. xfce/xfdesktop-4.14.3-x86_64-1.txz: Upgraded. xfce/xfwm4-4.14.6-x86_64-1.txz: Upgraded.
Diffstat (limited to 'source/l/qt')
-rw-r--r--source/l/qt/Qt.pc16
-rw-r--r--source/l/qt/README9
-rw-r--r--source/l/qt/doinst.sh10
-rw-r--r--source/l/qt/patches/qt-4.8-disable-sslv3.patch56
-rw-r--r--source/l/qt/patches/qt-4.8-poll.patch812
-rw-r--r--source/l/qt/patches/qt-aarch64.patch514
-rw-r--r--source/l/qt/patches/qt-cupsEnumDests.patch238
-rw-r--r--source/l/qt/patches/qt-everywhere-opensource-src-4.6.2-cups.patch84
-rw-r--r--source/l/qt/patches/qt-everywhere-opensource-src-4.6.3-glib_eventloop_nullcheck.patch69
-rw-r--r--source/l/qt/patches/qt-everywhere-opensource-src-4.8.0-QTBUG-22037.patch41
-rw-r--r--source/l/qt/patches/qt-everywhere-opensource-src-4.8.0-s390-atomic.patch20
-rw-r--r--source/l/qt/patches/qt-everywhere-opensource-src-4.8.0-tp-multilib-optflags.patch36
-rw-r--r--source/l/qt/patches/qt-everywhere-opensource-src-4.8.0-tp-qtreeview-kpackagekit-crash.patch12
-rw-r--r--source/l/qt/patches/qt-everywhere-opensource-src-4.8.1-linguist_qmake-qt4.patch27
-rw-r--r--source/l/qt/patches/qt-everywhere-opensource-src-4.8.1-qt3support_debuginfo.patch10
-rw-r--r--source/l/qt/patches/qt-everywhere-opensource-src-4.8.2--assistant-crash.patch13
-rw-r--r--source/l/qt/patches/qt-everywhere-opensource-src-4.8.3-icu_no_debug.patch23
-rw-r--r--source/l/qt/patches/qt-everywhere-opensource-src-4.8.3-no_Werror.patch12
-rw-r--r--source/l/qt/patches/qt-everywhere-opensource-src-4.8.3-qdbusconnection_no_debug.patch14
-rw-r--r--source/l/qt/patches/qt-everywhere-opensource-src-4.8.4-qmake_pkgconfig_requires_private.patch16
-rw-r--r--source/l/qt/patches/qt-everywhere-opensource-src-4.8.5-QTBUG-14467.patch24
-rw-r--r--source/l/qt/patches/qt-everywhere-opensource-src-4.8.5-QTBUG-21900.patch84
-rw-r--r--source/l/qt/patches/qt-everywhere-opensource-src-4.8.5-QTBUG-35459.patch12
-rw-r--r--source/l/qt/patches/qt-everywhere-opensource-src-4.8.5-QTBUG-4862.patch29
-rw-r--r--source/l/qt/patches/qt-everywhere-opensource-src-4.8.5-mysql_config.patch19
-rw-r--r--source/l/qt/patches/qt-everywhere-opensource-src-4.8.5-qgtkstyle_disable_gtk_theme_check.patch22
-rw-r--r--source/l/qt/patches/qt-everywhere-opensource-src-4.8.5-qt_plugin_path.patch19
-rw-r--r--source/l/qt/patches/qt-everywhere-opensource-src-4.8.5-tds_no_strict_aliasing.patch12
-rw-r--r--source/l/qt/patches/qt-everywhere-opensource-src-4.8.5-uic_multilib.patch28
-rw-r--r--source/l/qt/patches/qt-everywhere-opensource-src-4.8.5-webcore_debuginfo.patch16
-rw-r--r--source/l/qt/patches/qt-everywhere-opensource-src-4.8.6-QTBUG-22829.patch17
-rw-r--r--source/l/qt/patches/qt-everywhere-opensource-src-4.8.6-QTBUG-34614.patch94
-rw-r--r--source/l/qt/patches/qt-everywhere-opensource-src-4.8.6-QTBUG-37380.patch63
-rw-r--r--source/l/qt/patches/qt-everywhere-opensource-src-4.8.6-QTBUG-38585.patch12
-rw-r--r--source/l/qt/patches/qt-everywhere-opensource-src-4.8.6-s390.patch31
-rw-r--r--source/l/qt/patches/qt-everywhere-opensource-src-4.8.6-system-clucene.patch351
-rw-r--r--source/l/qt/patches/qt-everywhere-opensource-src-4.8.6-systemtrayicon.patch1456
-rw-r--r--source/l/qt/patches/qt-everywhere-opensource-src-4.8.7-QT_VERSION_CHECK.patch12
-rw-r--r--source/l/qt/patches/qt-everywhere-opensource-src-4.8.7-alsa-1.1.patch137
-rw-r--r--source/l/qt/patches/qt-everywhere-opensource-src-4.8.7-crash-in-qppmhandler.patch12
-rw-r--r--source/l/qt/patches/qt-everywhere-opensource-src-4.8.7-firebird.patch45
-rw-r--r--source/l/qt/patches/qt-everywhere-opensource-src-4.8.7-gcc6.patch35
-rw-r--r--source/l/qt/patches/qt-everywhere-opensource-src-4.8.7-gcc8_qtscript.patch13
-rw-r--r--source/l/qt/patches/qt-everywhere-opensource-src-4.8.7-icu59.patch28
-rw-r--r--source/l/qt/patches/qt-everywhere-opensource-src-4.8.7-mariadb.patch28
-rw-r--r--source/l/qt/patches/qt-everywhere-opensource-src-4.8.7-mips64.patch13
-rw-r--r--source/l/qt/patches/qt-everywhere-opensource-src-4.8.7-openssl-1.1.patch694
-rw-r--r--source/l/qt/patches/qt-everywhere-opensource-src-4.8.7-qforeach.patch40
-rw-r--r--source/l/qt/patches/qt-everywhere-opensource-src-4.8.7-qmake_LFLAGS.patch12
-rw-r--r--source/l/qt/patches/qt-prefer_adwaita_on_gnome.patch17
-rw-r--r--source/l/qt/patches/qt-x11-opensource-src-4.5.0-fix-qatomic-inline-asm.patch50
-rw-r--r--source/l/qt/patches/qt-x11-opensource-src-4.5.1-enable_ft_lcdfilter.patch12
-rw-r--r--source/l/qt/profile.d/qt4.csh22
-rw-r--r--source/l/qt/profile.d/qt4.sh23
-rwxr-xr-xsource/l/qt/qt-nowebkit.SlackBuild362
-rwxr-xr-xsource/l/qt/qt.SlackBuild113
-rw-r--r--source/l/qt/qtwebkit/doinst.sh5
-rwxr-xr-xsource/l/qt/qtwebkit/qtwebkit.SlackBuild166
-rw-r--r--source/l/qt/qtwebkit/qtwebkit.putByIndexBeyondVectorLengthWithArrayStorage.diff13
-rw-r--r--source/l/qt/qtwebkit/qtwebkit.url1
-rw-r--r--source/l/qt/qtwebkit/slack-desc19
-rw-r--r--source/l/qt/slack-desc19
62 files changed, 0 insertions, 6212 deletions
diff --git a/source/l/qt/Qt.pc b/source/l/qt/Qt.pc
deleted file mode 100644
index 29d1131c6..000000000
--- a/source/l/qt/Qt.pc
+++ /dev/null
@@ -1,16 +0,0 @@
-prefix=/usr/lib${LIBDIRSUFFIX}/qt
-bindir=${prefix}/bin
-datadir=${prefix}
-docdir=${prefix}/doc
-headerdir=${prefix}/include
-importdir=${prefix}/imports
-libdir=${prefix}/lib
-moc=${bindir}/moc
-plugindir=${prefix}/plugins
-qmake=${bindir}/qmake
-sysconfdir=/etc
-translationdir=${prefix}/translations
-
-Name: Qt
-Description: Qt Configuration
-Version: 4.8.6
diff --git a/source/l/qt/README b/source/l/qt/README
deleted file mode 100644
index 9bbcb3467..000000000
--- a/source/l/qt/README
+++ /dev/null
@@ -1,9 +0,0 @@
-qt-<version>_<git revision> is actually KDE's version of Qt from git
-that includes important patches not yet present in mainline Qt.
-
-The recommended version of Qt for KDE may be obtained from the
-repository with this command:
-
-git clone git://gitorious.org/+kde-developers/qt/kde-qt.git
-
-(see the SlackBuild for more details)
diff --git a/source/l/qt/doinst.sh b/source/l/qt/doinst.sh
deleted file mode 100644
index b9a2c53ba..000000000
--- a/source/l/qt/doinst.sh
+++ /dev/null
@@ -1,10 +0,0 @@
-
-if [ -x sbin/ldconfig ]; then
- chroot . /sbin/ldconfig 2> /dev/null
-fi
-
-if [ -x /usr/bin/update-desktop-database ]; then
- /usr/bin/update-desktop-database /usr/share/applications >/dev/null 2>&1
-fi
-
-
diff --git a/source/l/qt/patches/qt-4.8-disable-sslv3.patch b/source/l/qt/patches/qt-4.8-disable-sslv3.patch
deleted file mode 100644
index c9b1996ec..000000000
--- a/source/l/qt/patches/qt-4.8-disable-sslv3.patch
+++ /dev/null
@@ -1,56 +0,0 @@
---- ./src/network/ssl/qsslsocket_openssl_symbols.cpp.orig 2019-11-09 12:55:26.646752874 -0600
-+++ ./src/network/ssl/qsslsocket_openssl_symbols.cpp 2019-11-09 12:58:22.032754751 -0600
-@@ -253,7 +253,9 @@
- #ifndef OPENSSL_NO_SSL2
- DEFINEFUNC(const SSL_METHOD *, SSLv2_client_method, DUMMYARG, DUMMYARG, return 0, return)
- #endif
-+#ifndef OPENSSL_NO_SSL3
- DEFINEFUNC(const SSL_METHOD *, SSLv3_client_method, DUMMYARG, DUMMYARG, return 0, return)
-+#endif
- #if OPENSSL_VERSION_NUMBER < 0x10100000L
- DEFINEFUNC(const SSL_METHOD *, SSLv23_client_method, DUMMYARG, DUMMYARG, return 0, return)
- #else
-@@ -263,7 +265,9 @@
- #ifndef OPENSSL_NO_SSL2
- DEFINEFUNC(const SSL_METHOD *, SSLv2_server_method, DUMMYARG, DUMMYARG, return 0, return)
- #endif
-+#ifndef OPENSSL_NO_SSL3
- DEFINEFUNC(const SSL_METHOD *, SSLv3_server_method, DUMMYARG, DUMMYARG, return 0, return)
-+#endif
- #if OPENSSL_VERSION_NUMBER < 0x10100000L
- DEFINEFUNC(const SSL_METHOD *, SSLv23_server_method, DUMMYARG, DUMMYARG, return 0, return)
- #else
-@@ -272,7 +276,9 @@
- DEFINEFUNC(const SSL_METHOD *, TLSv1_server_method, DUMMYARG, DUMMYARG, return 0, return)
- #else
- DEFINEFUNC(SSL_METHOD *, SSLv2_client_method, DUMMYARG, DUMMYARG, return 0, return)
-+#ifndef OPENSSL_NO_SSL3
- DEFINEFUNC(SSL_METHOD *, SSLv3_client_method, DUMMYARG, DUMMYARG, return 0, return)
-+#endif
- DEFINEFUNC(SSL_METHOD *, SSLv23_client_method, DUMMYARG, DUMMYARG, return 0, return)
- DEFINEFUNC(SSL_METHOD *, TLSv1_client_method, DUMMYARG, DUMMYARG, return 0, return)
- DEFINEFUNC(SSL_METHOD *, SSLv2_server_method, DUMMYARG, DUMMYARG, return 0, return)
-@@ -756,7 +762,9 @@
- RESOLVEFUNC(SSL_shutdown, 173, libs.first )
- RESOLVEFUNC(SSL_write, 188, libs.first )
- RESOLVEFUNC(SSLv2_client_method, 192, libs.first )
-+#ifndef OPENSSL_NO_SSL3
- RESOLVEFUNC(SSLv3_client_method, 195, libs.first )
-+#endif
- RESOLVEFUNC(SSLv23_client_method, 189, libs.first )
- RESOLVEFUNC(TLSv1_client_method, 198, libs.first )
- RESOLVEFUNC(SSLv2_server_method, 194, libs.first )
---- ./src/network/ssl/qsslsocket_openssl.cpp.orig 2019-11-09 12:55:01.605752606 -0600
-+++ ./src/network/ssl/qsslsocket_openssl.cpp 2019-11-09 12:55:26.632752874 -0600
-@@ -273,7 +273,11 @@
- #endif
- break;
- case QSsl::SslV3:
-+#ifndef OPENSSL_NO_SSL3
- ctx = q_SSL_CTX_new(client ? q_SSLv3_client_method() : q_SSLv3_server_method());
-+#else
-+ ctx = 0; // SSL 3 not supported by the system, but chosen deliberately -> error
-+#endif
- break;
- case QSsl::SecureProtocols: // SslV2 will be disabled below
- case QSsl::TlsV1SslV3: // SslV2 will be disabled below
diff --git a/source/l/qt/patches/qt-4.8-poll.patch b/source/l/qt/patches/qt-4.8-poll.patch
deleted file mode 100644
index aed363c66..000000000
--- a/source/l/qt/patches/qt-4.8-poll.patch
+++ /dev/null
@@ -1,812 +0,0 @@
-diff -up qt-everywhere-opensource-src-4.8.6/src/corelib/io/qprocess_unix.cpp.poll qt-everywhere-opensource-src-4.8.6/src/corelib/io/qprocess_unix.cpp
---- qt-everywhere-opensource-src-4.8.6/src/corelib/io/qprocess_unix.cpp.poll 2014-03-30 15:36:48.000000000 -0500
-+++ qt-everywhere-opensource-src-4.8.6/src/corelib/io/qprocess_unix.cpp 2014-03-31 18:04:05.958260978 -0500
-@@ -158,13 +158,6 @@ static void qt_sa_sigchld_sigaction(int
- }
- }
-
--static inline void add_fd(int &nfds, int fd, fd_set *fdset)
--{
-- FD_SET(fd, fdset);
-- if ((fd) > nfds)
-- nfds = fd;
--}
--
- struct QProcessInfo {
- QProcess *process;
- int deathPipe;
-@@ -256,9 +249,9 @@ QProcessManager::~QProcessManager()
- void QProcessManager::run()
- {
- forever {
-- fd_set readset;
-- FD_ZERO(&readset);
-- FD_SET(qt_qprocess_deadChild_pipe[0], &readset);
-+ pollfd fd;
-+ fd.fd = qt_qprocess_deadChild_pipe[0];
-+ fd.events = POLLIN;
-
- #if defined (QPROCESS_DEBUG)
- qDebug() << "QProcessManager::run() waiting for children to die";
-@@ -267,8 +260,8 @@ void QProcessManager::run()
- // block forever, or until activity is detected on the dead child
- // pipe. the only other peers are the SIGCHLD signal handler, and the
- // QProcessManager destructor.
-- int nselect = select(qt_qprocess_deadChild_pipe[0] + 1, &readset, 0, 0, 0);
-- if (nselect < 0) {
-+ int ret = qt_safe_poll(&fd, 1, -1, /* retry_eintr */ false);
-+ if (ret < 0) {
- if (errno == EINTR)
- continue;
- break;
-@@ -1027,17 +1020,6 @@ void QProcessPrivate::killProcess()
- ::kill(pid_t(pid), SIGKILL);
- }
-
--static int select_msecs(int nfds, fd_set *fdread, fd_set *fdwrite, int timeout)
--{
-- if (timeout < 0)
-- return qt_safe_select(nfds, fdread, fdwrite, 0, 0);
--
-- struct timeval tv;
-- tv.tv_sec = timeout / 1000;
-- tv.tv_usec = (timeout % 1000) * 1000;
-- return qt_safe_select(nfds, fdread, fdwrite, 0, &tv);
--}
--
- /*
- Returns the difference between msecs and elapsed. If msecs is -1,
- however, -1 is returned.
-@@ -1060,10 +1042,10 @@ bool QProcessPrivate::waitForStarted(int
- childStartedPipe[0]);
- #endif
-
-- fd_set fds;
-- FD_ZERO(&fds);
-- FD_SET(childStartedPipe[0], &fds);
-- if (select_msecs(childStartedPipe[0] + 1, &fds, 0, msecs) == 0) {
-+ pollfd fd;
-+ fd.fd = childStartedPipe[0];
-+ fd.events = POLLIN;
-+ if (qt_safe_poll(&fd, 1, msecs) == 0) {
- processError = QProcess::Timedout;
- q->setErrorString(QProcess::tr("Process operation timed out"));
- #if defined (QPROCESS_DEBUG)
-@@ -1079,6 +1061,47 @@ bool QProcessPrivate::waitForStarted(int
- return startedEmitted;
- }
-
-+class QProcessFDSet {
-+ pollfd fds[5];
-+
-+ static size_t size()
-+ {
-+ return sizeof(fds)/sizeof(fds[0]);
-+ }
-+
-+public:
-+ QProcessFDSet(QProcessPrivate &proc)
-+ {
-+ for (size_t i = 0; i < size(); ++i) {
-+ fds[i].fd = -1;
-+ fds[i].events = POLLIN;
-+ }
-+ death().fd = proc.deathPipe[0];
-+
-+ if (proc.processState == QProcess::Starting)
-+ started().fd = proc.childStartedPipe[0];
-+
-+ stdout().fd = proc.stdoutChannel.pipe[0];
-+ stderr().fd = proc.stderrChannel.pipe[0];
-+
-+ if (!proc.writeBuffer.isEmpty()) {
-+ stdin().fd = proc.stdinChannel.pipe[1];
-+ stdin().events = POLLOUT;
-+ }
-+ }
-+
-+ int poll(int timeout)
-+ {
-+ return qt_safe_poll(fds, size(), timeout);
-+ }
-+
-+ pollfd &death() { return fds[0]; }
-+ pollfd &started() { return fds[1]; }
-+ pollfd &stdout() { return fds[2]; }
-+ pollfd &stderr() { return fds[3]; }
-+ pollfd &stdin() { return fds[4]; }
-+};
-+
- bool QProcessPrivate::waitForReadyRead(int msecs)
- {
- Q_Q(QProcess);
-@@ -1090,28 +1113,9 @@ bool QProcessPrivate::waitForReadyRead(i
- stopWatch.start();
-
- forever {
-- fd_set fdread;
-- fd_set fdwrite;
--
-- FD_ZERO(&fdread);
-- FD_ZERO(&fdwrite);
--
-- int nfds = deathPipe[0];
-- FD_SET(deathPipe[0], &fdread);
--
-- if (processState == QProcess::Starting)
-- add_fd(nfds, childStartedPipe[0], &fdread);
--
-- if (stdoutChannel.pipe[0] != -1)
-- add_fd(nfds, stdoutChannel.pipe[0], &fdread);
-- if (stderrChannel.pipe[0] != -1)
-- add_fd(nfds, stderrChannel.pipe[0], &fdread);
--
-- if (!writeBuffer.isEmpty() && stdinChannel.pipe[1] != -1)
-- add_fd(nfds, stdinChannel.pipe[1], &fdwrite);
--
-+ QProcessFDSet fdset(*this);
- int timeout = qt_timeout_value(msecs, stopWatch.elapsed());
-- int ret = select_msecs(nfds + 1, &fdread, &fdwrite, timeout);
-+ int ret = fdset.poll(timeout);
- if (ret < 0) {
- break;
- }
-@@ -1121,18 +1125,18 @@ bool QProcessPrivate::waitForReadyRead(i
- return false;
- }
-
-- if (childStartedPipe[0] != -1 && FD_ISSET(childStartedPipe[0], &fdread)) {
-+ if (qt_readable(fdset.started())) {
- if (!_q_startupNotification())
- return false;
- }
-
- bool readyReadEmitted = false;
-- if (stdoutChannel.pipe[0] != -1 && FD_ISSET(stdoutChannel.pipe[0], &fdread)) {
-+ if (qt_readable(fdset.stdout())) {
- bool canRead = _q_canReadStandardOutput();
- if (processChannel == QProcess::StandardOutput && canRead)
- readyReadEmitted = true;
- }
-- if (stderrChannel.pipe[0] != -1 && FD_ISSET(stderrChannel.pipe[0], &fdread)) {
-+ if (qt_readable(fdset.stderr())) {
- bool canRead = _q_canReadStandardError();
- if (processChannel == QProcess::StandardError && canRead)
- readyReadEmitted = true;
-@@ -1140,13 +1144,13 @@ bool QProcessPrivate::waitForReadyRead(i
- if (readyReadEmitted)
- return true;
-
-- if (stdinChannel.pipe[1] != -1 && FD_ISSET(stdinChannel.pipe[1], &fdwrite))
-+ if (qt_writable(fdset.stdin()))
- _q_canWrite();
-
-- if (deathPipe[0] == -1 || FD_ISSET(deathPipe[0], &fdread)) {
-+ if (qt_readable(fdset.death())) {
- if (_q_processDied())
- return false;
-- }
-+ }
- }
- return false;
- }
-@@ -1162,29 +1166,9 @@ bool QProcessPrivate::waitForBytesWritte
- stopWatch.start();
-
- while (!writeBuffer.isEmpty()) {
-- fd_set fdread;
-- fd_set fdwrite;
--
-- FD_ZERO(&fdread);
-- FD_ZERO(&fdwrite);
--
-- int nfds = deathPipe[0];
-- FD_SET(deathPipe[0], &fdread);
--
-- if (processState == QProcess::Starting)
-- add_fd(nfds, childStartedPipe[0], &fdread);
--
-- if (stdoutChannel.pipe[0] != -1)
-- add_fd(nfds, stdoutChannel.pipe[0], &fdread);
-- if (stderrChannel.pipe[0] != -1)
-- add_fd(nfds, stderrChannel.pipe[0], &fdread);
--
--
-- if (!writeBuffer.isEmpty() && stdinChannel.pipe[1] != -1)
-- add_fd(nfds, stdinChannel.pipe[1], &fdwrite);
--
-+ QProcessFDSet fdset(*this);
- int timeout = qt_timeout_value(msecs, stopWatch.elapsed());
-- int ret = select_msecs(nfds + 1, &fdread, &fdwrite, timeout);
-+ int ret = fdset.poll(timeout);
- if (ret < 0) {
- break;
- }
-@@ -1195,24 +1179,24 @@ bool QProcessPrivate::waitForBytesWritte
- return false;
- }
-
-- if (childStartedPipe[0] != -1 && FD_ISSET(childStartedPipe[0], &fdread)) {
-+ if (qt_readable(fdset.started())) {
- if (!_q_startupNotification())
- return false;
- }
-
-- if (stdinChannel.pipe[1] != -1 && FD_ISSET(stdinChannel.pipe[1], &fdwrite))
-+ if (qt_writable(fdset.stdin()))
- return _q_canWrite();
-
-- if (stdoutChannel.pipe[0] != -1 && FD_ISSET(stdoutChannel.pipe[0], &fdread))
-+ if (qt_readable(fdset.stdout()))
- _q_canReadStandardOutput();
-
-- if (stderrChannel.pipe[0] != -1 && FD_ISSET(stderrChannel.pipe[0], &fdread))
-+ if (qt_readable(fdset.stderr()))
- _q_canReadStandardError();
-
-- if (deathPipe[0] == -1 || FD_ISSET(deathPipe[0], &fdread)) {
-- if (_q_processDied())
-- return false;
-- }
-+ if (qt_readable(fdset.death())) {
-+ if (_q_processDied())
-+ return false;
-+ }
- }
-
- return false;
-@@ -1229,29 +1213,9 @@ bool QProcessPrivate::waitForFinished(in
- stopWatch.start();
-
- forever {
-- fd_set fdread;
-- fd_set fdwrite;
-- int nfds = -1;
--
-- FD_ZERO(&fdread);
-- FD_ZERO(&fdwrite);
--
-- if (processState == QProcess::Starting)
-- add_fd(nfds, childStartedPipe[0], &fdread);
--
-- if (stdoutChannel.pipe[0] != -1)
-- add_fd(nfds, stdoutChannel.pipe[0], &fdread);
-- if (stderrChannel.pipe[0] != -1)
-- add_fd(nfds, stderrChannel.pipe[0], &fdread);
--
-- if (processState == QProcess::Running)
-- add_fd(nfds, deathPipe[0], &fdread);
--
-- if (!writeBuffer.isEmpty() && stdinChannel.pipe[1] != -1)
-- add_fd(nfds, stdinChannel.pipe[1], &fdwrite);
--
-+ QProcessFDSet fdset(*this);
- int timeout = qt_timeout_value(msecs, stopWatch.elapsed());
-- int ret = select_msecs(nfds + 1, &fdread, &fdwrite, timeout);
-+ int ret = fdset.poll(timeout);
- if (ret < 0) {
- break;
- }
-@@ -1261,20 +1225,20 @@ bool QProcessPrivate::waitForFinished(in
- return false;
- }
-
-- if (childStartedPipe[0] != -1 && FD_ISSET(childStartedPipe[0], &fdread)) {
-+ if (qt_readable(fdset.started())) {
- if (!_q_startupNotification())
- return false;
- }
-- if (stdinChannel.pipe[1] != -1 && FD_ISSET(stdinChannel.pipe[1], &fdwrite))
-+ if (qt_writable(fdset.stdin()))
- _q_canWrite();
-
-- if (stdoutChannel.pipe[0] != -1 && FD_ISSET(stdoutChannel.pipe[0], &fdread))
-+ if (qt_readable(fdset.stdout()))
- _q_canReadStandardOutput();
-
-- if (stderrChannel.pipe[0] != -1 && FD_ISSET(stderrChannel.pipe[0], &fdread))
-+ if (qt_readable(fdset.stderr()))
- _q_canReadStandardError();
-
-- if (deathPipe[0] == -1 || FD_ISSET(deathPipe[0], &fdread)) {
-+ if (qt_readable(fdset.death())) {
- if (_q_processDied())
- return true;
- }
-@@ -1284,10 +1248,10 @@ bool QProcessPrivate::waitForFinished(in
-
- bool QProcessPrivate::waitForWrite(int msecs)
- {
-- fd_set fdwrite;
-- FD_ZERO(&fdwrite);
-- FD_SET(stdinChannel.pipe[1], &fdwrite);
-- return select_msecs(stdinChannel.pipe[1] + 1, 0, &fdwrite, msecs < 0 ? 0 : msecs) == 1;
-+ pollfd fd;
-+ fd.fd = stdinChannel.pipe[1];
-+ fd.events = POLLIN;
-+ return qt_safe_poll(&fd, 1, msecs);
- }
-
- void QProcessPrivate::findExitCode()
-diff -up qt-everywhere-opensource-src-4.8.6/src/corelib/kernel/qcore_unix.cpp.poll qt-everywhere-opensource-src-4.8.6/src/corelib/kernel/qcore_unix.cpp
---- qt-everywhere-opensource-src-4.8.6/src/corelib/kernel/qcore_unix.cpp.poll 2014-03-30 15:36:48.000000000 -0500
-+++ qt-everywhere-opensource-src-4.8.6/src/corelib/kernel/qcore_unix.cpp 2014-03-31 18:01:59.369715403 -0500
-@@ -99,4 +99,165 @@ int qt_safe_select(int nfds, fd_set *fdr
- }
- }
-
-+#ifndef Q_OS_VXWORKS
-+
-+int qt_safe_poll(struct pollfd *fds, int nfds, int timeout_ms, bool retry_eintr)
-+{
-+ if (nfds == 0)
-+ return 0;
-+ if (nfds < 0) {
-+ errno = EINVAL;
-+ return -1;
-+ }
-+
-+ // Retry on ret == 0 if the deadline has not yet passed because
-+ // Linux can return early from the syscall, without setting EINTR.
-+ if (timeout_ms < 0) {
-+ forever {
-+ int ret = ::poll(fds, nfds, -1);
-+ if (ret > 0)
-+ return ret;
-+ if (retry_eintr) {
-+ if (ret == 0 || ret == -1 && errno == EINTR) {
-+ continue;
-+ } else {
-+ return -1;
-+ }
-+ }
-+ if (ret == 0) {
-+ errno = EINTR;
-+ return -1;
-+ }
-+ return ret;
-+ }
-+ }
-+
-+ timeval previous = qt_gettime();
-+ timeval deadline = previous;
-+ deadline.tv_sec += timeout_ms / 1000;
-+ deadline.tv_usec += (timeout_ms % 1000) * 1000;
-+ if (deadline.tv_usec >= 1000000) {
-+ ++deadline.tv_sec;
-+ deadline.tv_usec -= 1000000;
-+ }
-+ int remaining = timeout_ms;
-+
-+ forever {
-+ int ret = ::poll(fds, nfds, remaining);
-+ if (ret > 0)
-+ return ret;
-+ timeval now = qt_gettime();
-+ if ((now.tv_sec > deadline.tv_sec // past deadline
-+ || (now.tv_sec == deadline.tv_sec
-+ && now.tv_usec >= deadline.tv_usec))
-+ || (now.tv_sec < previous.tv_sec // time warp
-+ || (now.tv_sec == previous.tv_sec
-+ && now.tv_usec < previous.tv_usec))
-+ || (ret < 0 && (errno != EINTR || !retry_eintr))) // other error
-+ return ret;
-+ if (ret == 0 && !retry_eintr) {
-+ errno = EINTR;
-+ return -1;
-+ }
-+ remaining = (deadline.tv_sec - now.tv_sec) * 1000
-+ + (deadline.tv_usec - now.tv_usec) / 1000;
-+ previous = now;
-+ }
-+}
-+
-+#else
-+
-+// Poll emulation for VxWorks.
-+
-+static int mark_bad_descriptors(pollfd *fds, int nfds)
-+{
-+ fd_set r;
-+ FD_ZERO(&r);
-+ struct timeval tv;
-+ tv.tv_sec = 0;
-+ tv.tv_usec = 0;
-+ int ret = 0;
-+
-+ // Check each descriptor invidually for badness.
-+ for (int i = 0; i < nfds; ++i) {
-+ pollfd &fd(fds[i]);
-+ if (fd.fd >= 0) {
-+ FD_SET(fd.fd, &r);
-+ int ret = qt_safe_select(fd.fd + 1, &r, NULL, NULL, &tv);
-+ FD_CLR(fd.fd, &r);
-+ if (ret < 0 && errno == EBADF) {
-+ fd.revents = POLLNVAL;
-+ ++ret;
-+ }
-+ }
-+ }
-+ Q_ASSERT(ret > 0);
-+ return ret;
-+}
-+
-+int qt_safe_poll(pollfd *fds, int nfds, int timeout, bool retry_eintr)
-+{
-+ fd_set r, w;
-+ FD_ZERO(&r);
-+ FD_ZERO(&w);
-+ int maxfd = -1;
-+
-+ // Extract the watched descriptors.
-+ for (int i = 0; i < nfds; ++i) {
-+ pollfd &fd(fds[i]);
-+ if (fd.fd >= 0 && fd.fd < FD_SETSIZE) {
-+ if (fd.events & POLLIN) {
-+ FD_SET(fd.fd, &r);
-+ if (fd.fd > maxfd)
-+ maxfd = fd.fd;
-+ }
-+ if (fd.events & POLLOUT) {
-+ FD_SET(fd.fd, &w);
-+ if (fd.fd > maxfd)
-+ maxfd = fd.fd;
-+ }
-+ }
-+ }
-+
-+ // If timeout is negative, wait indefinitely for activity.
-+ timeval tv;
-+ timeval *ptv;
-+ if (timeout >= 0) {
-+ tv.tv_sec = timeout / 1000;
-+ tv.tv_usec = (timeout % 1000) * 1000;
-+ ptv = &tv;
-+ } else
-+ ptv = NULL;
-+
-+ int ret;
-+ if (retry_eintr)
-+ ret = qt_safe_select(maxfd + 1, &r, &w, NULL, ptv);
-+ else
-+ ret = ::select(maxfd + 1, &r, &w, NULL, ptv);
-+ if (ret < 0 && errno == EBADF) {
-+ return mark_bad_descriptors(fds, nfds);
-+ }
-+ if (ret <= 0)
-+ return ret;
-+
-+ // Set the revents flags.
-+ ret = 0;
-+ for (int i = 0; i < nfds; ++i) {
-+ pollfd &fd(fds[i]);
-+ fd.revents = 0;
-+ if (fd.fd >= 0 && fd.fd < FD_SETSIZE) {
-+ if ((fd.events & POLLIN) && FD_ISSET(fd.fd, &r))
-+ fd.revents |= POLLIN;
-+ if ((fd.events & POLLOUT) && FD_ISSET(fd.fd, &w))
-+ fd.revents |= POLLOUT;
-+ if (fd.revents)
-+ ++ret;
-+ }
-+ }
-+ Q_ASSERT(ret > 0);
-+ return ret;
-+}
-+
-+#endif
-+
- QT_END_NAMESPACE
-diff -up qt-everywhere-opensource-src-4.8.6/src/corelib/kernel/qcore_unix_p.h.poll qt-everywhere-opensource-src-4.8.6/src/corelib/kernel/qcore_unix_p.h
---- qt-everywhere-opensource-src-4.8.6/src/corelib/kernel/qcore_unix_p.h.poll 2014-03-30 15:36:48.000000000 -0500
-+++ qt-everywhere-opensource-src-4.8.6/src/corelib/kernel/qcore_unix_p.h 2014-03-31 18:01:59.370715392 -0500
-@@ -345,9 +345,42 @@ static inline pid_t qt_safe_waitpid(pid_
-
- timeval qt_gettime(); // in qelapsedtimer_mac.cpp or qtimestamp_unix.cpp
-
-+// Deprecated due to FD_SETSIZE limitation, use qt_safe_poll instead.
- Q_CORE_EXPORT int qt_safe_select(int nfds, fd_set *fdread, fd_set *fdwrite, fd_set *fdexcept,
- const struct timeval *tv);
-
-+#ifndef Q_OS_VXWORKS
-+#include <poll.h>
-+#else
-+
-+// Poll emulation for VxWorks.
-+
-+struct pollfd {
-+ int fd;
-+ short events;
-+ short revents;
-+};
-+
-+#define POLLIN 1
-+#define POLLOUT 2
-+#define POLLERR 4
-+#define POLLHUP 8
-+#define POLLNVAL 16
-+#endif
-+
-+inline bool qt_readable(const pollfd &fd)
-+{
-+ return fd.fd >= 0 && (fd.revents & (POLLIN | POLLHUP | POLLERR | POLLNVAL)) != 0;
-+}
-+
-+inline bool qt_writable(const pollfd &fd)
-+{
-+ return fd.fd >= 0 && (fd.revents & (POLLOUT | POLLHUP | POLLERR | POLLNVAL)) != 0;
-+}
-+
-+Q_CORE_EXPORT int qt_safe_poll(pollfd *fds, int nfds, int timeout,
-+ bool retry_eintr = true);
-+
- // according to X/OPEN we have to define semun ourselves
- // we use prefix as on some systems sem.h will have it
- struct semid_ds;
-diff -up qt-everywhere-opensource-src-4.8.6/src/network/socket/qlocalserver_unix.cpp.poll qt-everywhere-opensource-src-4.8.6/src/network/socket/qlocalserver_unix.cpp
---- qt-everywhere-opensource-src-4.8.6/src/network/socket/qlocalserver_unix.cpp.poll 2014-03-30 15:36:49.000000000 -0500
-+++ qt-everywhere-opensource-src-4.8.6/src/network/socket/qlocalserver_unix.cpp 2014-03-31 18:01:59.370715392 -0500
-@@ -208,16 +208,11 @@ void QLocalServerPrivate::_q_onNewConnec
-
- void QLocalServerPrivate::waitForNewConnection(int msec, bool *timedOut)
- {
-- fd_set readfds;
-- FD_ZERO(&readfds);
-- FD_SET(listenSocket, &readfds);
-+ struct pollfd fd;
-+ fd.fd = listenSocket;
-+ fd.events = POLLIN;
-
-- timeval timeout;
-- timeout.tv_sec = msec / 1000;
-- timeout.tv_usec = (msec % 1000) * 1000;
--
-- int result = -1;
-- result = qt_safe_select(listenSocket + 1, &readfds, 0, 0, (msec == -1) ? 0 : &timeout);
-+ int result = qt_safe_poll(&fd, 1, msec);
- if (-1 == result) {
- setError(QLatin1String("QLocalServer::waitForNewConnection"));
- closeServer();
-diff -up qt-everywhere-opensource-src-4.8.6/src/network/socket/qlocalsocket_unix.cpp.poll qt-everywhere-opensource-src-4.8.6/src/network/socket/qlocalsocket_unix.cpp
---- qt-everywhere-opensource-src-4.8.6/src/network/socket/qlocalsocket_unix.cpp.poll 2014-03-30 15:36:49.000000000 -0500
-+++ qt-everywhere-opensource-src-4.8.6/src/network/socket/qlocalsocket_unix.cpp 2014-03-31 18:01:59.370715392 -0500
-@@ -56,10 +56,6 @@
- #include <qdebug.h>
- #include <qelapsedtimer.h>
-
--#ifdef Q_OS_VXWORKS
--# include <selectLib.h>
--#endif
--
- #define QT_CONNECT_TIMEOUT 30000
-
- QT_BEGIN_NAMESPACE
-@@ -520,32 +516,17 @@ bool QLocalSocket::waitForConnected(int
- if (state() != ConnectingState)
- return (state() == ConnectedState);
-
-- fd_set fds;
-- FD_ZERO(&fds);
-- FD_SET(d->connectingSocket, &fds);
--
-- timeval timeout;
-- timeout.tv_sec = msec / 1000;
-- timeout.tv_usec = (msec % 1000) * 1000;
--
-- // timeout can not be 0 or else select will return an error.
-- if (0 == msec)
-- timeout.tv_usec = 1000;
-+ pollfd fd;
-+ fd.fd = d->connectingSocket;
-+ fd.events = POLLIN | POLLOUT;
-
- int result = -1;
- // on Linux timeout will be updated by select, but _not_ on other systems.
- QElapsedTimer timer;
-+ int remaining = msec;
- timer.start();
-- while (state() == ConnectingState
-- && (-1 == msec || timer.elapsed() < msec)) {
--#ifdef Q_OS_SYMBIAN
-- // On Symbian, ready-to-write is signaled when non-blocking socket
-- // connect is finised. Is ready-to-read really used on other
-- // UNIX paltforms when using non-blocking AF_UNIX socket?
-- result = ::select(d->connectingSocket + 1, 0, &fds, 0, &timeout);
--#else
-- result = ::select(d->connectingSocket + 1, &fds, 0, 0, &timeout);
--#endif
-+ while (state() == ConnectingState) {
-+ result = qt_safe_poll(&fd, 1, remaining, /* retry_eintr */ false);
- if (-1 == result && errno != EINTR) {
- d->errorOccurred( QLocalSocket::UnknownSocketError,
- QLatin1String("QLocalSocket::waitForConnected"));
-@@ -553,6 +534,11 @@ bool QLocalSocket::waitForConnected(int
- }
- if (result > 0)
- d->_q_connectToSocket();
-+ if (msec >= 0) {
-+ remaining = timer.elapsed() - msec;
-+ if (remaining < 0)
-+ break;
-+ }
- }
-
- return (state() == ConnectedState);
-diff -up qt-everywhere-opensource-src-4.8.6/src/network/socket/qnativesocketengine_unix.cpp.poll qt-everywhere-opensource-src-4.8.6/src/network/socket/qnativesocketengine_unix.cpp
---- qt-everywhere-opensource-src-4.8.6/src/network/socket/qnativesocketengine_unix.cpp.poll 2014-03-30 15:36:49.000000000 -0500
-+++ qt-everywhere-opensource-src-4.8.6/src/network/socket/qnativesocketengine_unix.cpp 2014-03-31 18:01:59.371715381 -0500
-@@ -1068,48 +1068,40 @@ qint64 QNativeSocketEnginePrivate::nativ
-
- int QNativeSocketEnginePrivate::nativeSelect(int timeout, bool selectForRead) const
- {
-- fd_set fds;
-- FD_ZERO(&fds);
-- FD_SET(socketDescriptor, &fds);
--
-- struct timeval tv;
-- tv.tv_sec = timeout / 1000;
-- tv.tv_usec = (timeout % 1000) * 1000;
--
-- int retval;
-- if (selectForRead)
-- retval = qt_safe_select(socketDescriptor + 1, &fds, 0, 0, timeout < 0 ? 0 : &tv);
-- else
-- retval = qt_safe_select(socketDescriptor + 1, 0, &fds, 0, timeout < 0 ? 0 : &tv);
--
-- return retval;
-+ struct pollfd fd;
-+ fd.fd = socketDescriptor;
-+ if (selectForRead) {
-+ fd.events = POLLIN;
-+ } else {
-+ fd.events = POLLOUT;
-+ }
-+ return qt_safe_poll(&fd, 1, timeout);
- }
-
- int QNativeSocketEnginePrivate::nativeSelect(int timeout, bool checkRead, bool checkWrite,
- bool *selectForRead, bool *selectForWrite) const
- {
-- fd_set fdread;
-- FD_ZERO(&fdread);
-+ struct pollfd fd;
-+ fd.fd = socketDescriptor;
- if (checkRead)
-- FD_SET(socketDescriptor, &fdread);
--
-- fd_set fdwrite;
-- FD_ZERO(&fdwrite);
-+ fd.events = POLLIN;
-+ else
-+ fd.events = 0;
- if (checkWrite)
-- FD_SET(socketDescriptor, &fdwrite);
--
-- struct timeval tv;
-- tv.tv_sec = timeout / 1000;
-- tv.tv_usec = (timeout % 1000) * 1000;
--
-- int ret;
-- ret = qt_safe_select(socketDescriptor + 1, &fdread, &fdwrite, 0, timeout < 0 ? 0 : &tv);
--
-+ fd.events |= POLLOUT;
-+ int ret = qt_safe_poll(&fd, 1, timeout);
- if (ret <= 0)
-- return ret;
-- *selectForRead = FD_ISSET(socketDescriptor, &fdread);
-- *selectForWrite = FD_ISSET(socketDescriptor, &fdwrite);
--
-+ return ret;
-+ bool r = (fd.revents & (POLLIN | POLLHUP | POLLERR)) != 0;
-+ bool w = (fd.revents & (POLLOUT | POLLHUP | POLLERR)) != 0;
-+ // Emulate the return value from select(2).
-+ ret = 0;
-+ if (r)
-+ ++ret;
-+ if (w)
-+ ++ret;
-+ *selectForRead = r;
-+ *selectForWrite = w;
- return ret;
- }
-
-diff -up qt-everywhere-opensource-src-4.8.6/src/qt3support/network/q3socketdevice_unix.cpp.poll qt-everywhere-opensource-src-4.8.6/src/qt3support/network/q3socketdevice_unix.cpp
---- qt-everywhere-opensource-src-4.8.6/src/qt3support/network/q3socketdevice_unix.cpp.poll 2014-03-30 15:36:49.000000000 -0500
-+++ qt-everywhere-opensource-src-4.8.6/src/qt3support/network/q3socketdevice_unix.cpp 2014-03-31 18:01:59.371715381 -0500
-@@ -68,6 +68,7 @@ static inline int qt_socket_socket(int d
- #endif
-
- #include "q3socketdevice.h"
-+#include "private/qcore_unix_p.h"
-
- #ifndef QT_NO_NETWORK
-
-@@ -588,19 +589,10 @@ Q_LONG Q3SocketDevice::waitForMore( int
- {
- if ( !isValid() )
- return -1;
-- if ( fd >= FD_SETSIZE )
-- return -1;
--
-- fd_set fds;
-- struct timeval tv;
--
-- FD_ZERO( &fds );
-- FD_SET( fd, &fds );
--
-- tv.tv_sec = msecs / 1000;
-- tv.tv_usec = (msecs % 1000) * 1000;
-
-- int rv = select( fd+1, &fds, 0, 0, msecs < 0 ? 0 : &tv );
-+ pollfd pfd;
-+ pfd.fd = fd;
-+ int rv = qt_safe_poll(&pfd, 1, msecs, /* retry_eintr */ false);
-
- if ( rv < 0 )
- return -1;
-diff -up qt-everywhere-opensource-src-4.8.6/src/qt3support/other/q3process_unix.cpp.poll qt-everywhere-opensource-src-4.8.6/src/qt3support/other/q3process_unix.cpp
---- qt-everywhere-opensource-src-4.8.6/src/qt3support/other/q3process_unix.cpp.poll 2014-03-30 15:36:49.000000000 -0500
-+++ qt-everywhere-opensource-src-4.8.6/src/qt3support/other/q3process_unix.cpp 2014-03-31 18:01:59.372715370 -0500
-@@ -981,13 +981,10 @@ bool Q3Process::isRunning() const
- // On heavy processing, the socket notifier for the sigchild might not
- // have found time to fire yet.
- if ( d->procManager && d->procManager->sigchldFd[1] < FD_SETSIZE ) {
-- fd_set fds;
-- struct timeval tv;
-- FD_ZERO( &fds );
-- FD_SET( d->procManager->sigchldFd[1], &fds );
-- tv.tv_sec = 0;
-- tv.tv_usec = 0;
-- if ( ::select( d->procManager->sigchldFd[1]+1, &fds, 0, 0, &tv ) > 0 )
-+ pollfd fd;
-+ fd.fd = d->procManager->sigchldFd[1];
-+ fd.events = POLLIN;
-+ if ( qt_safe_poll(&fd, 1, 0, /* retry_eintr */ false) > 0 )
- d->procManager->sigchldHnd( d->procManager->sigchldFd[1] );
- }
-
-@@ -1124,29 +1121,21 @@ void Q3Process::socketRead( int fd )
- }
- }
-
-- if ( fd < FD_SETSIZE ) {
-- fd_set fds;
-- struct timeval tv;
-- FD_ZERO( &fds );
-- FD_SET( fd, &fds );
-- tv.tv_sec = 0;
-- tv.tv_usec = 0;
-- while ( ::select( fd+1, &fds, 0, 0, &tv ) > 0 ) {
-- // prepare for the next round
-- FD_ZERO( &fds );
-- FD_SET( fd, &fds );
-- // read data
-- ba = new QByteArray( basize );
-- n = ::read( fd, ba->data(), basize );
-- if ( n > 0 ) {
-- ba->resize( n );
-- buffer->append( ba );
-- ba = 0;
-- } else {
-- delete ba;
-- ba = 0;
-- break;
-- }
-+ pollfd pfd;
-+ pfd.fd = fd;
-+ pfd.events = POLLIN;
-+ while (qt_safe_poll(&pfd, 1, 0)) {
-+ // read data
-+ ba = new QByteArray( basize );
-+ n = ::read( fd, ba->data(), basize );
-+ if ( n > 0 ) {
-+ ba->resize( n );
-+ buffer->append( ba );
-+ ba = 0;
-+ } else {
-+ delete ba;
-+ ba = 0;
-+ break;
- }
- }
-
diff --git a/source/l/qt/patches/qt-aarch64.patch b/source/l/qt/patches/qt-aarch64.patch
deleted file mode 100644
index cbe815dea..000000000
--- a/source/l/qt/patches/qt-aarch64.patch
+++ /dev/null
@@ -1,514 +0,0 @@
-diff -up qt-everywhere-opensource-src-4.8.7/include/QtCore/headers.pri.aarch64 qt-everywhere-opensource-src-4.8.7/include/QtCore/headers.pri
---- qt-everywhere-opensource-src-4.8.7/include/QtCore/headers.pri.aarch64 2015-05-08 21:48:32.714057739 -0500
-+++ qt-everywhere-opensource-src-4.8.7/include/QtCore/headers.pri 2015-05-08 21:53:21.088761971 -0500
-@@ -1,3 +1,3 @@
--SYNCQT.HEADER_FILES = ../corelib/kernel/qabstracteventdispatcher.h ../corelib/kernel/qabstractitemmodel.h ../corelib/kernel/qbasictimer.h ../corelib/kernel/qcoreapplication.h ../corelib/kernel/qcoreevent.h ../corelib/kernel/qeventloop.h ../corelib/kernel/qfunctions_nacl.h ../corelib/kernel/qfunctions_vxworks.h ../corelib/kernel/qfunctions_wince.h ../corelib/kernel/qmath.h ../corelib/kernel/qmetaobject.h ../corelib/kernel/qmetatype.h ../corelib/kernel/qmimedata.h ../corelib/kernel/qobject.h ../corelib/kernel/qobjectcleanuphandler.h ../corelib/kernel/qobjectdefs.h ../corelib/kernel/qpointer.h ../corelib/kernel/qsharedmemory.h ../corelib/kernel/qsignalmapper.h ../corelib/kernel/qsocketnotifier.h ../corelib/kernel/qsystemsemaphore.h ../corelib/kernel/qtimer.h ../corelib/kernel/qtranslator.h ../corelib/kernel/qvariant.h ../corelib/animation/qabstractanimation.h ../corelib/animation/qanimationgroup.h ../corelib/animation/qparallelanimationgroup.h ../corelib/animation/qpauseanimation.h ../corelib/animation/qpropertyanimation.h ../corelib/animation/qsequentialanimationgroup.h ../corelib/animation/qvariantanimation.h ../corelib/arch/qatomic_alpha.h ../corelib/arch/qatomic_arch.h ../corelib/arch/qatomic_arm.h ../corelib/arch/qatomic_armv5.h ../corelib/arch/qatomic_armv6.h ../corelib/arch/qatomic_armv7.h ../corelib/arch/qatomic_avr32.h ../corelib/arch/qatomic_bfin.h ../corelib/arch/qatomic_bootstrap.h ../corelib/arch/qatomic_generic.h ../corelib/arch/qatomic_i386.h ../corelib/arch/qatomic_ia64.h ../corelib/arch/qatomic_integrity.h ../corelib/arch/qatomic_m68k.h ../corelib/arch/qatomic_macosx.h ../corelib/arch/qatomic_mips.h ../corelib/arch/qatomic_parisc.h ../corelib/arch/qatomic_powerpc.h ../corelib/arch/qatomic_s390.h ../corelib/arch/qatomic_sh.h ../corelib/arch/qatomic_sh4a.h ../corelib/arch/qatomic_sparc.h ../corelib/arch/qatomic_symbian.h ../corelib/arch/qatomic_vxworks.h ../corelib/arch/qatomic_windows.h ../corelib/arch/qatomic_windowsce.h ../corelib/arch/qatomic_x86_64.h ../corelib/tools/qalgorithms.h ../corelib/tools/qbitarray.h ../corelib/tools/qbytearray.h ../corelib/tools/qbytearraymatcher.h ../corelib/tools/qcache.h ../corelib/tools/qchar.h ../corelib/tools/qcontainerfwd.h ../corelib/tools/qcontiguouscache.h ../corelib/tools/qcryptographichash.h ../corelib/tools/qdatetime.h ../corelib/tools/qeasingcurve.h ../corelib/tools/qelapsedtimer.h ../corelib/tools/qhash.h ../corelib/tools/qiterator.h ../corelib/tools/qline.h ../corelib/tools/qlinkedlist.h ../corelib/tools/qlist.h ../corelib/tools/qlocale.h ../corelib/tools/qlocale_blackberry.h ../corelib/tools/qmap.h ../corelib/tools/qmargins.h ../corelib/tools/qpair.h ../corelib/tools/qpoint.h ../corelib/tools/qqueue.h ../corelib/tools/qrect.h ../corelib/tools/qregexp.h ../corelib/tools/qscopedpointer.h ../corelib/tools/qscopedvaluerollback.h ../corelib/tools/qset.h ../corelib/tools/qshareddata.h ../corelib/tools/qsharedpointer.h ../corelib/tools/qsharedpointer_impl.h ../corelib/tools/qsize.h ../corelib/tools/qstack.h ../corelib/tools/qstring.h ../corelib/tools/qstringbuilder.h ../corelib/tools/qstringlist.h ../corelib/tools/qstringmatcher.h ../corelib/tools/qtextboundaryfinder.h ../corelib/tools/qtimeline.h ../corelib/tools/qvarlengtharray.h ../corelib/tools/qvector.h ../corelib/plugin/qfactoryinterface.h ../corelib/plugin/qlibrary.h ../corelib/plugin/qplugin.h ../corelib/plugin/qpluginloader.h ../corelib/plugin/quuid.h ../corelib/xml/qxmlstream.h ../corelib/thread/qatomic.h ../corelib/thread/qbasicatomic.h ../corelib/thread/qmutex.h ../corelib/thread/qreadwritelock.h ../corelib/thread/qsemaphore.h ../corelib/thread/qthread.h ../corelib/thread/qthreadstorage.h ../corelib/thread/qwaitcondition.h ../corelib/statemachine/qabstractstate.h ../corelib/statemachine/qabstracttransition.h ../corelib/statemachine/qeventtransition.h ../corelib/statemachine/qfinalstate.h ../corelib/statemachine/qhistorystate.h ../corelib/statemachine/qsignaltransition.h ../corelib/statemachine/qstate.h ../corelib/statemachine/qstatemachine.h ../corelib/concurrent/qfuture.h ../corelib/concurrent/qfutureinterface.h ../corelib/concurrent/qfuturesynchronizer.h ../corelib/concurrent/qfuturewatcher.h ../corelib/concurrent/qrunnable.h ../corelib/concurrent/qtconcurrentcompilertest.h ../corelib/concurrent/qtconcurrentexception.h ../corelib/concurrent/qtconcurrentfilter.h ../corelib/concurrent/qtconcurrentfilterkernel.h ../corelib/concurrent/qtconcurrentfunctionwrappers.h ../corelib/concurrent/qtconcurrentiteratekernel.h ../corelib/concurrent/qtconcurrentmap.h ../corelib/concurrent/qtconcurrentmapkernel.h ../corelib/concurrent/qtconcurrentmedian.h ../corelib/concurrent/qtconcurrentreducekernel.h ../corelib/concurrent/qtconcurrentresultstore.h ../corelib/concurrent/qtconcurrentrun.h ../corelib/concurrent/qtconcurrentrunbase.h ../corelib/concurrent/qtconcurrentstoredfunctioncall.h ../corelib/concurrent/qtconcurrentthreadengine.h ../corelib/concurrent/qthreadpool.h ../corelib/io/qabstractfileengine.h ../corelib/io/qbuffer.h ../corelib/io/qdatastream.h ../corelib/io/qdebug.h ../corelib/io/qdir.h ../corelib/io/qdiriterator.h ../corelib/io/qfile.h ../corelib/io/qfileinfo.h ../corelib/io/qfilesystemwatcher.h ../corelib/io/qfsfileengine.h ../corelib/io/qiodevice.h ../corelib/io/qprocess.h ../corelib/io/qresource.h ../corelib/io/qsettings.h ../corelib/io/qtemporaryfile.h ../corelib/io/qtextstream.h ../corelib/io/qurl.h ../corelib/global/qconfig-dist.h ../corelib/global/qconfig-large.h ../corelib/global/qconfig-medium.h ../corelib/global/qconfig-minimal.h ../corelib/global/qconfig-nacl.h ../corelib/global/qconfig-small.h ../corelib/global/qendian.h ../corelib/global/qfeatures.h ../corelib/global/qglobal.h ../corelib/global/qlibraryinfo.h ../corelib/global/qnamespace.h ../corelib/global/qnumeric.h ../corelib/global/qt_windows.h ../corelib/global/qconfig.h ../corelib/codecs/qtextcodec.h ../corelib/codecs/qtextcodecplugin.h ../../include/QtCore/QtCore
-+SYNCQT.HEADER_FILES = ../corelib/kernel/qabstracteventdispatcher.h ../corelib/kernel/qabstractitemmodel.h ../corelib/kernel/qbasictimer.h ../corelib/kernel/qcoreapplication.h ../corelib/kernel/qcoreevent.h ../corelib/kernel/qeventloop.h ../corelib/kernel/qfunctions_nacl.h ../corelib/kernel/qfunctions_vxworks.h ../corelib/kernel/qfunctions_wince.h ../corelib/kernel/qmath.h ../corelib/kernel/qmetaobject.h ../corelib/kernel/qmetatype.h ../corelib/kernel/qmimedata.h ../corelib/kernel/qobject.h ../corelib/kernel/qobjectcleanuphandler.h ../corelib/kernel/qobjectdefs.h ../corelib/kernel/qpointer.h ../corelib/kernel/qsharedmemory.h ../corelib/kernel/qsignalmapper.h ../corelib/kernel/qsocketnotifier.h ../corelib/kernel/qsystemsemaphore.h ../corelib/kernel/qtimer.h ../corelib/kernel/qtranslator.h ../corelib/kernel/qvariant.h ../corelib/animation/qabstractanimation.h ../corelib/animation/qanimationgroup.h ../corelib/animation/qparallelanimationgroup.h ../corelib/animation/qpauseanimation.h ../corelib/animation/qpropertyanimation.h ../corelib/animation/qsequentialanimationgroup.h ../corelib/animation/qvariantanimation.h ../corelib/arch/qatomic_aarch64.h ../corelib/arch/qatomic_alpha.h ../corelib/arch/qatomic_arch.h ../corelib/arch/qatomic_arm.h ../corelib/arch/qatomic_armv5.h ../corelib/arch/qatomic_armv6.h ../corelib/arch/qatomic_armv7.h ../corelib/arch/qatomic_avr32.h ../corelib/arch/qatomic_bfin.h ../corelib/arch/qatomic_bootstrap.h ../corelib/arch/qatomic_generic.h ../corelib/arch/qatomic_i386.h ../corelib/arch/qatomic_ia64.h ../corelib/arch/qatomic_integrity.h ../corelib/arch/qatomic_m68k.h ../corelib/arch/qatomic_macosx.h ../corelib/arch/qatomic_mips.h ../corelib/arch/qatomic_parisc.h ../corelib/arch/qatomic_powerpc.h ../corelib/arch/qatomic_s390.h ../corelib/arch/qatomic_sh.h ../corelib/arch/qatomic_sh4a.h ../corelib/arch/qatomic_sparc.h ../corelib/arch/qatomic_symbian.h ../corelib/arch/qatomic_vxworks.h ../corelib/arch/qatomic_windows.h ../corelib/arch/qatomic_windowsce.h ../corelib/arch/qatomic_x86_64.h ../corelib/tools/qalgorithms.h ../corelib/tools/qbitarray.h ../corelib/tools/qbytearray.h ../corelib/tools/qbytearraymatcher.h ../corelib/tools/qcache.h ../corelib/tools/qchar.h ../corelib/tools/qcontainerfwd.h ../corelib/tools/qcontiguouscache.h ../corelib/tools/qcryptographichash.h ../corelib/tools/qdatetime.h ../corelib/tools/qeasingcurve.h ../corelib/tools/qelapsedtimer.h ../corelib/tools/qhash.h ../corelib/tools/qiterator.h ../corelib/tools/qline.h ../corelib/tools/qlinkedlist.h ../corelib/tools/qlist.h ../corelib/tools/qlocale.h ../corelib/tools/qlocale_blackberry.h ../corelib/tools/qmap.h ../corelib/tools/qmargins.h ../corelib/tools/qpair.h ../corelib/tools/qpoint.h ../corelib/tools/qqueue.h ../corelib/tools/qrect.h ../corelib/tools/qregexp.h ../corelib/tools/qscopedpointer.h ../corelib/tools/qscopedvaluerollback.h ../corelib/tools/qset.h ../corelib/tools/qshareddata.h ../corelib/tools/qsharedpointer.h ../corelib/tools/qsharedpointer_impl.h ../corelib/tools/qsize.h ../corelib/tools/qstack.h ../corelib/tools/qstring.h ../corelib/tools/qstringbuilder.h ../corelib/tools/qstringlist.h ../corelib/tools/qstringmatcher.h ../corelib/tools/qtextboundaryfinder.h ../corelib/tools/qtimeline.h ../corelib/tools/qvarlengtharray.h ../corelib/tools/qvector.h ../corelib/plugin/qfactoryinterface.h ../corelib/plugin/qlibrary.h ../corelib/plugin/qplugin.h ../corelib/plugin/qpluginloader.h ../corelib/plugin/quuid.h ../corelib/xml/qxmlstream.h ../corelib/thread/qatomic.h ../corelib/thread/qbasicatomic.h ../corelib/thread/qmutex.h ../corelib/thread/qreadwritelock.h ../corelib/thread/qsemaphore.h ../corelib/thread/qthread.h ../corelib/thread/qthreadstorage.h ../corelib/thread/qwaitcondition.h ../corelib/statemachine/qabstractstate.h ../corelib/statemachine/qabstracttransition.h ../corelib/statemachine/qeventtransition.h ../corelib/statemachine/qfinalstate.h ../corelib/statemachine/qhistorystate.h ../corelib/statemachine/qsignaltransition.h ../corelib/statemachine/qstate.h ../corelib/statemachine/qstatemachine.h ../corelib/concurrent/qfuture.h ../corelib/concurrent/qfutureinterface.h ../corelib/concurrent/qfuturesynchronizer.h ../corelib/concurrent/qfuturewatcher.h ../corelib/concurrent/qrunnable.h ../corelib/concurrent/qtconcurrentcompilertest.h ../corelib/concurrent/qtconcurrentexception.h ../corelib/concurrent/qtconcurrentfilter.h ../corelib/concurrent/qtconcurrentfilterkernel.h ../corelib/concurrent/qtconcurrentfunctionwrappers.h ../corelib/concurrent/qtconcurrentiteratekernel.h ../corelib/concurrent/qtconcurrentmap.h ../corelib/concurrent/qtconcurrentmapkernel.h ../corelib/concurrent/qtconcurrentmedian.h ../corelib/concurrent/qtconcurrentreducekernel.h ../corelib/concurrent/qtconcurrentresultstore.h ../corelib/concurrent/qtconcurrentrun.h ../corelib/concurrent/qtconcurrentrunbase.h ../corelib/concurrent/qtconcurrentstoredfunctioncall.h ../corelib/concurrent/qtconcurrentthreadengine.h ../corelib/concurrent/qthreadpool.h ../corelib/io/qabstractfileengine.h ../corelib/io/qbuffer.h ../corelib/io/qdatastream.h ../corelib/io/qdebug.h ../corelib/io/qdir.h ../corelib/io/qdiriterator.h ../corelib/io/qfile.h ../corelib/io/qfileinfo.h ../corelib/io/qfilesystemwatcher.h ../corelib/io/qfsfileengine.h ../corelib/io/qiodevice.h ../corelib/io/qprocess.h ../corelib/io/qresource.h ../corelib/io/qsettings.h ../corelib/io/qtemporaryfile.h ../corelib/io/qtextstream.h ../corelib/io/qurl.h ../corelib/global/qconfig-dist.h ../corelib/global/qconfig-large.h ../corelib/global/qconfig-medium.h ../corelib/global/qconfig-minimal.h ../corelib/global/qconfig-nacl.h ../corelib/global/qconfig-small.h ../corelib/global/qendian.h ../corelib/global/qfeatures.h ../corelib/global/qglobal.h ../corelib/global/qlibraryinfo.h ../corelib/global/qnamespace.h ../corelib/global/qnumeric.h ../corelib/global/qt_windows.h ../corelib/global/qconfig.h ../corelib/codecs/qtextcodec.h ../corelib/codecs/qtextcodecplugin.h ../../include/QtCore/QtCore
- SYNCQT.HEADER_CLASSES = ../../include/QtCore/QAbstractEventDispatcher ../../include/QtCore/QModelIndex ../../include/QtCore/QPersistentModelIndex ../../include/QtCore/QModelIndexList ../../include/QtCore/QAbstractItemModel ../../include/QtCore/QAbstractTableModel ../../include/QtCore/QAbstractListModel ../../include/QtCore/QBasicTimer ../../include/QtCore/QCoreApplication ../../include/QtCore/QtCleanUpFunction ../../include/QtCore/QEvent ../../include/QtCore/QTimerEvent ../../include/QtCore/QChildEvent ../../include/QtCore/QCustomEvent ../../include/QtCore/QDynamicPropertyChangeEvent ../../include/QtCore/QEventLoop ../../include/QtCore/QMetaMethod ../../include/QtCore/QMetaEnum ../../include/QtCore/QMetaProperty ../../include/QtCore/QMetaClassInfo ../../include/QtCore/QMetaType ../../include/QtCore/QMetaTypeId ../../include/QtCore/QMetaTypeId2 ../../include/QtCore/QMimeData ../../include/QtCore/QObjectList ../../include/QtCore/QObjectData ../../include/QtCore/QObject ../../include/QtCore/QObjectUserData ../../include/QtCore/QObjectCleanupHandler ../../include/QtCore/QGenericArgument ../../include/QtCore/QGenericReturnArgument ../../include/QtCore/QArgument ../../include/QtCore/QReturnArgument ../../include/QtCore/QMetaObject ../../include/QtCore/QMetaObjectAccessor ../../include/QtCore/QMetaObjectExtraData ../../include/QtCore/QPointer ../../include/QtCore/QSharedMemory ../../include/QtCore/QSignalMapper ../../include/QtCore/QSocketNotifier ../../include/QtCore/QSystemSemaphore ../../include/QtCore/QTimer ../../include/QtCore/QTranslator ../../include/QtCore/QVariant ../../include/QtCore/QVariantList ../../include/QtCore/QVariantMap ../../include/QtCore/QVariantHash ../../include/QtCore/QVariantComparisonHelper ../../include/QtCore/QAbstractAnimation ../../include/QtCore/QAnimationDriver ../../include/QtCore/QAnimationGroup ../../include/QtCore/QParallelAnimationGroup ../../include/QtCore/QPauseAnimation ../../include/QtCore/QPropertyAnimation ../../include/QtCore/QSequentialAnimationGroup ../../include/QtCore/QVariantAnimation ../../include/QtCore/QtAlgorithms ../../include/QtCore/QBitArray ../../include/QtCore/QBitRef ../../include/QtCore/QByteArray ../../include/QtCore/QByteRef ../../include/QtCore/QByteArrayMatcher ../../include/QtCore/QCache ../../include/QtCore/QLatin1Char ../../include/QtCore/QChar ../../include/QtCore/QtContainerFwd ../../include/QtCore/QContiguousCacheData ../../include/QtCore/QContiguousCacheTypedData ../../include/QtCore/QContiguousCache ../../include/QtCore/QCryptographicHash ../../include/QtCore/QDate ../../include/QtCore/QTime ../../include/QtCore/QDateTime ../../include/QtCore/QEasingCurve ../../include/QtCore/QElapsedTimer ../../include/QtCore/QHashData ../../include/QtCore/QHashDummyValue ../../include/QtCore/QHashDummyNode ../../include/QtCore/QHashNode ../../include/QtCore/QHash ../../include/QtCore/QMultiHash ../../include/QtCore/QHashIterator ../../include/QtCore/QMutableHashIterator ../../include/QtCore/QLine ../../include/QtCore/QLineF ../../include/QtCore/QLinkedListData ../../include/QtCore/QLinkedListNode ../../include/QtCore/QLinkedList ../../include/QtCore/QLinkedListIterator ../../include/QtCore/QMutableLinkedListIterator ../../include/QtCore/QListData ../../include/QtCore/QList ../../include/QtCore/QListIterator ../../include/QtCore/QMutableListIterator ../../include/QtCore/QSystemLocale ../../include/QtCore/QLocale ../../include/QtCore/QBBSystemLocaleData ../../include/QtCore/QMapData ../../include/QtCore/QMapNode ../../include/QtCore/QMapPayloadNode ../../include/QtCore/QMap ../../include/QtCore/QMultiMap ../../include/QtCore/QMapIterator ../../include/QtCore/QMutableMapIterator ../../include/QtCore/QMargins ../../include/QtCore/QPair ../../include/QtCore/QPoint ../../include/QtCore/QPointF ../../include/QtCore/QQueue ../../include/QtCore/QRect ../../include/QtCore/QRectF ../../include/QtCore/QRegExp ../../include/QtCore/QScopedPointerDeleter ../../include/QtCore/QScopedPointerArrayDeleter ../../include/QtCore/QScopedPointerPodDeleter ../../include/QtCore/QScopedPointer ../../include/QtCore/QScopedArrayPointer ../../include/QtCore/QScopedValueRollback ../../include/QtCore/QSet ../../include/QtCore/QSetIterator ../../include/QtCore/QMutableSetIterator ../../include/QtCore/QSharedData ../../include/QtCore/QSharedDataPointer ../../include/QtCore/QExplicitlySharedDataPointer ../../include/QtCore/QSharedPointer ../../include/QtCore/QWeakPointer ../../include/QtCore/QSize ../../include/QtCore/QSizeF ../../include/QtCore/QStack ../../include/QtCore/QStdWString ../../include/QtCore/QString ../../include/QtCore/QLatin1String ../../include/QtCore/QCharRef ../../include/QtCore/QConstString ../../include/QtCore/QStringRef ../../include/QtCore/QLatin1Literal ../../include/QtCore/QAbstractConcatenable ../../include/QtCore/QConcatenable ../../include/QtCore/QStringBuilder ../../include/QtCore/QStringListIterator ../../include/QtCore/QMutableStringListIterator ../../include/QtCore/QStringList ../../include/QtCore/QStringMatcher ../../include/QtCore/QTextBoundaryFinder ../../include/QtCore/QTimeLine ../../include/QtCore/QVarLengthArray ../../include/QtCore/QVectorData ../../include/QtCore/QVectorTypedData ../../include/QtCore/QVector ../../include/QtCore/QVectorIterator ../../include/QtCore/QMutableVectorIterator ../../include/QtCore/QFactoryInterface ../../include/QtCore/QLibrary ../../include/QtCore/QtPlugin ../../include/QtCore/QtPluginInstanceFunction ../../include/QtCore/QPluginLoader ../../include/QtCore/QUuid ../../include/QtCore/QXmlStreamStringRef ../../include/QtCore/QXmlStreamAttribute ../../include/QtCore/QXmlStreamAttributes ../../include/QtCore/QXmlStreamNamespaceDeclaration ../../include/QtCore/QXmlStreamNamespaceDeclarations ../../include/QtCore/QXmlStreamNotationDeclaration ../../include/QtCore/QXmlStreamNotationDeclarations ../../include/QtCore/QXmlStreamEntityDeclaration ../../include/QtCore/QXmlStreamEntityDeclarations ../../include/QtCore/QXmlStreamEntityResolver ../../include/QtCore/QXmlStreamReader ../../include/QtCore/QXmlStreamWriter ../../include/QtCore/QAtomicInt ../../include/QtCore/QAtomicPointer ../../include/QtCore/QBasicAtomicInt ../../include/QtCore/QBasicAtomicPointer ../../include/QtCore/QMutex ../../include/QtCore/QMutexLocker ../../include/QtCore/QMutexData ../../include/QtCore/QReadWriteLock ../../include/QtCore/QReadLocker ../../include/QtCore/QWriteLocker ../../include/QtCore/QSemaphore ../../include/QtCore/QThread ../../include/QtCore/QThreadStorageData ../../include/QtCore/QThreadStorage ../../include/QtCore/QWaitCondition ../../include/QtCore/QAbstractState ../../include/QtCore/QAbstractTransition ../../include/QtCore/QEventTransition ../../include/QtCore/QFinalState ../../include/QtCore/QHistoryState ../../include/QtCore/QSignalTransition ../../include/QtCore/QState ../../include/QtCore/QStateMachine ../../include/QtCore/QFuture ../../include/QtCore/QFutureIterator ../../include/QtCore/QMutableFutureIterator ../../include/QtCore/QFutureInterfaceBase ../../include/QtCore/QFutureInterface ../../include/QtCore/QFutureSynchronizer ../../include/QtCore/QFutureWatcherBase ../../include/QtCore/QFutureWatcher ../../include/QtCore/QRunnable ../../include/QtCore/QtConcurrentFilter ../../include/QtCore/QtConcurrentMap ../../include/QtCore/QtConcurrentRun ../../include/QtCore/QThreadPool ../../include/QtCore/QAbstractFileEngine ../../include/QtCore/QAbstractFileEngineHandler ../../include/QtCore/QAbstractFileEngineIterator ../../include/QtCore/QBuffer ../../include/QtCore/QDataStream ../../include/QtCore/QtDebug ../../include/QtCore/QDebug ../../include/QtCore/QNoDebug ../../include/QtCore/QDir ../../include/QtCore/QDirIterator ../../include/QtCore/QFile ../../include/QtCore/QFileInfo ../../include/QtCore/QFileInfoList ../../include/QtCore/QFileInfoListIterator ../../include/QtCore/QFileSystemWatcher ../../include/QtCore/QFSFileEngine ../../include/QtCore/QIODevice ../../include/QtCore/Q_PID ../../include/QtCore/QProcessEnvironment ../../include/QtCore/QProcess ../../include/QtCore/QResource ../../include/QtCore/QSettings ../../include/QtCore/QTemporaryFile ../../include/QtCore/QTextStream ../../include/QtCore/QTextStreamFunction ../../include/QtCore/QTextStreamManipulator ../../include/QtCore/QTS ../../include/QtCore/QTextIStream ../../include/QtCore/QTextOStream ../../include/QtCore/QUrl ../../include/QtCore/QtEndian ../../include/QtCore/QtGlobal ../../include/QtCore/QIntegerForSize ../../include/QtCore/QNoImplicitBoolCast ../../include/QtCore/Q_INT8 ../../include/QtCore/Q_UINT8 ../../include/QtCore/Q_INT16 ../../include/QtCore/Q_UINT16 ../../include/QtCore/Q_INT32 ../../include/QtCore/Q_UINT32 ../../include/QtCore/Q_INT64 ../../include/QtCore/Q_UINT64 ../../include/QtCore/Q_LLONG ../../include/QtCore/Q_ULLONG ../../include/QtCore/Q_LONG ../../include/QtCore/Q_ULONG ../../include/QtCore/QSysInfo ../../include/QtCore/QtMsgHandler ../../include/QtCore/QGlobalStatic ../../include/QtCore/QGlobalStaticDeleter ../../include/QtCore/QBool ../../include/QtCore/QTypeInfo ../../include/QtCore/QFlag ../../include/QtCore/QIncompatibleFlag ../../include/QtCore/QFlags ../../include/QtCore/QForeachContainer ../../include/QtCore/QForeachContainerBase ../../include/QtCore/QLibraryInfo ../../include/QtCore/Qt ../../include/QtCore/QInternal ../../include/QtCore/QCOORD ../../include/QtCore/QtConfig ../../include/QtCore/QTextCodec ../../include/QtCore/QTextEncoder ../../include/QtCore/QTextDecoder ../../include/QtCore/QTextCodecFactoryInterface ../../include/QtCore/QTextCodecPlugin
- SYNCQT.PRIVATE_HEADER_FILES = ../corelib/kernel/qabstracteventdispatcher_p.h ../corelib/kernel/qabstractitemmodel_p.h ../corelib/kernel/qcore_mac_p.h ../corelib/kernel/qcore_symbian_p.h ../corelib/kernel/qcore_unix_p.h ../corelib/kernel/qcoreapplication_p.h ../corelib/kernel/qcorecmdlineargs_p.h ../corelib/kernel/qcoreglobaldata_p.h ../corelib/kernel/qcrashhandler_p.h ../corelib/kernel/qeventdispatcher_blackberry_p.h ../corelib/kernel/qeventdispatcher_glib_p.h ../corelib/kernel/qeventdispatcher_symbian_p.h ../corelib/kernel/qeventdispatcher_unix_p.h ../corelib/kernel/qeventdispatcher_win_p.h ../corelib/kernel/qfunctions_p.h ../corelib/kernel/qmetaobject_p.h ../corelib/kernel/qobject_p.h ../corelib/kernel/qsharedmemory_p.h ../corelib/kernel/qsystemerror_p.h ../corelib/kernel/qsystemsemaphore_p.h ../corelib/kernel/qtranslator_p.h ../corelib/kernel/qvariant_p.h ../corelib/kernel/qwineventnotifier_p.h ../corelib/animation/qabstractanimation_p.h ../corelib/animation/qanimationgroup_p.h ../corelib/animation/qparallelanimationgroup_p.h ../corelib/animation/qpropertyanimation_p.h ../corelib/animation/qsequentialanimationgroup_p.h ../corelib/animation/qvariantanimation_p.h ../corelib/tools/qbytedata_p.h ../corelib/tools/qdatetime_p.h ../corelib/tools/qharfbuzz_p.h ../corelib/tools/qlocale_data_p.h ../corelib/tools/qlocale_p.h ../corelib/tools/qlocale_tools_p.h ../corelib/tools/qpodlist_p.h ../corelib/tools/qringbuffer_p.h ../corelib/tools/qscopedpointer_p.h ../corelib/tools/qsimd_p.h ../corelib/tools/qtools_p.h ../corelib/tools/qunicodetables_p.h ../corelib/plugin/qelfparser_p.h ../corelib/plugin/qfactoryloader_p.h ../corelib/plugin/qlibrary_p.h ../corelib/plugin/qsystemlibrary_p.h ../corelib/xml/qxmlstream_p.h ../corelib/xml/qxmlutils_p.h ../corelib/thread/qmutex_p.h ../corelib/thread/qmutexpool_p.h ../corelib/thread/qorderedmutexlocker_p.h ../corelib/thread/qreadwritelock_p.h ../corelib/thread/qthread_p.h ../corelib/statemachine/qabstractstate_p.h ../corelib/statemachine/qabstracttransition_p.h ../corelib/statemachine/qeventtransition_p.h ../corelib/statemachine/qhistorystate_p.h ../corelib/statemachine/qsignaleventgenerator_p.h ../corelib/statemachine/qsignaltransition_p.h ../corelib/statemachine/qstate_p.h ../corelib/statemachine/qstatemachine_p.h ../corelib/concurrent/qfutureinterface_p.h ../corelib/concurrent/qfuturewatcher_p.h ../corelib/concurrent/qthreadpool_p.h ../corelib/io/qabstractfileengine_p.h ../corelib/io/qdatastream_p.h ../corelib/io/qdataurl_p.h ../corelib/io/qdir_p.h ../corelib/io/qfile_p.h ../corelib/io/qfileinfo_p.h ../corelib/io/qfilesystemengine_p.h ../corelib/io/qfilesystementry_p.h ../corelib/io/qfilesystemiterator_p.h ../corelib/io/qfilesystemmetadata_p.h ../corelib/io/qfilesystemwatcher_dnotify_p.h ../corelib/io/qfilesystemwatcher_fsevents_p.h ../corelib/io/qfilesystemwatcher_inotify_p.h ../corelib/io/qfilesystemwatcher_kqueue_p.h ../corelib/io/qfilesystemwatcher_p.h ../corelib/io/qfilesystemwatcher_symbian_p.h ../corelib/io/qfilesystemwatcher_win_p.h ../corelib/io/qfsfileengine_iterator_p.h ../corelib/io/qfsfileengine_p.h ../corelib/io/qiodevice_p.h ../corelib/io/qnoncontiguousbytedevice_p.h ../corelib/io/qprocess_p.h ../corelib/io/qresource_iterator_p.h ../corelib/io/qresource_p.h ../corelib/io/qsettings_p.h ../corelib/io/qtldurl_p.h ../corelib/io/qurltlds_p.h ../corelib/io/qwindowspipewriter_p.h ../corelib/global/qnumeric_p.h ../corelib/global/qt_pch.h ../corelib/codecs/qfontlaocodec_p.h ../corelib/codecs/qiconvcodec_p.h ../corelib/codecs/qisciicodec_p.h ../corelib/codecs/qlatincodec_p.h ../corelib/codecs/qsimplecodec_p.h ../corelib/codecs/qtextcodec_p.h ../corelib/codecs/qtsciicodec_p.h ../corelib/codecs/qutfcodec_p.h
-diff -up qt-everywhere-opensource-src-4.8.7/include/QtCore/qatomic_aarch64.h.aarch64 qt-everywhere-opensource-src-4.8.7/include/QtCore/qatomic_aarch64.h
---- qt-everywhere-opensource-src-4.8.7/include/QtCore/qatomic_aarch64.h.aarch64 2015-05-08 21:48:32.715057744 -0500
-+++ qt-everywhere-opensource-src-4.8.7/include/QtCore/qatomic_aarch64.h 2015-05-08 21:48:32.715057744 -0500
-@@ -0,0 +1 @@
-+#include "../../src/corelib/arch/qatomic_aarch64.h"
-diff -up qt-everywhere-opensource-src-4.8.7/src/3rdparty/javascriptcore/JavaScriptCore/JavaScriptCore.pri.aarch64 qt-everywhere-opensource-src-4.8.7/src/3rdparty/javascriptcore/JavaScriptCore/JavaScriptCore.pri
---- qt-everywhere-opensource-src-4.8.7/src/3rdparty/javascriptcore/JavaScriptCore/JavaScriptCore.pri.aarch64 2015-05-07 09:14:47.000000000 -0500
-+++ qt-everywhere-opensource-src-4.8.7/src/3rdparty/javascriptcore/JavaScriptCore/JavaScriptCore.pri 2015-05-08 21:48:33.268061013 -0500
-@@ -66,6 +66,12 @@ contains(JAVASCRIPTCORE_JIT,no) {
- }
- }
-
-+# Hack around AARCH64 fail wrt JSValue.h
-+equals(QT_ARCH, aarch64) {
-+ message("JavaScriptCore aarch64 hack: -fpermissive")
-+ QMAKE_CXXFLAGS += -fpermissive
-+}
-+
- wince* {
- INCLUDEPATH += $$QT_SOURCE_TREE/src/3rdparty/ce-compat
- SOURCES += $$QT_SOURCE_TREE/src/3rdparty/ce-compat/ce_time.c
-diff -up qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/JavaScriptCore/JavaScriptCore.pri.aarch64 qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/JavaScriptCore/JavaScriptCore.pri
---- qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/JavaScriptCore/JavaScriptCore.pri.aarch64 2015-05-07 09:14:45.000000000 -0500
-+++ qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/JavaScriptCore/JavaScriptCore.pri 2015-05-08 21:48:33.268061013 -0500
-@@ -63,6 +63,12 @@ contains (CONFIG, text_breaking_with_icu
- DEFINES += WTF_USE_QT_ICU_TEXT_BREAKING=1
- }
-
-+# Hack around AARCH64 fail wrt JSValue.h
-+equals(QT_ARCH, aarch64) {
-+ message("JavaScriptCore aarch64 hack: -fpermissive")
-+ QMAKE_CXXFLAGS += -fpermissive
-+}
-+
- wince* {
- INCLUDEPATH += $$QT_SOURCE_TREE/src/3rdparty/ce-compat
- INCLUDEPATH += $$PWD/../JavaScriptCore/os-win32
-diff -up qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/JavaScriptCore/wtf/Platform.h.aarch64 qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/JavaScriptCore/wtf/Platform.h
---- qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/JavaScriptCore/wtf/Platform.h.aarch64 2015-05-07 09:14:45.000000000 -0500
-+++ qt-everywhere-opensource-src-4.8.7/src/3rdparty/webkit/Source/JavaScriptCore/wtf/Platform.h 2015-05-08 21:48:33.269061019 -0500
-@@ -369,7 +369,16 @@
-
- #endif /* ARM */
-
--#if CPU(ARM) || CPU(MIPS) || CPU(SH4)
-+/* CPU(AARCH64) - AArch64 */
-+#if defined(__aarch64__)
-+#define WTF_CPU_AARCH64 1
-+#if defined(__AARCH64EB__)
-+#define WTF_CPU_BIG_ENDIAN 1
-+#endif
-+#endif
-+
-+/* Not sure about this one, qt5-qtwebkit doesn't include it -- rex */
-+#if CPU(ARM) || CPU(MIPS) || CPU(SH4) || CPU(AARCH64)
- #define WTF_CPU_NEEDS_ALIGNED_ACCESS 1
- #endif
-
-@@ -1003,7 +1012,7 @@
- || CPU(SPARC64) \
- || CPU(S390X) \
- || CPU(PPC64) \
-- || CPU(MIPS64)
-+ || CPU(MIPS64) || CPU(AARCH64)
- #define WTF_USE_JSVALUE64 1
- #else
- #define WTF_USE_JSVALUE32_64 1
-diff -up qt-everywhere-opensource-src-4.8.7/src/corelib/arch/aarch64/qatomic_aarch64.cpp.aarch64 qt-everywhere-opensource-src-4.8.7/src/corelib/arch/aarch64/qatomic_aarch64.cpp
---- qt-everywhere-opensource-src-4.8.7/src/corelib/arch/aarch64/qatomic_aarch64.cpp.aarch64 2015-05-08 21:48:33.269061019 -0500
-+++ qt-everywhere-opensource-src-4.8.7/src/corelib/arch/aarch64/qatomic_aarch64.cpp 2015-05-08 21:48:33.269061019 -0500
-@@ -0,0 +1,70 @@
-+/****************************************************************************
-+**
-+** Copyright (C) 2012, 2013 Digia Plc and/or its subsidiary(-ies).
-+** Contact: http://www.qt-project.org/legal
-+**
-+** This file is part of the QtCore module of the Qt Toolkit.
-+**
-+** $QT_BEGIN_LICENSE:LGPL$
-+** Commercial License Usage
-+** Licensees holding valid commercial Qt licenses may use this file in
-+** accordance with the commercial license agreement provided with the
-+** Software or, alternatively, in accordance with the terms contained in
-+** a written agreement between you and Digia. For licensing terms and
-+** conditions see http://qt.digia.com/licensing. For further information
-+** use the contact form at http://qt.digia.com/contact-us.
-+**
-+** GNU Lesser General Public License Usage
-+** Alternatively, this file may be used under the terms of the GNU Lesser
-+** General Public License version 2.1 as published by the Free Software
-+** Foundation and appearing in the file LICENSE.LGPL included in the
-+** packaging of this file. Please review the following information to
-+** ensure the GNU Lesser General Public License version 2.1 requirements
-+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
-+**
-+** In addition, as a special exception, Digia gives you certain additional
-+** rights. These rights are described in the Digia Qt LGPL Exception
-+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
-+**
-+** GNU General Public License Usage
-+** Alternatively, this file may be used under the terms of the GNU
-+** General Public License version 3.0 as published by the Free Software
-+** Foundation and appearing in the file LICENSE.GPL included in the
-+** packaging of this file. Please review the following information to
-+** ensure the GNU General Public License version 3.0 requirements will be
-+** met: http://www.gnu.org/copyleft/gpl.html.
-+**
-+**
-+** $QT_END_LICENSE$
-+**
-+****************************************************************************/
-+
-+#include <QtCore/qglobal.h>
-+
-+#include <unistd.h>
-+#ifdef _POSIX_PRIORITY_SCHEDULING
-+# include <sched.h>
-+#endif
-+#include <time.h>
-+
-+QT_BEGIN_NAMESPACE
-+
-+QT_USE_NAMESPACE
-+
-+Q_CORE_EXPORT void qt_atomic_yield(int *count)
-+{
-+#ifdef _POSIX_PRIORITY_SCHEDULING
-+ if((*count)++ < 50) {
-+ sched_yield();
-+ } else
-+#endif
-+ {
-+ struct timespec tm;
-+ tm.tv_sec = 0;
-+ tm.tv_nsec = 2000001;
-+ nanosleep(&tm, NULL);
-+ *count = 0;
-+ }
-+}
-+
-+QT_END_NAMESPACE
-diff -up qt-everywhere-opensource-src-4.8.7/src/corelib/arch/arch.pri.aarch64 qt-everywhere-opensource-src-4.8.7/src/corelib/arch/arch.pri
---- qt-everywhere-opensource-src-4.8.7/src/corelib/arch/arch.pri.aarch64 2015-05-07 09:14:48.000000000 -0500
-+++ qt-everywhere-opensource-src-4.8.7/src/corelib/arch/arch.pri 2015-05-08 21:48:33.270061025 -0500
-@@ -31,7 +31,9 @@ integrity:HEADERS += arch/qatomic_integr
- arch/qatomic_s390.h \
- arch/qatomic_x86_64.h \
- arch/qatomic_sh.h \
-- arch/qatomic_sh4a.h
-+ arch/qatomic_sh4a.h \
-+ arch/qatomic_aarch64.h \
-+
-
- QT_ARCH_CPP = $$QT_SOURCE_TREE/src/corelib/arch/$$QT_ARCH
- DEPENDPATH += $$QT_ARCH_CPP
-diff -up qt-everywhere-opensource-src-4.8.7/src/corelib/arch/qatomic_aarch64.h.aarch64 qt-everywhere-opensource-src-4.8.7/src/corelib/arch/qatomic_aarch64.h
---- qt-everywhere-opensource-src-4.8.7/src/corelib/arch/qatomic_aarch64.h.aarch64 2015-05-08 21:48:33.270061025 -0500
-+++ qt-everywhere-opensource-src-4.8.7/src/corelib/arch/qatomic_aarch64.h 2015-05-08 21:48:33.270061025 -0500
-@@ -0,0 +1,335 @@
-+/****************************************************************************
-+**
-+** Copyright (C) 2012 Digia Plc and/or its subsidiary(-ies).
-+** Contact: http://www.qt-project.org/legal
-+**
-+** This file is part of the QtCore module of the Qt Toolkit.
-+**
-+** $QT_BEGIN_LICENSE:LGPL$
-+** Commercial License Usage
-+** Licensees holding valid commercial Qt licenses may use this file in
-+** accordance with the commercial license agreement provided with the
-+** Software or, alternatively, in accordance with the terms contained in
-+** a written agreement between you and Digia. For licensing terms and
-+** conditions see http://qt.digia.com/licensing. For further information
-+** use the contact form at http://qt.digia.com/contact-us.
-+**
-+** GNU Lesser General Public License Usage
-+** Alternatively, this file may be used under the terms of the GNU Lesser
-+** General Public License version 2.1 as published by the Free Software
-+** Foundation and appearing in the file LICENSE.LGPL included in the
-+** packaging of this file. Please review the following information to
-+** ensure the GNU Lesser General Public License version 2.1 requirements
-+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
-+**
-+** In addition, as a special exception, Digia gives you certain additional
-+** rights. These rights are described in the Digia Qt LGPL Exception
-+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
-+**
-+** GNU General Public License Usage
-+** Alternatively, this file may be used under the terms of the GNU
-+** General Public License version 3.0 as published by the Free Software
-+** Foundation and appearing in the file LICENSE.GPL included in the
-+** packaging of this file. Please review the following information to
-+** ensure the GNU General Public License version 3.0 requirements will be
-+** met: http://www.gnu.org/copyleft/gpl.html.
-+**
-+**
-+** $QT_END_LICENSE$
-+**
-+****************************************************************************/
-+
-+#ifndef QATOMIC_AARCH64_H
-+#define QATOMIC_AARCH64_H
-+
-+QT_BEGIN_HEADER
-+
-+QT_BEGIN_NAMESPACE
-+
-+#define Q_ATOMIC_INT_REFERENCE_COUNTING_IS_ALWAYS_NATIVE
-+
-+inline bool QBasicAtomicInt::isReferenceCountingNative()
-+{ return true; }
-+inline bool QBasicAtomicInt::isReferenceCountingWaitFree()
-+{ return false; }
-+
-+#define Q_ATOMIC_INT_TEST_AND_SET_IS_ALWAYS_NATIVE
-+
-+inline bool QBasicAtomicInt::isTestAndSetNative()
-+{ return true; }
-+inline bool QBasicAtomicInt::isTestAndSetWaitFree()
-+{ return false; }
-+
-+#define Q_ATOMIC_INT_FETCH_AND_STORE_IS_ALWAYS_NATIVE
-+
-+inline bool QBasicAtomicInt::isFetchAndStoreNative()
-+{ return true; }
-+inline bool QBasicAtomicInt::isFetchAndStoreWaitFree()
-+{ return false; }
-+
-+#define Q_ATOMIC_INT_FETCH_AND_ADD_IS_ALWAYS_NATIVE
-+
-+inline bool QBasicAtomicInt::isFetchAndAddNative()
-+{ return true; }
-+inline bool QBasicAtomicInt::isFetchAndAddWaitFree()
-+{ return false; }
-+
-+#define Q_ATOMIC_POINTER_TEST_AND_SET_IS_ALWAYS_NATIVE
-+
-+template <typename T>
-+Q_INLINE_TEMPLATE bool QBasicAtomicPointer<T>::isTestAndSetNative()
-+{ return true; }
-+template <typename T>
-+Q_INLINE_TEMPLATE bool QBasicAtomicPointer<T>::isTestAndSetWaitFree()
-+{ return false; }
-+
-+#define Q_ATOMIC_POINTER_FETCH_AND_STORE_IS_ALWAYS_NATIVE
-+
-+template <typename T>
-+Q_INLINE_TEMPLATE bool QBasicAtomicPointer<T>::isFetchAndStoreNative()
-+{ return true; }
-+template <typename T>
-+Q_INLINE_TEMPLATE bool QBasicAtomicPointer<T>::isFetchAndStoreWaitFree()
-+{ return false; }
-+
-+#define Q_ATOMIC_POINTER_FETCH_AND_ADD_IS_ALWAYS_NATIVE
-+
-+template <typename T>
-+Q_INLINE_TEMPLATE bool QBasicAtomicPointer<T>::isFetchAndAddNative()
-+{ return true; }
-+template <typename T>
-+Q_INLINE_TEMPLATE bool QBasicAtomicPointer<T>::isFetchAndAddWaitFree()
-+{ return false; }
-+
-+#ifndef Q_DATA_MEMORY_BARRIER
-+# define Q_DATA_MEMORY_BARRIER asm volatile("dmb sy\n":::"memory")
-+#endif
-+#ifndef Q_COMPILER_MEMORY_BARRIER
-+# define Q_COMPILER_MEMORY_BARRIER asm volatile("":::"memory")
-+#endif
-+
-+inline bool QBasicAtomicInt::ref()
-+{
-+ int newValue;
-+
-+ Q_COMPILER_MEMORY_BARRIER;
-+ newValue = __atomic_add_fetch(&_q_value, 1, __ATOMIC_ACQ_REL);
-+ Q_COMPILER_MEMORY_BARRIER;
-+
-+ return newValue != 0;
-+}
-+
-+inline bool QBasicAtomicInt::deref()
-+{
-+ int newValue;
-+
-+ Q_COMPILER_MEMORY_BARRIER;
-+ newValue = __atomic_sub_fetch(&_q_value, 1, __ATOMIC_ACQ_REL);
-+ Q_COMPILER_MEMORY_BARRIER;
-+
-+ return newValue != 0;
-+}
-+
-+inline bool QBasicAtomicInt::testAndSetRelaxed(int expectedValue, int newValue)
-+{
-+ bool val;
-+
-+ Q_COMPILER_MEMORY_BARRIER;
-+ val = __atomic_compare_exchange_n (&_q_value, &expectedValue, newValue,
-+ false, __ATOMIC_RELAXED, __ATOMIC_RELAXED);
-+ Q_COMPILER_MEMORY_BARRIER;
-+ return val;
-+}
-+
-+inline int QBasicAtomicInt::fetchAndStoreRelaxed(int newValue)
-+{
-+ int val;
-+ Q_COMPILER_MEMORY_BARRIER;
-+ val = __atomic_exchange_n(&_q_value, newValue, __ATOMIC_RELAXED);
-+ Q_COMPILER_MEMORY_BARRIER;
-+ return val;
-+}
-+
-+inline int QBasicAtomicInt::fetchAndAddRelaxed(int valueToAdd)
-+{
-+ int val;
-+ Q_COMPILER_MEMORY_BARRIER;
-+ val = __atomic_fetch_add(&_q_value, valueToAdd, __ATOMIC_RELAXED);
-+ Q_COMPILER_MEMORY_BARRIER;
-+ return val;
-+}
-+
-+template <typename T>
-+Q_INLINE_TEMPLATE bool QBasicAtomicPointer<T>::testAndSetRelaxed(T *expectedValue, T *newValue)
-+{
-+ bool val;
-+ Q_COMPILER_MEMORY_BARRIER;
-+ val = __atomic_compare_exchange_n (&_q_value, &expectedValue, newValue,
-+ false, __ATOMIC_RELAXED, __ATOMIC_RELAXED);
-+ Q_COMPILER_MEMORY_BARRIER;
-+ return val;
-+}
-+
-+template <typename T>
-+Q_INLINE_TEMPLATE T *QBasicAtomicPointer<T>::fetchAndStoreRelaxed(T *newValue)
-+{
-+ T *val;
-+ Q_COMPILER_MEMORY_BARRIER;
-+ val = __atomic_exchange_n(&_q_value, newValue, __ATOMIC_RELAXED);
-+ Q_COMPILER_MEMORY_BARRIER;
-+ return val;
-+}
-+
-+template <typename T>
-+Q_INLINE_TEMPLATE T *QBasicAtomicPointer<T>::fetchAndAddRelaxed(qptrdiff valueToAdd)
-+{
-+ T *val;
-+ Q_COMPILER_MEMORY_BARRIER;
-+ val = __atomic_fetch_add(&_q_value, valueToAdd, __ATOMIC_RELAXED);
-+ Q_COMPILER_MEMORY_BARRIER;
-+ return val;
-+}
-+
-+inline bool QBasicAtomicInt::testAndSetAcquire(int expectedValue, int newValue)
-+{
-+ bool returnValue = testAndSetRelaxed(expectedValue, newValue);
-+ Q_DATA_MEMORY_BARRIER;
-+ return returnValue;
-+}
-+
-+inline bool QBasicAtomicInt::testAndSetRelease(int expectedValue, int newValue)
-+{
-+ Q_DATA_MEMORY_BARRIER;
-+ return testAndSetRelaxed(expectedValue, newValue);
-+}
-+
-+inline bool QBasicAtomicInt::testAndSetOrdered(int expectedValue, int newValue)
-+{
-+ Q_DATA_MEMORY_BARRIER;
-+ bool returnValue = testAndSetRelaxed(expectedValue, newValue);
-+ Q_COMPILER_MEMORY_BARRIER;
-+ return returnValue;
-+}
-+
-+inline int QBasicAtomicInt::fetchAndStoreAcquire(int newValue)
-+{
-+ int returnValue = fetchAndStoreRelaxed(newValue);
-+ Q_DATA_MEMORY_BARRIER;
-+ return returnValue;
-+}
-+
-+inline int QBasicAtomicInt::fetchAndStoreRelease(int newValue)
-+{
-+ Q_DATA_MEMORY_BARRIER;
-+ return fetchAndStoreRelaxed(newValue);
-+}
-+
-+inline int QBasicAtomicInt::fetchAndStoreOrdered(int newValue)
-+{
-+ Q_DATA_MEMORY_BARRIER;
-+ int returnValue = fetchAndStoreRelaxed(newValue);
-+ Q_COMPILER_MEMORY_BARRIER;
-+ return returnValue;
-+}
-+
-+inline int QBasicAtomicInt::fetchAndAddAcquire(int valueToAdd)
-+{
-+ int returnValue = fetchAndAddRelaxed(valueToAdd);
-+ Q_DATA_MEMORY_BARRIER;
-+ return returnValue;
-+}
-+
-+inline int QBasicAtomicInt::fetchAndAddRelease(int valueToAdd)
-+{
-+ Q_DATA_MEMORY_BARRIER;
-+ return fetchAndAddRelaxed(valueToAdd);
-+}
-+
-+inline int QBasicAtomicInt::fetchAndAddOrdered(int valueToAdd)
-+{
-+ Q_DATA_MEMORY_BARRIER;
-+ int returnValue = fetchAndAddRelaxed(valueToAdd);
-+ Q_COMPILER_MEMORY_BARRIER;
-+ return returnValue;
-+}
-+
-+template <typename T>
-+Q_INLINE_TEMPLATE bool QBasicAtomicPointer<T>::testAndSetAcquire(T *expectedValue, T *newValue)
-+{
-+ bool returnValue = testAndSetRelaxed(expectedValue, newValue);
-+ Q_DATA_MEMORY_BARRIER;
-+ return returnValue;
-+}
-+
-+template <typename T>
-+Q_INLINE_TEMPLATE bool QBasicAtomicPointer<T>::testAndSetRelease(T *expectedValue, T *newValue)
-+{
-+ Q_DATA_MEMORY_BARRIER;
-+ return testAndSetRelaxed(expectedValue, newValue);
-+}
-+
-+template <typename T>
-+Q_INLINE_TEMPLATE bool QBasicAtomicPointer<T>::testAndSetOrdered(T *expectedValue, T *newValue)
-+{
-+ Q_DATA_MEMORY_BARRIER;
-+ bool returnValue = testAndSetAcquire(expectedValue, newValue);
-+ Q_COMPILER_MEMORY_BARRIER;
-+ return returnValue;
-+}
-+
-+template <typename T>
-+Q_INLINE_TEMPLATE T *QBasicAtomicPointer<T>::fetchAndStoreAcquire(T *newValue)
-+{
-+ T *returnValue = fetchAndStoreRelaxed(newValue);
-+ Q_DATA_MEMORY_BARRIER;
-+ return returnValue;
-+}
-+
-+template <typename T>
-+Q_INLINE_TEMPLATE T *QBasicAtomicPointer<T>::fetchAndStoreRelease(T *newValue)
-+{
-+ Q_DATA_MEMORY_BARRIER;
-+ return fetchAndStoreRelaxed(newValue);
-+}
-+
-+template <typename T>
-+Q_INLINE_TEMPLATE T *QBasicAtomicPointer<T>::fetchAndStoreOrdered(T *newValue)
-+{
-+ Q_DATA_MEMORY_BARRIER;
-+ T *returnValue = fetchAndStoreRelaxed(newValue);
-+ Q_COMPILER_MEMORY_BARRIER;
-+ return returnValue;
-+}
-+
-+template <typename T>
-+Q_INLINE_TEMPLATE T *QBasicAtomicPointer<T>::fetchAndAddAcquire(qptrdiff valueToAdd)
-+{
-+ T *returnValue = fetchAndAddRelaxed(valueToAdd);
-+ Q_DATA_MEMORY_BARRIER;
-+ return returnValue;
-+}
-+
-+template <typename T>
-+Q_INLINE_TEMPLATE T *QBasicAtomicPointer<T>::fetchAndAddRelease(qptrdiff valueToAdd)
-+{
-+ Q_DATA_MEMORY_BARRIER;
-+ return fetchAndAddRelaxed(valueToAdd);
-+}
-+
-+template <typename T>
-+Q_INLINE_TEMPLATE T *QBasicAtomicPointer<T>::fetchAndAddOrdered(qptrdiff valueToAdd)
-+{
-+ Q_DATA_MEMORY_BARRIER;
-+ T *returnValue = fetchAndAddRelaxed(valueToAdd);
-+ Q_COMPILER_MEMORY_BARRIER;
-+ return returnValue;
-+}
-+
-+#undef Q_DATA_MEMORY_BARRIER
-+#undef Q_COMPILER_MEMORY_BARRIER
-+
-+QT_END_NAMESPACE
-+
-+QT_END_HEADER
-+
-+#endif // QATOMIC_AARCH64_H
-diff -up qt-everywhere-opensource-src-4.8.7/src/corelib/arch/qatomic_arch.h.aarch64 qt-everywhere-opensource-src-4.8.7/src/corelib/arch/qatomic_arch.h
---- qt-everywhere-opensource-src-4.8.7/src/corelib/arch/qatomic_arch.h.aarch64 2015-05-07 09:14:48.000000000 -0500
-+++ qt-everywhere-opensource-src-4.8.7/src/corelib/arch/qatomic_arch.h 2015-05-08 21:48:33.271061031 -0500
-@@ -94,6 +94,8 @@ QT_BEGIN_HEADER
- # include "QtCore/qatomic_sh4a.h"
- #elif defined(QT_ARCH_NACL)
- # include "QtCore/qatomic_generic.h"
-+#elif defined(QT_ARCH_AARCH64)
-+# include "QtCore/qatomic_aarch64.h"
- #else
- # error "Qt has not been ported to this architecture"
- #endif
diff --git a/source/l/qt/patches/qt-cupsEnumDests.patch b/source/l/qt/patches/qt-cupsEnumDests.patch
deleted file mode 100644
index 7d59f22e8..000000000
--- a/source/l/qt/patches/qt-cupsEnumDests.patch
+++ /dev/null
@@ -1,238 +0,0 @@
-diff -up qt-everywhere-opensource-src-4.8.4/src/gui/painting/qcups.cpp.cupsEnumDests qt-everywhere-opensource-src-4.8.4/src/gui/painting/qcups.cpp
---- qt-everywhere-opensource-src-4.8.4/src/gui/painting/qcups.cpp.cupsEnumDests 2012-11-23 10:09:53.000000000 +0000
-+++ qt-everywhere-opensource-src-4.8.4/src/gui/painting/qcups.cpp 2013-07-03 15:30:06.232936976 +0100
-@@ -50,9 +50,19 @@
-
- QT_BEGIN_NAMESPACE
-
-+typedef int (*CupsEnumDests)(unsigned flags, int msec, int *cancel,
-+ cups_ptype_t type, cups_ptype_t mask,
-+ cups_dest_cb_t cb, void *user_data);
-+typedef http_t * (*CupsConnectDest)(cups_dest_t *dest, unsigned flags,
-+ int msec, int *cancel,
-+ char *resource, size_t resourcesize,
-+ cups_dest_cb_t cb, void *user_data);
-+typedef int (*CupsCopyDest)(cups_dest_t *dest, int num_dests,
-+ cups_dest_t **dests);
- typedef int (*CupsGetDests)(cups_dest_t **dests);
- typedef void (*CupsFreeDests)(int num_dests, cups_dest_t *dests);
- typedef const char* (*CupsGetPPD)(const char *printer);
-+typedef const char* (*CupsGetPPD2)(http_t *http, const char *printer);
- typedef int (*CupsMarkOptions)(ppd_file_t *ppd, int num_options, cups_option_t *options);
- typedef ppd_file_t* (*PPDOpenFile)(const char *filename);
- typedef void (*PPDMarkDefaults)(ppd_file_t *ppd);
-@@ -66,12 +76,24 @@ typedef const char* (*CupsLangEncoding)(
- typedef int (*CupsAddOption)(const char *name, const char *value, int num_options, cups_option_t **options);
- typedef int (*CupsTempFd)(char *name, int len);
- typedef int (*CupsPrintFile)(const char * name, const char * filename, const char * title, int num_options, cups_option_t * options);
-+typedef int (*CupsPrintFile2)(http_t *http, const char *name, const char *filename, const char *title, int num_options, cups_option_t *options);
-+
-+typedef struct
-+{
-+ cups_dest_t *printers;
-+ int num_printers;
-+} EnumDestsContext;
-
- static bool cupsLoaded = false;
- static int qt_cups_num_printers = 0;
-+static cups_dest_t *qt_cups_printers = 0;
-+static CupsEnumDests _cupsEnumDests = 0;
-+static CupsConnectDest _cupsConnectDest = 0;
-+static CupsCopyDest _cupsCopyDest = 0;
- static CupsGetDests _cupsGetDests = 0;
- static CupsFreeDests _cupsFreeDests = 0;
- static CupsGetPPD _cupsGetPPD = 0;
-+static CupsGetPPD2 _cupsGetPPD2 = 0;
- static PPDOpenFile _ppdOpenFile = 0;
- static PPDMarkDefaults _ppdMarkDefaults = 0;
- static PPDClose _ppdClose = 0;
-@@ -84,14 +106,35 @@ static CupsLangEncoding _cupsLangEncodin
- static CupsAddOption _cupsAddOption = 0;
- static CupsTempFd _cupsTempFd = 0;
- static CupsPrintFile _cupsPrintFile = 0;
-+static CupsPrintFile2 _cupsPrintFile2 = 0;
-+
-+static int enum_dest_cb (void *user_data, unsigned flags, cups_dest_t *dest)
-+{
-+ EnumDestsContext *context = (EnumDestsContext *) user_data;
-+
-+ if ((flags & (CUPS_DEST_FLAGS_UNCONNECTED |
-+ CUPS_DEST_FLAGS_REMOVED |
-+ CUPS_DEST_FLAGS_ERROR |
-+ CUPS_DEST_FLAGS_RESOLVING |
-+ CUPS_DEST_FLAGS_CONNECTING |
-+ CUPS_DEST_FLAGS_CANCELED)) == 0)
-+ context->num_printers = _cupsCopyDest (dest, context->num_printers,
-+ &context->printers);
-+
-+ return 1;
-+}
-
- static void resolveCups()
- {
- QLibrary cupsLib(QLatin1String("cups"), 2);
- if(cupsLib.load()) {
-+ _cupsEnumDests = (CupsEnumDests) cupsLib.resolve("cupsEnumDests");
-+ _cupsConnectDest = (CupsConnectDest) cupsLib.resolve("cupsConnectDest");
-+ _cupsCopyDest = (CupsCopyDest) cupsLib.resolve("cupsCopyDest");
- _cupsGetDests = (CupsGetDests) cupsLib.resolve("cupsGetDests");
- _cupsFreeDests = (CupsFreeDests) cupsLib.resolve("cupsFreeDests");
- _cupsGetPPD = (CupsGetPPD) cupsLib.resolve("cupsGetPPD");
-+ _cupsGetPPD2 = (CupsGetPPD2) cupsLib.resolve("cupsGetPPD2");
- _cupsLangGet = (CupsLangGet) cupsLib.resolve("cupsLangGet");
- _cupsLangEncoding = (CupsLangEncoding) cupsLib.resolve("cupsLangEncoding");
- _ppdOpenFile = (PPDOpenFile) cupsLib.resolve("ppdOpenFile");
-@@ -104,14 +147,27 @@ static void resolveCups()
- _cupsAddOption = (CupsAddOption) cupsLib.resolve("cupsAddOption");
- _cupsTempFd = (CupsTempFd) cupsLib.resolve("cupsTempFd");
- _cupsPrintFile = (CupsPrintFile) cupsLib.resolve("cupsPrintFile");
-+ _cupsPrintFile2 = (CupsPrintFile2) cupsLib.resolve("cupsPrintFile2");
-
-- if (_cupsGetDests && _cupsFreeDests) {
-- cups_dest_t *printers;
-+ if (_cupsEnumDests && _cupsCopyDest &&
-+ _cupsConnectDest && _cupsGetPPD2 &&
-+ _cupsPrintFile2) {
-+ EnumDestsContext context;
-+ context.printers = 0;
-+ context.num_printers = 0;
-+ _cupsEnumDests(0, -1, 0, 0, 0,
-+ enum_dest_cb, &context);
-+
-+ qt_cups_printers = context.printers;
-+ qt_cups_num_printers = context.num_printers;
-+ } else if (_cupsGetDests && _cupsFreeDests) {
-+ cups_dest_t *printers;
- int num_printers = _cupsGetDests(&printers);
-- if (num_printers)
-- _cupsFreeDests(num_printers, printers);
-- qt_cups_num_printers = num_printers;
-- }
-+
-+ if (num_printers)
-+ _cupsFreeDests(num_printers, printers);
-+ qt_cups_num_printers = num_printers;
-+ }
- }
- cupsLoaded = true;
- }
-@@ -134,7 +190,15 @@ QCUPSSupport::QCUPSSupport()
- return;
-
- // Update the available printer count
-- qt_cups_num_printers = prnCount = _cupsGetDests(&printers);
-+ if (qt_cups_printers && _cupsCopyDest) {
-+ int i;
-+ for (i = 0; i < qt_cups_num_printers; ++i) {
-+ prnCount = _cupsCopyDest (&qt_cups_printers[i],
-+ prnCount,
-+ &printers);
-+ }
-+ } else
-+ qt_cups_num_printers = prnCount = _cupsGetDests(&printers);
-
- for (int i = 0; i < prnCount; ++i) {
- if (printers[i].is_default) {
-@@ -188,7 +252,19 @@ const ppd_file_t* QCUPSSupport::setCurre
- currPPD = 0;
- page_sizes = 0;
-
-- const char *ppdFile = _cupsGetPPD(printers[index].name);
-+ const char *ppdFile = 0;
-+ if (_cupsConnectDest && _cupsGetPPD2) {
-+ char resource[HTTP_MAX_URI];
-+ http_t *http = _cupsConnectDest (&printers[index], 0, -1, 0,
-+ resource, sizeof (resource),
-+ 0, 0);
-+ if (http) {
-+ char *name = strrchr (resource, '/');
-+ if (name)
-+ ppdFile = _cupsGetPPD2 (http, ++name);
-+ }
-+ } else
-+ ppdFile = _cupsGetPPD(printers[index].name);
-
- if (!ppdFile)
- return 0;
-@@ -343,7 +419,29 @@ bool QCUPSSupport::printerHasPPD(const c
- {
- if (!isAvailable())
- return false;
-- const char *ppdFile = _cupsGetPPD(printerName);
-+
-+ const char *ppdFile = 0;
-+ if (_cupsConnectDest && _cupsGetPPD2) {
-+ int i;
-+ for (i = 0; i < prnCount; ++i)
-+ if (!strcmp (printers[i].name, printerName))
-+ break;
-+
-+ if (i == prnCount)
-+ return false;
-+
-+ char resource[HTTP_MAX_URI];
-+ http_t *http = _cupsConnectDest (&printers[i], 0, -1, 0,
-+ resource, sizeof (resource),
-+ 0, 0);
-+ if (http) {
-+ char *name = strrchr (resource, '/');
-+ if (name)
-+ ppdFile = _cupsGetPPD2 (http, ++name);
-+ }
-+ } else
-+ ppdFile = _cupsGetPPD(printerName);
-+
- if (ppdFile)
- unlink(ppdFile);
- return (ppdFile != 0);
-@@ -394,6 +492,26 @@ QPair<int, QString> QCUPSSupport::tempFd
- int QCUPSSupport::printFile(const char * printerName, const char * filename, const char * title,
- int num_options, cups_option_t * options)
- {
-+ if (_cupsConnectDest && _cupsPrintFile2) {
-+ int i;
-+ for (i = 0; i < prnCount; ++i)
-+ if (!strcmp (printers[i].name, printerName))
-+ break;
-+
-+ if (i != prnCount) {
-+ char resource[HTTP_MAX_URI];
-+ http_t *http = _cupsConnectDest (&printers[i], 0, -1, 0,
-+ resource, sizeof (resource),
-+ 0, 0);
-+ if (http) {
-+ char *name = strrchr (resource, '/');
-+ if (name)
-+ return _cupsPrintFile2 (http, ++name, filename, title,
-+ num_options, options);
-+ }
-+ }
-+ }
-+
- return _cupsPrintFile(printerName, filename, title, num_options, options);
- }
-
-diff -up qt-everywhere-opensource-src-4.8.4/src/gui/painting/qcups_p.h.cupsEnumDests qt-everywhere-opensource-src-4.8.4/src/gui/painting/qcups_p.h
---- qt-everywhere-opensource-src-4.8.4/src/gui/painting/qcups_p.h.cupsEnumDests 2012-11-23 10:09:53.000000000 +0000
-+++ qt-everywhere-opensource-src-4.8.4/src/gui/painting/qcups_p.h 2013-07-03 15:27:24.733343017 +0100
-@@ -92,7 +92,7 @@ public:
-
- QStringList options() const;
-
-- static bool printerHasPPD(const char *printerName);
-+ bool printerHasPPD(const char *printerName);
-
- QString unicodeString(const char *s);
-
-diff -up qt-everywhere-opensource-src-4.8.4/src/gui/painting/qprinter.cpp.cupsEnumDests qt-everywhere-opensource-src-4.8.4/src/gui/painting/qprinter.cpp
---- qt-everywhere-opensource-src-4.8.4/src/gui/painting/qprinter.cpp.cupsEnumDests 2013-07-03 15:27:24.531342277 +0100
-+++ qt-everywhere-opensource-src-4.8.4/src/gui/painting/qprinter.cpp 2013-07-03 15:27:24.733343017 +0100
-@@ -844,7 +844,7 @@ void QPrinter::setPrinterName(const QStr
- if(d->use_default_engine
- && d->outputFormat == QPrinter::NativeFormat) {
- if (QCUPSSupport::cupsVersion() >= 10200
-- && QCUPSSupport::printerHasPPD(name.toLocal8Bit().constData()))
-+ && QCUPSSupport().printerHasPPD(name.toLocal8Bit().constData()))
- setOutputFormat(QPrinter::PdfFormat);
- else
- setOutputFormat(QPrinter::PostScriptFormat);
diff --git a/source/l/qt/patches/qt-everywhere-opensource-src-4.6.2-cups.patch b/source/l/qt/patches/qt-everywhere-opensource-src-4.6.2-cups.patch
deleted file mode 100644
index e0305e11b..000000000
--- a/source/l/qt/patches/qt-everywhere-opensource-src-4.6.2-cups.patch
+++ /dev/null
@@ -1,84 +0,0 @@
-diff -ur qt-everywhere-opensource-src-4.6.2/src/gui/dialogs/qprintdialog_unix.cpp qt-everywhere-opensource-src-4.6.2-cups/src/gui/dialogs/qprintdialog_unix.cpp
---- qt-everywhere-opensource-src-4.6.2/src/gui/dialogs/qprintdialog_unix.cpp 2010-02-11 16:55:22.000000000 +0100
-+++ qt-everywhere-opensource-src-4.6.2-cups/src/gui/dialogs/qprintdialog_unix.cpp 2010-02-28 04:34:16.000000000 +0100
-@@ -569,6 +569,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
-
-diff -ur qt-everywhere-opensource-src-4.6.2/src/gui/painting/qprinter.cpp qt-everywhere-opensource-src-4.6.2-cups/src/gui/painting/qprinter.cpp
---- qt-everywhere-opensource-src-4.6.2/src/gui/painting/qprinter.cpp 2010-02-11 16:55:22.000000000 +0100
-+++ qt-everywhere-opensource-src-4.6.2-cups/src/gui/painting/qprinter.cpp 2010-02-28 04:55:15.000000000 +0100
-@@ -627,6 +627,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
- }
-
- /*!
diff --git a/source/l/qt/patches/qt-everywhere-opensource-src-4.6.3-glib_eventloop_nullcheck.patch b/source/l/qt/patches/qt-everywhere-opensource-src-4.6.3-glib_eventloop_nullcheck.patch
deleted file mode 100644
index d4e5924df..000000000
--- a/source/l/qt/patches/qt-everywhere-opensource-src-4.6.3-glib_eventloop_nullcheck.patch
+++ /dev/null
@@ -1,69 +0,0 @@
-diff -ur qt-everywhere-opensource-src-4.6.3/src/gui/kernel/qguieventdispatcher_glib.cpp qt-everywhere-opensource-src-4.6.3-glib_eventloop_nullcheck/src/gui/kernel/qguieventdispatcher_glib.cpp
---- qt-everywhere-opensource-src-4.6.3/src/gui/kernel/qguieventdispatcher_glib.cpp 2010-06-02 04:03:15.000000000 +0200
-+++ qt-everywhere-opensource-src-4.6.3-glib_eventloop_nullcheck/src/gui/kernel/qguieventdispatcher_glib.cpp 2010-12-08 22:22:38.000000000 +0100
-@@ -76,7 +76,7 @@
- GX11EventSource *source = reinterpret_cast<GX11EventSource *>(s);
- return (XEventsQueued(X11->display, QueuedAfterFlush)
- || (!(source->flags & QEventLoop::ExcludeUserInputEvents)
-- && !source->d->queuedUserInputEvents.isEmpty()));
-+ && source->d && !source->d->queuedUserInputEvents.isEmpty()));
- }
-
- static gboolean x11EventSourceCheck(GSource *s)
-@@ -84,7 +84,7 @@
- GX11EventSource *source = reinterpret_cast<GX11EventSource *>(s);
- return (XEventsQueued(X11->display, QueuedAfterFlush)
- || (!(source->flags & QEventLoop::ExcludeUserInputEvents)
-- && !source->d->queuedUserInputEvents.isEmpty()));
-+ && source->d && !source->d->queuedUserInputEvents.isEmpty()));
- }
-
- static gboolean x11EventSourceDispatch(GSource *s, GSourceFunc callback, gpointer user_data)
-@@ -95,7 +95,7 @@
- do {
- XEvent event;
- if (!(source->flags & QEventLoop::ExcludeUserInputEvents)
-- && !source->d->queuedUserInputEvents.isEmpty()) {
-+ && source->d && !source->d->queuedUserInputEvents.isEmpty()) {
- // process a pending user input event
- event = source->d->queuedUserInputEvents.takeFirst();
- } else if (XEventsQueued(X11->display, QueuedAlready)) {
-@@ -112,7 +112,8 @@
- case XKeyRelease:
- case EnterNotify:
- case LeaveNotify:
-- source->d->queuedUserInputEvents.append(event);
-+ if (source->d)
-+ source->d->queuedUserInputEvents.append(event);
- continue;
-
- case ClientMessage:
-@@ -127,7 +128,8 @@
- break;
- }
- }
-- source->d->queuedUserInputEvents.append(event);
-+ if (source->d)
-+ source->d->queuedUserInputEvents.append(event);
- continue;
-
- default:
-@@ -140,7 +142,7 @@
- }
-
- // send through event filter
-- if (source->q->filterEvent(&event))
-+ if (source->q && source->q->filterEvent(&event))
- continue;
-
- if (qApp->x11ProcessEvent(&event) == 1)
-@@ -152,7 +154,8 @@
-
- out:
-
-- source->d->runTimersOnceWithNormalPriority();
-+ if (source->d)
-+ source->d->runTimersOnceWithNormalPriority();
-
- if (callback)
- callback(user_data);
diff --git a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.0-QTBUG-22037.patch b/source/l/qt/patches/qt-everywhere-opensource-src-4.8.0-QTBUG-22037.patch
deleted file mode 100644
index 4279ce2e7..000000000
--- a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.0-QTBUG-22037.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-diff -up qt-everywhere-opensource-src-4.8.0/src/corelib/tools/qlist.h.QTBUG-22037 qt-everywhere-opensource-src-4.8.0/src/corelib/tools/qlist.h
---- qt-everywhere-opensource-src-4.8.0/src/corelib/tools/qlist.h.QTBUG-22037 2011-10-03 22:44:32.000000000 -0500
-+++ qt-everywhere-opensource-src-4.8.0/src/corelib/tools/qlist.h 2011-10-15 14:25:52.238694974 -0500
-@@ -769,26 +769,18 @@ Q_OUTOFLINE_TEMPLATE void QList<T>::clea
- template <typename T>
- Q_OUTOFLINE_TEMPLATE int QList<T>::removeAll(const T &_t)
- {
-- int index = indexOf(_t);
-- if (index == -1)
-- return 0;
--
-+ detachShared();
- const T t = _t;
-- detach();
--
-- Node *i = reinterpret_cast<Node *>(p.at(index));
-- Node *e = reinterpret_cast<Node *>(p.end());
-- Node *n = i;
-- node_destruct(i);
-- while (++i != e) {
-- if (i->t() == t)
-- node_destruct(i);
-- else
-- *n++ = *i;
-- }
--
-- int removedCount = e - n;
-- d->end -= removedCount;
-+ int removedCount=0, i=0;
-+ Node *n;
-+ while (i < p.size())
-+ if ((n = reinterpret_cast<Node *>(p.at(i)))->t() == t) {
-+ node_destruct(n);
-+ p.remove(i);
-+ ++removedCount;
-+ } else {
-+ ++i;
-+ }
- return removedCount;
- }
-
diff --git a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.0-s390-atomic.patch b/source/l/qt/patches/qt-everywhere-opensource-src-4.8.0-s390-atomic.patch
deleted file mode 100644
index 6fedcc810..000000000
--- a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.0-s390-atomic.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-diff -up qt-everywhere-opensource-src-4.8.0/src/corelib/arch/qatomic_s390.h.s390-atomic qt-everywhere-opensource-src-4.8.0/src/corelib/arch/qatomic_s390.h
---- qt-everywhere-opensource-src-4.8.0/src/corelib/arch/qatomic_s390.h.s390-atomic 2011-12-18 16:15:20.000000000 +0100
-+++ qt-everywhere-opensource-src-4.8.0/src/corelib/arch/qatomic_s390.h 2011-12-18 16:17:34.000000000 +0100
-@@ -400,6 +400,16 @@ Q_INLINE_TEMPLATE T* QBasicAtomicPointer
-
-
- template <typename T>
-+Q_INLINE_TEMPLATE T *QBasicAtomicPointer<T>::fetchAndAddOrdered(qptrdiff valueToAdd)
-+{
-+#ifndef __s390x__
-+ return (T *)__CS_OLD_LOOP(&_q_value, valueToAdd * sizeof(T), "ar", "", "bcr 15,0\n");
-+#else
-+ return (T *)__CSG_OLD_LOOP(&_q_value, valueToAdd * sizeof(T), "agr", "", "bcr 15,0\n");
-+#endif
-+}
-+
-+template <typename T>
- Q_INLINE_TEMPLATE T *QBasicAtomicPointer<T>::fetchAndAddRelaxed(qptrdiff valueToAdd)
- {
- return fetchAndAddOrdered(valueToAdd);
diff --git a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.0-tp-multilib-optflags.patch b/source/l/qt/patches/qt-everywhere-opensource-src-4.8.0-tp-multilib-optflags.patch
deleted file mode 100644
index 5c8b5a1dd..000000000
--- a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.0-tp-multilib-optflags.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-diff -up qt-everywhere-opensource-src-4.8.0-tp/mkspecs/linux-g++-32/qmake.conf.multilib qt-everywhere-opensource-src-4.8.0-tp/mkspecs/linux-g++-32/qmake.conf
---- qt-everywhere-opensource-src-4.8.0-tp/mkspecs/linux-g++-32/qmake.conf.multilib 2011-05-23 12:26:21.000000000 +0200
-+++ qt-everywhere-opensource-src-4.8.0-tp/mkspecs/linux-g++-32/qmake.conf 2011-05-25 13:39:38.789054074 +0200
-@@ -12,6 +12,8 @@ QMAKE_INCREMENTAL_STYLE = sublib
- QMAKE_CFLAGS = -m32
- QMAKE_LFLAGS = -m32
-
-+QMAKE_CFLAGS_RELEASE += -O2
-+
- include(../common/linux.conf)
- include(../common/gcc-base-unix.conf)
- include(../common/g++-unix.conf)
-diff -up qt-everywhere-opensource-src-4.8.0-tp/mkspecs/linux-g++-64/qmake.conf.multilib qt-everywhere-opensource-src-4.8.0-tp/mkspecs/linux-g++-64/qmake.conf
---- qt-everywhere-opensource-src-4.8.0-tp/mkspecs/linux-g++-64/qmake.conf.multilib 2011-05-23 12:26:21.000000000 +0200
-+++ qt-everywhere-opensource-src-4.8.0-tp/mkspecs/linux-g++-64/qmake.conf 2011-05-25 13:39:47.460747770 +0200
-@@ -15,6 +15,8 @@ QMAKE_INCREMENTAL_STYLE = sublib
- QMAKE_CFLAGS = -m64
- QMAKE_LFLAGS = -m64
-
-+QMAKE_CFLAGS_RELEASE += -O2
-+
- include(../common/linux.conf)
- include(../common/gcc-base-unix.conf)
- include(../common/g++-unix.conf)
-diff -up qt-everywhere-opensource-src-4.8.0-tp/mkspecs/linux-g++/qmake.conf.multilib qt-everywhere-opensource-src-4.8.0-tp/mkspecs/linux-g++/qmake.conf
---- qt-everywhere-opensource-src-4.8.0-tp/mkspecs/linux-g++/qmake.conf.multilib 2011-05-23 12:26:21.000000000 +0200
-+++ qt-everywhere-opensource-src-4.8.0-tp/mkspecs/linux-g++/qmake.conf 2011-05-25 13:39:26.630088814 +0200
-@@ -9,6 +9,8 @@ CONFIG += qt warn_on release increment
- QT += core gui
- QMAKE_INCREMENTAL_STYLE = sublib
-
-+QMAKE_CFLAGS_RELEASE += -O2
-+
- include(../common/linux.conf)
- include(../common/gcc-base-unix.conf)
- include(../common/g++-unix.conf)
diff --git a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.0-tp-qtreeview-kpackagekit-crash.patch b/source/l/qt/patches/qt-everywhere-opensource-src-4.8.0-tp-qtreeview-kpackagekit-crash.patch
deleted file mode 100644
index 947f7582d..000000000
--- a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.0-tp-qtreeview-kpackagekit-crash.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -up qt-everywhere-opensource-src-4.8.0-tp/src/gui/itemviews/qtreeview.cpp.qtreeview-kpackagekit-crash qt-everywhere-opensource-src-4.8.0-tp/src/gui/itemviews/qtreeview.cpp
---- qt-everywhere-opensource-src-4.8.0-tp/src/gui/itemviews/qtreeview.cpp.qtreeview-kpackagekit-crash 2011-05-23 12:26:21.000000000 +0200
-+++ qt-everywhere-opensource-src-4.8.0-tp/src/gui/itemviews/qtreeview.cpp 2011-05-25 13:24:33.137315194 +0200
-@@ -3215,7 +3215,7 @@ int QTreeViewPrivate::itemHeight(int ite
- return defaultItemHeight;
- if (viewItems.isEmpty())
- return 0;
-- const QModelIndex &index = viewItems.at(item).index;
-+ QModelIndex index = viewItems.at(item).index;
- if (!index.isValid())
- return 0;
- int height = viewItems.at(item).height;
diff --git a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.1-linguist_qmake-qt4.patch b/source/l/qt/patches/qt-everywhere-opensource-src-4.8.1-linguist_qmake-qt4.patch
deleted file mode 100644
index e84446ce8..000000000
--- a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.1-linguist_qmake-qt4.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-diff -up qt-everywhere-opensource-src-4.8.2/tools/linguist/lrelease/main.cpp.linguist_qtmake-qt4 qt-everywhere-opensource-src-4.8.2/tools/linguist/lrelease/main.cpp
---- qt-everywhere-opensource-src-4.8.2/tools/linguist/lrelease/main.cpp.linguist_qtmake-qt4 2012-04-26 21:45:50.000000000 +0200
-+++ qt-everywhere-opensource-src-4.8.2/tools/linguist/lrelease/main.cpp 2012-05-29 12:17:03.416561535 +0200
-@@ -314,9 +314,9 @@ int main(int argc, char **argv)
- parseHandler.verbose = evalHandler.verbose = cd.isVerbose();
- ProFileOption option;
- #ifdef QT_BOOTSTRAPPED
-- option.initProperties(binDir + QLatin1String("/qmake"));
-+ option.initProperties(binDir + QLatin1String("/qmake-qt4"));
- #else
-- option.initProperties(app.applicationDirPath() + QLatin1String("/qmake"));
-+ option.initProperties(app.applicationDirPath() + QLatin1String("/qmake-qt4"));
- #endif
- ProFileParser parser(0, &parseHandler);
- ProFileEvaluator visitor(&option, &parser, &evalHandler);
-diff -up qt-everywhere-opensource-src-4.8.2/tools/linguist/lupdate/main.cpp.linguist_qtmake-qt4 qt-everywhere-opensource-src-4.8.2/tools/linguist/lupdate/main.cpp
---- qt-everywhere-opensource-src-4.8.2/tools/linguist/lupdate/main.cpp.linguist_qtmake-qt4 2012-04-26 21:45:50.000000000 +0200
-+++ qt-everywhere-opensource-src-4.8.2/tools/linguist/lupdate/main.cpp 2012-05-29 11:46:48.811134546 +0200
-@@ -765,7 +765,7 @@ int main(int argc, char **argv)
-
- parseHandler.verbose = evalHandler.verbose = !!(options & Verbose);
- ProFileOption option;
-- option.initProperties(app.applicationDirPath() + QLatin1String("/qmake"));
-+ option.initProperties(app.applicationDirPath() + QLatin1String("/qmake-qt4"));
- option.setCommandLineArguments(QStringList() << QLatin1String("CONFIG+=lupdate_run"));
- ProFileParser parser(0, &parseHandler);
-
diff --git a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.1-qt3support_debuginfo.patch b/source/l/qt/patches/qt-everywhere-opensource-src-4.8.1-qt3support_debuginfo.patch
deleted file mode 100644
index 745831467..000000000
--- a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.1-qt3support_debuginfo.patch
+++ /dev/null
@@ -1,10 +0,0 @@
-diff -up qt-everywhere-opensource-src-4.8.1/src/qt3support/qt3support.pro.debuginfo qt-everywhere-opensource-src-4.8.1/src/qt3support/qt3support.pro
---- qt-everywhere-opensource-src-4.8.1/src/qt3support/qt3support.pro.debuginfo 2012-03-14 09:01:17.000000000 -0500
-+++ qt-everywhere-opensource-src-4.8.1/src/qt3support/qt3support.pro 2012-05-11 11:55:37.780070386 -0500
-@@ -34,6 +34,3 @@ MOCDIR = .moc
-
- *-g++*: QMAKE_CXXFLAGS += -fno-strict-aliasing
-
--CONFIG -= separate_debug_info
--CONFIG += no_debug_info
--
diff --git a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.2--assistant-crash.patch b/source/l/qt/patches/qt-everywhere-opensource-src-4.8.2--assistant-crash.patch
deleted file mode 100644
index f0a41a42e..000000000
--- a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.2--assistant-crash.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff -up qt-everywhere-opensource-src-4.8.2/tools/assistant/tools/assistant/mainwindow.cpp.me qt-everywhere-opensource-src-4.8.2/tools/assistant/tools/assistant/mainwindow.cpp
---- qt-everywhere-opensource-src-4.8.2/tools/assistant/tools/assistant/mainwindow.cpp.me 2012-06-19 12:52:22.740180410 +0200
-+++ qt-everywhere-opensource-src-4.8.2/tools/assistant/tools/assistant/mainwindow.cpp 2012-06-19 12:52:51.953194103 +0200
-@@ -944,8 +944,7 @@ void MainWindow::updateApplicationFont()
- if (helpEngine.usesAppFont())
- font = helpEngine.appFont();
-
-- const QWidgetList &widgets = qApp->allWidgets();
-- foreach (QWidget* widget, widgets)
-+ foreach (QWidget* widget, QApplication::allWidgets())
- widget->setFont(font);
- }
-
diff --git a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.3-icu_no_debug.patch b/source/l/qt/patches/qt-everywhere-opensource-src-4.8.3-icu_no_debug.patch
deleted file mode 100644
index 9c53f3c26..000000000
--- a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.3-icu_no_debug.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-diff -up qt-everywhere-opensource-src-4.8.3/src/corelib/tools/qlocale_icu.cpp.icu_no_debug qt-everywhere-opensource-src-4.8.3/src/corelib/tools/qlocale_icu.cpp
---- qt-everywhere-opensource-src-4.8.3/src/corelib/tools/qlocale_icu.cpp.icu_no_debug 2012-09-06 02:33:45.000000000 -0500
-+++ qt-everywhere-opensource-src-4.8.3/src/corelib/tools/qlocale_icu.cpp 2012-09-11 09:04:21.542379795 -0500
-@@ -84,7 +84,9 @@ bool qt_initIcu(const QString &localeStr
- QLibrary lib(QLatin1String("icui18n"), QLatin1String(U_ICU_VERSION_SHORT));
- lib.setLoadHints(QLibrary::ImprovedSearchHeuristics);
- if (!lib.load()) {
-+#ifndef QT_NO_DEBUG
- qWarning() << "Unable to load library icui18n" << lib.errorString();
-+#endif
- status = ErrorLoading;
- return false;
- }
-@@ -114,7 +116,9 @@ bool qt_initIcu(const QString &localeStr
- QLibrary ucLib(QLatin1String("icuuc"), QLatin1String(U_ICU_VERSION_SHORT));
- ucLib.setLoadHints(QLibrary::ImprovedSearchHeuristics);
- if (!ucLib.load()) {
-+#ifndef QT_NO_DEBUG
- qWarning() << "Unable to load library icuuc" << ucLib.errorString();
-+#endif
- status = ErrorLoading;
- return false;
- }
diff --git a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.3-no_Werror.patch b/source/l/qt/patches/qt-everywhere-opensource-src-4.8.3-no_Werror.patch
deleted file mode 100644
index 86dcc288d..000000000
--- a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.3-no_Werror.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -up qt-everywhere-opensource-src-4.8.3/src/3rdparty/webkit/Source/WebKit.pri.no_Werror qt-everywhere-opensource-src-4.8.3/src/3rdparty/webkit/Source/WebKit.pri
---- qt-everywhere-opensource-src-4.8.3/src/3rdparty/webkit/Source/WebKit.pri.no_Werror 2012-09-06 02:33:50.000000000 -0500
-+++ qt-everywhere-opensource-src-4.8.3/src/3rdparty/webkit/Source/WebKit.pri 2012-09-11 09:03:19.152159783 -0500
-@@ -102,7 +102,7 @@ CONFIG -= warn_on
-
- # Treat warnings as errors on x86/Linux/GCC
- linux-g++* {
-- !CONFIG(standalone_package):if(isEqual(QT_ARCH,x86_64)|isEqual(QT_ARCH,i386)): QMAKE_CXXFLAGS += -Werror
-+ #!CONFIG(standalone_package):if(isEqual(QT_ARCH,x86_64)|isEqual(QT_ARCH,i386)): QMAKE_CXXFLAGS += -Werror
-
- greaterThan(QT_GCC_MAJOR_VERSION, 3):greaterThan(QT_GCC_MINOR_VERSION, 5) {
- if (!contains(QMAKE_CXXFLAGS, -std=c++0x) && !contains(QMAKE_CXXFLAGS, -std=gnu++0x)) {
diff --git a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.3-qdbusconnection_no_debug.patch b/source/l/qt/patches/qt-everywhere-opensource-src-4.8.3-qdbusconnection_no_debug.patch
deleted file mode 100644
index dd3a5a022..000000000
--- a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.3-qdbusconnection_no_debug.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-diff -up qt-everywhere-opensource-src-4.8.3/src/dbus/qdbusconnection.cpp.qdbusconnection_no_debug.patch qt-everywhere-opensource-src-4.8.3/src/dbus/qdbusconnection.cpp
---- qt-everywhere-opensource-src-4.8.3/src/dbus/qdbusconnection.cpp.qdbusconnection_no_debug.patch 2012-09-06 02:33:44.000000000 -0500
-+++ qt-everywhere-opensource-src-4.8.3/src/dbus/qdbusconnection.cpp 2012-09-11 08:55:29.854026815 -0500
-@@ -1109,8 +1109,10 @@ public:
- // make sure this connection is running on the main thread
- QCoreApplication *instance = QCoreApplication::instance();
- if (!instance) {
-+#ifndef QT_NO_DEBUG
- qWarning("QDBusConnection: %s D-Bus connection created before QCoreApplication. Application may misbehave.",
- type == SessionBus ? "session" : type == SystemBus ? "system" : "generic");
-+#endif
- } else if (QDBusConnectionPrivate::d(*this)) {
- QDBusConnectionPrivate::d(*this)->moveToThread(instance->thread());
- }
diff --git a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.4-qmake_pkgconfig_requires_private.patch b/source/l/qt/patches/qt-everywhere-opensource-src-4.8.4-qmake_pkgconfig_requires_private.patch
deleted file mode 100644
index 0494c81f0..000000000
--- a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.4-qmake_pkgconfig_requires_private.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-diff -up qt-everywhere-opensource-src-4.8.4/qmake/generators/makefile.cpp.qmake_pkgconfig_requires_private qt-everywhere-opensource-src-4.8.4/qmake/generators/makefile.cpp
---- qt-everywhere-opensource-src-4.8.4/qmake/generators/makefile.cpp.qmake_pkgconfig_requires_private 2012-11-23 04:11:21.000000000 -0600
-+++ qt-everywhere-opensource-src-4.8.4/qmake/generators/makefile.cpp 2013-02-11 07:36:36.192779528 -0600
-@@ -3293,6 +3293,12 @@ MakefileGenerator::writePkgConfigFile()
- t << "Requires: " << requires << endl;
- }
-
-+ // requires.private
-+ const QString requires_private = project->values("QMAKE_PKGCONFIG_REQUIRES_PRIVATE").join(" ");
-+ if (!requires_private.isEmpty()) {
-+ t << "Requires.private: " << requires_private << endl;
-+ }
-+
- t << endl;
- }
-
diff --git a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.5-QTBUG-14467.patch b/source/l/qt/patches/qt-everywhere-opensource-src-4.8.5-QTBUG-14467.patch
deleted file mode 100644
index 81d74ff4d..000000000
--- a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.5-QTBUG-14467.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-diff -up qt-everywhere-opensource-src-4.8.5/mkspecs/features/qt_functions.prf.QTBUG-14467 qt-everywhere-opensource-src-4.8.5/mkspecs/features/qt_functions.prf
---- qt-everywhere-opensource-src-4.8.5/mkspecs/features/qt_functions.prf.QTBUG-14467 2013-05-30 16:19:17.000000000 -0500
-+++ qt-everywhere-opensource-src-4.8.5/mkspecs/features/qt_functions.prf 2013-06-09 11:53:45.709773603 -0500
-@@ -72,7 +72,7 @@ defineTest(qtAddLibrary) {
- }
- isEmpty(LINKAGE) {
- if(!debug_and_release|build_pass):CONFIG(debug, debug|release) {
-- win32:LINKAGE = -l$${LIB_NAME}$${QT_LIBINFIX}d
-+ win32:LINKAGE = -l$${LIB_NAME}d$${QT_LIBINFIX}
- mac:LINKAGE = -l$${LIB_NAME}$${QT_LIBINFIX}_debug
- }
- isEmpty(LINKAGE):LINKAGE = -l$${LIB_NAME}$${QT_LIBINFIX}
-diff -up qt-everywhere-opensource-src-4.8.5/mkspecs/features/win32/windows.prf.QTBUG-14467 qt-everywhere-opensource-src-4.8.5/mkspecs/features/win32/windows.prf
---- qt-everywhere-opensource-src-4.8.5/mkspecs/features/win32/windows.prf.QTBUG-14467 2013-05-30 16:19:17.000000000 -0500
-+++ qt-everywhere-opensource-src-4.8.5/mkspecs/features/win32/windows.prf 2013-06-09 11:53:45.710773593 -0500
-@@ -6,7 +6,7 @@ contains(TEMPLATE, ".*app"){
-
- qt:for(entryLib, $$list($$unique(QMAKE_LIBS_QT_ENTRY))) {
- isEqual(entryLib, -lqtmain): {
-- CONFIG(debug, debug|release): QMAKE_LIBS += $${entryLib}$${QT_LIBINFIX}d
-+ CONFIG(debug, debug|release): QMAKE_LIBS += $${entryLib}d$${QT_LIBINFIX}
- else: QMAKE_LIBS += $${entryLib}$${QT_LIBINFIX}
- } else {
- QMAKE_LIBS += $${entryLib}
diff --git a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.5-QTBUG-21900.patch b/source/l/qt/patches/qt-everywhere-opensource-src-4.8.5-QTBUG-21900.patch
deleted file mode 100644
index 018872f6d..000000000
--- a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.5-QTBUG-21900.patch
+++ /dev/null
@@ -1,84 +0,0 @@
-diff -up qt-everywhere-opensource-src-4.8.5/src/gui/kernel/qapplication_x11.cpp.QTBUG-21900 qt-everywhere-opensource-src-4.8.5/src/gui/kernel/qapplication_x11.cpp
---- qt-everywhere-opensource-src-4.8.5/src/gui/kernel/qapplication_x11.cpp.QTBUG-21900 2013-05-30 16:18:05.000000000 -0500
-+++ qt-everywhere-opensource-src-4.8.5/src/gui/kernel/qapplication_x11.cpp 2013-06-09 11:53:45.891771748 -0500
-@@ -818,6 +818,27 @@ static Bool qt_sync_request_scanner(Disp
- #endif
- #endif // QT_NO_XSYNC
-
-+struct qt_configure_event_data
-+{
-+ WId window;
-+ WId parent;
-+};
-+
-+static Bool qt_configure_event_scanner(Display*, XEvent *event, XPointer arg)
-+{
-+ qt_configure_event_data *data =
-+ reinterpret_cast<qt_configure_event_data*>(arg);
-+ if (event->type == ConfigureNotify &&
-+ event->xconfigure.window == data->window) {
-+ return true;
-+ } else if (event->type == ReparentNotify &&
-+ event->xreparent.window == data->window) {
-+ data->parent = event->xreparent.parent;
-+ }
-+
-+ return false;
-+}
-+
- static void qt_x11_create_intern_atoms()
- {
- const char *names[QX11Data::NAtoms];
-@@ -5302,8 +5323,11 @@ bool QETWidget::translateConfigEvent(con
- if (d->extra->compress_events) {
- // ConfigureNotify compression for faster opaque resizing
- XEvent otherEvent;
-- while (XCheckTypedWindowEvent(X11->display, internalWinId(), ConfigureNotify,
-- &otherEvent)) {
-+ qt_configure_event_data configureData;
-+ configureData.window = internalWinId();
-+ configureData.parent = d->topData()->parentWinId;
-+ while (XCheckIfEvent(X11->display, &otherEvent,
-+ &qt_configure_event_scanner, (XPointer)&configureData)) {
- if (qt_x11EventFilter(&otherEvent))
- continue;
-
-@@ -5316,13 +5340,19 @@ bool QETWidget::translateConfigEvent(con
- newSize.setWidth(otherEvent.xconfigure.width);
- newSize.setHeight(otherEvent.xconfigure.height);
-
-+ trust = isVisible()
-+ && (configureData.parent == XNone ||
-+ configureData.parent == QX11Info::appRootWindow());
-+
- if (otherEvent.xconfigure.send_event || trust) {
- newCPos.rx() = otherEvent.xconfigure.x +
- otherEvent.xconfigure.border_width;
- newCPos.ry() = otherEvent.xconfigure.y +
- otherEvent.xconfigure.border_width;
- isCPos = true;
-- }
-+ } else {
-+ isCPos = false;
-+ }
- }
- #ifndef QT_NO_XSYNC
- qt_sync_request_event_data sync_event;
-@@ -5335,9 +5365,14 @@ bool QETWidget::translateConfigEvent(con
- }
-
- if (!isCPos) {
-- // we didn't get an updated position of the toplevel.
-- // either we haven't moved or there is a bug in the window manager.
-- // anyway, let's query the position to be certain.
-+ // If the last configure event didn't have a trustable position,
-+ // it's necessary to query, see ICCCM 4.24:
-+ //
-+ // Any real ConfigureNotify event on a top-level window implies
-+ // that the window’s position on the root may have changed, even
-+ // though the event reports that the window’s position in its
-+ // parent is unchanged because the window may have been reparented.
-+
- int x, y;
- Window child;
- XTranslateCoordinates(X11->display, internalWinId(),
diff --git a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.5-QTBUG-35459.patch b/source/l/qt/patches/qt-everywhere-opensource-src-4.8.5-QTBUG-35459.patch
deleted file mode 100644
index 5ca91145e..000000000
--- a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.5-QTBUG-35459.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -ur qt-everywhere-opensource-src-4.8.5-CVE-2013-4549/src/xml/sax/qxml.cpp qt-everywhere-opensource-src-4.8.5-QTBUG-35459/src/xml/sax/qxml.cpp
---- qt-everywhere-opensource-src-4.8.5-CVE-2013-4549/src/xml/sax/qxml.cpp 2013-12-05 19:23:33.000000000 +0100
-+++ qt-everywhere-opensource-src-4.8.5-QTBUG-35459/src/xml/sax/qxml.cpp 2014-01-13 20:13:59.000000000 +0100
-@@ -428,7 +428,7 @@
- // for the DTD currently being parsed.
- static const int dtdRecursionLimit = 2;
- // The maximum amount of characters an entity value may contain, after expansion.
-- static const int entityCharacterLimit = 1024;
-+ static const int entityCharacterLimit = 4096;
-
- const QString &string();
- void stringClear();
diff --git a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.5-QTBUG-4862.patch b/source/l/qt/patches/qt-everywhere-opensource-src-4.8.5-QTBUG-4862.patch
deleted file mode 100644
index ee1d19136..000000000
--- a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.5-QTBUG-4862.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-diff -up qt-everywhere-opensource-src-4.8.5/src/corelib/io/qfilesystemengine_unix.cpp.QTBUG-4862 qt-everywhere-opensource-src-4.8.5/src/corelib/io/qfilesystemengine_unix.cpp
---- qt-everywhere-opensource-src-4.8.5/src/corelib/io/qfilesystemengine_unix.cpp.QTBUG-4862 2013-06-09 12:02:50.323221694 -0500
-+++ qt-everywhere-opensource-src-4.8.5/src/corelib/io/qfilesystemengine_unix.cpp 2013-06-09 12:38:53.140804742 -0500
-@@ -624,6 +624,25 @@ QString QFileSystemEngine::homePath()
- {
- QString home = QFile::decodeName(qgetenv("HOME"));
- if (home.isEmpty())
-+ {
-+#if !defined(QT_NO_THREAD) && defined(_POSIX_THREAD_SAFE_FUNCTIONS) && !defined(Q_OS_OPENBSD)
-+ int size_max = sysconf(_SC_GETPW_R_SIZE_MAX);
-+ if (size_max == -1)
-+ size_max = 1024;
-+ QVarLengthArray<char, 1024> buf(size_max);
-+#endif
-+ struct passwd *pw = 0;
-+ uid_t user_id = getuid();
-+ pw = getpwuid(user_id);
-+#if !defined(QT_NO_THREAD) && defined(_POSIX_THREAD_SAFE_FUNCTIONS) && !defined(Q_OS_OPENBSD)
-+ struct passwd entry;
-+ getpwuid_r(user_id, &entry, buf.data(), buf.size(), &pw);
-+#else
-+ pw = getpwuid(user_id);
-+#endif
-+ home = QFile::decodeName(QByteArray(pw->pw_dir));
-+ }
-+ if (home.isEmpty())
- home = rootPath();
- return QDir::cleanPath(home);
- }
diff --git a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.5-mysql_config.patch b/source/l/qt/patches/qt-everywhere-opensource-src-4.8.5-mysql_config.patch
deleted file mode 100644
index fc0ee7670..000000000
--- a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.5-mysql_config.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-diff -up qt-everywhere-opensource-src-4.8.5/configure.mysql_config qt-everywhere-opensource-src-4.8.5/configure
---- qt-everywhere-opensource-src-4.8.5/configure.mysql_config 2013-06-07 00:16:41.000000000 -0500
-+++ qt-everywhere-opensource-src-4.8.5/configure 2014-03-07 10:09:27.412071146 -0600
-@@ -5480,8 +5480,15 @@ for _SQLDR in $CFG_SQL_AVAILABLE; do
- [ -z "$CFG_MYSQL_CONFIG" ] && CFG_MYSQL_CONFIG=`"$WHICH" mysql_config`
- if [ -x "$CFG_MYSQL_CONFIG" ]; then
- QT_CFLAGS_MYSQL=`$CFG_MYSQL_CONFIG --include 2>/dev/null`
-+ $CFG_MYSQL_CONFIG --variable=pkglibdir &>/dev/null && \
-+ QT_MYSQL_PKGLIBDIR=`$CFG_MYSQL_CONFIG --variable=pkglibdir 2>/dev/null`
-+ if [ -n "$QT_MYSQL_PKGLIBDIR" ]; then
-+ QT_LFLAGS_MYSQL_R="-L$QT_MYSQL_PKGLIBDIR -lmysqlclient_r"
-+ QT_LFLAGS_MYSQL="-L$QT_MYSQL_PKGLIBDIR -lmysqlclient"
-+ else
- QT_LFLAGS_MYSQL_R=`$CFG_MYSQL_CONFIG --libs_r 2>/dev/null`
- QT_LFLAGS_MYSQL=`$CFG_MYSQL_CONFIG --libs 2>/dev/null`
-+ fi
- QT_MYSQL_VERSION=`$CFG_MYSQL_CONFIG --version 2>/dev/null`
- QT_MYSQL_VERSION_MAJOR=`echo $QT_MYSQL_VERSION | cut -d . -f 1`
- fi
diff --git a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.5-qgtkstyle_disable_gtk_theme_check.patch b/source/l/qt/patches/qt-everywhere-opensource-src-4.8.5-qgtkstyle_disable_gtk_theme_check.patch
deleted file mode 100644
index 9a9f77353..000000000
--- a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.5-qgtkstyle_disable_gtk_theme_check.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-diff -up qt-everywhere-opensource-src-4.8.5/src/gui/styles/qgtkstyle_p.cpp.qgtkstyle_disable_gtk_theme_check qt-everywhere-opensource-src-4.8.5/src/gui/styles/qgtkstyle_p.cpp
---- qt-everywhere-opensource-src-4.8.5/src/gui/styles/qgtkstyle_p.cpp.qgtkstyle_disable_gtk_theme_check 2013-06-09 16:28:22.938840346 -0500
-+++ qt-everywhere-opensource-src-4.8.5/src/gui/styles/qgtkstyle_p.cpp 2013-06-09 17:03:01.781125479 -0500
-@@ -503,18 +503,6 @@ void QGtkStylePrivate::initGtkWidgets()
- return;
- }
-
-- static QString themeName;
-- if (!gtkWidgetMap()->contains("GtkWindow") && themeName.isEmpty()) {
-- themeName = getThemeName();
--
-- if (themeName == QLS("Qt") || themeName == QLS("Qt4")) {
-- // Due to namespace conflicts with Qt3 and obvious recursion with Qt4,
-- // we cannot support the GTK_Qt Gtk engine
-- qWarning("QGtkStyle cannot be used together with the GTK_Qt engine.");
-- return;
-- }
-- }
--
- if (QGtkStylePrivate::gtk_init) {
- // Gtk will set the Qt error handler so we have to reset it afterwards
- x11ErrorHandler qt_x_errhandler = XSetErrorHandler(0);
diff --git a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.5-qt_plugin_path.patch b/source/l/qt/patches/qt-everywhere-opensource-src-4.8.5-qt_plugin_path.patch
deleted file mode 100644
index 6a87783e3..000000000
--- a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.5-qt_plugin_path.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-diff -up qt-everywhere-opensource-src-4.8.5/src/corelib/kernel/qcoreapplication.cpp.qt_plugin_path qt-everywhere-opensource-src-4.8.5/src/corelib/kernel/qcoreapplication.cpp
---- qt-everywhere-opensource-src-4.8.5/src/corelib/kernel/qcoreapplication.cpp.qt_plugin_path 2013-06-07 00:16:52.000000000 -0500
-+++ qt-everywhere-opensource-src-4.8.5/src/corelib/kernel/qcoreapplication.cpp 2013-06-21 07:14:10.045039936 -0500
-@@ -2511,6 +2511,15 @@ QStringList QCoreApplication::libraryPat
- if (!app_libpaths->contains(installPathPlugins))
- app_libpaths->append(installPathPlugins);
- }
-+
-+ // hack in support for kde4 plugin paths -- Rex
-+ QString kde4PathPlugins = QLibraryInfo::location(QLibraryInfo::LibrariesPath) + QLatin1String("/kde4/plugins");
-+ if (QFile::exists(kde4PathPlugins)) {
-+ // Make sure we convert from backslashes to slashes.
-+ //kde4PathPlugins = QDir(kde4PathPlugins).canonicalPath();
-+ if (!app_libpaths->contains(kde4PathPlugins))
-+ app_libpaths->append(kde4PathPlugins);
-+ }
- #endif
-
- // If QCoreApplication is not yet instantiated,
diff --git a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.5-tds_no_strict_aliasing.patch b/source/l/qt/patches/qt-everywhere-opensource-src-4.8.5-tds_no_strict_aliasing.patch
deleted file mode 100644
index 2deeb51bb..000000000
--- a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.5-tds_no_strict_aliasing.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -up qt-everywhere-opensource-src-4.8.5/src/sql/drivers/tds/qsql_tds.pri.tds_no_strict_aliasing qt-everywhere-opensource-src-4.8.5/src/sql/drivers/tds/qsql_tds.pri
---- qt-everywhere-opensource-src-4.8.5/src/sql/drivers/tds/qsql_tds.pri.tds_no_strict_aliasing 2013-06-09 11:57:49.198291245 -0500
-+++ qt-everywhere-opensource-src-4.8.5/src/sql/drivers/tds/qsql_tds.pri 2013-06-09 12:01:24.120100371 -0500
-@@ -1,6 +1,8 @@
- HEADERS += $$PWD/qsql_tds.h
- SOURCES += $$PWD/qsql_tds.cpp
-
-+*-g++*: QMAKE_CXXFLAGS += -fno-strict-aliasing
-+
- unix|win32-g++*: {
- LIBS += $$QT_LFLAGS_TDS
- !contains(LIBS, .*sybdb.*):LIBS += -lsybdb
diff --git a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.5-uic_multilib.patch b/source/l/qt/patches/qt-everywhere-opensource-src-4.8.5-uic_multilib.patch
deleted file mode 100644
index d04d1be5a..000000000
--- a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.5-uic_multilib.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-diff -up qt-everywhere-opensource-src-4.8.5/src/tools/moc/moc.cpp.uic_multilib qt-everywhere-opensource-src-4.8.5/src/tools/moc/moc.cpp
-diff -up qt-everywhere-opensource-src-4.8.5/src/tools/uic3/embed.cpp.uic_multilib qt-everywhere-opensource-src-4.8.5/src/tools/uic3/embed.cpp
---- qt-everywhere-opensource-src-4.8.5/src/tools/uic3/embed.cpp.uic_multilib 2013-05-30 16:18:04.000000000 -0500
-+++ qt-everywhere-opensource-src-4.8.5/src/tools/uic3/embed.cpp 2013-06-09 11:50:25.597813974 -0500
-@@ -152,8 +152,7 @@ void Ui3Reader::embed(const char *projec
- for ( it = images.begin(); it != images.end(); ++it )
- out << "** " << *it << "\n";
- out << "**\n";
-- out << "** Created: " << QDateTime::currentDateTime().toString() << "\n";
-- out << "** by: The User Interface Compiler for Qt version " << QT_VERSION_STR << "\n";
-+ out << "** Created: by: The User Interface Compiler for Qt version " << QT_VERSION_STR << "\n";
- out << "**\n";
- out << "** WARNING! All changes made in this file will be lost!\n";
- out << "****************************************************************************/\n";
-diff -up qt-everywhere-opensource-src-4.8.5/src/tools/uic3/uic.cpp.uic_multilib qt-everywhere-opensource-src-4.8.5/src/tools/uic3/uic.cpp
---- qt-everywhere-opensource-src-4.8.5/src/tools/uic3/uic.cpp.uic_multilib 2013-05-30 16:18:04.000000000 -0500
-+++ qt-everywhere-opensource-src-4.8.5/src/tools/uic3/uic.cpp 2013-06-09 11:51:28.310174526 -0500
-@@ -146,8 +146,7 @@ void Uic::writeCopyrightHeader(DomUI *ui
- out << "/********************************************************************************\n";
- out << "** Form generated from reading UI file '" << QFileInfo(opt.inputFile).fileName() << "'\n";
- out << "**\n";
-- out << "** Created: " << QDateTime::currentDateTime().toString() << "\n";
-- out << "** " << QString::fromLatin1("by: Qt User Interface Compiler version %1\n").arg(QLatin1String(QT_VERSION_STR));
-+ out << "** Created by: " << QString::fromLatin1("Qt User Interface Compiler version %1\n").arg(QLatin1String(QT_VERSION_STR));
- out << "**\n";
- out << "** WARNING! All changes made in this file will be lost when recompiling UI file!\n";
- out << "********************************************************************************/\n\n";
-diff -up qt-everywhere-opensource-src-4.8.5/src/tools/uic/uic.cpp.uic_multilib qt-everywhere-opensource-src-4.8.5/src/tools/uic/uic.cpp
diff --git a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.5-webcore_debuginfo.patch b/source/l/qt/patches/qt-everywhere-opensource-src-4.8.5-webcore_debuginfo.patch
deleted file mode 100644
index 1ea8af2b0..000000000
--- a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.5-webcore_debuginfo.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-diff -up qt-everywhere-opensource-src-4.8.5/src/3rdparty/webkit/Source/WebCore/WebCore.pri.webkit_debuginfo qt-everywhere-opensource-src-4.8.5/src/3rdparty/webkit/Source/WebCore/WebCore.pri
---- qt-everywhere-opensource-src-4.8.5/src/3rdparty/webkit/Source/WebCore/WebCore.pri.webkit_debuginfo 2013-06-07 00:16:55.000000000 -0500
-+++ qt-everywhere-opensource-src-4.8.5/src/3rdparty/webkit/Source/WebCore/WebCore.pri 2013-07-11 14:04:19.937056249 -0500
-@@ -5,6 +5,12 @@ include(features.pri)
-
- # Uncomment this to enable Texture Mapper.
- # CONFIG += texmap
-+#
-+equals(QT_ARCH, s390)|equals(QT_ARCH, arm)|equals(QT_ARCH, mips)|equals(QT_ARCH, i386)|equals(QT_ARCH, i686)|equals(QT_ARCH, x86_64)|equals(QT_ARCH, powerpc64)|equals(QT_ARCH, powerpc) {
-+ message("WebCore workaround for QtWebkit: do not build with -g, but with -g1")
-+ QMAKE_CXXFLAGS_RELEASE -= -g
-+ QMAKE_CXXFLAGS_RELEASE += -g1
-+}
-
- QT *= network
-
diff --git a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.6-QTBUG-22829.patch b/source/l/qt/patches/qt-everywhere-opensource-src-4.8.6-QTBUG-22829.patch
deleted file mode 100644
index b6f5525dc..000000000
--- a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.6-QTBUG-22829.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-diff -up qt-everywhere-opensource-src-4.8.7/src/tools/moc/main.cpp.QTBUG-22829 qt-everywhere-opensource-src-4.8.7/src/tools/moc/main.cpp
---- qt-everywhere-opensource-src-4.8.7/src/tools/moc/main.cpp.QTBUG-22829 2015-05-07 09:14:44.000000000 -0500
-+++ qt-everywhere-opensource-src-4.8.7/src/tools/moc/main.cpp 2016-12-08 12:32:46.638962448 -0600
-@@ -188,8 +188,12 @@ int runMoc(int _argc, char **_argv)
- pp.macros["Q_MOC_RUN"];
- pp.macros["__cplusplus"];
-
-- // Workaround a bug while parsing the boost/type_traits/has_operator.hpp header. See QTBUG-22829
-+ // 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"];
-+ pp.macros["BOOST_NEXT_PRIOR_HPP_INCLUDED"];
-+ pp.macros["BOOST_TYPE_TRAITS_HPP"];
-+ pp.macros["_SYS_SYSMACROS_H_OUTER"];
-
- QByteArray filename;
- QByteArray output;
diff --git a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.6-QTBUG-34614.patch b/source/l/qt/patches/qt-everywhere-opensource-src-4.8.6-QTBUG-34614.patch
deleted file mode 100644
index 6d3bf2f2c..000000000
--- a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.6-QTBUG-34614.patch
+++ /dev/null
@@ -1,94 +0,0 @@
---- src/corelib/kernel/qeventdispatcher_glib.cpp.sav 2014-03-28 15:26:37.000000000 +0100
-+++ 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;
-
---- src/corelib/kernel/qeventdispatcher_unix.cpp.sav 2013-06-07 07:16:52.000000000 +0200
-+++ 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()
diff --git a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.6-QTBUG-37380.patch b/source/l/qt/patches/qt-everywhere-opensource-src-4.8.6-QTBUG-37380.patch
deleted file mode 100644
index 6949bbfef..000000000
--- a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.6-QTBUG-37380.patch
+++ /dev/null
@@ -1,63 +0,0 @@
-Author: Jan-Marek Glogowski <glogow@fbihome.de>
-Date: Thu Mar 06 18:44:43 2014 +0100
-
- Honor QEventLoop::ExcludeSocketNotifiers in glib event loop.
-
- Implements QEventLoop::ExcludeSocketNotifiers in the same way
- QEventLoop::X11ExcludeTimers is already implemented for the glib
- event loop.
-
---- qt4-x11-4.8.1.orig/src/corelib/kernel/qeventdispatcher_glib.cpp
-+++ qt4-x11-4.8.1/src/corelib/kernel/qeventdispatcher_glib.cpp
-@@ -65,6 +65,7 @@ struct GPollFDWithQSocketNotifier
- struct GSocketNotifierSource
- {
- GSource source;
-+ QEventLoop::ProcessEventsFlags processEventsFlags;
- QList<GPollFDWithQSocketNotifier *> pollfds;
- };
-
-@@ -80,6 +81,9 @@ static gboolean socketNotifierSourceChec
- 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 @@ static gboolean socketNotifierSourceDisp
- 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);
-
-@@ -330,6 +337,7 @@ QEventDispatcherGlibPrivate::QEventDispa
- 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);
-
-@@ -415,6 +423,7 @@ bool QEventDispatcherGlib::processEvents
- // 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
-@@ -426,6 +435,7 @@ bool QEventDispatcherGlib::processEvents
- result = g_main_context_iteration(d->mainContext, canWait);
-
- d->timerSource->processEventsFlags = savedFlags;
-+ d->socketNotifierSource->processEventsFlags = savedFlags;
-
- if (canWait)
- emit awake();
diff --git a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.6-QTBUG-38585.patch b/source/l/qt/patches/qt-everywhere-opensource-src-4.8.6-QTBUG-38585.patch
deleted file mode 100644
index 22643e8d5..000000000
--- a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.6-QTBUG-38585.patch
+++ /dev/null
@@ -1,12 +0,0 @@
---- src/gui/kernel/qclipboard_x11.cpp.sav 2014-04-25 09:52:03.855693228 +0200
-+++ 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();
-
diff --git a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.6-s390.patch b/source/l/qt/patches/qt-everywhere-opensource-src-4.8.6-s390.patch
deleted file mode 100644
index 5098c0822..000000000
--- a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.6-s390.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-diff -up qt-everywhere-opensource-src-4.8.6/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Platform.h.s390 qt-everywhere-opensource-src-4.8.6/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Platform.h
---- qt-everywhere-opensource-src-4.8.6/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Platform.h.s390 2014-03-30 15:36:49.000000000 -0500
-+++ qt-everywhere-opensource-src-4.8.6/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Platform.h 2014-03-31 17:59:16.846465899 -0500
-@@ -189,6 +189,18 @@
- #define WTF_CPU_SPARC 1
- #endif
-
-+/* CPU(S390X) - S390 64-bit */
-+#if defined(__s390x__)
-+#define WTF_CPU_S390X 1
-+#define WTF_CPU_BIG_ENDIAN 1
-+#endif
-+
-+/* CPU(S390) - S390 32-bit */
-+#if defined(__s390__)
-+#define WTF_CPU_S390 1
-+#define WTF_CPU_BIG_ENDIAN 1
-+#endif
-+
- /* CPU(X86) - i386 / x86 32-bit */
- #if defined(__i386__) \
- || defined(i386) \
-@@ -903,7 +915,7 @@
- #endif
-
- #if !defined(WTF_USE_JSVALUE64) && !defined(WTF_USE_JSVALUE32) && !defined(WTF_USE_JSVALUE32_64)
--#if (CPU(X86_64) && (OS(UNIX) || OS(WINDOWS) || OS(SOLARIS) || OS(HPUX))) || (CPU(IA64) && !CPU(IA64_32)) || CPU(ALPHA) || CPU(AIX64) || CPU(SPARC64) || CPU(MIPS64) || CPU(AARCH64)
-+#if (CPU(X86_64) && (OS(UNIX) || OS(WINDOWS) || OS(SOLARIS) || OS(HPUX))) || (CPU(IA64) && !CPU(IA64_32)) || CPU(ALPHA) || CPU(AIX64) || CPU(SPARC64) || CPU(MIPS64) || CPU(AARCH64) || CPU(S390X)
- #define WTF_USE_JSVALUE64 1
- #elif CPU(ARM) || CPU(PPC64)
- #define WTF_USE_JSVALUE32 1
diff --git a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.6-system-clucene.patch b/source/l/qt/patches/qt-everywhere-opensource-src-4.8.6-system-clucene.patch
deleted file mode 100644
index 63a746290..000000000
--- a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.6-system-clucene.patch
+++ /dev/null
@@ -1,351 +0,0 @@
-diff -ur qt-everywhere-opensource-src-4.8.6/tools/assistant/lib/fulltextsearch/fulltextsearch.pri qt-everywhere-opensource-src-4.8.6-system-clucene/tools/assistant/lib/fulltextsearch/fulltextsearch.pri
---- qt-everywhere-opensource-src-4.8.6/tools/assistant/lib/fulltextsearch/fulltextsearch.pri 2014-04-10 20:37:12.000000000 +0200
-+++ qt-everywhere-opensource-src-4.8.6-system-clucene/tools/assistant/lib/fulltextsearch/fulltextsearch.pri 2014-10-26 03:33:45.000000000 +0100
-@@ -1,125 +1,7 @@
--DEFINES += _BUILD_FOR_QT_ LUCENE_DISABLE_MEMTRACKING
--win32:DEFINES += _CRT_SECURE_NO_DEPRECATE _MT
--
--CLUCENEDIR = ../../../../src/3rdparty/clucene/src/CLucene
--
--INCLUDEPATH += . .. \
-- $$CLUCENEDIR \
-- $$CLUCENEDIR/../ \
-- $$CLUCENEDIR/analysis \
-- $$CLUCENEDIR/analysis/standard \
-- $$CLUCENEDIR/config \
-- $$CLUCENEDIR/debug \
-- $$CLUCENEDIR/document \
-- $$CLUCENEDIR/index \
-- $$CLUCENEDIR/queryParser \
-- $$CLUCENEDIR/search \
-- $$CLUCENEDIR/store \
-- $$CLUCENEDIR/util
--
--
--SOURCES += $$CLUCENEDIR/StdHeader.cpp \
-- $$CLUCENEDIR/analysis/AnalysisHeader.cpp \
-- $$CLUCENEDIR/analysis/Analyzers.cpp \
-- $$CLUCENEDIR/config/gunichartables.cpp \
-- $$CLUCENEDIR/config/repl_lltot.cpp \
-- $$CLUCENEDIR/config/repl_tcscasecmp.cpp \
-- $$CLUCENEDIR/config/repl_tcslwr.cpp \
-- $$CLUCENEDIR/config/repl_tcstod.cpp \
-- $$CLUCENEDIR/config/repl_tcstoll.cpp \
-- $$CLUCENEDIR/config/repl_tprintf.cpp \
-- $$CLUCENEDIR/config/threads.cpp \
-- $$CLUCENEDIR/config/utf8.cpp \
-- $$CLUCENEDIR/debug/condition.cpp \
-- $$CLUCENEDIR/debug/error.cpp \
-- $$CLUCENEDIR/debug/memtracking.cpp \
-- $$CLUCENEDIR/document/DateField.cpp \
-- $$CLUCENEDIR/document/Document.cpp \
-- $$CLUCENEDIR/document/Field.cpp \
-- $$CLUCENEDIR/index/CompoundFile.cpp \
-- $$CLUCENEDIR/index/DocumentWriter.cpp \
-- $$CLUCENEDIR/index/FieldInfos.cpp \
-- $$CLUCENEDIR/index/FieldsReader.cpp \
-- $$CLUCENEDIR/index/FieldsWriter.cpp \
-- $$CLUCENEDIR/index/IndexModifier.cpp \
-- $$CLUCENEDIR/index/IndexReader.cpp \
-- $$CLUCENEDIR/index/IndexWriter.cpp \
-- $$CLUCENEDIR/index/MultiReader.cpp \
-- $$CLUCENEDIR/index/SegmentInfos.cpp \
-- $$CLUCENEDIR/index/SegmentMergeInfo.cpp \
-- $$CLUCENEDIR/index/SegmentMergeQueue.cpp \
-- $$CLUCENEDIR/index/SegmentMerger.cpp \
-- $$CLUCENEDIR/index/SegmentReader.cpp \
-- $$CLUCENEDIR/index/SegmentTermDocs.cpp \
-- $$CLUCENEDIR/index/SegmentTermEnum.cpp \
-- $$CLUCENEDIR/index/SegmentTermPositions.cpp \
-- $$CLUCENEDIR/index/SegmentTermVector.cpp \
-- $$CLUCENEDIR/index/Term.cpp \
-- $$CLUCENEDIR/index/TermInfo.cpp \
-- $$CLUCENEDIR/index/TermInfosReader.cpp \
-- $$CLUCENEDIR/index/TermInfosWriter.cpp \
-- $$CLUCENEDIR/index/TermVectorReader.cpp \
-- $$CLUCENEDIR/index/TermVectorWriter.cpp \
-- $$CLUCENEDIR/queryParser/Lexer.cpp \
-- $$CLUCENEDIR/queryParser/MultiFieldQueryParser.cpp \
-- $$CLUCENEDIR/queryParser/QueryParser.cpp \
-- $$CLUCENEDIR/queryParser/QueryParserBase.cpp \
-- $$CLUCENEDIR/queryParser/QueryToken.cpp \
-- $$CLUCENEDIR/queryParser/TokenList.cpp \
-- $$CLUCENEDIR/search/BooleanQuery.cpp \
-- $$CLUCENEDIR/search/BooleanScorer.cpp \
-- $$CLUCENEDIR/search/CachingWrapperFilter.cpp \
-- $$CLUCENEDIR/search/ChainedFilter.cpp \
-- $$CLUCENEDIR/search/ConjunctionScorer.cpp \
-- $$CLUCENEDIR/search/DateFilter.cpp \
-- $$CLUCENEDIR/search/ExactPhraseScorer.cpp \
-- $$CLUCENEDIR/search/Explanation.cpp \
-- $$CLUCENEDIR/search/FieldCache.cpp \
-- $$CLUCENEDIR/search/FieldCacheImpl.cpp \
-- $$CLUCENEDIR/search/FieldDocSortedHitQueue.cpp \
-- $$CLUCENEDIR/search/FieldSortedHitQueue.cpp \
-- $$CLUCENEDIR/search/FilteredTermEnum.cpp \
-- $$CLUCENEDIR/search/FuzzyQuery.cpp \
-- $$CLUCENEDIR/search/HitQueue.cpp \
-- $$CLUCENEDIR/search/Hits.cpp \
-- $$CLUCENEDIR/search/IndexSearcher.cpp \
-- $$CLUCENEDIR/search/MultiSearcher.cpp \
-- $$CLUCENEDIR/search/MultiTermQuery.cpp \
-- $$CLUCENEDIR/search/PhrasePositions.cpp \
-- $$CLUCENEDIR/search/PhraseQuery.cpp \
-- $$CLUCENEDIR/search/PhraseScorer.cpp \
-- $$CLUCENEDIR/search/PrefixQuery.cpp \
-- $$CLUCENEDIR/search/QueryFilter.cpp \
-- $$CLUCENEDIR/search/RangeFilter.cpp \
-- $$CLUCENEDIR/search/RangeQuery.cpp \
-- $$CLUCENEDIR/search/SearchHeader.cpp \
-- $$CLUCENEDIR/search/Similarity.cpp \
-- $$CLUCENEDIR/search/SloppyPhraseScorer.cpp \
-- $$CLUCENEDIR/search/Sort.cpp \
-- $$CLUCENEDIR/search/TermQuery.cpp \
-- $$CLUCENEDIR/search/TermScorer.cpp \
-- $$CLUCENEDIR/search/WildcardQuery.cpp \
-- $$CLUCENEDIR/search/WildcardTermEnum.cpp \
-- $$CLUCENEDIR/store/FSDirectory.cpp \
-- $$CLUCENEDIR/store/IndexInput.cpp \
-- $$CLUCENEDIR/store/IndexOutput.cpp \
-- $$CLUCENEDIR/store/Lock.cpp \
-- $$CLUCENEDIR/store/MMapInput.cpp \
-- $$CLUCENEDIR/store/RAMDirectory.cpp \
-- $$CLUCENEDIR/store/TransactionalRAMDirectory.cpp \
-- $$CLUCENEDIR/util/BitSet.cpp \
-- $$CLUCENEDIR/util/Equators.cpp \
-- $$CLUCENEDIR/util/FastCharStream.cpp \
-- $$CLUCENEDIR/util/fileinputstream.cpp \
-- $$CLUCENEDIR/util/Misc.cpp \
-- $$CLUCENEDIR/util/Reader.cpp \
-- $$CLUCENEDIR/util/StringBuffer.cpp \
-- $$CLUCENEDIR/util/StringIntern.cpp \
-- $$CLUCENEDIR/util/ThreadLocal.cpp \
-- $$CLUCENEDIR/analysis/standard/StandardAnalyzer.cpp \
-- $$CLUCENEDIR/analysis/standard/StandardFilter.cpp \
-- $$CLUCENEDIR/analysis/standard/StandardTokenizer.cpp
-
-+INCLUDEPATH += /usr/include/clucene09 $$[QT_INSTALL_LIBS]/clucene09 $$[QT_INSTALL_LIBS]
-+LIBS += -L$$[QT_INSTALL_LIBS]/clucene09 -lclucene
-+#DEFINES += LUCENE_ENABLE_REFCOUNT (must be set at CLucene build time!)
-
- #Header files
- HEADERS += qclucene_global_p.h \
-diff -ur qt-everywhere-opensource-src-4.8.6/tools/assistant/lib/fulltextsearch/qclucene-config_p.h qt-everywhere-opensource-src-4.8.6-system-clucene/tools/assistant/lib/fulltextsearch/qclucene-config_p.h
---- qt-everywhere-opensource-src-4.8.6/tools/assistant/lib/fulltextsearch/qclucene-config_p.h 2014-04-10 20:37:12.000000000 +0200
-+++ qt-everywhere-opensource-src-4.8.6-system-clucene/tools/assistant/lib/fulltextsearch/qclucene-config_p.h 2014-10-26 02:28:54.000000000 +0100
-@@ -15,6 +15,8 @@
- **
- ****************************************************************************/
-
-+#error This header must not be included when building against system CLucene.
-+
- #ifndef QCLUCENE_CONFIG_P_H
- #define QCLUCENE_CONFIG_P_H
-
-diff -ur qt-everywhere-opensource-src-4.8.6/tools/assistant/lib/fulltextsearch/qclucene_global_p.h qt-everywhere-opensource-src-4.8.6-system-clucene/tools/assistant/lib/fulltextsearch/qclucene_global_p.h
---- qt-everywhere-opensource-src-4.8.6/tools/assistant/lib/fulltextsearch/qclucene_global_p.h 2014-04-10 20:37:12.000000000 +0200
-+++ qt-everywhere-opensource-src-4.8.6-system-clucene/tools/assistant/lib/fulltextsearch/qclucene_global_p.h 2014-10-26 02:31:54.000000000 +0100
-@@ -29,20 +29,10 @@
- // We mean it.
- //
-
--#if !defined(_MSC_VER)
--# include "qclucene-config_p.h"
--#endif
--
- #include <QtCore/QChar>
- #include <QtCore/QString>
-
--#if !defined(_MSC_VER) && !defined(__MINGW32__) && defined(_CL_HAVE_WCHAR_H) && defined(_CL_HAVE_WCHAR_T)
--# if !defined(TCHAR)
--# define TCHAR wchar_t
--# endif
--#else
--# include <windows.h>
--#endif
-+#include <CLucene/StdHeader.h>
-
- QT_BEGIN_HEADER
-
-@@ -56,52 +46,6 @@
- # define QHELP_EXPORT Q_DECL_IMPORT
- #endif
-
--//
--// W A R N I N G
--// -------------
--//
--// adjustments here, need to be done in
--// QTDIR/src/3rdparty/clucene/src/CLucene/StdHeader.h as well
--//
--#if defined(_LUCENE_DONTIMPLEMENT_NS_MACROS)
--
--#elif !defined(DISABLE_NAMESPACE)
--# ifdef QT_NAMESPACE
--# define CL_NS_DEF(sub) namespace QT_NAMESPACE { namespace lucene{ namespace sub{
--# define CL_NS_DEF2(sub,sub2) namespace QT_NAMESPACE { namespace lucene{ namespace sub{ namespace sub2 {
--
--# define CL_NS_END }}}
--# define CL_NS_END2 }}}}
--
--# define CL_NS_USE(sub) using namespace QT_NAMESPACE::lucene::sub;
--# define CL_NS_USE2(sub,sub2) using namespace QT_NAMESPACE::lucene::sub::sub2;
--
--# define CL_NS(sub) QT_NAMESPACE::lucene::sub
--# define CL_NS2(sub,sub2) QT_NAMESPACE::lucene::sub::sub2
--# else
--# define CL_NS_DEF(sub) namespace lucene{ namespace sub{
--# define CL_NS_DEF2(sub,sub2) namespace lucene{ namespace sub{ namespace sub2 {
--
--# define CL_NS_END }}
--# define CL_NS_END2 }}}
--
--# define CL_NS_USE(sub) using namespace lucene::sub;
--# define CL_NS_USE2(sub,sub2) using namespace lucene::sub::sub2;
--
--# define CL_NS(sub) lucene::sub
--# define CL_NS2(sub,sub2) lucene::sub::sub2
--# endif
--#else
--# define CL_NS_DEF(sub)
--# define CL_NS_DEF2(sub, sub2)
--# define CL_NS_END
--# define CL_NS_END2
--# define CL_NS_USE(sub)
--# define CL_NS_USE2(sub,sub2)
--# define CL_NS(sub)
--# define CL_NS2(sub,sub2)
--#endif
--
- namespace {
- TCHAR* QStringToTChar(const QString &str)
- {
-diff -ur qt-everywhere-opensource-src-4.8.6/tools/assistant/lib/fulltextsearch/qindexreader.cpp qt-everywhere-opensource-src-4.8.6-system-clucene/tools/assistant/lib/fulltextsearch/qindexreader.cpp
---- qt-everywhere-opensource-src-4.8.6/tools/assistant/lib/fulltextsearch/qindexreader.cpp 2014-04-10 20:37:12.000000000 +0200
-+++ qt-everywhere-opensource-src-4.8.6-system-clucene/tools/assistant/lib/fulltextsearch/qindexreader.cpp 2014-10-26 02:48:02.000000000 +0100
-@@ -18,6 +18,8 @@
- #include "qindexreader_p.h"
- #include "qclucene_global_p.h"
-
-+#include <QtCore/QDir>
-+
- #include <CLucene.h>
- #include <CLucene/index/IndexReader.h>
-
-@@ -59,13 +61,13 @@
- {
- using namespace lucene::index;
-
-- return IndexReader::isLuceneFile(filename);
-+ return IndexReader::isLuceneFile(filename.toLocal8Bit().constData());
- }
-
- bool QCLuceneIndexReader::indexExists(const QString &directory)
- {
- using namespace lucene::index;
-- return IndexReader::indexExists(directory);
-+ return IndexReader::indexExists(directory.toLocal8Bit().constData());
- }
-
- QCLuceneIndexReader QCLuceneIndexReader::open(const QString &path)
-@@ -73,7 +75,7 @@
- using namespace lucene::index;
-
- QCLuceneIndexReader indexReader;
-- indexReader.d->reader = IndexReader::open(path);
-+ indexReader.d->reader = IndexReader::open(path.toLocal8Bit().constData());
-
- return indexReader;
- }
-@@ -81,25 +83,29 @@
- void QCLuceneIndexReader::unlock(const QString &path)
- {
- using namespace lucene::index;
-- IndexReader::unlock(path);
-+ IndexReader::unlock(path.toLocal8Bit().constData());
- }
-
- bool QCLuceneIndexReader::isLocked(const QString &directory)
- {
-+ // The system CLucene fails here if the directory does not exist yet, unlike
-+ // the bundled one. Work around that.
-+ QDir::current().mkpath(directory);
-+
- using namespace lucene::index;
-- return IndexReader::isLocked(directory);
-+ return IndexReader::isLocked(directory.toLocal8Bit().constData());
- }
-
- quint64 QCLuceneIndexReader::lastModified(const QString &directory)
- {
- using namespace lucene::index;
-- return quint64(IndexReader::lastModified(directory));
-+ return quint64(IndexReader::lastModified(directory.toLocal8Bit().constData()));
- }
-
- qint64 QCLuceneIndexReader::getCurrentVersion(const QString &directory)
- {
- using namespace lucene::index;
-- return qint64(IndexReader::getCurrentVersion(directory));
-+ return qint64(IndexReader::getCurrentVersion(directory.toLocal8Bit().constData()));
- }
-
- void QCLuceneIndexReader::close()
-@@ -155,7 +161,7 @@
- void QCLuceneIndexReader::setNorm(qint32 doc, const QString &field, qreal value)
- {
- TCHAR *fieldName = QStringToTChar(field);
-- d->reader->setNorm(int32_t(doc), fieldName, qreal(value));
-+ d->reader->setNorm(int32_t(doc), fieldName, (float_t)value);
- delete [] fieldName;
- }
-
-diff -ur qt-everywhere-opensource-src-4.8.6/tools/assistant/lib/fulltextsearch/qindexwriter.cpp qt-everywhere-opensource-src-4.8.6-system-clucene/tools/assistant/lib/fulltextsearch/qindexwriter.cpp
---- qt-everywhere-opensource-src-4.8.6/tools/assistant/lib/fulltextsearch/qindexwriter.cpp 2014-04-10 20:37:12.000000000 +0200
-+++ qt-everywhere-opensource-src-4.8.6-system-clucene/tools/assistant/lib/fulltextsearch/qindexwriter.cpp 2014-10-26 02:48:27.000000000 +0100
-@@ -18,6 +18,8 @@
- #include "qindexwriter_p.h"
- #include "qindexreader_p.h"
-
-+#include <QtCore/QDir>
-+
- #include <CLucene.h>
- #include <CLucene/index/IndexWriter.h>
-
-@@ -50,7 +52,12 @@
- : d(new QCLuceneIndexWriterPrivate())
- , analyzer(analyzer)
- {
-- d->writer = new lucene::index::IndexWriter(path,
-+ // The system CLucene cannot create directories recursively, so do it here.
-+ // Ignore failure: If it failed, we will get an error from CLucene anyway.
-+ if (create)
-+ QDir::current().mkpath(path);
-+
-+ d->writer = new lucene::index::IndexWriter(path.toLocal8Bit().constData(),
- analyzer.d->analyzer, create, closeDir);
- }
-
-diff -ur qt-everywhere-opensource-src-4.8.6/tools/assistant/lib/fulltextsearch/qsearchable.cpp qt-everywhere-opensource-src-4.8.6-system-clucene/tools/assistant/lib/fulltextsearch/qsearchable.cpp
---- qt-everywhere-opensource-src-4.8.6/tools/assistant/lib/fulltextsearch/qsearchable.cpp 2014-04-10 20:37:12.000000000 +0200
-+++ qt-everywhere-opensource-src-4.8.6-system-clucene/tools/assistant/lib/fulltextsearch/qsearchable.cpp 2014-10-26 02:48:44.000000000 +0100
-@@ -95,7 +95,7 @@
- : QCLuceneSearcher()
- {
- lucene::search::IndexSearcher *searcher =
-- new lucene::search::IndexSearcher(path);
-+ new lucene::search::IndexSearcher(path.toLocal8Bit().constData());
-
- reader.d->reader = searcher->getReader();
- reader.d->deleteCLuceneIndexReader = false;
-diff -ur qt-everywhere-opensource-src-4.8.6/tools/assistant/lib/lib.pro qt-everywhere-opensource-src-4.8.6-system-clucene/tools/assistant/lib/lib.pro
---- qt-everywhere-opensource-src-4.8.6/tools/assistant/lib/lib.pro 2014-04-10 20:37:12.000000000 +0200
-+++ qt-everywhere-opensource-src-4.8.6-system-clucene/tools/assistant/lib/lib.pro 2014-10-26 02:27:55.000000000 +0100
-@@ -43,6 +43,7 @@
- qhelp_global.cpp
-
- # access to clucene
-+INCLUDEPATH += /usr/include/clucene09 $$[QT_INSTALL_LIBS]/clucene09 $$[QT_INSTALL_LIBS]
- SOURCES += qhelpsearchindexwriter_clucene.cpp \
- qhelpsearchindexreader_clucene.cpp
- HEADERS += qhelpenginecore.h \
diff --git a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.6-systemtrayicon.patch b/source/l/qt/patches/qt-everywhere-opensource-src-4.8.6-systemtrayicon.patch
deleted file mode 100644
index 60749d382..000000000
--- a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.6-systemtrayicon.patch
+++ /dev/null
@@ -1,1456 +0,0 @@
-diff -up qt-everywhere-opensource-src-4.8.6/examples/desktop/systray/window.cpp.systemtrayicon qt-everywhere-opensource-src-4.8.6/examples/desktop/systray/window.cpp
---- qt-everywhere-opensource-src-4.8.6/examples/desktop/systray/window.cpp.systemtrayicon 2014-03-30 15:36:45.000000000 -0500
-+++ qt-everywhere-opensource-src-4.8.6/examples/desktop/systray/window.cpp 2014-03-31 18:16:39.707974934 -0500
-@@ -158,15 +158,23 @@ void Window::createIconGroupBox()
- iconComboBox->addItem(QIcon(":/images/bad.svg"), tr("Bad"));
- iconComboBox->addItem(QIcon(":/images/heart.svg"), tr("Heart"));
- iconComboBox->addItem(QIcon(":/images/trash.svg"), tr("Trash"));
-+ iconComboBox->addItem(QIcon::fromTheme("system-file-manager"), tr("File Manager"));
-
- showIconCheckBox = new QCheckBox(tr("Show icon"));
- showIconCheckBox->setChecked(true);
-
-+#if defined(Q_WS_X11)
-+ jitToolTipCheckBox = new QCheckBox(tr("Just In Time Tooltip"));
-+#endif
-+
- QHBoxLayout *iconLayout = new QHBoxLayout;
- iconLayout->addWidget(iconLabel);
- iconLayout->addWidget(iconComboBox);
- iconLayout->addStretch();
- iconLayout->addWidget(showIconCheckBox);
-+#if defined(Q_WS_X11)
-+ iconLayout->addWidget(jitToolTipCheckBox);
-+#endif
- iconGroupBox->setLayout(iconLayout);
- }
-
-@@ -254,5 +262,37 @@ void Window::createTrayIcon()
- trayIconMenu->addAction(quitAction);
-
- trayIcon = new QSystemTrayIcon(this);
-+ QByteArray category = qgetenv("SNI_CATEGORY");
-+ if (!category.isEmpty()) {
-+ trayIcon->setProperty("_qt_sni_category", QString::fromLocal8Bit(category));
-+ }
- trayIcon->setContextMenu(trayIconMenu);
-+
-+#if defined(Q_WS_X11)
-+ trayIcon->installEventFilter(this);
-+#endif
-+}
-+
-+#if defined(Q_WS_X11)
-+bool Window::eventFilter(QObject *, QEvent *event)
-+{
-+ switch(event->type()) {
-+ case QEvent::ToolTip:
-+ if (jitToolTipCheckBox->isChecked()) {
-+ QString timeString = QTime::currentTime().toString();
-+ trayIcon->setToolTip(tr("Current Time: %1").arg(timeString));
-+ }
-+ break;
-+ case QEvent::Wheel: {
-+ QWheelEvent *wheelEvent = static_cast<QWheelEvent*>(event);
-+ int delta = wheelEvent->delta() > 0 ? 1 : -1;
-+ int index = (iconComboBox->currentIndex() + delta) % iconComboBox->count();
-+ iconComboBox->setCurrentIndex(index);
-+ break;
-+ }
-+ default:
-+ break;
-+ }
-+ return false;
- }
-+#endif
-diff -up qt-everywhere-opensource-src-4.8.6/examples/desktop/systray/window.h.systemtrayicon qt-everywhere-opensource-src-4.8.6/examples/desktop/systray/window.h
---- qt-everywhere-opensource-src-4.8.6/examples/desktop/systray/window.h.systemtrayicon 2014-03-30 15:36:45.000000000 -0500
-+++ qt-everywhere-opensource-src-4.8.6/examples/desktop/systray/window.h 2014-03-31 18:16:39.707974934 -0500
-@@ -69,6 +69,9 @@ public:
-
- protected:
- void closeEvent(QCloseEvent *event);
-+#if defined(Q_WS_X11)
-+ bool eventFilter(QObject *object, QEvent *event);
-+#endif
-
- private slots:
- void setIcon(int index);
-@@ -86,6 +89,9 @@ private:
- QLabel *iconLabel;
- QComboBox *iconComboBox;
- QCheckBox *showIconCheckBox;
-+#if defined(Q_WS_X11)
-+ QCheckBox *jitToolTipCheckBox;
-+#endif
-
- QGroupBox *messageGroupBox;
- QLabel *typeLabel;
-diff -up qt-everywhere-opensource-src-4.8.6/src/gui/util/qabstractsystemtrayiconsys.cpp.systemtrayicon qt-everywhere-opensource-src-4.8.6/src/gui/util/qabstractsystemtrayiconsys.cpp
---- qt-everywhere-opensource-src-4.8.6/src/gui/util/qabstractsystemtrayiconsys.cpp.systemtrayicon 2014-03-31 18:16:39.707974934 -0500
-+++ qt-everywhere-opensource-src-4.8.6/src/gui/util/qabstractsystemtrayiconsys.cpp 2014-03-31 18:16:39.707974934 -0500
-@@ -0,0 +1,65 @@
-+/****************************************************************************
-+**
-+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
-+** All rights reserved.
-+** Contact: Nokia Corporation (qt-info@nokia.com)
-+**
-+** This file is part of the QtGui module of the Qt Toolkit.
-+**
-+** $QT_BEGIN_LICENSE:LGPL$
-+** GNU Lesser General Public License Usage
-+** This file may be used under the terms of the GNU Lesser General Public
-+** License version 2.1 as published by the Free Software Foundation and
-+** appearing in the file LICENSE.LGPL included in the packaging of this
-+** file. Please review the following information to ensure the GNU Lesser
-+** General Public License version 2.1 requirements will be met:
-+** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
-+**
-+** In addition, as a special exception, Nokia gives you certain additional
-+** rights. These rights are described in the Nokia Qt LGPL Exception
-+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
-+**
-+** GNU General Public License Usage
-+** Alternatively, this file may be used under the terms of the GNU General
-+** Public License version 3.0 as published by the Free Software Foundation
-+** and appearing in the file LICENSE.GPL included in the packaging of this
-+** file. Please review the following information to ensure the GNU General
-+** Public License version 3.0 requirements will be met:
-+** http://www.gnu.org/copyleft/gpl.html.
-+**
-+** Other Usage
-+** Alternatively, this file may be used in accordance with the terms and
-+** conditions contained in a signed written agreement between you and Nokia.
-+**
-+**
-+**
-+**
-+**
-+** $QT_END_LICENSE$
-+**
-+****************************************************************************/
-+#ifndef QT_NO_SYSTEMTRAYICON
-+
-+#include "qabstractsystemtrayiconsys_p.h"
-+
-+
-+QSystemTrayIconSysFactoryInterface::QSystemTrayIconSysFactoryInterface()
-+{
-+}
-+
-+/////////////////////////////////////////////////
-+QAbstractSystemTrayIconSys::QAbstractSystemTrayIconSys(QSystemTrayIcon *icon)
-+: trayIcon(icon)
-+{
-+}
-+
-+QAbstractSystemTrayIconSys::~QAbstractSystemTrayIconSys()
-+{
-+}
-+
-+void QAbstractSystemTrayIconSys::sendActivated(QSystemTrayIcon::ActivationReason reason)
-+{
-+ qtsystray_sendActivated(trayIcon, reason);
-+}
-+
-+#endif
-diff -up qt-everywhere-opensource-src-4.8.6/src/gui/util/qabstractsystemtrayiconsys_p.h.systemtrayicon qt-everywhere-opensource-src-4.8.6/src/gui/util/qabstractsystemtrayiconsys_p.h
---- qt-everywhere-opensource-src-4.8.6/src/gui/util/qabstractsystemtrayiconsys_p.h.systemtrayicon 2014-03-31 18:16:39.708974924 -0500
-+++ qt-everywhere-opensource-src-4.8.6/src/gui/util/qabstractsystemtrayiconsys_p.h 2014-03-31 18:16:39.708974924 -0500
-@@ -0,0 +1,106 @@
-+/****************************************************************************
-+**
-+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
-+** All rights reserved.
-+** Contact: Nokia Corporation (qt-info@nokia.com)
-+**
-+** This file is part of the QtGui module of the Qt Toolkit.
-+**
-+** $QT_BEGIN_LICENSE:LGPL$
-+** GNU Lesser General Public License Usage
-+** This file may be used under the terms of the GNU Lesser General Public
-+** License version 2.1 as published by the Free Software Foundation and
-+** appearing in the file LICENSE.LGPL included in the packaging of this
-+** file. Please review the following information to ensure the GNU Lesser
-+** General Public License version 2.1 requirements will be met:
-+** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
-+**
-+** In addition, as a special exception, Nokia gives you certain additional
-+** rights. These rights are described in the Nokia Qt LGPL Exception
-+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
-+**
-+** GNU General Public License Usage
-+** Alternatively, this file may be used under the terms of the GNU General
-+** Public License version 3.0 as published by the Free Software Foundation
-+** and appearing in the file LICENSE.GPL included in the packaging of this
-+** file. Please review the following information to ensure the GNU General
-+** Public License version 3.0 requirements will be met:
-+** http://www.gnu.org/copyleft/gpl.html.
-+**
-+** Other Usage
-+** Alternatively, this file may be used in accordance with the terms and
-+** conditions contained in a signed written agreement between you and Nokia.
-+**
-+**
-+**
-+**
-+**
-+** $QT_END_LICENSE$
-+**
-+****************************************************************************/
-+
-+#ifndef QABSTRACTSYSTEMTRAYICONSYS_P_H
-+#define QABSTRACTSYSTEMTRAYICONSYS_P_H
-+
-+//
-+// W A R N I N G
-+// -------------
-+//
-+// This file is not part of the Qt API. It exists for the convenience
-+// of a number of Qt sources files. This header file may change from
-+// version to version without notice, or even be removed.
-+//
-+// We mean it.
-+//
-+
-+#ifndef QT_NO_SYSTEMTRAYICON
-+
-+#include <qfactoryinterface.h>
-+#include <qsystemtrayicon.h>
-+
-+class QAbstractSystemTrayIconSys;
-+
-+class Q_GUI_EXPORT QSystemTrayIconSysFactoryInterface : public QObject, public QFactoryInterface
-+{
-+ Q_OBJECT
-+public:
-+ QSystemTrayIconSysFactoryInterface();
-+ virtual QAbstractSystemTrayIconSys * create(QSystemTrayIcon *) = 0;
-+ virtual bool isAvailable() const = 0;
-+
-+ // \reimp
-+ virtual QStringList keys() const { return QStringList() << QLatin1String("default"); }
-+
-+Q_SIGNALS:
-+ void availableChanged(bool);
-+};
-+
-+#define QSystemTrayIconSysFactoryInterface_iid "com.nokia.qt.QSystemTrayIconSysFactoryInterface"
-+Q_DECLARE_INTERFACE(QSystemTrayIconSysFactoryInterface, QSystemTrayIconSysFactoryInterface_iid)
-+
-+class QRect;
-+
-+class Q_GUI_EXPORT QAbstractSystemTrayIconSys
-+{
-+public:
-+ QAbstractSystemTrayIconSys(QSystemTrayIcon *icon);
-+ virtual ~QAbstractSystemTrayIconSys();
-+
-+ virtual QRect geometry() const = 0;
-+ virtual void updateVisibility() = 0;
-+ virtual void updateIcon() = 0;
-+ virtual void updateToolTip() = 0;
-+ virtual void updateMenu() = 0;
-+ virtual void showMessage(const QString &title, const QString &message,
-+ QSystemTrayIcon::MessageIcon icon, int msecs) = 0;
-+
-+ void sendActivated(QSystemTrayIcon::ActivationReason);
-+
-+protected:
-+ QSystemTrayIcon *trayIcon;
-+};
-+
-+#endif // QT_NO_SYSTEMTRAYICON
-+
-+#endif // QABSTRACTSYSTEMTRAYICONSYS_P_H
-+
-diff -up qt-everywhere-opensource-src-4.8.6/src/gui/util/qsystemtrayicon.cpp.systemtrayicon qt-everywhere-opensource-src-4.8.6/src/gui/util/qsystemtrayicon.cpp
---- qt-everywhere-opensource-src-4.8.6/src/gui/util/qsystemtrayicon.cpp.systemtrayicon 2014-03-30 15:36:49.000000000 -0500
-+++ qt-everywhere-opensource-src-4.8.6/src/gui/util/qsystemtrayicon.cpp 2014-03-31 18:16:39.708974924 -0500
-@@ -287,12 +287,6 @@ bool QSystemTrayIcon::isVisible() const
- */
- bool QSystemTrayIcon::event(QEvent *e)
- {
--#if defined(Q_WS_X11)
-- if (e->type() == QEvent::ToolTip) {
-- Q_D(QSystemTrayIcon);
-- return d->sys->deliverToolTipEvent(e);
-- }
--#endif
- return QObject::event(e);
- }
-
-diff -up qt-everywhere-opensource-src-4.8.6/src/gui/util/qsystemtrayicon_p.h.systemtrayicon qt-everywhere-opensource-src-4.8.6/src/gui/util/qsystemtrayicon_p.h
---- qt-everywhere-opensource-src-4.8.6/src/gui/util/qsystemtrayicon_p.h.systemtrayicon 2014-03-30 15:36:49.000000000 -0500
-+++ qt-everywhere-opensource-src-4.8.6/src/gui/util/qsystemtrayicon_p.h 2014-03-31 18:16:39.708974924 -0500
-@@ -62,10 +62,17 @@
- #include "QtGui/qpixmap.h"
- #include "QtCore/qstring.h"
- #include "QtCore/qpointer.h"
-+#if defined(Q_WS_X11)
-+#include "QtCore/qset.h"
-+#endif
-
- QT_BEGIN_NAMESPACE
-
-+#if defined(Q_WS_X11)
-+class QAbstractSystemTrayIconSys;
-+#else
- class QSystemTrayIconSys;
-+#endif
- class QToolButton;
- class QLabel;
-
-@@ -75,6 +82,9 @@ class QSystemTrayIconPrivate : public QO
-
- public:
- QSystemTrayIconPrivate() : sys(0), visible(false) { }
-+ #if defined(Q_WS_X11)
-+ ~QSystemTrayIconPrivate();
-+ #endif
-
- void install_sys();
- void remove_sys();
-@@ -90,7 +100,11 @@ public:
- QPointer<QMenu> menu;
- QIcon icon;
- QString toolTip;
-+ #if defined(Q_WS_X11)
-+ QAbstractSystemTrayIconSys *sys;
-+ #else
- QSystemTrayIconSys *sys;
-+ #endif
- bool visible;
- };
-
-@@ -123,60 +137,37 @@ private:
- };
-
- #if defined(Q_WS_X11)
--QT_BEGIN_INCLUDE_NAMESPACE
--#include <QtCore/qcoreapplication.h>
--#include <X11/Xlib.h>
--#include <X11/Xatom.h>
--#include <X11/Xutil.h>
--QT_END_INCLUDE_NAMESPACE
-+class QSystemTrayIconSysFactoryInterface;
-
--class QSystemTrayIconSys : public QWidget
-+/**
-+ * This class acts as a composite QSystemTrayIconSysFactory: It can create
-+ * instances of QAbstractSystemTrayIconSys* using either a plugin or the
-+ * builtin factory and will cause QSystemTrayIconPrivate to recreate their
-+ * 'sys' instances if the plugin availability changes.
-+ */
-+class QSystemTrayIconSysFactory : public QObject
- {
-- friend class QSystemTrayIconPrivate;
--
-+ Q_OBJECT
- public:
-- QSystemTrayIconSys(QSystemTrayIcon *q);
-- ~QSystemTrayIconSys();
-- enum {
-- SYSTEM_TRAY_REQUEST_DOCK = 0,
-- SYSTEM_TRAY_BEGIN_MESSAGE = 1,
-- SYSTEM_TRAY_CANCEL_MESSAGE =2
-- };
--
-- void addToTray();
-- void updateIcon();
-- XVisualInfo* getSysTrayVisualInfo();
--
-- // QObject::event is public but QWidget's ::event() re-implementation
-- // is protected ;(
-- inline bool deliverToolTipEvent(QEvent *e)
-- { return QWidget::event(e); }
--
-- static Window sysTrayWindow;
-- static QList<QSystemTrayIconSys *> trayIcons;
-- static QCoreApplication::EventFilter oldEventFilter;
-- static bool sysTrayTracker(void *message, long *result);
-- static Window locateSystemTray();
-- static Atom sysTraySelection;
-- static XVisualInfo sysTrayVisual;
-+ QSystemTrayIconSysFactory();
-+ void registerSystemTrayIconPrivate(QSystemTrayIconPrivate *iconPrivate);
-+ void unregisterSystemTrayIconPrivate(QSystemTrayIconPrivate *iconPrivate);
-
--protected:
-- void paintEvent(QPaintEvent *pe);
-- void resizeEvent(QResizeEvent *re);
-- bool x11Event(XEvent *event);
-- void mousePressEvent(QMouseEvent *event);
-- void mouseDoubleClickEvent(QMouseEvent *event);
--#ifndef QT_NO_WHEELEVENT
-- void wheelEvent(QWheelEvent *event);
--#endif
-- bool event(QEvent *e);
-+ QAbstractSystemTrayIconSys *create(QSystemTrayIcon *) const;
-+
-+ bool isAvailable() const;
-+
-+private Q_SLOTS:
-+ void refreshTrayIconPrivates();
-
- private:
-- QPixmap background;
-- QSystemTrayIcon *q;
-- Colormap colormap;
-+ QSystemTrayIconSysFactoryInterface *factory() const;
-+ void loadPluginFactory();
-+
-+ QSystemTrayIconSysFactoryInterface *pluginFactory;
-+ QSet<QSystemTrayIconPrivate *> trayIconPrivates;
- };
--#endif // Q_WS_X11
-+#endif
-
- QT_END_NAMESPACE
-
-diff -up qt-everywhere-opensource-src-4.8.6/src/gui/util/qsystemtrayicon_x11.cpp.systemtrayicon qt-everywhere-opensource-src-4.8.6/src/gui/util/qsystemtrayicon_x11.cpp
---- qt-everywhere-opensource-src-4.8.6/src/gui/util/qsystemtrayicon_x11.cpp.systemtrayicon 2014-03-30 15:36:49.000000000 -0500
-+++ qt-everywhere-opensource-src-4.8.6/src/gui/util/qsystemtrayicon_x11.cpp 2014-03-31 18:16:39.709974914 -0500
-@@ -38,311 +38,122 @@
- ** $QT_END_LICENSE$
- **
- ****************************************************************************/
-+#ifndef QT_NO_SYSTEMTRAYICON
-+
-+#include <private/qfactoryloader_p.h>
-
--#include "private/qt_x11_p.h"
--#include "qlabel.h"
--#include "qx11info_x11.h"
--#include "qpainter.h"
--#include "qpixmap.h"
--#include "qbitmap.h"
--#include "qevent.h"
--#include "qapplication.h"
--#include "qlist.h"
--#include "qmenu.h"
--#include "qtimer.h"
- #include "qsystemtrayicon_p.h"
--#include "qpaintengine.h"
-+#include "qabstractsystemtrayiconsys_p.h"
-+#include "qcoreapplication.h"
-+#include "qxembedsystemtrayicon_x11_p.h"
-
--#ifndef QT_NO_SYSTEMTRAYICON
- QT_BEGIN_NAMESPACE
-
--Window QSystemTrayIconSys::sysTrayWindow = XNone;
--QList<QSystemTrayIconSys *> QSystemTrayIconSys::trayIcons;
--QCoreApplication::EventFilter QSystemTrayIconSys::oldEventFilter = 0;
--Atom QSystemTrayIconSys::sysTraySelection = XNone;
--XVisualInfo QSystemTrayIconSys::sysTrayVisual = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
--
--// Locate the system tray
--Window QSystemTrayIconSys::locateSystemTray()
--{
-- Display *display = QX11Info::display();
-- if (sysTraySelection == XNone) {
-- int screen = QX11Info::appScreen();
-- QString net_sys_tray = QString::fromLatin1("_NET_SYSTEM_TRAY_S%1").arg(screen);
-- sysTraySelection = XInternAtom(display, net_sys_tray.toLatin1(), False);
-- }
--
-- return XGetSelectionOwner(QX11Info::display(), sysTraySelection);
--}
-+Q_GLOBAL_STATIC(QSystemTrayIconSysFactory, qt_guiSystemTrayIconSysFactory)
-
--XVisualInfo* QSystemTrayIconSys::getSysTrayVisualInfo()
-+QSystemTrayIconSysFactory::QSystemTrayIconSysFactory()
-+: pluginFactory(0)
- {
-- Display *display = QX11Info::display();
--
-- if (!sysTrayVisual.visual) {
-- Window win = locateSystemTray();
-- if (win != XNone) {
-- Atom actual_type;
-- int actual_format;
-- ulong nitems, bytes_remaining;
-- uchar *data = 0;
-- int result = XGetWindowProperty(display, win, ATOM(_NET_SYSTEM_TRAY_VISUAL), 0, 1,
-- False, XA_VISUALID, &actual_type,
-- &actual_format, &nitems, &bytes_remaining, &data);
-- VisualID vid = 0;
-- if (result == Success && data && actual_type == XA_VISUALID && actual_format == 32 &&
-- nitems == 1 && bytes_remaining == 0)
-- vid = *(VisualID*)data;
-- if (data)
-- XFree(data);
-- if (vid == 0)
-- return 0;
--
-- uint mask = VisualIDMask;
-- XVisualInfo *vi, rvi;
-- int count;
-- rvi.visualid = vid;
-- vi = XGetVisualInfo(display, mask, &rvi, &count);
-- if (vi) {
-- sysTrayVisual = vi[0];
-- XFree((char*)vi);
-- }
-- if (sysTrayVisual.depth != 32)
-- memset(&sysTrayVisual, 0, sizeof(sysTrayVisual));
-- }
-- }
--
-- return sysTrayVisual.visual ? &sysTrayVisual : 0;
- }
-
--bool QSystemTrayIconSys::sysTrayTracker(void *message, long *result)
-+void QSystemTrayIconSysFactory::loadPluginFactory()
- {
-- bool retval = false;
-- if (QSystemTrayIconSys::oldEventFilter)
-- retval = QSystemTrayIconSys::oldEventFilter(message, result);
--
-- if (trayIcons.isEmpty())
-- return retval;
--
-- Display *display = QX11Info::display();
-- XEvent *ev = (XEvent *)message;
-- if (ev->type == DestroyNotify && ev->xany.window == sysTrayWindow) {
-- sysTrayWindow = locateSystemTray();
-- memset(&sysTrayVisual, 0, sizeof(sysTrayVisual));
-- for (int i = 0; i < trayIcons.count(); i++) {
-- if (sysTrayWindow == XNone) {
-- QBalloonTip::hideBalloon();
-- trayIcons[i]->hide(); // still no luck
-- trayIcons[i]->destroy();
-- trayIcons[i]->create();
-- } else
-- trayIcons[i]->addToTray(); // add it to the new tray
-- }
-- retval = true;
-- } else if (ev->type == ClientMessage && sysTrayWindow == XNone) {
-- static Atom manager_atom = XInternAtom(display, "MANAGER", False);
-- XClientMessageEvent *cm = (XClientMessageEvent *)message;
-- if ((cm->message_type == manager_atom) && ((Atom)cm->data.l[1] == sysTraySelection)) {
-- sysTrayWindow = cm->data.l[2];
-- memset(&sysTrayVisual, 0, sizeof(sysTrayVisual));
-- XSelectInput(display, sysTrayWindow, StructureNotifyMask);
-- for (int i = 0; i < trayIcons.count(); i++) {
-- trayIcons[i]->addToTray();
-- }
-- retval = true;
-- }
-- } else if (ev->type == PropertyNotify && ev->xproperty.atom == ATOM(_NET_SYSTEM_TRAY_VISUAL) &&
-- ev->xproperty.window == sysTrayWindow) {
-- memset(&sysTrayVisual, 0, sizeof(sysTrayVisual));
-- for (int i = 0; i < trayIcons.count(); i++) {
-- trayIcons[i]->addToTray();
-- }
-- }
--
-- return retval;
--}
--
--QSystemTrayIconSys::QSystemTrayIconSys(QSystemTrayIcon *q)
-- : QWidget(0, Qt::FramelessWindowHint | Qt::X11BypassWindowManagerHint),
-- q(q), colormap(0)
--{
-- setAttribute(Qt::WA_AlwaysShowToolTips);
-- setAttribute(Qt::WA_QuitOnClose, false);
-- setAttribute(Qt::WA_NoSystemBackground, true);
-- setAttribute(Qt::WA_PaintOnScreen);
--
-- static bool eventFilterAdded = false;
-- Display *display = QX11Info::display();
-- if (!eventFilterAdded) {
-- oldEventFilter = qApp->setEventFilter(sysTrayTracker);
-- eventFilterAdded = true;
-- Window root = QX11Info::appRootWindow();
-- XWindowAttributes attr;
-- XGetWindowAttributes(display, root, &attr);
-- if ((attr.your_event_mask & StructureNotifyMask) != StructureNotifyMask) {
-- (void) QApplication::desktop(); // lame trick to ensure our event mask is not overridden
-- XSelectInput(display, root, attr.your_event_mask | StructureNotifyMask); // for MANAGER selection
-- }
-+ if (pluginFactory) {
-+ return;
- }
-- if (trayIcons.isEmpty()) {
-- sysTrayWindow = locateSystemTray();
-- if (sysTrayWindow != XNone)
-- XSelectInput(display, sysTrayWindow, StructureNotifyMask); // track tray events
-+#ifndef QT_NO_LIBRARY
-+ QFactoryLoader loader(QSystemTrayIconSysFactoryInterface_iid, QLatin1String("/systemtrayicon"));
-+ pluginFactory = qobject_cast<QSystemTrayIconSysFactoryInterface *>(loader.instance(QLatin1String("default")));
-+ if (pluginFactory) {
-+ // Set parent to ensure factory destructor is called when application
-+ // is closed
-+ pluginFactory->setParent(QCoreApplication::instance());
-+ connect(pluginFactory, SIGNAL(availableChanged(bool)), SLOT(refreshTrayIconPrivates()));
- }
-- trayIcons.append(this);
-- setMouseTracking(true);
--#ifndef QT_NO_TOOLTIP
-- setToolTip(q->toolTip());
--#endif
-- if (sysTrayWindow != XNone)
-- addToTray();
-+#endif // QT_NO_LIBRARY
- }
-
--QSystemTrayIconSys::~QSystemTrayIconSys()
-+QSystemTrayIconSysFactoryInterface *QSystemTrayIconSysFactory::factory() const
- {
-- trayIcons.removeAt(trayIcons.indexOf(this));
-- Display *display = QX11Info::display();
-- if (trayIcons.isEmpty()) {
-- if (sysTrayWindow == XNone)
-- return;
-- if (display)
-- XSelectInput(display, sysTrayWindow, 0); // stop tracking the tray
-- sysTrayWindow = XNone;
-+ if (!pluginFactory) {
-+ const_cast<QSystemTrayIconSysFactory*>(this)->loadPluginFactory();
- }
-- if (colormap)
-- XFreeColormap(display, colormap);
-+ if (pluginFactory && pluginFactory->isAvailable()) {
-+ return pluginFactory;
-+ }
-+ static QXEmbedSystemTrayIconSysFactory def;
-+ return def.isAvailable() ? &def : 0;
- }
-
--void QSystemTrayIconSys::addToTray()
-+void QSystemTrayIconSysFactory::refreshTrayIconPrivates()
- {
-- Q_ASSERT(sysTrayWindow != XNone);
-- Display *display = QX11Info::display();
--
-- XVisualInfo *vi = getSysTrayVisualInfo();
-- if (vi && vi->visual) {
-- Window root = RootWindow(display, vi->screen);
-- Window p = root;
-- if (QWidget *pw = parentWidget())
-- p = pw->effectiveWinId();
-- colormap = XCreateColormap(display, root, vi->visual, AllocNone);
-- XSetWindowAttributes wsa;
-- wsa.background_pixmap = 0;
-- wsa.colormap = colormap;
-- wsa.background_pixel = 0;
-- wsa.border_pixel = 0;
-- Window wid = XCreateWindow(display, p, -1, -1, 1, 1,
-- 0, vi->depth, InputOutput, vi->visual,
-- CWBackPixmap|CWBackPixel|CWBorderPixel|CWColormap, &wsa);
-- create(wid);
-- } else {
-- XSetWindowBackgroundPixmap(display, winId(), ParentRelative);
-- }
--
-- // GNOME, NET WM Specification
-- static Atom netwm_tray_atom = XInternAtom(display, "_NET_SYSTEM_TRAY_OPCODE", False);
-- long l[5] = { CurrentTime, SYSTEM_TRAY_REQUEST_DOCK, static_cast<long>(winId()), 0, 0 };
-- XEvent ev;
-- memset(&ev, 0, sizeof(ev));
-- ev.xclient.type = ClientMessage;
-- ev.xclient.window = sysTrayWindow;
-- ev.xclient.message_type = netwm_tray_atom;
-- ev.xclient.format = 32;
-- memcpy((char *)&ev.xclient.data, (const char *) l, sizeof(l));
-- XSendEvent(display, sysTrayWindow, False, 0, &ev);
-- setMinimumSize(22, 22); // required at least on GNOME
--}
--
--void QSystemTrayIconSys::updateIcon()
--{
-- update();
--}
--
--void QSystemTrayIconSys::resizeEvent(QResizeEvent *re)
--{
-- QWidget::resizeEvent(re);
-- updateIcon();
--}
--
--void QSystemTrayIconSys::paintEvent(QPaintEvent*)
--{
-- QPainter p(this);
-- if (!getSysTrayVisualInfo()) {
-- const QRegion oldSystemClip = p.paintEngine()->systemClip();
-- const QRect clearedRect = oldSystemClip.boundingRect();
-- XClearArea(QX11Info::display(), winId(), clearedRect.x(), clearedRect.y(),
-- clearedRect.width(), clearedRect.height(), False);
-- QPaintEngine *pe = p.paintEngine();
-- pe->setSystemClip(clearedRect);
-- q->icon().paint(&p, rect());
-- pe->setSystemClip(oldSystemClip);
-- } else {
-- p.setCompositionMode(QPainter::CompositionMode_Source);
-- p.fillRect(rect(), Qt::transparent);
-- p.setCompositionMode(QPainter::CompositionMode_SourceOver);
-- q->icon().paint(&p, rect());
-+ Q_FOREACH(QSystemTrayIconPrivate *trayIconPrivate, trayIconPrivates) {
-+ if (trayIconPrivate->sys) {
-+ delete trayIconPrivate->sys;
-+ trayIconPrivate->sys = 0;
-+ }
-+ // When visible is true, sys is usually not 0 but it can be 0 if the
-+ // call to install_sys() failed.
-+ if (trayIconPrivate->visible) {
-+ trayIconPrivate->install_sys();
-+ }
- }
- }
-
--void QSystemTrayIconSys::mousePressEvent(QMouseEvent *ev)
-+void QSystemTrayIconSysFactory::registerSystemTrayIconPrivate(QSystemTrayIconPrivate* trayIconPrivate)
- {
-- QPoint globalPos = ev->globalPos();
-- if (ev->button() == Qt::RightButton && q->contextMenu())
-- q->contextMenu()->popup(globalPos);
--
-- if (QBalloonTip::isBalloonVisible()) {
-- emit q->messageClicked();
-- QBalloonTip::hideBalloon();
-- }
--
-- if (ev->button() == Qt::LeftButton)
-- emit q->activated(QSystemTrayIcon::Trigger);
-- else if (ev->button() == Qt::RightButton)
-- emit q->activated(QSystemTrayIcon::Context);
-- else if (ev->button() == Qt::MidButton)
-- emit q->activated(QSystemTrayIcon::MiddleClick);
-+ trayIconPrivates.insert(trayIconPrivate);
- }
-
--void QSystemTrayIconSys::mouseDoubleClickEvent(QMouseEvent *ev)
-+void QSystemTrayIconSysFactory::unregisterSystemTrayIconPrivate(QSystemTrayIconPrivate* trayIconPrivate)
- {
-- if (ev->button() == Qt::LeftButton)
-- emit q->activated(QSystemTrayIcon::DoubleClick);
-+ trayIconPrivates.remove(trayIconPrivate);
- }
-
--#ifndef QT_NO_WHEELEVENT
--void QSystemTrayIconSys::wheelEvent(QWheelEvent *e)
-+QAbstractSystemTrayIconSys *QSystemTrayIconSysFactory::create(QSystemTrayIcon *trayIcon) const
- {
-- QApplication::sendEvent(q, e);
-+ QSystemTrayIconSysFactoryInterface *f = factory();
-+ if (!f) {
-+ qWarning("No systemtrayicon available");
-+ return 0;
-+ }
-+ return f->create(trayIcon);
- }
--#endif
-
--bool QSystemTrayIconSys::event(QEvent *e)
-+bool QSystemTrayIconSysFactory::isAvailable() const
- {
-- if (e->type() == QEvent::ToolTip) {
-- return QApplication::sendEvent(q, e);
-- }
-- return QWidget::event(e);
-+ return factory();
- }
-
--bool QSystemTrayIconSys::x11Event(XEvent *event)
-+////////////////////////////////////////////////
-+QSystemTrayIconPrivate::~QSystemTrayIconPrivate()
- {
-- if (event->type == ReparentNotify)
-- show();
-- return QWidget::x11Event(event);
-+ qt_guiSystemTrayIconSysFactory()->unregisterSystemTrayIconPrivate(this);
-+ delete sys;
- }
-
--////////////////////////////////////////////////////////////////////////////
- void QSystemTrayIconPrivate::install_sys()
- {
- Q_Q(QSystemTrayIcon);
-- if (!sys)
-- sys = new QSystemTrayIconSys(q);
-+ if (!sys) {
-+ // Register ourself even if create() fails: our "sys" will get created
-+ // later by refreshTrayIconPrivates() if a systemtray becomes
-+ // available. This situation can happen for applications which are
-+ // started at login time, while the desktop itself is starting up.
-+ qt_guiSystemTrayIconSysFactory()->registerSystemTrayIconPrivate(this);
-+ sys = qt_guiSystemTrayIconSysFactory()->create(q);
-+ if (!sys) {
-+ return;
-+ }
-+ }
-+ sys->updateVisibility();
- }
-
- QRect QSystemTrayIconPrivate::geometry_sys() const
- {
-- if (!sys)
-- return QRect();
-- return QRect(sys->mapToGlobal(QPoint(0, 0)), sys->size());
-+ if (!sys || !visible)
-+ return QRect();
-+ return sys->geometry();
- }
-
- void QSystemTrayIconPrivate::remove_sys()
-@@ -350,35 +161,35 @@ void QSystemTrayIconPrivate::remove_sys(
- if (!sys)
- return;
- QBalloonTip::hideBalloon();
-- sys->hide(); // this should do the trick, but...
-- delete sys; // wm may resize system tray only for DestroyEvents
-- sys = 0;
-+ sys->updateVisibility();
- }
-
- void QSystemTrayIconPrivate::updateIcon_sys()
- {
-- if (!sys)
-+ if (!sys || !visible)
- return;
- sys->updateIcon();
- }
-
- void QSystemTrayIconPrivate::updateMenu_sys()
- {
--
-+ if (!sys || !visible)
-+ return;
-+ sys->updateMenu();
- }
-
- void QSystemTrayIconPrivate::updateToolTip_sys()
- {
-- if (!sys)
-+ if (!sys || !visible)
- return;
- #ifndef QT_NO_TOOLTIP
-- sys->setToolTip(toolTip);
-+ sys->updateToolTip();
- #endif
- }
-
- bool QSystemTrayIconPrivate::isSystemTrayAvailable_sys()
- {
-- return QSystemTrayIconSys::locateSystemTray() != XNone;
-+ return qt_guiSystemTrayIconSysFactory()->isAvailable();
- }
-
- bool QSystemTrayIconPrivate::supportsMessages_sys()
-@@ -389,12 +200,9 @@ bool QSystemTrayIconPrivate::supportsMes
- void QSystemTrayIconPrivate::showMessage_sys(const QString &message, const QString &title,
- QSystemTrayIcon::MessageIcon icon, int msecs)
- {
-- if (!sys)
-+ if (!sys || !visible)
- return;
-- QPoint g = sys->mapToGlobal(QPoint(0, 0));
-- QBalloonTip::showBalloon(icon, message, title, sys->q,
-- QPoint(g.x() + sys->width()/2, g.y() + sys->height()/2),
-- msecs);
-+ sys->showMessage(message, title, icon, msecs);
- }
-
- QT_END_NAMESPACE
-diff -up qt-everywhere-opensource-src-4.8.6/src/gui/util/qxembedsystemtrayicon_x11.cpp.systemtrayicon qt-everywhere-opensource-src-4.8.6/src/gui/util/qxembedsystemtrayicon_x11.cpp
---- qt-everywhere-opensource-src-4.8.6/src/gui/util/qxembedsystemtrayicon_x11.cpp.systemtrayicon 2014-03-31 18:16:39.709974914 -0500
-+++ qt-everywhere-opensource-src-4.8.6/src/gui/util/qxembedsystemtrayicon_x11.cpp 2014-03-31 18:16:39.709974914 -0500
-@@ -0,0 +1,469 @@
-+/****************************************************************************
-+**
-+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
-+** All rights reserved.
-+** Contact: Nokia Corporation (qt-info@nokia.com)
-+**
-+** This file is part of the QtGui module of the Qt Toolkit.
-+**
-+** $QT_BEGIN_LICENSE:LGPL$
-+** GNU Lesser General Public License Usage
-+** This file may be used under the terms of the GNU Lesser General Public
-+** License version 2.1 as published by the Free Software Foundation and
-+** appearing in the file LICENSE.LGPL included in the packaging of this
-+** file. Please review the following information to ensure the GNU Lesser
-+** General Public License version 2.1 requirements will be met:
-+** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
-+**
-+** In addition, as a special exception, Nokia gives you certain additional
-+** rights. These rights are described in the Nokia Qt LGPL Exception
-+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
-+**
-+** GNU General Public License Usage
-+** Alternatively, this file may be used under the terms of the GNU General
-+** Public License version 3.0 as published by the Free Software Foundation
-+** and appearing in the file LICENSE.GPL included in the packaging of this
-+** file. Please review the following information to ensure the GNU General
-+** Public License version 3.0 requirements will be met:
-+** http://www.gnu.org/copyleft/gpl.html.
-+**
-+** Other Usage
-+** Alternatively, this file may be used in accordance with the terms and
-+** conditions contained in a signed written agreement between you and Nokia.
-+**
-+**
-+**
-+**
-+**
-+** $QT_END_LICENSE$
-+**
-+****************************************************************************/
-+#include "qxembedsystemtrayicon_x11_p.h"
-+
-+#ifndef QT_NO_SYSTEMTRAYICON
-+
-+#include "private/qt_x11_p.h"
-+#include "qapplication.h"
-+#include "qevent.h"
-+#include "qlist.h"
-+#include "qmenu.h"
-+#include "qpainter.h"
-+#include "qpaintengine.h"
-+#include "qsystemtrayicon_p.h"
-+#include "qx11info_x11.h"
-+
-+QT_BEGIN_INCLUDE_NAMESPACE
-+#include <QtCore/qcoreapplication.h>
-+#include <X11/Xlib.h>
-+#include <X11/Xatom.h>
-+#include <X11/Xutil.h>
-+QT_END_INCLUDE_NAMESPACE
-+
-+QT_BEGIN_NAMESPACE
-+
-+class QSystemTrayIconWidget : public QWidget
-+{
-+public:
-+ QSystemTrayIconWidget(QSystemTrayIcon *q, QXEmbedSystemTrayIconSys *s);
-+ ~QSystemTrayIconWidget();
-+
-+ static Window locateSystemTray();
-+
-+protected:
-+ void paintEvent(QPaintEvent *pe);
-+ void resizeEvent(QResizeEvent *re);
-+ bool x11Event(XEvent *event);
-+ void mousePressEvent(QMouseEvent *event);
-+ void mouseDoubleClickEvent(QMouseEvent *event);
-+#ifndef QT_NO_WHEELEVENT
-+ void wheelEvent(QWheelEvent *event);
-+#endif
-+ bool event(QEvent *e);
-+
-+private:
-+ enum {
-+ SYSTEM_TRAY_REQUEST_DOCK = 0,
-+ SYSTEM_TRAY_BEGIN_MESSAGE = 1,
-+ SYSTEM_TRAY_CANCEL_MESSAGE =2
-+ };
-+
-+ void addToTray();
-+ static XVisualInfo* getSysTrayVisualInfo();
-+
-+ static Window sysTrayWindow;
-+ static QList<QSystemTrayIconWidget *> trayIcons;
-+ static QCoreApplication::EventFilter oldEventFilter;
-+ static bool sysTrayTracker(void *message, long *result);
-+ static Atom sysTraySelection;
-+ static XVisualInfo sysTrayVisual;
-+
-+ QSystemTrayIcon *q;
-+ QXEmbedSystemTrayIconSys *sys;
-+ Colormap colormap;
-+};
-+
-+Window QSystemTrayIconWidget::sysTrayWindow = XNone;
-+QList<QSystemTrayIconWidget *> QSystemTrayIconWidget::trayIcons;
-+QCoreApplication::EventFilter QSystemTrayIconWidget::oldEventFilter = 0;
-+Atom QSystemTrayIconWidget::sysTraySelection = XNone;
-+XVisualInfo QSystemTrayIconWidget::sysTrayVisual = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
-+
-+QSystemTrayIconWidget::QSystemTrayIconWidget(QSystemTrayIcon* q, QXEmbedSystemTrayIconSys* sys)
-+: QWidget(0, Qt::FramelessWindowHint | Qt::X11BypassWindowManagerHint)
-+, q(q)
-+, sys(sys)
-+, colormap(0)
-+{
-+ setAttribute(Qt::WA_AlwaysShowToolTips);
-+ setAttribute(Qt::WA_QuitOnClose, false);
-+ setAttribute(Qt::WA_NoSystemBackground, true);
-+ setAttribute(Qt::WA_PaintOnScreen);
-+ setMouseTracking(true);
-+#ifndef QT_NO_TOOLTIP
-+ setToolTip(q->toolTip());
-+#endif
-+
-+ static bool eventFilterAdded = false;
-+ Display *display = QX11Info::display();
-+ if (!eventFilterAdded) {
-+ oldEventFilter = qApp->setEventFilter(sysTrayTracker);
-+ eventFilterAdded = true;
-+ Window root = QX11Info::appRootWindow();
-+ XWindowAttributes attr;
-+ XGetWindowAttributes(display, root, &attr);
-+ if ((attr.your_event_mask & StructureNotifyMask) != StructureNotifyMask) {
-+ (void) QApplication::desktop(); // lame trick to ensure our event mask is not overridden
-+ XSelectInput(display, root, attr.your_event_mask | StructureNotifyMask); // for MANAGER selection
-+ }
-+ }
-+ if (trayIcons.isEmpty()) {
-+ sysTrayWindow = locateSystemTray();
-+ if (sysTrayWindow != XNone)
-+ XSelectInput(display, sysTrayWindow, StructureNotifyMask); // track tray events
-+ }
-+ trayIcons.append(this);
-+ if (sysTrayWindow != XNone)
-+ addToTray();
-+}
-+
-+QSystemTrayIconWidget::~QSystemTrayIconWidget()
-+{
-+ trayIcons.removeAt(trayIcons.indexOf(this));
-+ Display *display = QX11Info::display();
-+ if (trayIcons.isEmpty()) {
-+ if (sysTrayWindow == XNone)
-+ return;
-+ if (display)
-+ XSelectInput(display, sysTrayWindow, 0); // stop tracking the tray
-+ sysTrayWindow = XNone;
-+ }
-+ if (colormap)
-+ XFreeColormap(display, colormap);
-+}
-+
-+void QSystemTrayIconWidget::resizeEvent(QResizeEvent *re)
-+{
-+ QWidget::resizeEvent(re);
-+ update();
-+}
-+
-+void QSystemTrayIconWidget::paintEvent(QPaintEvent*)
-+{
-+ QPainter p(this);
-+ if (!getSysTrayVisualInfo()) {
-+ const QRegion oldSystemClip = p.paintEngine()->systemClip();
-+ const QRect clearedRect = oldSystemClip.boundingRect();
-+ XClearArea(QX11Info::display(), winId(), clearedRect.x(), clearedRect.y(),
-+ clearedRect.width(), clearedRect.height(), False);
-+ QPaintEngine *pe = p.paintEngine();
-+ pe->setSystemClip(clearedRect);
-+ q->icon().paint(&p, rect());
-+ pe->setSystemClip(oldSystemClip);
-+ } else {
-+ p.setCompositionMode(QPainter::CompositionMode_Source);
-+ p.fillRect(rect(), Qt::transparent);
-+ p.setCompositionMode(QPainter::CompositionMode_SourceOver);
-+ q->icon().paint(&p, rect());
-+ }
-+}
-+
-+void QSystemTrayIconWidget::mousePressEvent(QMouseEvent *ev)
-+{
-+ QPoint globalPos = ev->globalPos();
-+ if (ev->button() == Qt::RightButton && q->contextMenu())
-+ q->contextMenu()->popup(globalPos);
-+
-+ if (QBalloonTip::isBalloonVisible()) {
-+ QMetaObject::invokeMethod(q, "messageClicked");
-+ QBalloonTip::hideBalloon();
-+ }
-+
-+ if (ev->button() == Qt::LeftButton)
-+ qtsystray_sendActivated(q, QSystemTrayIcon::Trigger);
-+ else if (ev->button() == Qt::RightButton)
-+ qtsystray_sendActivated(q, QSystemTrayIcon::Context);
-+ else if (ev->button() == Qt::MidButton)
-+ qtsystray_sendActivated(q, QSystemTrayIcon::MiddleClick);
-+}
-+
-+void QSystemTrayIconWidget::mouseDoubleClickEvent(QMouseEvent *ev)
-+{
-+ if (ev->button() == Qt::LeftButton)
-+ qtsystray_sendActivated(q, QSystemTrayIcon::DoubleClick);
-+}
-+
-+#ifndef QT_NO_WHEELEVENT
-+void QSystemTrayIconWidget::wheelEvent(QWheelEvent *e)
-+{
-+ sys->sendWheelEventToTrayIcon(e->delta(), e->orientation());
-+}
-+#endif
-+
-+bool QSystemTrayIconWidget::event(QEvent *e)
-+{
-+ if (e->type() == QEvent::ToolTip) {
-+ sys->sendToolTipEventToTrayIcon();
-+ }
-+ return QWidget::event(e);
-+}
-+
-+bool QSystemTrayIconWidget::x11Event(XEvent *event)
-+{
-+ if (event->type == ReparentNotify)
-+ show();
-+ return QWidget::x11Event(event);
-+}
-+
-+// Locate the system tray
-+Window QSystemTrayIconWidget::locateSystemTray()
-+{
-+ Display *display = QX11Info::display();
-+ if (sysTraySelection == XNone) {
-+ int screen = QX11Info::appScreen();
-+ QString net_sys_tray = QString::fromLatin1("_NET_SYSTEM_TRAY_S%1").arg(screen);
-+ sysTraySelection = XInternAtom(display, net_sys_tray.toLatin1(), False);
-+ }
-+
-+ return XGetSelectionOwner(QX11Info::display(), sysTraySelection);
-+}
-+
-+XVisualInfo* QSystemTrayIconWidget::getSysTrayVisualInfo()
-+{
-+ Display *display = QX11Info::display();
-+
-+ if (!sysTrayVisual.visual) {
-+ Window win = locateSystemTray();
-+ if (win != XNone) {
-+ Atom actual_type;
-+ int actual_format;
-+ ulong nitems, bytes_remaining;
-+ uchar *data = 0;
-+ int result = XGetWindowProperty(display, win, ATOM(_NET_SYSTEM_TRAY_VISUAL), 0, 1,
-+ False, XA_VISUALID, &actual_type,
-+ &actual_format, &nitems, &bytes_remaining, &data);
-+ VisualID vid = 0;
-+ if (result == Success && data && actual_type == XA_VISUALID && actual_format == 32 &&
-+ nitems == 1 && bytes_remaining == 0)
-+ vid = *(VisualID*)data;
-+ if (data)
-+ XFree(data);
-+ if (vid == 0)
-+ return 0;
-+
-+ uint mask = VisualIDMask;
-+ XVisualInfo *vi, rvi;
-+ int count;
-+ rvi.visualid = vid;
-+ vi = XGetVisualInfo(display, mask, &rvi, &count);
-+ if (vi) {
-+ sysTrayVisual = vi[0];
-+ XFree((char*)vi);
-+ }
-+ if (sysTrayVisual.depth != 32)
-+ memset(&sysTrayVisual, 0, sizeof(sysTrayVisual));
-+ }
-+ }
-+
-+ return sysTrayVisual.visual ? &sysTrayVisual : 0;
-+}
-+
-+bool QSystemTrayIconWidget::sysTrayTracker(void *message, long *result)
-+{
-+ bool retval = false;
-+ if (QSystemTrayIconWidget::oldEventFilter)
-+ retval = QSystemTrayIconWidget::oldEventFilter(message, result);
-+
-+ if (trayIcons.isEmpty())
-+ return retval;
-+
-+ Display *display = QX11Info::display();
-+ XEvent *ev = (XEvent *)message;
-+ if (ev->type == DestroyNotify && ev->xany.window == sysTrayWindow) {
-+ sysTrayWindow = locateSystemTray();
-+ memset(&sysTrayVisual, 0, sizeof(sysTrayVisual));
-+ for (int i = 0; i < trayIcons.count(); i++) {
-+ if (sysTrayWindow == XNone) {
-+ QBalloonTip::hideBalloon();
-+ trayIcons[i]->hide(); // still no luck
-+ trayIcons[i]->destroy();
-+ trayIcons[i]->create();
-+ } else
-+ trayIcons[i]->addToTray(); // add it to the new tray
-+ }
-+ retval = true;
-+ } else if (ev->type == ClientMessage && sysTrayWindow == XNone) {
-+ static Atom manager_atom = XInternAtom(display, "MANAGER", False);
-+ XClientMessageEvent *cm = (XClientMessageEvent *)message;
-+ if ((cm->message_type == manager_atom) && ((Atom)cm->data.l[1] == sysTraySelection)) {
-+ sysTrayWindow = cm->data.l[2];
-+ memset(&sysTrayVisual, 0, sizeof(sysTrayVisual));
-+ XSelectInput(display, sysTrayWindow, StructureNotifyMask);
-+ for (int i = 0; i < trayIcons.count(); i++) {
-+ trayIcons[i]->addToTray();
-+ }
-+ retval = true;
-+ }
-+ } else if (ev->type == PropertyNotify && ev->xproperty.atom == ATOM(_NET_SYSTEM_TRAY_VISUAL) &&
-+ ev->xproperty.window == sysTrayWindow) {
-+ memset(&sysTrayVisual, 0, sizeof(sysTrayVisual));
-+ for (int i = 0; i < trayIcons.count(); i++) {
-+ trayIcons[i]->addToTray();
-+ }
-+ }
-+
-+ return retval;
-+}
-+
-+void QSystemTrayIconWidget::addToTray()
-+{
-+ Q_ASSERT(sysTrayWindow != XNone);
-+ Display *display = QX11Info::display();
-+
-+ XVisualInfo *vi = getSysTrayVisualInfo();
-+ if (vi && vi->visual) {
-+ Window root = RootWindow(display, vi->screen);
-+ Window p = root;
-+ if (QWidget *pw = parentWidget())
-+ p = pw->effectiveWinId();
-+ colormap = XCreateColormap(display, root, vi->visual, AllocNone);
-+ XSetWindowAttributes wsa;
-+ wsa.background_pixmap = 0;
-+ wsa.colormap = colormap;
-+ wsa.background_pixel = 0;
-+ wsa.border_pixel = 0;
-+ Window wid = XCreateWindow(display, p, -1, -1, 1, 1,
-+ 0, vi->depth, InputOutput, vi->visual,
-+ CWBackPixmap|CWBackPixel|CWBorderPixel|CWColormap, &wsa);
-+ create(wid);
-+ } else {
-+ XSetWindowBackgroundPixmap(display, winId(), ParentRelative);
-+ }
-+
-+ // GNOME, NET WM Specification
-+ static Atom netwm_tray_atom = XInternAtom(display, "_NET_SYSTEM_TRAY_OPCODE", False);
-+ long l[5] = { CurrentTime, SYSTEM_TRAY_REQUEST_DOCK, static_cast<long>(winId()), 0, 0 };
-+ XEvent ev;
-+ memset(&ev, 0, sizeof(ev));
-+ ev.xclient.type = ClientMessage;
-+ ev.xclient.window = sysTrayWindow;
-+ ev.xclient.message_type = netwm_tray_atom;
-+ ev.xclient.format = 32;
-+ memcpy((char *)&ev.xclient.data, (const char *) l, sizeof(l));
-+ XSendEvent(display, sysTrayWindow, False, 0, &ev);
-+ setMinimumSize(22, 22); // required at least on GNOME
-+}
-+
-+////////////////////////////////////////////////////////////////////////////
-+QXEmbedSystemTrayIconSys::QXEmbedSystemTrayIconSys(QSystemTrayIcon *q)
-+: QAbstractSystemTrayIconSys(q)
-+, widget(0)
-+{
-+}
-+
-+QXEmbedSystemTrayIconSys::~QXEmbedSystemTrayIconSys()
-+{
-+ delete widget;
-+}
-+
-+QRect QXEmbedSystemTrayIconSys::geometry() const
-+{
-+ if (!widget)
-+ return QRect();
-+ return QRect(widget->mapToGlobal(QPoint(0, 0)), widget->size());
-+}
-+
-+void QXEmbedSystemTrayIconSys::updateIcon()
-+{
-+ if (!widget)
-+ return;
-+ widget->update();
-+}
-+
-+void QXEmbedSystemTrayIconSys::updateToolTip()
-+{
-+ if (!widget)
-+ return;
-+ widget->setToolTip(trayIcon->toolTip());
-+}
-+
-+void QXEmbedSystemTrayIconSys::showMessage(const QString &message, const QString &title,
-+ QSystemTrayIcon::MessageIcon icon, int msecs)
-+{
-+ if (!widget)
-+ return;
-+ QPoint point = geometry().center();
-+ QBalloonTip::showBalloon(icon, message, title, trayIcon, point, msecs);
-+}
-+
-+void QXEmbedSystemTrayIconSys::updateVisibility()
-+{
-+ bool visible = trayIcon->isVisible();
-+ if (visible && !widget)
-+ widget = new QSystemTrayIconWidget(trayIcon, this);
-+ else if (!visible && widget) {
-+ delete widget;
-+ widget = 0;
-+ }
-+}
-+
-+void QXEmbedSystemTrayIconSys::sendToolTipEventToTrayIcon()
-+{
-+#ifndef QT_NO_TOOLTIP
-+ // Pass the event through QSystemTrayIcon so that it gets a chance to
-+ // update the tooltip, then asks widget to show the tooltip
-+ Q_ASSERT(widget);
-+ QPoint globalPos = QCursor::pos();
-+ QPoint pos = widget->mapFromGlobal(globalPos);
-+ QHelpEvent event(QEvent::ToolTip, pos, globalPos);
-+ QApplication::sendEvent(trayIcon, &event);
-+#endif
-+}
-+
-+void QXEmbedSystemTrayIconSys::sendWheelEventToTrayIcon(int delta, Qt::Orientation orientation)
-+{
-+#ifndef QT_NO_WHEELEVENT
-+ Q_ASSERT(widget);
-+ QPoint globalPos = QCursor::pos();
-+ QPoint pos = widget->mapFromGlobal(globalPos);
-+ QWheelEvent event(pos, globalPos, delta, Qt::NoButton, Qt::NoModifier, orientation);
-+ QApplication::sendEvent(trayIcon, &event);
-+#endif
-+}
-+
-+void QXEmbedSystemTrayIconSys::updateMenu()
-+{
-+}
-+
-+/////////////////////////////////////////////////////////////
-+QAbstractSystemTrayIconSys * QXEmbedSystemTrayIconSysFactory::create(QSystemTrayIcon *icon)
-+{
-+ return new QXEmbedSystemTrayIconSys(icon);
-+}
-+
-+bool QXEmbedSystemTrayIconSysFactory::isAvailable() const
-+{
-+ return QSystemTrayIconWidget::locateSystemTray() != XNone;
-+}
-+
-+QT_END_NAMESPACE
-+#endif //QT_NO_SYSTEMTRAYICON
-diff -up qt-everywhere-opensource-src-4.8.6/src/gui/util/qxembedsystemtrayicon_x11_p.h.systemtrayicon qt-everywhere-opensource-src-4.8.6/src/gui/util/qxembedsystemtrayicon_x11_p.h
---- qt-everywhere-opensource-src-4.8.6/src/gui/util/qxembedsystemtrayicon_x11_p.h.systemtrayicon 2014-03-31 18:16:39.709974914 -0500
-+++ qt-everywhere-opensource-src-4.8.6/src/gui/util/qxembedsystemtrayicon_x11_p.h 2014-03-31 18:16:39.709974914 -0500
-@@ -0,0 +1,104 @@
-+/****************************************************************************
-+**
-+** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
-+** All rights reserved.
-+** Contact: Nokia Corporation (qt-info@nokia.com)
-+**
-+** This file is part of the QtGui module of the Qt Toolkit.
-+**
-+** $QT_BEGIN_LICENSE:LGPL$
-+** GNU Lesser General Public License Usage
-+** This file may be used under the terms of the GNU Lesser General Public
-+** License version 2.1 as published by the Free Software Foundation and
-+** appearing in the file LICENSE.LGPL included in the packaging of this
-+** file. Please review the following information to ensure the GNU Lesser
-+** General Public License version 2.1 requirements will be met:
-+** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
-+**
-+** In addition, as a special exception, Nokia gives you certain additional
-+** rights. These rights are described in the Nokia Qt LGPL Exception
-+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
-+**
-+** GNU General Public License Usage
-+** Alternatively, this file may be used under the terms of the GNU General
-+** Public License version 3.0 as published by the Free Software Foundation
-+** and appearing in the file LICENSE.GPL included in the packaging of this
-+** file. Please review the following information to ensure the GNU General
-+** Public License version 3.0 requirements will be met:
-+** http://www.gnu.org/copyleft/gpl.html.
-+**
-+** Other Usage
-+** Alternatively, this file may be used in accordance with the terms and
-+** conditions contained in a signed written agreement between you and Nokia.
-+**
-+**
-+**
-+**
-+**
-+** $QT_END_LICENSE$
-+**
-+****************************************************************************/
-+
-+#ifndef QXEMBEDSYSTEMTRAYICON_X11_P_H
-+#define QXEMBEDSYSTEMTRAYICON_X11_P_H
-+
-+//
-+// W A R N I N G
-+// -------------
-+//
-+// This file is not part of the Qt API. It exists for the convenience
-+// of a number of Qt sources files. This header file may change from
-+// version to version without notice, or even be removed.
-+//
-+// We mean it.
-+//
-+
-+#ifndef QT_NO_SYSTEMTRAYICON
-+
-+#include "qabstractsystemtrayiconsys_p.h"
-+
-+QT_BEGIN_NAMESPACE
-+
-+class QSystemTrayIconWidget;
-+
-+class QXEmbedSystemTrayIconSys : public QAbstractSystemTrayIconSys
-+{
-+public:
-+ QXEmbedSystemTrayIconSys(QSystemTrayIcon *);
-+ ~QXEmbedSystemTrayIconSys();
-+
-+ QRect geometry() const;
-+
-+ void updateVisibility();
-+
-+ void updateIcon();
-+
-+ void updateToolTip();
-+
-+ void updateMenu();
-+
-+ void showMessage(const QString &message, const QString &title,
-+ QSystemTrayIcon::MessageIcon icon, int msecs);
-+
-+private:
-+ friend class QSystemTrayIconWidget;
-+ QSystemTrayIconWidget *widget;
-+
-+ void sendToolTipEventToTrayIcon();
-+
-+ void sendWheelEventToTrayIcon(int delta, Qt::Orientation orientation);
-+};
-+
-+struct QXEmbedSystemTrayIconSysFactory : public QSystemTrayIconSysFactoryInterface
-+{
-+ QAbstractSystemTrayIconSys * create(QSystemTrayIcon *trayIcon);
-+ bool isAvailable() const;
-+};
-+
-+
-+QT_END_NAMESPACE
-+
-+#endif // QT_NO_SYSTEMTRAYICON
-+
-+#endif // QXEMBEDSYSTEMTRAYICON_X11_P_H
-+
-diff -up qt-everywhere-opensource-src-4.8.6/src/gui/util/util.pri.systemtrayicon qt-everywhere-opensource-src-4.8.6/src/gui/util/util.pri
---- qt-everywhere-opensource-src-4.8.6/src/gui/util/util.pri.systemtrayicon 2014-03-30 15:36:49.000000000 -0500
-+++ qt-everywhere-opensource-src-4.8.6/src/gui/util/util.pri 2014-03-31 18:16:39.710974903 -0500
-@@ -29,8 +29,13 @@ wince* {
- }
-
- unix:x11 {
-+ HEADERS += \
-+ util/qabstractsystemtrayiconsys_p.h \
-+ util/qxembedsystemtrayicon_x11_p.h
- SOURCES += \
-- util/qsystemtrayicon_x11.cpp
-+ util/qabstractsystemtrayiconsys.cpp \
-+ util/qsystemtrayicon_x11.cpp \
-+ util/qxembedsystemtrayicon_x11.cpp
- }
-
- embedded|qpa {
diff --git a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.7-QT_VERSION_CHECK.patch b/source/l/qt/patches/qt-everywhere-opensource-src-4.8.7-QT_VERSION_CHECK.patch
deleted file mode 100644
index 9bce98ff8..000000000
--- a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.7-QT_VERSION_CHECK.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -up qt-everywhere-opensource-src-4.8.7/src/corelib/global/qglobal.h.majmin qt-everywhere-opensource-src-4.8.7/src/corelib/global/qglobal.h
---- qt-everywhere-opensource-src-4.8.7/src/corelib/global/qglobal.h.majmin 2015-05-07 09:14:48.000000000 -0500
-+++ qt-everywhere-opensource-src-4.8.7/src/corelib/global/qglobal.h 2016-12-08 12:10:29.677359701 -0600
-@@ -52,7 +52,7 @@
- /*
- can be used like #if (QT_VERSION >= QT_VERSION_CHECK(4, 4, 0))
- */
--#define QT_VERSION_CHECK(major, minor, patch) ((major<<16)|(minor<<8)|(patch))
-+#define QT_VERSION_CHECK(qt_version_check_major, qt_version_check_minor, qt_version_check_patch) ((qt_version_check_major<<16)|(qt_version_check_minor<<8)|(qt_version_check_patch))
-
- #define QT_PACKAGEDATE_STR "2015-05-07"
-
diff --git a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.7-alsa-1.1.patch b/source/l/qt/patches/qt-everywhere-opensource-src-4.8.7-alsa-1.1.patch
deleted file mode 100644
index 572a955dc..000000000
--- a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.7-alsa-1.1.patch
+++ /dev/null
@@ -1,137 +0,0 @@
-diff -up qt-everywhere-opensource-src-4.8.7/config.tests/unix/alsa/alsatest.cpp.than qt-everywhere-opensource-src-4.8.7/config.tests/unix/alsa/alsatest.cpp
---- qt-everywhere-opensource-src-4.8.7/config.tests/unix/alsa/alsatest.cpp.than 2016-02-10 16:31:02.450152334 +0100
-+++ qt-everywhere-opensource-src-4.8.7/config.tests/unix/alsa/alsatest.cpp 2016-02-10 16:31:51.495307579 +0100
-@@ -40,7 +40,7 @@
- ****************************************************************************/
-
- #include <alsa/asoundlib.h>
--#if(!(SND_LIB_MAJOR == 1 && SND_LIB_MINOR == 0 && SND_LIB_SUBMINOR >= 10))
-+#if(!(SND_LIB_MAJOR == 1 && (SND_LIB_MINOR > 0 || SND_LIB_SUBMINOR >= 10)))
- #error "Alsa version found too old, require >= 1.0.10"
- #endif
-
-diff --git a/src/multimedia/audio/qaudiodeviceinfo_alsa_p.cpp b/src/multimedia/audio/qaudiodeviceinfo_alsa_p.cpp
-index 973cbab..0b27e9d 100644
---- a/src/multimedia/audio/qaudiodeviceinfo_alsa_p.cpp
-+++ b/src/multimedia/audio/qaudiodeviceinfo_alsa_p.cpp
-@@ -63,7 +63,7 @@ QAudioDeviceInfoInternal::QAudioDeviceInfoInternal(QByteArray dev, QAudio::Mode
- device = QLatin1String(dev);
- this->mode = mode;
-
--#if (SND_LIB_MAJOR == 1 && SND_LIB_MINOR == 0 && SND_LIB_SUBMINOR >= 14)
-+#if (SND_LIB_MAJOR == 1 && (SND_LIB_MINOR > 0 || SND_LIB_SUBMINOR >= 14))
- checkSurround();
- #endif
- }
-@@ -159,13 +159,13 @@ bool QAudioDeviceInfoInternal::open()
- QList<QByteArray> devices = availableDevices(mode);
-
- if(dev.compare(QLatin1String("default")) == 0) {
--#if(SND_LIB_MAJOR == 1 && SND_LIB_MINOR == 0 && SND_LIB_SUBMINOR >= 14)
-+#if(SND_LIB_MAJOR == 1 && (SND_LIB_MINOR > 0 || SND_LIB_SUBMINOR >= 14))
- dev = QLatin1String(devices.first().constData());
- #else
- dev = QLatin1String("hw:0,0");
- #endif
- } else {
--#if(SND_LIB_MAJOR == 1 && SND_LIB_MINOR == 0 && SND_LIB_SUBMINOR >= 14)
-+#if(SND_LIB_MAJOR == 1 && (SND_LIB_MINOR > 0 || SND_LIB_SUBMINOR >= 14))
- dev = device;
- #else
- int idx = 0;
-@@ -212,13 +212,13 @@ bool QAudioDeviceInfoInternal::testSettings(const QAudioFormat& format) const
- QList<QByteArray> devices = QAudioDeviceInfoInternal::availableDevices(QAudio::AudioOutput);
-
- if(dev.compare(QLatin1String("default")) == 0) {
--#if(SND_LIB_MAJOR == 1 && SND_LIB_MINOR == 0 && SND_LIB_SUBMINOR >= 14)
-+#if(SND_LIB_MAJOR == 1 && (SND_LIB_MINOR > 0 || SND_LIB_SUBMINOR >= 14))
- dev = QLatin1String(devices.first().constData());
- #else
- dev = QLatin1String("hw:0,0");
- #endif
- } else {
--#if(SND_LIB_MAJOR == 1 && SND_LIB_MINOR == 0 && SND_LIB_SUBMINOR >= 14)
-+#if(SND_LIB_MAJOR == 1 && (SND_LIB_MINOR > 0 || SND_LIB_SUBMINOR >= 14))
- dev = device;
- #else
- int idx = 0;
-@@ -396,7 +396,7 @@ void QAudioDeviceInfoInternal::updateLists()
- }
- channelz.append(1);
- channelz.append(2);
--#if (SND_LIB_MAJOR == 1 && SND_LIB_MINOR == 0 && SND_LIB_SUBMINOR >= 14)
-+#if (SND_LIB_MAJOR == 1 && (SND_LIB_MINOR > 0 || SND_LIB_SUBMINOR >= 14))
- if (surround40) channelz.append(4);
- if (surround51) channelz.append(6);
- if (surround71) channelz.append(8);
-@@ -419,7 +419,7 @@ QList<QByteArray> QAudioDeviceInfoInternal::availableDevices(QAudio::Mode mode)
- QList<QByteArray> devices;
- QByteArray filter;
-
--#if(SND_LIB_MAJOR == 1 && SND_LIB_MINOR == 0 && SND_LIB_SUBMINOR >= 14)
-+#if(SND_LIB_MAJOR == 1 && (SND_LIB_MINOR > 0 || SND_LIB_SUBMINOR >= 14))
- // Create a list of all current audio devices that support mode
- void **hints, **n;
- char *name, *descr, *io;
-@@ -498,7 +498,7 @@ QByteArray QAudioDeviceInfoInternal::defaultOutputDevice()
- return devices.first();
- }
-
--#if (SND_LIB_MAJOR == 1 && SND_LIB_MINOR == 0 && SND_LIB_SUBMINOR >= 14)
-+#if (SND_LIB_MAJOR == 1 && (SND_LIB_MINOR > 0 || SND_LIB_SUBMINOR >= 14))
- void QAudioDeviceInfoInternal::checkSurround()
- {
- QList<QByteArray> devices;
-diff --git a/src/multimedia/audio/qaudiodeviceinfo_alsa_p.h b/src/multimedia/audio/qaudiodeviceinfo_alsa_p.h
-index 96febf4..714bf60 100644
---- a/src/multimedia/audio/qaudiodeviceinfo_alsa_p.h
-+++ b/src/multimedia/audio/qaudiodeviceinfo_alsa_p.h
-@@ -98,7 +98,7 @@ private:
- bool open();
- void close();
-
--#if (SND_LIB_MAJOR == 1 && SND_LIB_MINOR == 0 && SND_LIB_SUBMINOR >= 14)
-+#if (SND_LIB_MAJOR == 1 && (SND_LIB_MINOR > 0 || SND_LIB_SUBMINOR >= 14))
- void checkSurround();
- bool surround40;
- bool surround51;
-diff --git a/src/multimedia/audio/qaudioinput_alsa_p.cpp b/src/multimedia/audio/qaudioinput_alsa_p.cpp
-index 339fd9f..abfa4a1 100644
---- a/src/multimedia/audio/qaudioinput_alsa_p.cpp
-+++ b/src/multimedia/audio/qaudioinput_alsa_p.cpp
-@@ -284,13 +284,13 @@ bool QAudioInputPrivate::open()
- QString dev = QString(QLatin1String(m_device.constData()));
- QList<QByteArray> devices = QAudioDeviceInfoInternal::availableDevices(QAudio::AudioInput);
- if(dev.compare(QLatin1String("default")) == 0) {
--#if(SND_LIB_MAJOR == 1 && SND_LIB_MINOR == 0 && SND_LIB_SUBMINOR >= 14)
-+#if(SND_LIB_MAJOR == 1 && (SND_LIB_MINOR > 0 || SND_LIB_SUBMINOR >= 14))
- dev = QLatin1String(devices.first());
- #else
- dev = QLatin1String("hw:0,0");
- #endif
- } else {
--#if(SND_LIB_MAJOR == 1 && SND_LIB_MINOR == 0 && SND_LIB_SUBMINOR >= 14)
-+#if(SND_LIB_MAJOR == 1 && (SND_LIB_MINOR > 0 || SND_LIB_SUBMINOR >= 14))
- dev = QLatin1String(m_device);
- #else
- int idx = 0;
-diff --git a/src/multimedia/audio/qaudiooutput_alsa_p.cpp b/src/multimedia/audio/qaudiooutput_alsa_p.cpp
-index bf85de5..c29a89f 100644
---- a/src/multimedia/audio/qaudiooutput_alsa_p.cpp
-+++ b/src/multimedia/audio/qaudiooutput_alsa_p.cpp
-@@ -299,13 +299,13 @@ bool QAudioOutputPrivate::open()
- QString dev = QString(QLatin1String(m_device.constData()));
- QList<QByteArray> devices = QAudioDeviceInfoInternal::availableDevices(QAudio::AudioOutput);
- if(dev.compare(QLatin1String("default")) == 0) {
--#if(SND_LIB_MAJOR == 1 && SND_LIB_MINOR == 0 && SND_LIB_SUBMINOR >= 14)
-+#if(SND_LIB_MAJOR == 1 && (SND_LIB_MINOR > 0 || SND_LIB_SUBMINOR >= 14))
- dev = QLatin1String(devices.first());
- #else
- dev = QLatin1String("hw:0,0");
- #endif
- } else {
--#if(SND_LIB_MAJOR == 1 && SND_LIB_MINOR == 0 && SND_LIB_SUBMINOR >= 14)
-+#if(SND_LIB_MAJOR == 1 && (SND_LIB_MINOR > 0 || SND_LIB_SUBMINOR >= 14))
- dev = QLatin1String(m_device);
- #else
- int idx = 0;
diff --git a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.7-crash-in-qppmhandler.patch b/source/l/qt/patches/qt-everywhere-opensource-src-4.8.7-crash-in-qppmhandler.patch
deleted file mode 100644
index eeed1b97c..000000000
--- a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.7-crash-in-qppmhandler.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -up qt-everywhere-opensource-src-4.8.7/src/gui/image/qppmhandler.cpp.me qt-everywhere-opensource-src-4.8.7/src/gui/image/qppmhandler.cpp
---- qt-everywhere-opensource-src-4.8.7/src/gui/image/qppmhandler.cpp.me 2019-03-22 10:22:16.213800109 +0100
-+++ qt-everywhere-opensource-src-4.8.7/src/gui/image/qppmhandler.cpp 2019-03-22 10:22:40.721890281 +0100
-@@ -108,7 +108,7 @@ static bool read_pbm_header(QIODevice *d
- else
- mcc = read_pbm_int(device); // get max color component
-
-- if (w <= 0 || w > 32767 || h <= 0 || h > 32767 || mcc <= 0)
-+ if (w <= 0 || w > 32767 || h <= 0 || h > 32767 || mcc <= 0 || mcc > 0xffff)
- return false; // weird P.M image
-
- return true;
diff --git a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.7-firebird.patch b/source/l/qt/patches/qt-everywhere-opensource-src-4.8.7-firebird.patch
deleted file mode 100644
index 456abceb3..000000000
--- a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.7-firebird.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-diff -up qt-everywhere-opensource-src-4.8.7/config.tests/unix/ibase/ibase.cpp.ibase qt-everywhere-opensource-src-4.8.7/config.tests/unix/ibase/ibase.cpp
---- qt-everywhere-opensource-src-4.8.7/config.tests/unix/ibase/ibase.cpp.ibase 2015-05-07 09:14:42.000000000 -0500
-+++ qt-everywhere-opensource-src-4.8.7/config.tests/unix/ibase/ibase.cpp 2016-11-30 10:55:05.825339674 -0600
-@@ -39,7 +39,7 @@
- **
- ****************************************************************************/
-
--#include <ibase.h>
-+#include <firebird/ibase.h>
-
- int main(int, char **)
- {
-diff -up qt-everywhere-opensource-src-4.8.7/config.tests/unix/ibase/ibase.pro.ibase qt-everywhere-opensource-src-4.8.7/config.tests/unix/ibase/ibase.pro
---- qt-everywhere-opensource-src-4.8.7/config.tests/unix/ibase/ibase.pro.ibase 2015-05-07 09:14:42.000000000 -0500
-+++ qt-everywhere-opensource-src-4.8.7/config.tests/unix/ibase/ibase.pro 2016-11-30 10:56:11.017740104 -0600
-@@ -1,4 +1,4 @@
- SOURCES = ibase.cpp
- CONFIG -= qt dylib
- mac:CONFIG -= app_bundle
--LIBS += -lgds
-+LIBS += -lfbclient
-diff -up qt-everywhere-opensource-src-4.8.7/src/sql/drivers/ibase/qsql_ibase.h.ibase qt-everywhere-opensource-src-4.8.7/src/sql/drivers/ibase/qsql_ibase.h
---- qt-everywhere-opensource-src-4.8.7/src/sql/drivers/ibase/qsql_ibase.h.ibase 2015-05-07 09:14:48.000000000 -0500
-+++ qt-everywhere-opensource-src-4.8.7/src/sql/drivers/ibase/qsql_ibase.h 2016-11-30 10:57:34.516252974 -0600
-@@ -45,7 +45,7 @@
- #include <QtSql/qsqlresult.h>
- #include <QtSql/qsqldriver.h>
- #include <QtSql/private/qsqlcachedresult_p.h>
--#include <ibase.h>
-+#include <firebird/ibase.h>
-
- QT_BEGIN_HEADER
-
-diff -up qt-everywhere-opensource-src-4.8.7/src/sql/drivers/ibase/qsql_ibase.pri.ibase qt-everywhere-opensource-src-4.8.7/src/sql/drivers/ibase/qsql_ibase.pri
---- qt-everywhere-opensource-src-4.8.7/src/sql/drivers/ibase/qsql_ibase.pri.ibase 2015-05-07 09:14:48.000000000 -0500
-+++ qt-everywhere-opensource-src-4.8.7/src/sql/drivers/ibase/qsql_ibase.pri 2016-11-30 10:57:11.783113341 -0600
-@@ -2,7 +2,7 @@ HEADERS += $$PWD/qsql_ibase.h
- SOURCES += $$PWD/qsql_ibase.cpp
-
- unix {
-- !contains(LIBS, .*gds.*):!contains(LIBS, .*libfb.*):LIBS += -lgds
-+ !contains(LIBS, .*gds.*):!contains(LIBS, .*libfb.*):LIBS += -lfbclient
- } else {
- !contains(LIBS, .*gds.*):!contains(LIBS, .*fbclient.*) {
- win32-borland:LIBS += gds32.lib
diff --git a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.7-gcc6.patch b/source/l/qt/patches/qt-everywhere-opensource-src-4.8.7-gcc6.patch
deleted file mode 100644
index 421292939..000000000
--- a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.7-gcc6.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-diff -up qt-everywhere-opensource-src-4.8.7/configure.gcc6 qt-everywhere-opensource-src-4.8.7/configure
---- qt-everywhere-opensource-src-4.8.7/configure.gcc6 2016-04-15 07:04:19.430268222 -0500
-+++ qt-everywhere-opensource-src-4.8.7/configure 2016-04-15 07:05:22.157568689 -0500
-@@ -7744,7 +7744,7 @@ case "$XPLATFORM" in
- *-g++*)
- # Check gcc's version
- case "$(${QMAKE_CONF_COMPILER} -dumpversion)" in
-- 5*|4*|3.4*)
-+ 9*|8*|7*|6*|5*|4*|3.4*)
- ;;
- 3.3*)
- canBuildWebKit="no"
-@@ -8060,7 +8060,7 @@ g++*)
- 3.*)
- COMPILER_VERSION="3.*"
- ;;
-- 5*|4.*)
-+ 9*|8*|7*|6*|5*|4.*)
- COMPILER_VERSION="4"
- ;;
- *)
-diff -up qt-everywhere-opensource-src-4.8.7/src/xmlpatterns/api/qcoloroutput_p.h.gcc6 qt-everywhere-opensource-src-4.8.7/src/xmlpatterns/api/qcoloroutput_p.h
---- qt-everywhere-opensource-src-4.8.7/src/xmlpatterns/api/qcoloroutput_p.h.gcc6 2015-05-07 09:14:48.000000000 -0500
-+++ qt-everywhere-opensource-src-4.8.7/src/xmlpatterns/api/qcoloroutput_p.h 2016-04-15 07:04:19.431268227 -0500
-@@ -70,8 +70,8 @@ namespace QPatternist
- ForegroundShift = 10,
- BackgroundShift = 20,
- SpecialShift = 20,
-- ForegroundMask = ((1 << ForegroundShift) - 1) << ForegroundShift,
-- BackgroundMask = ((1 << BackgroundShift) - 1) << BackgroundShift
-+ ForegroundMask = 0x1f << ForegroundShift,
-+ BackgroundMask = 0x7 << BackgroundShift
- };
-
- public:
diff --git a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.7-gcc8_qtscript.patch b/source/l/qt/patches/qt-everywhere-opensource-src-4.8.7-gcc8_qtscript.patch
deleted file mode 100644
index 7e79d2174..000000000
--- a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.7-gcc8_qtscript.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff -up qt-everywhere-opensource-src-4.8.7/src/script/script.pro.gcc8 qt-everywhere-opensource-src-4.8.7/src/script/script.pro
---- qt-everywhere-opensource-src-4.8.7/src/script/script.pro.gcc8 2015-05-07 09:14:43.000000000 -0500
-+++ qt-everywhere-opensource-src-4.8.7/src/script/script.pro 2018-05-19 16:01:24.699926959 -0500
-@@ -91,6 +91,9 @@ symbian {
- TARGET.UID3=0x2001B2E1
- }
-
-+# hack around gcc8 optimization bug with -O2
-+QMAKE_CXXFLAGS_RELEASE += -O1
-+
- symbian {
- symbian-abld|symbian-sbsv2 {
- MMP_RULES += ALWAYS_BUILD_AS_ARM
diff --git a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.7-icu59.patch b/source/l/qt/patches/qt-everywhere-opensource-src-4.8.7-icu59.patch
deleted file mode 100644
index 3edcdef02..000000000
--- a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.7-icu59.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-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
- }
-
diff --git a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.7-mariadb.patch b/source/l/qt/patches/qt-everywhere-opensource-src-4.8.7-mariadb.patch
deleted file mode 100644
index 7e480138b..000000000
--- a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.7-mariadb.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-diff -up qt-everywhere-opensource-src-4.8.7/src/sql/drivers/mysql/qsql_mysql.cpp.mariadb qt-everywhere-opensource-src-4.8.7/src/sql/drivers/mysql/qsql_mysql.cpp
---- qt-everywhere-opensource-src-4.8.7/src/sql/drivers/mysql/qsql_mysql.cpp.mariadb 2015-05-07 09:14:48.000000000 -0500
-+++ qt-everywhere-opensource-src-4.8.7/src/sql/drivers/mysql/qsql_mysql.cpp 2017-10-23 14:13:15.871808984 -0500
-@@ -1105,11 +1105,16 @@ static void qLibraryInit()
- }
- # endif // MYSQL_VERSION_ID
- #endif // Q_NO_MYSQL_EMBEDDED
-+
-+#if defined(MARIADB_BASE_VERSION) || defined(MARIADB_VERSION_ID)
-+ qAddPostRoutine(mysql_server_end);
-+#endif
- }
-
- static void qLibraryEnd()
- {
- #ifndef Q_NO_MYSQL_EMBEDDED
-+#if !defined(MARIADB_BASE_VERSION) && !defined(MARIADB_VERSION_ID)
- # if MYSQL_VERSION_ID > 40000
- # if (MYSQL_VERSION_ID >= 40110 && MYSQL_VERSION_ID < 50000) || MYSQL_VERSION_ID >= 50003
- mysql_library_end();
-@@ -1118,6 +1123,7 @@ static void qLibraryEnd()
- # endif
- # endif
- #endif
-+#endif
- }
-
- QMYSQLDriver::QMYSQLDriver(QObject * parent)
diff --git a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.7-mips64.patch b/source/l/qt/patches/qt-everywhere-opensource-src-4.8.7-mips64.patch
deleted file mode 100644
index 6456f2c61..000000000
--- a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.7-mips64.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff -urp qt-everywhere-opensource-src-4.8.7/configure q/configure
---- qt-everywhere-opensource-src-4.8.7/configure 2016-04-03 16:49:50.218644449 +0200
-+++ q/configure 2016-04-03 17:22:35.376405024 +0200
-@@ -3331,6 +3331,9 @@ arm*)
- CFG_ARCH=arm
- COMPAT_ARCH=armv6
- ;;
-+mips*)
-+ CFG_ARCH=mips
-+ ;;
- esac
-
- if [ -d "$relpath/src/corelib/arch/$CFG_ARCH" ]; then
diff --git a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.7-openssl-1.1.patch b/source/l/qt/patches/qt-everywhere-opensource-src-4.8.7-openssl-1.1.patch
deleted file mode 100644
index 6a9946030..000000000
--- a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.7-openssl-1.1.patch
+++ /dev/null
@@ -1,694 +0,0 @@
-diff -ur qt-everywhere-opensource-src-4.8.7/src/network/ssl/qsslcertificate.cpp qt-everywhere-opensource-src-4.8.7-openssl-1.1/src/network/ssl/qsslcertificate.cpp
---- qt-everywhere-opensource-src-4.8.7/src/network/ssl/qsslcertificate.cpp 2015-05-07 16:14:44.000000000 +0200
-+++ qt-everywhere-opensource-src-4.8.7-openssl-1.1/src/network/ssl/qsslcertificate.cpp 2018-01-05 17:44:16.997588265 +0100
-@@ -259,10 +259,10 @@
- QByteArray QSslCertificate::version() const
- {
- QMutexLocker lock(QMutexPool::globalInstanceGet(d.data()));
-- if (d->versionString.isEmpty() && d->x509)
-+ if (d->versionString.isEmpty() && d->x509) {
- d->versionString =
-- QByteArray::number(qlonglong(q_ASN1_INTEGER_get(d->x509->cert_info->version)) + 1);
--
-+ QByteArray::number(qlonglong(q_X509_get_version(d->x509)) + 1);
-+ }
- return d->versionString;
- }
-
-@@ -276,7 +276,7 @@
- {
- QMutexLocker lock(QMutexPool::globalInstanceGet(d.data()));
- if (d->serialNumberString.isEmpty() && d->x509) {
-- ASN1_INTEGER *serialNumber = d->x509->cert_info->serialNumber;
-+ ASN1_INTEGER *serialNumber = q_X509_get_serialNumber(d->x509);
- // if we cannot convert to a long, just output the hexadecimal number
- if (serialNumber->length > 4) {
- QByteArray hexString;
-@@ -489,24 +489,33 @@
- QSslKey key;
-
- key.d->type = QSsl::PublicKey;
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- X509_PUBKEY *xkey = d->x509->cert_info->key;
-+#else
-+ X509_PUBKEY *xkey = q_X509_get_X509_PUBKEY(d->x509);
-+#endif
- EVP_PKEY *pkey = q_X509_PUBKEY_get(xkey);
- Q_ASSERT(pkey);
-
-- if (q_EVP_PKEY_type(pkey->type) == EVP_PKEY_RSA) {
-+ int key_id;
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
-+ key_id = q_EVP_PKEY_type(pkey->type);
-+#else
-+ key_id = q_EVP_PKEY_base_id(pkey);
-+#endif
-+ if (key_id == EVP_PKEY_RSA) {
- key.d->rsa = q_EVP_PKEY_get1_RSA(pkey);
- key.d->algorithm = QSsl::Rsa;
- key.d->isNull = false;
-- } else if (q_EVP_PKEY_type(pkey->type) == EVP_PKEY_DSA) {
-+ } else if (key_id == EVP_PKEY_DSA) {
- key.d->dsa = q_EVP_PKEY_get1_DSA(pkey);
- key.d->algorithm = QSsl::Dsa;
- key.d->isNull = false;
-- } else if (q_EVP_PKEY_type(pkey->type) == EVP_PKEY_DH) {
-+ } else if (key_id == EVP_PKEY_DH) {
- // DH unsupported
- } else {
- // error?
- }
--
- q_EVP_PKEY_free(pkey);
- return key;
- }
-@@ -687,7 +696,11 @@
- unsigned char *data = 0;
- int size = q_ASN1_STRING_to_UTF8(&data, q_X509_NAME_ENTRY_get_data(e));
- info[QString::fromUtf8(obj)] = QString::fromUtf8((char*)data, size);
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- q_CRYPTO_free(data);
-+#else
-+ q_CRYPTO_free(data, __FILE__, __LINE__);
-+#endif
- }
- return info;
- }
-diff -ur qt-everywhere-opensource-src-4.8.7/src/network/ssl/qsslkey.cpp qt-everywhere-opensource-src-4.8.7-openssl-1.1/src/network/ssl/qsslkey.cpp
---- qt-everywhere-opensource-src-4.8.7/src/network/ssl/qsslkey.cpp 2015-05-07 16:14:44.000000000 +0200
-+++ qt-everywhere-opensource-src-4.8.7-openssl-1.1/src/network/ssl/qsslkey.cpp 2018-01-05 18:00:27.453937599 +0100
-@@ -321,8 +321,19 @@
- {
- if (d->isNull)
- return -1;
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- return (d->algorithm == QSsl::Rsa)
- ? q_BN_num_bits(d->rsa->n) : q_BN_num_bits(d->dsa->p);
-+#else
-+ if (d->algorithm == QSsl::Rsa) {
-+ return q_RSA_bits(d->rsa);
-+ } else {
-+ const BIGNUM *p = (const BIGNUM *) NULL;
-+ q_DSA_get0_pqg(d->dsa, &p, (const BIGNUM **) NULL, (const BIGNUM **) NULL);
-+ return q_BN_num_bits(p);
-+ }
-+#endif
-+
- }
-
- /*!
-diff -ur qt-everywhere-opensource-src-4.8.7/src/network/ssl/qsslsocket_openssl.cpp qt-everywhere-opensource-src-4.8.7-openssl-1.1/src/network/ssl/qsslsocket_openssl.cpp
---- qt-everywhere-opensource-src-4.8.7/src/network/ssl/qsslsocket_openssl.cpp 2015-05-07 16:14:44.000000000 +0200
-+++ qt-everywhere-opensource-src-4.8.7-openssl-1.1/src/network/ssl/qsslsocket_openssl.cpp 2018-01-05 12:06:06.336990956 +0100
-@@ -93,6 +93,7 @@
- bool QSslSocketPrivate::s_loadedCiphersAndCerts = false;
- bool QSslSocketPrivate::s_loadRootCertsOnDemand = false;
-
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- /* \internal
-
- From OpenSSL's thread(3) manual page:
-@@ -174,6 +175,8 @@
- }
- } // extern "C"
-
-+#endif //OPENSSL_VERSION_NUMBER >= 0x10100000L
-+
- QSslSocketBackendPrivate::QSslSocketBackendPrivate()
- : ssl(0),
- ctx(0),
-@@ -222,9 +225,12 @@
- ciph.d->encryptionMethod = descriptionList.at(4).mid(4);
- ciph.d->exportable = (descriptionList.size() > 6 && descriptionList.at(6) == QLatin1String("export"));
-
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- ciph.d->bits = cipher->strength_bits;
- ciph.d->supportedBits = cipher->alg_bits;
--
-+#else
-+ ciph.d->bits = q_SSL_CIPHER_get_bits(cipher, &ciph.d->supportedBits);
-+#endif
- }
- return ciph;
- }
-@@ -363,7 +369,7 @@
- //
- // See also: QSslContext::fromConfiguration()
- if (caCertificate.expiryDate() >= QDateTime::currentDateTime()) {
-- q_X509_STORE_add_cert(ctx->cert_store, (X509 *)caCertificate.handle());
-+ q_X509_STORE_add_cert(q_SSL_CTX_get_cert_store(ctx), (X509 *)caCertificate.handle());
- }
- }
-
-@@ -500,8 +506,10 @@
- */
- void QSslSocketPrivate::deinitialize()
- {
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- q_CRYPTO_set_id_callback(0);
- q_CRYPTO_set_locking_callback(0);
-+#endif
- }
-
- /*!
-@@ -522,13 +530,17 @@
- return false;
-
- // Check if the library itself needs to be initialized.
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- QMutexLocker locker(openssl_locks()->initLock());
-+#endif
- if (!s_libraryLoaded) {
- s_libraryLoaded = true;
-
- // Initialize OpenSSL.
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- q_CRYPTO_set_id_callback(id_function);
- q_CRYPTO_set_locking_callback(locking_function);
-+#endif
- if (q_SSL_library_init() != 1)
- return false;
- q_SSL_load_error_strings();
-@@ -567,7 +579,9 @@
-
- void QSslSocketPrivate::ensureCiphersAndCertsLoaded()
- {
-- QMutexLocker locker(openssl_locks()->initLock());
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
-+ QMutexLocker locker(openssl_locks()->initLock());
-+#endif
- if (s_loadedCiphersAndCerts)
- return;
- s_loadedCiphersAndCerts = true;
-@@ -659,13 +673,18 @@
- STACK_OF(SSL_CIPHER) *supportedCiphers = q_SSL_get_ciphers(mySsl);
- for (int i = 0; i < q_sk_SSL_CIPHER_num(supportedCiphers); ++i) {
- if (SSL_CIPHER *cipher = q_sk_SSL_CIPHER_value(supportedCiphers, i)) {
-- if (cipher->valid) {
-+
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
-+ if (cipher->valid) {
-+#endif
- QSslCipher ciph = QSslSocketBackendPrivate::QSslCipher_from_SSL_CIPHER(cipher);
- if (!ciph.isNull()) {
- if (!ciph.name().toLower().startsWith(QLatin1String("adh")))
- ciphers << ciph;
- }
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- }
-+#endif
- }
- }
-
-diff -ur qt-everywhere-opensource-src-4.8.7/src/network/ssl/qsslsocket_openssl_p.h qt-everywhere-opensource-src-4.8.7-openssl-1.1/src/network/ssl/qsslsocket_openssl_p.h
---- qt-everywhere-opensource-src-4.8.7/src/network/ssl/qsslsocket_openssl_p.h 2015-05-07 16:14:44.000000000 +0200
-+++ qt-everywhere-opensource-src-4.8.7-openssl-1.1/src/network/ssl/qsslsocket_openssl_p.h 2018-01-05 12:06:06.337990940 +0100
-@@ -84,6 +84,10 @@
- #include <openssl/tls1.h>
- #endif
-
-+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
-+#define OPENSSL_NO_SSL2
-+#endif
-+
- #if OPENSSL_VERSION_NUMBER >= 0x10000000L
- typedef _STACK STACK;
- #endif
-diff -ur qt-everywhere-opensource-src-4.8.7/src/network/ssl/qsslsocket_openssl_symbols.cpp qt-everywhere-opensource-src-4.8.7-openssl-1.1/src/network/ssl/qsslsocket_openssl_symbols.cpp
---- qt-everywhere-opensource-src-4.8.7/src/network/ssl/qsslsocket_openssl_symbols.cpp 2015-05-07 16:14:44.000000000 +0200
-+++ qt-everywhere-opensource-src-4.8.7-openssl-1.1/src/network/ssl/qsslsocket_openssl_symbols.cpp 2018-01-05 17:59:10.636973932 +0100
-@@ -111,16 +111,30 @@
- DEFINEFUNC2(int, ASN1_STRING_to_UTF8, unsigned char **a, a, ASN1_STRING *b, b, return 0, return);
- DEFINEFUNC4(long, BIO_ctrl, BIO *a, a, int b, b, long c, c, void *d, d, return -1, return)
- DEFINEFUNC(int, BIO_free, BIO *a, a, return 0, return)
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- DEFINEFUNC(BIO *, BIO_new, BIO_METHOD *a, a, return 0, return)
-+#else
-+DEFINEFUNC(BIO *, BIO_new, const BIO_METHOD *a, a, return 0, return)
-+#endif
- DEFINEFUNC2(BIO *, BIO_new_mem_buf, void *a, a, int b, b, return 0, return)
- DEFINEFUNC3(int, BIO_read, BIO *a, a, void *b, b, int c, c, return -1, return)
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- DEFINEFUNC(BIO_METHOD *, BIO_s_mem, void, DUMMYARG, return 0, return)
-+#else
-+DEFINEFUNC(const BIO_METHOD *, BIO_s_mem, void, DUMMYARG, return 0, return)
-+#endif
- DEFINEFUNC3(int, BIO_write, BIO *a, a, const void *b, b, int c, c, return -1, return)
- DEFINEFUNC(int, BN_num_bits, const BIGNUM *a, a, return 0, return)
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- DEFINEFUNC(int, CRYPTO_num_locks, DUMMYARG, DUMMYARG, return 0, return)
- DEFINEFUNC(void, CRYPTO_set_locking_callback, void (*a)(int, int, const char *, int), a, return, DUMMYARG)
- DEFINEFUNC(void, CRYPTO_set_id_callback, unsigned long (*a)(), a, return, DUMMYARG)
-+#endif
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- DEFINEFUNC(void, CRYPTO_free, void *a, a, return, DUMMYARG)
-+#else
-+DEFINEFUNC3(void, CRYPTO_free, void *a, a, const char *b, b, int c, c, return, DUMMYARG)
-+#endif
- DEFINEFUNC(void, DSA_free, DSA *a, a, return, DUMMYARG)
- #if OPENSSL_VERSION_NUMBER < 0x00908000L
- DEFINEFUNC3(X509 *, d2i_X509, X509 **a, a, unsigned char **b, b, long c, c, return 0, return)
-@@ -157,6 +171,7 @@
- DEFINEFUNC2(void, RAND_seed, const void *a, a, int b, b, return, DUMMYARG)
- DEFINEFUNC(int, RAND_status, void, DUMMYARG, return -1, return)
- DEFINEFUNC(void, RSA_free, RSA *a, a, return, DUMMYARG)
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- DEFINEFUNC(int, sk_num, STACK *a, a, return -1, return)
- DEFINEFUNC2(void, sk_pop_free, STACK *a, a, void (*b)(void*), b, return, DUMMYARG)
- #if OPENSSL_VERSION_NUMBER >= 0x10000000L
-@@ -166,6 +181,12 @@
- DEFINEFUNC(void, sk_free, STACK *a, a, return, DUMMYARG)
- DEFINEFUNC2(char *, sk_value, STACK *a, a, int b, b, return 0, return)
- #endif
-+#else
-+DEFINEFUNC(int, OPENSSL_sk_num, STACK *a, a, return -1, return)
-+DEFINEFUNC2(void, OPENSSL_sk_pop_free, STACK *a, a, void (*b)(void*), b, return, DUMMYARG)
-+DEFINEFUNC(void, OPENSSL_sk_free, _STACK *a, a, return, DUMMYARG)
-+DEFINEFUNC2(void *, OPENSSL_sk_value, STACK *a, a, int b, b, return 0, return)
-+#endif
- DEFINEFUNC(int, SSL_accept, SSL *a, a, return -1, return)
- DEFINEFUNC(int, SSL_clear, SSL *a, a, return -1, return)
- DEFINEFUNC3(char *, SSL_CIPHER_description, SSL_CIPHER *a, a, char *b, b, int c, c, return 0, return)
-@@ -213,8 +234,12 @@
- #else
- DEFINEFUNC(long, SSL_get_verify_result, SSL *a, a, return -1, return)
- #endif
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- DEFINEFUNC(int, SSL_library_init, void, DUMMYARG, return -1, return)
- DEFINEFUNC(void, SSL_load_error_strings, void, DUMMYARG, return, DUMMYARG)
-+#else
-+DEFINEFUNC2(int, OPENSSL_init_ssl, uint64_t opts, opts, const OPENSSL_INIT_SETTINGS *settings, settings, return -1, return)
-+#endif
- DEFINEFUNC(SSL *, SSL_new, SSL_CTX *a, a, return 0, return)
- #if OPENSSL_VERSION_NUMBER >= 0x0090806fL && !defined(OPENSSL_NO_TLSEXT)
- DEFINEFUNC4(long, SSL_ctrl, SSL *a, a, int cmd, cmd, long larg, larg, void *parg, parg, return -1, return)
-@@ -229,13 +254,21 @@
- DEFINEFUNC(const SSL_METHOD *, SSLv2_client_method, DUMMYARG, DUMMYARG, return 0, return)
- #endif
- DEFINEFUNC(const SSL_METHOD *, SSLv3_client_method, DUMMYARG, DUMMYARG, return 0, return)
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- DEFINEFUNC(const SSL_METHOD *, SSLv23_client_method, DUMMYARG, DUMMYARG, return 0, return)
-+#else
-+DEFINEFUNC(const SSL_METHOD *, TLS_client_method, DUMMYARG, DUMMYARG, return 0, return)
-+#endif
- DEFINEFUNC(const SSL_METHOD *, TLSv1_client_method, DUMMYARG, DUMMYARG, return 0, return)
- #ifndef OPENSSL_NO_SSL2
- DEFINEFUNC(const SSL_METHOD *, SSLv2_server_method, DUMMYARG, DUMMYARG, return 0, return)
- #endif
- DEFINEFUNC(const SSL_METHOD *, SSLv3_server_method, DUMMYARG, DUMMYARG, return 0, return)
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- DEFINEFUNC(const SSL_METHOD *, SSLv23_server_method, DUMMYARG, DUMMYARG, return 0, return)
-+#else
-+DEFINEFUNC(const SSL_METHOD *, TLS_server_method, DUMMYARG, DUMMYARG, return 0, return)
-+#endif
- DEFINEFUNC(const SSL_METHOD *, TLSv1_server_method, DUMMYARG, DUMMYARG, return 0, return)
- #else
- DEFINEFUNC(SSL_METHOD *, SSLv2_client_method, DUMMYARG, DUMMYARG, return 0, return)
-@@ -274,7 +307,11 @@
- DEFINEFUNC(int, X509_STORE_CTX_get_error, X509_STORE_CTX *a, a, return -1, return)
- DEFINEFUNC(int, X509_STORE_CTX_get_error_depth, X509_STORE_CTX *a, a, return -1, return)
- DEFINEFUNC(X509 *, X509_STORE_CTX_get_current_cert, X509_STORE_CTX *a, a, return 0, return)
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- DEFINEFUNC(STACK_OF(X509) *, X509_STORE_CTX_get_chain, X509_STORE_CTX *a, a, return 0, return)
-+#else
-+DEFINEFUNC(STACK_OF(X509) *, X509_STORE_CTX_get0_chain, X509_STORE_CTX *a, a, return 0, return)
-+#endif
- DEFINEFUNC(X509_STORE_CTX *, X509_STORE_CTX_new, DUMMYARG, DUMMYARG, return 0, return)
- #ifdef SSLEAY_MACROS
- DEFINEFUNC2(int, i2d_DSAPrivateKey, const DSA *a, a, unsigned char **b, b, return -1, return)
-@@ -282,10 +319,34 @@
- DEFINEFUNC3(RSA *, d2i_RSAPrivateKey, RSA **a, a, unsigned char **b, b, long c, c, return 0, return)
- DEFINEFUNC3(DSA *, d2i_DSAPrivateKey, DSA **a, a, unsigned char **b, b, long c, c, return 0, return)
- #endif
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- DEFINEFUNC(void, OPENSSL_add_all_algorithms_noconf, void, DUMMYARG, return, DUMMYARG)
- DEFINEFUNC(void, OPENSSL_add_all_algorithms_conf, void, DUMMYARG, return, DUMMYARG)
-+#else
-+DEFINEFUNC2(int, OPENSSL_init_crypto, uint64_t opts, opts, const OPENSSL_INIT_SETTINGS *settings, settings, return -1, return)
-+#endif
- DEFINEFUNC3(int, SSL_CTX_load_verify_locations, SSL_CTX *ctx, ctx, const char *CAfile, CAfile, const char *CApath, CApath, return 0, return)
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- DEFINEFUNC(long, SSLeay, void, DUMMYARG, return 0, return)
-+#else
-+DEFINEFUNC(unsigned long, OpenSSL_version_num, void, DUMMYARG, return 0, return)
-+#endif
-+DEFINEFUNC(X509_STORE *, SSL_CTX_get_cert_store, const SSL_CTX *ctx, ctx, return 0, return)
-+
-+DEFINEFUNC(ASN1_INTEGER *, X509_get_serialNumber, X509 *x, x, return 0, return)
-+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
-+DEFINEFUNC(int, EVP_PKEY_id, const EVP_PKEY *pkey, pkey, return 0, return)
-+DEFINEFUNC(int, EVP_PKEY_base_id, const EVP_PKEY *pkey, pkey, return 0, return)
-+DEFINEFUNC2(int, SSL_CIPHER_get_bits, const SSL_CIPHER *cipher, cipher, int *alg_bits, alg_bits, return 0, return)
-+DEFINEFUNC2(long, SSL_CTX_set_options, SSL_CTX *ctx, ctx, long options, options, return 0, return)
-+DEFINEFUNC(long, X509_get_version, X509 *x, x, return 0, return)
-+DEFINEFUNC(X509_PUBKEY *, X509_get_X509_PUBKEY, X509 *x, x, return 0, return)
-+DEFINEFUNC(int, RSA_bits, const RSA *rsa, rsa, return 0, return)
-+DEFINEFUNC(int, DSA_security_bits, const DSA *dsa, dsa, return 0, return)
-+DEFINEFUNC(ASN1_TIME *, X509_getm_notAfter, X509 *x, x, return 0, return)
-+DEFINEFUNC(ASN1_TIME *, X509_getm_notBefore, X509 *x, x, return 0, return)
-+DEFINEFUNC4(void, DSA_get0_pqg, const DSA *d, d, const BIGNUM **p, p, const BIGNUM **q, q, const BIGNUM **g, g, return, return)
-+#endif
-
- #ifdef Q_OS_SYMBIAN
- #define RESOLVEFUNC(func, ordinal, lib) \
-@@ -580,7 +641,11 @@
- static volatile bool symbolsResolved = false;
- static volatile bool triedToResolveSymbols = false;
- #ifndef QT_NO_THREAD
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- QMutexLocker locker(QMutexPool::globalInstanceGet((void *)&q_SSL_library_init));
-+#else
-+ QMutexLocker locker(QMutexPool::globalInstanceGet((void *)&q_OPENSSL_init_ssl));
-+#endif
- #endif
- if (symbolsResolved)
- return true;
-@@ -614,9 +679,11 @@
- RESOLVEFUNC(BIO_write, 269, libs.second )
- RESOLVEFUNC(BN_num_bits, 387, libs.second )
- RESOLVEFUNC(CRYPTO_free, 469, libs.second )
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- RESOLVEFUNC(CRYPTO_num_locks, 500, libs.second )
- RESOLVEFUNC(CRYPTO_set_id_callback, 513, libs.second )
- RESOLVEFUNC(CRYPTO_set_locking_callback, 516, libs.second )
-+#endif
- RESOLVEFUNC(DSA_free, 594, libs.second )
- RESOLVEFUNC(ERR_error_string, 744, libs.second )
- RESOLVEFUNC(ERR_get_error, 749, libs.second )
-@@ -674,8 +741,10 @@
- RESOLVEFUNC(SSL_get_peer_cert_chain, 117, libs.first )
- RESOLVEFUNC(SSL_get_peer_certificate, 118, libs.first )
- RESOLVEFUNC(SSL_get_verify_result, 132, libs.first )
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- RESOLVEFUNC(SSL_library_init, 137, libs.first )
- RESOLVEFUNC(SSL_load_error_strings, 139, libs.first )
-+#endif
- RESOLVEFUNC(SSL_new, 140, libs.first )
- #if OPENSSL_VERSION_NUMBER >= 0x0090806fL && !defined(OPENSSL_NO_TLSEXT)
- RESOLVEFUNC(SSL_ctrl, 95, libs.first )
-@@ -747,9 +816,11 @@
- RESOLVEFUNC(BIO_write)
- RESOLVEFUNC(BN_num_bits)
- RESOLVEFUNC(CRYPTO_free)
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- RESOLVEFUNC(CRYPTO_num_locks)
- RESOLVEFUNC(CRYPTO_set_id_callback)
- RESOLVEFUNC(CRYPTO_set_locking_callback)
-+#endif
- RESOLVEFUNC(DSA_free)
- RESOLVEFUNC(ERR_error_string)
- RESOLVEFUNC(ERR_get_error)
-@@ -779,10 +850,17 @@
- RESOLVEFUNC(RAND_seed)
- RESOLVEFUNC(RAND_status)
- RESOLVEFUNC(RSA_free)
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- RESOLVEFUNC(sk_free)
- RESOLVEFUNC(sk_num)
- RESOLVEFUNC(sk_pop_free)
- RESOLVEFUNC(sk_value)
-+#else
-+ RESOLVEFUNC(OPENSSL_sk_free)
-+ RESOLVEFUNC(OPENSSL_sk_num)
-+ RESOLVEFUNC(OPENSSL_sk_pop_free)
-+ RESOLVEFUNC(OPENSSL_sk_value)
-+#endif
- RESOLVEFUNC(SSL_CIPHER_description)
- RESOLVEFUNC(SSL_CTX_check_private_key)
- RESOLVEFUNC(SSL_CTX_ctrl)
-@@ -797,6 +875,7 @@
- RESOLVEFUNC(SSL_CTX_use_PrivateKey)
- RESOLVEFUNC(SSL_CTX_use_RSAPrivateKey)
- RESOLVEFUNC(SSL_CTX_use_PrivateKey_file)
-+ RESOLVEFUNC(SSL_CTX_get_cert_store)
- RESOLVEFUNC(SSL_accept)
- RESOLVEFUNC(SSL_clear)
- RESOLVEFUNC(SSL_connect)
-@@ -807,8 +886,12 @@
- RESOLVEFUNC(SSL_get_peer_cert_chain)
- RESOLVEFUNC(SSL_get_peer_certificate)
- RESOLVEFUNC(SSL_get_verify_result)
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- RESOLVEFUNC(SSL_library_init)
- RESOLVEFUNC(SSL_load_error_strings)
-+#else
-+ RESOLVEFUNC(OPENSSL_init_ssl)
-+#endif
- RESOLVEFUNC(SSL_new)
- #if OPENSSL_VERSION_NUMBER >= 0x0090806fL && !defined(OPENSSL_NO_TLSEXT)
- RESOLVEFUNC(SSL_ctrl)
-@@ -819,17 +902,47 @@
- RESOLVEFUNC(SSL_set_connect_state)
- RESOLVEFUNC(SSL_shutdown)
- RESOLVEFUNC(SSL_write)
-+
-+ RESOLVEFUNC(X509_get_serialNumber)
-+#if OPENSSL_VERSION_NUMBER >= 0x10100000L
-+ RESOLVEFUNC(SSL_CTX_ctrl)
-+ RESOLVEFUNC(EVP_PKEY_id)
-+ RESOLVEFUNC(EVP_PKEY_base_id)
-+ RESOLVEFUNC(SSL_CIPHER_get_bits)
-+ RESOLVEFUNC(SSL_CTX_set_options)
-+ RESOLVEFUNC(X509_get_version)
-+ RESOLVEFUNC(X509_get_X509_PUBKEY)
-+ RESOLVEFUNC(RSA_bits)
-+ RESOLVEFUNC(DSA_security_bits)
-+ RESOLVEFUNC(DSA_get0_pqg)
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
-+ RESOLVEFUNC(X509_get_notAfter)
-+ RESOLVEFUNC(X509_get_notBefore)
-+#else
-+ RESOLVEFUNC(X509_getm_notAfter)
-+ RESOLVEFUNC(X509_getm_notBefore)
-+#endif
-+#endif
-+
- #ifndef OPENSSL_NO_SSL2
- RESOLVEFUNC(SSLv2_client_method)
- #endif
- RESOLVEFUNC(SSLv3_client_method)
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- RESOLVEFUNC(SSLv23_client_method)
-+#else
-+ RESOLVEFUNC(TLS_client_method)
-+#endif
- RESOLVEFUNC(TLSv1_client_method)
- #ifndef OPENSSL_NO_SSL2
- RESOLVEFUNC(SSLv2_server_method)
- #endif
- RESOLVEFUNC(SSLv3_server_method)
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- RESOLVEFUNC(SSLv23_server_method)
-+#else
-+ RESOLVEFUNC(TLS_server_method)
-+#endif
- RESOLVEFUNC(TLSv1_server_method)
- RESOLVEFUNC(X509_NAME_entry_count)
- RESOLVEFUNC(X509_NAME_get_entry)
-@@ -846,7 +959,11 @@
- RESOLVEFUNC(X509_STORE_CTX_get_error)
- RESOLVEFUNC(X509_STORE_CTX_get_error_depth)
- RESOLVEFUNC(X509_STORE_CTX_get_current_cert)
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- RESOLVEFUNC(X509_STORE_CTX_get_chain)
-+#else
-+ RESOLVEFUNC(X509_STORE_CTX_get0_chain)
-+#endif
- RESOLVEFUNC(X509_cmp)
- #ifndef SSLEAY_MACROS
- RESOLVEFUNC(X509_dup)
-@@ -867,10 +984,18 @@
- RESOLVEFUNC(d2i_DSAPrivateKey)
- RESOLVEFUNC(d2i_RSAPrivateKey)
- #endif
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- RESOLVEFUNC(OPENSSL_add_all_algorithms_noconf)
- RESOLVEFUNC(OPENSSL_add_all_algorithms_conf)
-+#else
-+ RESOLVEFUNC(OPENSSL_init_crypto)
-+#endif
- RESOLVEFUNC(SSL_CTX_load_verify_locations)
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- RESOLVEFUNC(SSLeay)
-+#else
-+ RESOLVEFUNC(OpenSSL_version_num)
-+#endif
- #endif // Q_OS_SYMBIAN
- symbolsResolved = true;
- delete libs.first;
-diff -ur qt-everywhere-opensource-src-4.8.7/src/network/ssl/qsslsocket_openssl_symbols_p.h qt-everywhere-opensource-src-4.8.7-openssl-1.1/src/network/ssl/qsslsocket_openssl_symbols_p.h
---- qt-everywhere-opensource-src-4.8.7/src/network/ssl/qsslsocket_openssl_symbols_p.h 2015-05-07 16:14:44.000000000 +0200
-+++ qt-everywhere-opensource-src-4.8.7-openssl-1.1/src/network/ssl/qsslsocket_openssl_symbols_p.h 2018-01-05 17:59:42.041550255 +0100
-@@ -207,16 +207,31 @@
- int q_ASN1_STRING_to_UTF8(unsigned char **a, ASN1_STRING *b);
- long q_BIO_ctrl(BIO *a, int b, long c, void *d);
- int q_BIO_free(BIO *a);
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- BIO *q_BIO_new(BIO_METHOD *a);
-+#else
-+BIO *q_BIO_new(const BIO_METHOD *a);
-+#endif
- BIO *q_BIO_new_mem_buf(void *a, int b);
- int q_BIO_read(BIO *a, void *b, int c);
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- BIO_METHOD *q_BIO_s_mem();
-+#else
-+const BIO_METHOD *q_BIO_s_mem();
-+#endif
- int q_BIO_write(BIO *a, const void *b, int c);
- int q_BN_num_bits(const BIGNUM *a);
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- int q_CRYPTO_num_locks();
- void q_CRYPTO_set_locking_callback(void (*a)(int, int, const char *, int));
- void q_CRYPTO_set_id_callback(unsigned long (*a)());
- void q_CRYPTO_free(void *a);
-+#else
-+#define q_CRYPTO_num_locks() 1
-+#define q_CRYPTO_set_locking_callback(a)
-+#define q_CRYPTO_set_id_callback(a)
-+void q_CRYPTO_free(void *a, const char *b, int c);
-+#endif
- void q_DSA_free(DSA *a);
- #if OPENSSL_VERSION_NUMBER >= 0x00908000L
- // 0.9.8 broke SC and BC by changing this function's signature.
-@@ -258,6 +273,7 @@
- void q_RAND_seed(const void *a, int b);
- int q_RAND_status();
- void q_RSA_free(RSA *a);
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- int q_sk_num(STACK *a);
- void q_sk_pop_free(STACK *a, void (*b)(void *));
- #if OPENSSL_VERSION_NUMBER >= 0x10000000L
-@@ -267,6 +283,16 @@
- void q_sk_free(STACK *a);
- char * q_sk_value(STACK *a, int b);
- #endif
-+#else
-+int q_OPENSSL_sk_num(STACK *a);
-+void q_OPENSSL_sk_pop_free(STACK *a, void (*b)(void *));
-+void q_OPENSSL_sk_free(_STACK *a);
-+void * q_OPENSSL_sk_value(STACK *a, int b);
-+#define q_sk_num q_OPENSSL_sk_num
-+#define q_sk_pop_free q_OPENSSL_sk_pop_free
-+#define q_sk_free q_OPENSSL_sk_free
-+#define q_sk_value q_OPENSSL_sk_value
-+#endif
- int q_SSL_accept(SSL *a);
- int q_SSL_clear(SSL *a);
- char *q_SSL_CIPHER_description(SSL_CIPHER *a, char *b, int c);
-@@ -314,8 +340,14 @@
- #else
- long q_SSL_get_verify_result(SSL *a);
- #endif
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- int q_SSL_library_init();
- void q_SSL_load_error_strings();
-+#else
-+int q_OPENSSL_init_ssl(uint64_t opts, const OPENSSL_INIT_SETTINGS *settings);
-+#define q_SSL_library_init() q_OPENSSL_init_ssl(0, (const OPENSSL_INIT_SETTINGS *) NULL)
-+#define q_SSL_load_error_strings() q_OPENSSL_init_ssl(OPENSSL_INIT_LOAD_SSL_STRINGS | OPENSSL_INIT_LOAD_CRYPTO_STRINGS, (const OPENSSL_INIT_SETTINGS *) NULL)
-+#endif
- SSL *q_SSL_new(SSL_CTX *a);
- #if OPENSSL_VERSION_NUMBER >= 0x0090806fL && !defined(OPENSSL_NO_TLSEXT)
- long q_SSL_ctrl(SSL *ssl,int cmd, long larg, void *parg);
-@@ -328,11 +360,21 @@
- #if OPENSSL_VERSION_NUMBER >= 0x10000000L
- const SSL_METHOD *q_SSLv2_client_method();
- const SSL_METHOD *q_SSLv3_client_method();
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- const SSL_METHOD *q_SSLv23_client_method();
-+#else
-+const SSL_METHOD *q_TLS_client_method();
-+#define q_SSLv23_client_method q_TLS_client_method
-+#endif
- const SSL_METHOD *q_TLSv1_client_method();
- const SSL_METHOD *q_SSLv2_server_method();
- const SSL_METHOD *q_SSLv3_server_method();
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- const SSL_METHOD *q_SSLv23_server_method();
-+#else
-+const SSL_METHOD *q_TLS_server_method();
-+#define q_SSLv23_server_method q_TLS_server_method
-+#endif
- const SSL_METHOD *q_TLSv1_server_method();
- #else
- SSL_METHOD *q_SSLv2_client_method();
-@@ -377,7 +419,12 @@
- int q_X509_STORE_CTX_get_error(X509_STORE_CTX *ctx);
- int q_X509_STORE_CTX_get_error_depth(X509_STORE_CTX *ctx);
- X509 *q_X509_STORE_CTX_get_current_cert(X509_STORE_CTX *ctx);
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- STACK_OF(X509) *q_X509_STORE_CTX_get_chain(X509_STORE_CTX *ctx);
-+#else
-+STACK_OF(X509) *q_X509_STORE_CTX_get0_chain(X509_STORE_CTX *ctx);
-+#define q_X509_STORE_CTX_get_chain q_X509_STORE_CTX_get0_chain
-+#endif
-
- #define q_BIO_get_mem_data(b, pp) (int)q_BIO_ctrl(b,BIO_CTRL_INFO,0,(char *)pp)
- #define q_BIO_pending(b) (int)q_BIO_ctrl(b,BIO_CTRL_PENDING,0,NULL)
-@@ -399,7 +446,25 @@
- PEM_ASN1_write_bio((int (*)(void*, unsigned char**))q_i2d_DSAPrivateKey,PEM_STRING_DSA,\
- bp,(char *)x,enc,kstr,klen,cb,u)
- #endif
-+
-+X509_STORE * q_SSL_CTX_get_cert_store(const SSL_CTX *ctx);
-+ASN1_INTEGER * q_X509_get_serialNumber(X509 *x);
-+
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- #define q_SSL_CTX_set_options(ctx,op) q_SSL_CTX_ctrl((ctx),SSL_CTRL_OPTIONS,(op),NULL)
-+#define q_X509_get_version(x) X509_get_version(x)
-+#else
-+int q_EVP_PKEY_id(const EVP_PKEY *pkey);
-+int q_EVP_PKEY_base_id(const EVP_PKEY *pkey);
-+int q_SSL_CIPHER_get_bits(const SSL_CIPHER *cipher, int *alg_bits);
-+long q_SSL_CTX_set_options(SSL_CTX *ctx, long options);
-+long q_X509_get_version(X509 *x);
-+X509_PUBKEY * q_X509_get_X509_PUBKEY(X509 *x);
-+int q_RSA_bits(const RSA *rsa);
-+int q_DSA_security_bits(const DSA *dsa);
-+void q_DSA_get0_pqg(const DSA *d, const BIGNUM **p, const BIGNUM **q, const BIGNUM **g);
-+#endif
-+
- #define q_SKM_sk_num(type, st) ((int (*)(const STACK_OF(type) *))q_sk_num)(st)
- #define q_SKM_sk_value(type, st,i) ((type * (*)(const STACK_OF(type) *, int))q_sk_value)(st, i)
- #define q_sk_GENERAL_NAME_num(st) q_SKM_sk_num(GENERAL_NAME, (st))
-@@ -410,8 +475,17 @@
- #define q_sk_SSL_CIPHER_value(st, i) q_SKM_sk_value(SSL_CIPHER, (st), (i))
- #define q_SSL_CTX_add_extra_chain_cert(ctx,x509) \
- q_SSL_CTX_ctrl(ctx,SSL_CTRL_EXTRA_CHAIN_CERT,0,(char *)x509)
-+
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- #define q_X509_get_notAfter(x) X509_get_notAfter(x)
- #define q_X509_get_notBefore(x) X509_get_notBefore(x)
-+#else
-+ASN1_TIME *q_X509_getm_notAfter(X509 *x);
-+ASN1_TIME *q_X509_getm_notBefore(X509 *x);
-+#define q_X509_get_notAfter(x) q_X509_getm_notAfter(x)
-+#define q_X509_get_notBefore(x) q_X509_getm_notBefore(x)
-+#endif
-+
- #define q_EVP_PKEY_assign_RSA(pkey,rsa) q_EVP_PKEY_assign((pkey),EVP_PKEY_RSA,\
- (char *)(rsa))
- #define q_EVP_PKEY_assign_DSA(pkey,dsa) q_EVP_PKEY_assign((pkey),EVP_PKEY_DSA,\
-@@ -421,10 +495,21 @@
- #else
- #define q_OpenSSL_add_all_algorithms() q_OPENSSL_add_all_algorithms_noconf()
- #endif
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- void q_OPENSSL_add_all_algorithms_noconf();
- void q_OPENSSL_add_all_algorithms_conf();
-+#else
-+int q_OPENSSL_init_crypto(uint64_t opts, const OPENSSL_INIT_SETTINGS *settings);
-+#define q_OPENSSL_add_all_algorithms_conf() q_OPENSSL_init_crypto(OPENSSL_INIT_ADD_ALL_CIPHERS | OPENSSL_INIT_ADD_ALL_DIGESTS | OPENSSL_INIT_LOAD_CONFIG, (const OPENSSL_INIT_SETTINGS *) NULL)
-+# define q_OPENSSL_add_all_algorithms_noconf() q_OPENSSL_init_crypto(OPENSSL_INIT_ADD_ALL_CIPHERS | OPENSSL_INIT_ADD_ALL_DIGESTS, (const OPENSSL_INIT_SETTINGS *) NULL)
-+#endif
- int q_SSL_CTX_load_verify_locations(SSL_CTX *ctx, const char *CAfile, const char *CApath);
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
- long q_SSLeay();
-+#else
-+unsigned long q_OpenSSL_version_num();
-+#define q_SSLeay q_OpenSSL_version_num
-+#endif
-
- // Helper function
- class QDateTime;
diff --git a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.7-qforeach.patch b/source/l/qt/patches/qt-everywhere-opensource-src-4.8.7-qforeach.patch
deleted file mode 100644
index 836dc13a4..000000000
--- a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.7-qforeach.patch
+++ /dev/null
@@ -1,40 +0,0 @@
---- 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
-
diff --git a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.7-qmake_LFLAGS.patch b/source/l/qt/patches/qt-everywhere-opensource-src-4.8.7-qmake_LFLAGS.patch
deleted file mode 100644
index f1a5a12e1..000000000
--- a/source/l/qt/patches/qt-everywhere-opensource-src-4.8.7-qmake_LFLAGS.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -up qt-everywhere-opensource-src-4.8.7/qmake/Makefile.unix.qmake_LFLAGS qt-everywhere-opensource-src-4.8.7/qmake/Makefile.unix
---- qt-everywhere-opensource-src-4.8.7/qmake/Makefile.unix.qmake_LFLAGS 2015-05-07 09:14:42.000000000 -0500
-+++ qt-everywhere-opensource-src-4.8.7/qmake/Makefile.unix 2018-02-15 08:25:13.168838577 -0600
-@@ -3,7 +3,7 @@ BUILD_PATH = @BUILD_PATH@
- QTOBJS = @QMAKE_QTOBJS@
- QTSRCS = @QMAKE_QTSRCS@
- QMAKESPEC = @QMAKESPEC@
--LFLAGS = @QMAKE_LFLAGS@
-+LFLAGS = @QMAKE_LFLAGS@ $(QMAKE_LFLAGS_RELEASE)
-
- #qmake code
- OBJS=project.o property.o main.o makefile.o unixmake2.o unixmake.o \
diff --git a/source/l/qt/patches/qt-prefer_adwaita_on_gnome.patch b/source/l/qt/patches/qt-prefer_adwaita_on_gnome.patch
deleted file mode 100644
index 71e30c4f9..000000000
--- a/source/l/qt/patches/qt-prefer_adwaita_on_gnome.patch
+++ /dev/null
@@ -1,17 +0,0 @@
---- src/gui/kernel/qguiplatformplugin.cpp.adwaita 2015-02-12 14:32:45.217935391 +0100
-+++ src/gui/kernel/qguiplatformplugin.cpp 2015-02-12 14:46:11.471866038 +0100
-@@ -165,8 +165,13 @@ QString QGuiPlatformPlugin::styleName()
- case DE_GNOME: {
- QStringList availableStyles = QStyleFactory::keys();
- // Set QGtkStyle for GNOME if available
-+ QString adwaitaStyleKey = QString::fromLatin1("adwaita");
- QString gtkStyleKey = QString::fromLatin1("GTK+");
-- if (availableStyles.contains(gtkStyleKey)) {
-+ if (availableStyles.contains(adwaitaStyleKey)) {
-+ stylename = adwaitaStyleKey;
-+ break;
-+ }
-+ else if (availableStyles.contains(gtkStyleKey)) {
- stylename = gtkStyleKey;
- break;
- }
diff --git a/source/l/qt/patches/qt-x11-opensource-src-4.5.0-fix-qatomic-inline-asm.patch b/source/l/qt/patches/qt-x11-opensource-src-4.5.0-fix-qatomic-inline-asm.patch
deleted file mode 100644
index e5ab4bad9..000000000
--- a/source/l/qt/patches/qt-x11-opensource-src-4.5.0-fix-qatomic-inline-asm.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-diff -ur qt-x11-opensource-src-4.5.0/src/corelib/arch/qatomic_i386.h qt-x11-opensource-src-4.5.0-fix-qatomic-inline-asm/src/corelib/arch/qatomic_i386.h
---- qt-x11-opensource-src-4.5.0/src/corelib/arch/qatomic_i386.h 2009-02-25 22:09:21.000000000 +0100
-+++ qt-x11-opensource-src-4.5.0-fix-qatomic-inline-asm/src/corelib/arch/qatomic_i386.h 2009-04-01 17:54:21.000000000 +0200
-@@ -115,8 +115,8 @@
- asm volatile("lock\n"
- "incl %0\n"
- "setne %1"
-- : "=m" (_q_value), "=qm" (ret)
-- : "m" (_q_value)
-+ : "+m" (_q_value), "=qm" (ret)
-+ :
- : "memory");
- return ret != 0;
- }
-@@ -127,8 +127,8 @@
- asm volatile("lock\n"
- "decl %0\n"
- "setne %1"
-- : "=m" (_q_value), "=qm" (ret)
-- : "m" (_q_value)
-+ : "+m" (_q_value), "=qm" (ret)
-+ :
- : "memory");
- return ret != 0;
- }
-diff -ur qt-x11-opensource-src-4.5.0/src/corelib/arch/qatomic_x86_64.h qt-x11-opensource-src-4.5.0-fix-qatomic-inline-asm/src/corelib/arch/qatomic_x86_64.h
---- qt-x11-opensource-src-4.5.0/src/corelib/arch/qatomic_x86_64.h 2009-02-25 22:09:21.000000000 +0100
-+++ qt-x11-opensource-src-4.5.0-fix-qatomic-inline-asm/src/corelib/arch/qatomic_x86_64.h 2009-04-01 17:54:32.000000000 +0200
-@@ -116,8 +116,8 @@
- asm volatile("lock\n"
- "incl %0\n"
- "setne %1"
-- : "=m" (_q_value), "=qm" (ret)
-- : "m" (_q_value)
-+ : "+m" (_q_value), "=qm" (ret)
-+ :
- : "memory");
- return ret != 0;
- }
-@@ -128,8 +128,8 @@
- asm volatile("lock\n"
- "decl %0\n"
- "setne %1"
-- : "=m" (_q_value), "=qm" (ret)
-- : "m" (_q_value)
-+ : "+m" (_q_value), "=qm" (ret)
-+ :
- : "memory");
- return ret != 0;
- }
diff --git a/source/l/qt/patches/qt-x11-opensource-src-4.5.1-enable_ft_lcdfilter.patch b/source/l/qt/patches/qt-x11-opensource-src-4.5.1-enable_ft_lcdfilter.patch
deleted file mode 100644
index 4ab3ea4b1..000000000
--- a/source/l/qt/patches/qt-x11-opensource-src-4.5.1-enable_ft_lcdfilter.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -up qt-x11-opensource-src-4.5.1/src/gui/text/qfontengine_ft.cpp.enable_ft_lcdfilter qt-x11-opensource-src-4.5.1/src/gui/text/qfontengine_ft.cpp
---- qt-x11-opensource-src-4.5.1/src/gui/text/qfontengine_ft.cpp.enable_ft_lcdfilter 2009-04-21 18:57:41.000000000 -0500
-+++ qt-x11-opensource-src-4.5.1/src/gui/text/qfontengine_ft.cpp 2009-04-24 11:17:49.562695405 -0500
-@@ -72,7 +72,7 @@
- #include FT_CONFIG_OPTIONS_H
- #endif
-
--#if defined(FT_LCD_FILTER_H) && defined(FT_CONFIG_OPTION_SUBPIXEL_RENDERING)
-+#if defined(FT_LCD_FILTER_H)
- #define QT_USE_FREETYPE_LCDFILTER
- #endif
-
diff --git a/source/l/qt/profile.d/qt4.csh b/source/l/qt/profile.d/qt4.csh
deleted file mode 100644
index 6e2c726cb..000000000
--- a/source/l/qt/profile.d/qt4.csh
+++ /dev/null
@@ -1,22 +0,0 @@
-#!/bin/csh
-# Environment path variables for the Qt package:
-if ( ! $?QT4DIR ) then
- # It's best to use the generic directory to avoid
- # compiling in a version-containing path:
- if ( -d /usr/lib/qt ) then
- setenv QT4DIR /usr/lib/qt
- else
- # Find the newest Qt directory and set $QT4DIR to that:
- foreach qtd ( /usr/lib/qt-* )
- if ( -d $qtd ) then
- setenv QT4DIR $qtd
- endif
- end
- endif
-endif
-set path = ( $path $QT4DIR/bin )
-if ( $?CPLUS_INCLUDE_PATH ) then
- setenv CPLUS_INCLUDE_PATH $QT4DIR/include:$CPLUS_INCLUDE_PATH
-else
- setenv CPLUS_INCLUDE_PATH $QT4DIR/include
-endif
diff --git a/source/l/qt/profile.d/qt4.sh b/source/l/qt/profile.d/qt4.sh
deleted file mode 100644
index 5b4b830aa..000000000
--- a/source/l/qt/profile.d/qt4.sh
+++ /dev/null
@@ -1,23 +0,0 @@
-#!/bin/sh
-# Environment variables for the Qt package.
-#
-# It's best to use the generic directory to avoid
-# compiling in a version-containing path:
-if [ -d /usr/lib/qt ]; then
- QT4DIR=/usr/lib/qt
-else
- # Find the newest Qt directory and set $QT4DIR to that:
- for qtd in /usr/lib/qt-* ; do
- if [ -d $qtd ]; then
- QT4DIR=$qtd
- fi
- done
-fi
-if [ ! "$CPLUS_INCLUDE_PATH" = "" ]; then
- CPLUS_INCLUDE_PATH=$QT4DIR/include:$CPLUS_INCLUDE_PATH
-else
- CPLUS_INCLUDE_PATH=$QT4DIR/include
-fi
-PATH="$PATH:$QT4DIR/bin"
-export QT4DIR
-export CPLUS_INCLUDE_PATH
diff --git a/source/l/qt/qt-nowebkit.SlackBuild b/source/l/qt/qt-nowebkit.SlackBuild
deleted file mode 100755
index f9e08a396..000000000
--- a/source/l/qt/qt-nowebkit.SlackBuild
+++ /dev/null
@@ -1,362 +0,0 @@
-#!/bin/bash
-
-# Copyright 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2018 Patrick J. Volkerding, Sebeka, MN, USA
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-# Merged some ideas from Alex Sarmardzic's script for qt4 at SlackBuilds.org
-# ^^ Modified by Robby Workman <rworkman@slackware.com> for QT4 & KDE4
-
-# We're using qt-copy instead of a released qt version, as this git release
-# has at least one bugfix strongly recommended by the kde developers.
-
-# Obtained from:
-# git clone git://gitorious.org/+kde-developers/qt/kde-qt.git
-# git checkout origin/4.5.3-patched
-# git checkout origin/4.6.0-stable-patched
-# git checkout origin/4.6.1-patched
-# git checkout origin/4.7.0-patched
-#
-# Alternate method (we don't use this):
-# wget http://qt.gitorious.org/qt/kde-qt/archive-tarball/4.6.2-patched
-#
-# Modifications 2010, 2011, 2012 Eric Hameleers, Eindhoven, NL
-# qt 4.7.3, 4.7.4, 4.8.0, 4.8.1, 4.8.2, 4.8.4, 4.8.5, 4.8.6 are built from original nokia sources.
-
-cd $(dirname $0) ; CWD=$(pwd)
-
-PKGNAM=qt
-VERSION=$(ls qt-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)
-BUILD=${BUILD:-17}
-
-NUMJOBS=${NUMJOBS:-" -j$(expr $(nproc) + 1) "}
-
-# Automatically determine the architecture we're building on:
-MARCH=$( uname -m )
-if [ -z "$ARCH" ]; then
- case "$MARCH" in
- i?86) export ARCH=i586 ;;
- armv7hl) export ARCH=$MARCH ;;
- arm*) export ARCH=arm ;;
- # Unless $ARCH is already set, use uname -m for all other archs:
- *) export ARCH=$MARCH ;;
- esac
-fi
-
-# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
-# the name of the created package would be, and then exit. This information
-# could be useful to other scripts.
-if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
- echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
- exit 0
-fi
-
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "s390" ]; then
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX="64"
-elif [ "$ARCH" = "armv7hl" ]; then
- # To prevent "qatomic_armv6.h error: output number 2 not directly addressable"
- # More permanent solution is to patch gcc:
- # http://bazaar.launchpad.net/~linaro-toolchain-dev/gcc-linaro/4.6/revision/106731
- SLKCFLAGS="-O2 -march=armv7-a -mfpu=vfpv3-d16 -fno-strict-volatile-bitfields"
- LIBDIRSUFFIX=""
-else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
-fi
-
-case "$ARCH" in
- arm*) TARGET=$ARCH-slackware-linux-gnueabi ;;
- *) TARGET=$ARCH-slackware-linux ;;
-esac
-
-TMP=${TMP:-/tmp}
-PKG=$TMP/package-${PKGNAM}
-
-rm -rf $PKG
-mkdir -p $TMP $PKG
-cd $TMP
-rm -rf qt-everywhere-opensource-src-$VERSION
-tar xvf $CWD/qt-everywhere-opensource-src-$VERSION.tar.xz # For qt releases
-cd qt-everywhere-opensource-src-$VERSION || exit 1
-
-chown -R root:root .
-find . \
- \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \+ -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \+
-
-if [ $ARCH = "i486" -o $ARCH = "i586" ]; then
- sed -i -e "s/QMAKE_CFLAGS_RELEASE += -O2/QMAKE_CFLAGS_RELEASE += $SLKCFLAGS/" mkspecs/common/gcc-base.conf || exit 1
-fi
-
-zcat $CWD/patches/qt-everywhere-opensource-src-4.8.5-uic_multilib.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/qt-everywhere-opensource-src-4.8.5-webcore_debuginfo.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/qt-cupsEnumDests.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/qt-prefer_adwaita_on_gnome.patch.gz | patch -p0 --verbose || exit 1
-#zcat $CWD/patches/qt-x11-opensource-src-4.5.1-enable_ft_lcdfilter.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/qt-everywhere-opensource-src-4.6.3-glib_eventloop_nullcheck.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/qt-everywhere-opensource-src-4.8.3-qdbusconnection_no_debug.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/qt-everywhere-opensource-src-4.8.1-linguist_qmake-qt4.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/qt-everywhere-opensource-src-4.8.1-qt3support_debuginfo.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/qt-everywhere-opensource-src-4.8.5-qt_plugin_path.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/qt-everywhere-opensource-src-4.8.4-qmake_pkgconfig_requires_private.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/qt-everywhere-opensource-src-4.8.7-firebird.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/qt-everywhere-opensource-src-4.8.7-QT_VERSION_CHECK.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/qt-x11-opensource-src-4.5.0-fix-qatomic-inline-asm.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/qt-everywhere-opensource-src-4.8.5-mysql_config.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/qt-everywhere-opensource-src-4.6.2-cups.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/qt-everywhere-opensource-src-4.8.7-mariadb.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/qt-everywhere-opensource-src-4.8.7-qmake_LFLAGS.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/qt-everywhere-opensource-src-4.8.5-QTBUG-14467.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/qt-everywhere-opensource-src-4.8.0-tp-qtreeview-kpackagekit-crash.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/qt-everywhere-opensource-src-4.8.6-s390.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/qt-everywhere-opensource-src-4.8.3-no_Werror.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/qt-everywhere-opensource-src-4.8.0-QTBUG-22037.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/qt-everywhere-opensource-src-4.8.5-QTBUG-21900.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/qt-everywhere-opensource-src-4.8.5-tds_no_strict_aliasing.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/qt-everywhere-opensource-src-4.8.0-s390-atomic.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/qt-everywhere-opensource-src-4.8.3-icu_no_debug.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/qt-everywhere-opensource-src-4.8.2--assistant-crash.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/qt-everywhere-opensource-src-4.8.5-QTBUG-4862.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/qt-4.8-poll.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/qt-everywhere-opensource-src-4.8.6-QTBUG-37380.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/qt-everywhere-opensource-src-4.8.6-QTBUG-34614.patch.gz | patch -p0 --verbose || exit 1
-zcat $CWD/patches/qt-everywhere-opensource-src-4.8.6-QTBUG-38585.patch.gz | patch -p0 --verbose || exit 1
-#zcat $CWD/patches/qt-everywhere-opensource-src-4.8.6-system-clucene.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/qt-everywhere-opensource-src-4.8.7-mips64.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/qt-everywhere-opensource-src-4.8.7-gcc6.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/qt-everywhere-opensource-src-4.8.7-alsa-1.1.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/qt-everywhere-opensource-src-4.8.7-openssl-1.1.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/qt-everywhere-opensource-src-4.8.7-gcc8_qtscript.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/qt-everywhere-opensource-src-4.8.5-qgtkstyle_disable_gtk_theme_check.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/qt-everywhere-opensource-src-4.8.6-QTBUG-22829.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/qt-aarch64.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/qt-everywhere-opensource-src-4.8.7-qforeach.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/qt-everywhere-opensource-src-4.8.7-crash-in-qppmhandler.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/qt-everywhere-opensource-src-4.8.5-QTBUG-35459.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/qt-everywhere-opensource-src-4.8.6-systemtrayicon.patch.gz | patch -p1 --verbose || exit 1
-#zcat $CWD/patches/qt-everywhere-opensource-src-4.8.0-tp-multilib-optflags.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/qt-everywhere-opensource-src-4.8.7-icu59.patch.gz | patch -p1 --verbose || exit 1
-zcat $CWD/patches/qt-4.8-disable-sslv3.patch.gz | patch -p1 --verbose || exit 1
-
-# All other distros I checked build with -no-webkit. But this has the downside of
-# breaking the build when QtWebKit is present on the build system and some things
-# (assistant for one) are built without support for QtWebKit. So let's go with
-# -webkit and remove the built files later from the package. -HW
-
-export CFLAGS="$SLKCFLAGS"
-export CXXFLAGS="$SLKCFLAGS -std=gnu++98 -fpermissive -fno-delete-null-pointer-checks"
-export OPENSOURCE_CXXFLAGS="$SLKCFLAGS -std=gnu++98 -fpermissive -fno-delete-null-pointer-checks"
-./configure \
- -confirm-license \
- -opensource \
- -prefix /usr/lib${LIBDIRSUFFIX}/qt \
- -fast \
- -release \
- -system-libpng \
- -system-libjpeg \
- -system-zlib \
- -system-sqlite \
- -plugin-sql-sqlite \
- -dbus \
- -webkit \
- -no-phonon \
- -nomake examples \
- -nomake demos \
- -nomake docs \
- -no-separate-debug-info \
- -no-pch
- # No-precompiled-headers is ccache-friendly.
-
-# Sometimes a failure happens when parallelizing make. Try again if make fails,
-# but make a failure the second time around (single threaded) a fatal error:
-make $NUMJOBS || make || exit 1
-make install INSTALL_ROOT=$PKG || exit 1
-
-# dropping the just built WebKit since we replace it with an external one
-rm -f $PKG/usr/lib$LIBDIRSUFFIX/qt/lib/libQtWebKit*
-rm -f $PKG/usr/lib$LIBDIRSUFFIX/qt/lib/pkgconfig/QtWebKit.pc
-rm -rf $PKG/usr/lib$LIBDIRSUFFIX/qt/imports/QtWebKit
-rm -rf $PKG/usr/lib$LIBDIRSUFFIX/qt/include/QtWebKit
-
-# The infamous qt -> qt-${VERSION} link that keeps the full path out of .la files:
-( cd $PKG/usr/lib${LIBDIRSUFFIX} ; ln -sf qt qt-${VERSION} )
-
-# Add a missing Qt.pc which is needed by KDE applications:
-mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/qt/lib/pkgconfig
-cat <<EOF > $PKG/usr/lib${LIBDIRSUFFIX}/qt/lib/pkgconfig/Qt.pc
-prefix=/usr/lib${LIBDIRSUFFIX}/qt
-bindir=\${prefix}/bin
-datadir=\${prefix}
-docdir=\${prefix}/doc
-headerdir=\${prefix}/include
-importdir=\${prefix}/imports
-libdir=\${prefix}/lib
-moc=\${bindir}/moc
-plugindir=\${prefix}/plugins
-qmake=\${bindir}/qmake
-sysconfdir=\${prefix}/etc/settings
-translationdir=\${prefix}/translations
-
-Name: Qt
-Description: Qt Configuration
-Version: $VERSION
-EOF
-
-# libjscore is used internally. Prevent a false dependency on this in the .la and .pc files:
-sed -i "s,-ljscore,,g" $PKG/usr/lib${LIBDIRSUFFIX}/qt/lib/*.la $PKG/usr/lib${LIBDIRSUFFIX}/qt/lib/pkgconfig/*.pc
-sed -i "s,-L../JavaScriptCore/release,,g" $PKG/usr/lib${LIBDIRSUFFIX}/qt/lib/*.la $PKG/usr/lib${LIBDIRSUFFIX}/qt/lib/pkgconfig/*.pc
-
-# Make sure that .la, .pc, and .prl files use the correct $LIBDIRSUFFIX:
-sed -i "s,-L/usr/X11R6/lib ,-L/usr/X11R6/lib${LIBDIRSUFFIX} ,g" $PKG/usr/lib${LIBDIRSUFFIX}/qt/lib/*.la $PKG/usr/lib${LIBDIRSUFFIX}/qt/lib/pkgconfig/*.pc $PKG/usr/lib${LIBDIRSUFFIX}/qt/lib/*.prl
-
-# Link the shared libraries into /usr/lib:
-( cd $PKG/usr/lib${LIBDIRSUFFIX}
- for file in qt/lib/*.so* ; do
- ln -sf $file .
- done
-)
-
-find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
-
-# Add profile scripts
-mkdir -p $PKG/etc/profile.d
-sed -e "s#usr/lib/#usr/lib${LIBDIRSUFFIX}/#g" $CWD/profile.d/qt4.sh \
- > $PKG/etc/profile.d/qt4.sh
-sed -e "s#usr/lib/#usr/lib${LIBDIRSUFFIX}/#g" $CWD/profile.d/qt4.csh \
- > $PKG/etc/profile.d/qt4.csh
-chmod 0755 $PKG/etc/profile.d/*
-
-# Put a ton of links to more "normal" places. I'd just use a prefix of /usr, but it
-# creates a ton of new (and ambiguously named) /usr directories...
-mkdir -p $PKG/usr/bin
-( cd $PKG/usr/lib${LIBDIRSUFFIX}/qt/bin
- for file in * ; do
- ( cd $PKG/usr/bin ; ln -sf /usr/lib${LIBDIRSUFFIX}/qt/bin/$file . )
- done
-)
-
-mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/pkgconfig
-( cd $PKG/usr/lib${LIBDIRSUFFIX}/qt/lib/pkgconfig
- for file in *.pc ; do
- ( cd $PKG/usr/lib${LIBDIRSUFFIX}/pkgconfig ; ln -sf /usr/lib${LIBDIRSUFFIX}/qt/lib/pkgconfig/$file . )
- done
-)
-
-# Install Qt's private headers - at least Gentoo and Fedora are adding these
-# and some software has (inevitably) started depending on them:
-# We're using `rsync -R` as easy way to preserve relative path names:
-rsync -aR \
- include/Qt{Core,Declarative,Gui,Script}/private \
- src/{corelib,declarative,gui,script}/*/*_p.h \
- ${PKG}/usr/lib${LIBDIRSUFFIX}/qt/
-
-# Add menu entries for all those hidden but great Qt applications:
-# Assistant icons
-install -p -m644 -D tools/assistant/tools/assistant/images/assistant.png $PKG/usr/share/icons/hicolor/32x32/apps/assistant.png
-install -p -m644 -D tools/assistant/tools/assistant/images/assistant-128.png $PKG/usr/share/icons/hicolor/128x128/apps/assistant.png
-# Designer icon
-install -p -m644 -D tools/designer/src/designer/images/designer.png $PKG/usr/share/icons/hicolor/128x128/apps/designer.png
-# Linguist icons
-for icon in tools/linguist/linguist/images/icons/linguist-*-32.png ; do
- size=$(echo $(basename ${icon}) | cut -d- -f2)
- install -p -m644 -D ${icon} $PKG/usr/share/icons/hicolor/${size}x${size}/apps/linguist.png
-done
-# Qt logo:
-convert doc/src/images/qt-logo.png -resize 48x48 $PKG/usr/share/icons/hicolor/48x48/apps/qt-logo.png
-
-# And the .desktop files
-mkdir -p $PKG/usr/share/applications
-cat <<EOF > $PKG/usr/share/applications/designer.desktop
-[Desktop Entry]
-Name=Qt4 Designer
-GenericName=Interface Designer
-Comment=Design GUIs for Qt4 applications
-Exec=designer
-Icon=designer
-MimeType=application/x-designer;
-Terminal=false
-Encoding=UTF-8
-Type=Application
-Categories=Qt;Development;
-EOF
-cat <<EOF > $PKG/usr/share/applications/assistant.desktop
-[Desktop Entry]
-Name=Qt4 Assistant
-Comment=Shows Qt4 documentation and examples
-Exec=assistant
-Icon=assistant
-Terminal=false
-Encoding=UTF-8
-Type=Application
-Categories=Qt;Development;Documentation;
-EOF
-cat <<EOF > $PKG/usr/share/applications/linguist.desktop
-[Desktop Entry]
-Name=Qt4 Linguist
-Comment=Add translations to Qt4 applications
-Exec=linguist
-Icon=linguist
-MimeType=text/vnd.trolltech.linguist;application/x-linguist;
-Terminal=false
-Encoding=UTF-8
-Type=Application
-Categories=Qt;Development;
-EOF
-cat <<EOF > $PKG/usr/share/applications/qtconfig.desktop
-[Desktop Entry]
-Name=Qt4 Config
-Comment=Configure Qt4 behavior, styles, fonts
-Exec=qtconfig
-Icon=qt-logo
-Terminal=false
-Encoding=UTF-8
-Type=Application
-Categories=Qt;Settings;
-EOF
-
-# Add a documentation directory:
-mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
-cp -a *GPL_EXCEPTION* FAQ* INSTALL KNOWN* LICENSE* README* changes-* \
- $PKG/usr/doc/$PKGNAM-$VERSION
-if [ -d $PKG/usr/lib${LIBDIRSUFFIX}/qt/doc/html ]; then
- ( cd $PKG/usr/doc/$PKGNAM-$VERSION
- ln -sf /usr/lib${LIBDIRSUFFIX}/qt/doc/html .
- )
-fi
-
-mkdir -p $PKG/install
-zcat $CWD/doinst.sh.gz > $PKG/install/doinst.sh
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
-
diff --git a/source/l/qt/qt.SlackBuild b/source/l/qt/qt.SlackBuild
deleted file mode 100755
index 01ddf720e..000000000
--- a/source/l/qt/qt.SlackBuild
+++ /dev/null
@@ -1,113 +0,0 @@
-#!/bin/bash
-
-# Copyright 2015 Patrick J. Volkerding, Sebeka, MN, USA
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-# This script builds Qt, packages it without WebKit, upgrades the machine to
-# a WebKit-less Qt, builds a WebKit package, merges the two packages, and
-# finally upgrades the machine to a combined package.
-
-cd $(dirname $0) ; CWD=$(pwd)
-
-PKGNAM=qt
-QTVERSION=$(ls qt-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)
-# Adjust the combined package $BUILD in qt-nowebkit.SlackBuild:
-QTBUILD=$(grep BUILD= qt-nowebkit.SlackBuild | cut -f 2 -d - | cut -f 1 -d \})
-WEBKITVERSION=$(ls qtwebkit/qtwebkit-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)
-# This $BUILD doesn't really need to change as long as these are combined:
-WEBKITBUILD=$(grep BUILD= qtwebkit/qtwebkit.SlackBuild | cut -f 2 -d - | cut -f 1 -d \})
-
-# Automatically determine the architecture we're building on:
-MARCH=$( uname -m )
-if [ -z "$ARCH" ]; then
- case "$MARCH" in
- i?86) export ARCH=i586 ;;
- armv7hl) export ARCH=$MARCH ;;
- arm*) export ARCH=arm ;;
- # Unless $ARCH is already set, use uname -m for all other archs:
- *) export ARCH=$MARCH ;;
- esac
-fi
-
-# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
-# the name of the created package would be, and then exit. This information
-# could be useful to other scripts.
-if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
- echo "$PKGNAM-${QTVERSION}-${ARCH}-${QTBUILD}.txz"
- exit 0
-fi
-
-if [ "$ARCH" = "x86_64" ]; then
- LIBDIRSUFFIX="64"
-else
- LIBDIRSUFFIX=""
-fi
-
-TMP=${TMP:-/tmp}
-
-# Build Qt and package it without WebKit:
-rm -f $TMP/qt-${QTVERSION}-${ARCH}-${QTBUILD}.txz
-./qt-nowebkit.SlackBuild
-if [ ! -r $TMP/qt-${QTVERSION}-${ARCH}-${QTBUILD}.txz ]; then
- echo "FATAL: Failed to build Qt package without WebKit."
- exit 1
-fi
-
-# Upgrade system to Qt (without WebKit):
-/sbin/upgradepkg --reinstall --install-new $TMP/qt-${QTVERSION}-${ARCH}-${QTBUILD}.txz
-
-# Build standalone WebKit package (qtwebkit):
-rm -f $TMP/qtwebkit-${WEBKITVERSION}-${ARCH}-${WEBKITBUILD}.txz
-( cd qtwebkit
- ./qtwebkit.SlackBuild )
-if [ ! -r $TMP/qtwebkit-${WEBKITVERSION}-${ARCH}-${WEBKITBUILD}.txz ]; then
- echo "FATAL: Failed to build QtWebKit standalone package."
- rm -f $TMP/qt-${QTVERSION}-${ARCH}-${QTBUILD}.txz
- exit 1
-fi
-
-# Combine the packages:
-rm -rf $TMP/package-qt
-mkdir -p $TMP/package-qt
-( cd $TMP/package-qt
- /sbin/explodepkg $TMP/qtwebkit-${WEBKITVERSION}-${ARCH}-${WEBKITBUILD}.txz
- /sbin/explodepkg $TMP/qt-${QTVERSION}-${ARCH}-${QTBUILD}.txz
- cat $TMP/package-qtwebkit/install/doinst.sh | grep '^(' >> install/doinst.sh
- mv usr/doc/qtwebkit-* usr/doc/qt-*
- # Remove rpaths:
- for file in $(find . | xargs file | grep -e "executable" -e "shared object" | grep ELF | cut -f 1 -d : 2> /dev/null) ; do
- if [ ! "$(patchelf --print-rpath $file 2> /dev/null)" = "" ]; then
- patchelf --remove-rpath $file
- fi
- done
- # Don't ship .la files:
- rm -f usr/lib${LIBDIRSUFFIX}/*.la
- rm -f usr/lib${LIBDIRSUFFIX}/qt/lib/*.la
- /sbin/makepkg -l y -c n ../qt-${QTVERSION}-${ARCH}-${QTBUILD}.txz
-)
-
-# Remove intermediate qtwebkit package:
-rm -f $TMP/qtwebkit-${WEBKITVERSION}-${ARCH}-${WEBKITBUILD}.txz
-
-# Upgrade system to the combined Qt/WebKit package:
-/sbin/upgradepkg --reinstall --install-new $TMP/qt-${QTVERSION}-${ARCH}-${QTBUILD}.txz
-
-# Done.
-
diff --git a/source/l/qt/qtwebkit/doinst.sh b/source/l/qt/qtwebkit/doinst.sh
deleted file mode 100644
index 6f7c5df07..000000000
--- a/source/l/qt/qtwebkit/doinst.sh
+++ /dev/null
@@ -1,5 +0,0 @@
-
-if [ -x sbin/ldconfig ]; then
- chroot . /sbin/ldconfig 2> /dev/null
-fi
-
diff --git a/source/l/qt/qtwebkit/qtwebkit.SlackBuild b/source/l/qt/qtwebkit/qtwebkit.SlackBuild
deleted file mode 100755
index e14e37656..000000000
--- a/source/l/qt/qtwebkit/qtwebkit.SlackBuild
+++ /dev/null
@@ -1,166 +0,0 @@
-#!/bin/sh
-
-# Copyright 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015 Patrick J. Volkerding, Sebeka, MN, USA
-# Copyright 2015 Heinz Wiesinger, Amsterdam, The Netherlands
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
-# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
-# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
-# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
-# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
-# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-#
-# Derived from the main qt SlackBuild
-
-cd $(dirname $0) ; CWD=$(pwd)
-
-PKGNAM=qtwebkit
-VERSION=$(ls qtwebkit-*.tar.?z* | rev | cut -f 3- -d . | cut -f 1 -d - | rev)
-BUILD=${BUILD:-1}
-
-NUMJOBS=${NUMJOBS:--j7}
-
-# Automatically determine the architecture we're building on:
-MARCH=$( uname -m )
-if [ -z "$ARCH" ]; then
- case "$MARCH" in
- i?86) export ARCH=i586 ;;
- armv7hl) export ARCH=$MARCH ;;
- arm*) export ARCH=arm ;;
- # Unless $ARCH is already set, use uname -m for all other archs:
- *) export ARCH=$MARCH ;;
- esac
-fi
-
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686 -std=gnu++98 -fpermissive -fno-delete-null-pointer-checks"
- LIBDIRSUFFIX=""
- WEBKITFLAGS="--no-force-sse2"
-elif [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686 -std=gnu++98 -fpermissive -fno-delete-null-pointer-checks"
- LIBDIRSUFFIX=""
- WEBKITFLAGS="--no-force-sse2"
-elif [ "$ARCH" = "s390" ]; then
- SLKCFLAGS="-O2 -std=gnu++98 -fpermissive -fno-delete-null-pointer-checks"
- LIBDIRSUFFIX=""
- WEBKITFLAGS="--no-force-sse2"
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC -std=gnu++98 -fpermissive -fno-delete-null-pointer-checks"
- LIBDIRSUFFIX="64"
- WEBKITFLAGS=""
-elif [ "$ARCH" = "armv7hl" ]; then
- # To prevent "qatomic_armv6.h error: output number 2 not directly addressable"
- # More permanent solution is to patch gcc:
- # http://bazaar.launchpad.net/~linaro-toolchain-dev/gcc-linaro/4.6/revision/106731
- SLKCFLAGS="-O2 -march=armv7-a -mfpu=vfpv3-d16 -fno-strict-volatile-bitfields -std=gnu++98 -fpermissive -fno-delete-null-pointer-checks"
- LIBDIRSUFFIX=""
- WEBKITFLAGS="--no-force-sse2"
-else
- SLKCFLAGS="-O2 -std=gnu++98 -fpermissive -fno-delete-null-pointer-checks"
- LIBDIRSUFFIX=""
- WEBKITFLAGS="--no-force-sse2"
-fi
-
-case "$ARCH" in
- arm*) TARGET=$ARCH-slackware-linux-gnueabi ;;
- *) TARGET=$ARCH-slackware-linux ;;
-esac
-
-TMP=${TMP:-/tmp}
-PKG=$TMP/package-${PKGNAM}
-
-rm -rf $PKG
-mkdir -p $TMP $PKG
-cd $TMP
-rm -rf qtwebkit-$VERSION
-tar xvf $CWD/qtwebkit-$VERSION.tar.xz
-cd qtwebkit-$VERSION || exit 1
-
-# Patch to fix compiling with gcc5:
-zcat $CWD/qtwebkit.putByIndexBeyondVectorLengthWithArrayStorage.diff.gz | patch -p1 --verbose || exit 1
-
-chown -R root:root .
-find . \
- \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
- -exec chmod 755 {} \+ -o \
- \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
- -exec chmod 644 {} \+
-
-QTDIR="/usr/lib$LIBDIRSUFFIX/qt" \
-Tools/Scripts/build-webkit \
- --qt \
- --prefix=/usr/lib${LIBDIRSUFFIX}/qt \
- --release \
- --no-webkit2 \
- --makeargs="$NUMJOBS" \
- --qmakearg="CONFIG+=production_build QMAKE_CFLAGS=\"$SLKCFLAGS\" QMAKE_CXXFLAGS=\"$SLKCFLAGS\"" \
- $WEBKITFLAGS || exit 1
-
-# To add support for WebP images add this to --qmakearg
-# DEFINES+=HAVE_LIBWEBP=1
-
-make INSTALL_ROOT=$PKG -C WebKitBuild/Release install || exit 1
-
-# libjscore is used internally. Prevent a false dependency on this in the .pc files:
-sed -i "s,-ljscore,,g" $PKG/usr/lib${LIBDIRSUFFIX}/qt/lib/pkgconfig/*.pc
-sed -i "s,-L../JavaScriptCore/release,,g" $PKG/usr/lib${LIBDIRSUFFIX}/qt/lib/pkgconfig/*.pc
-
-# libwebcore is used internally. Prevent a false dependency on this in the .pc files:
-sed -i \
- -e "s#-L/usr/lib${LIBDIRSUFFIX}/qt/lib -L../../WebCore/release -L../../JavaScriptCore/release -L/usr/X11R6/lib$LIBDIRSUFFIX -lwebcore##g" \
- -e "s#-L/usr/lib${LIBDIRSUFFIX}/qt/lib -L../../WebCore/release -L../../JavaScriptCore/release -L/usr/X11R6/lib -lwebcore##g" \
- -e "s#-L$TMP/qtwebkit-$VERSION/WebKitBuild/Release/Source/WebKit/release##g" \
- -e "s#-L$TMP/qtwebkit-$VERSION/WebKitBuild/Release/Source/WebCore/release##g" \
- -e "s#-L$TMP/qtwebkit-$VERSION/WebKitBuild/Release/Source/ThirdParty/ANGLE/release##g" \
- -e "s#-L$TMP/qtwebkit-$VERSION/WebKitBuild/Release/Source/JavaScriptCore/release##g" \
- -e "s#-L$TMP/qtwebkit-$VERSION/WebKitBuild/Release/Source/WTF/release##g" \
- -e "s# -lwebcore##g" \
- $PKG/usr/lib${LIBDIRSUFFIX}/qt/lib/pkgconfig/QtWebKit.pc
-
-# Link the shared libraries into /usr/lib:
-( cd $PKG/usr/lib${LIBDIRSUFFIX}
- for file in qt/lib/*.so* ; do
- ln -sf $file .
- done
-)
-
-find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
-
-mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/pkgconfig
-( cd $PKG/usr/lib${LIBDIRSUFFIX}/qt/lib/pkgconfig
- for file in *.pc ; do
- ( cd $PKG/usr/lib${LIBDIRSUFFIX}/pkgconfig ; ln -sf /usr/lib${LIBDIRSUFFIX}/qt/lib/pkgconfig/$file . )
- done
-)
-
-# Add a documentation directory:
-mkdir -p $PKG/usr/doc/$PKGNAM-$VERSION
-cp -a ChangeLog $PKG/usr/doc/$PKGNAM-$VERSION
-
-# If there's a ChangeLog, installing at least part of the recent history
-# is useful, but don't let it get totally out of control:
-if [ -r ChangeLog ]; then
- DOCSDIR=$(echo $PKG/usr/doc/${PKGNAM}-$VERSION)
- cat ChangeLog | head -n 1000 > $DOCSDIR/ChangeLog
- touch -r ChangeLog $DOCSDIR/ChangeLog
-fi
-
-mkdir -p $PKG/install
-zcat $CWD/doinst.sh.gz > $PKG/install/doinst.sh
-cat $CWD/slack-desc > $PKG/install/slack-desc
-
-cd $PKG
-/sbin/makepkg -l y -c n $TMP/$PKGNAM-$VERSION-$ARCH-$BUILD.txz
-
diff --git a/source/l/qt/qtwebkit/qtwebkit.putByIndexBeyondVectorLengthWithArrayStorage.diff b/source/l/qt/qtwebkit/qtwebkit.putByIndexBeyondVectorLengthWithArrayStorage.diff
deleted file mode 100644
index 94696b769..000000000
--- a/source/l/qt/qtwebkit/qtwebkit.putByIndexBeyondVectorLengthWithArrayStorage.diff
+++ /dev/null
@@ -1,13 +0,0 @@
---- ./Source/JavaScriptCore/runtime/JSObject.cpp.orig 2014-09-24 06:42:05.000000000 -0500
-+++ ./Source/JavaScriptCore/runtime/JSObject.cpp 2015-11-18 22:41:05.673463626 -0600
-@@ -1922,6 +1922,10 @@
- }
- }
-
-+template void JSObject::putByIndexBeyondVectorLengthWithoutAttributes<Int32Shape>(ExecState* exec, unsigned i, JSValue value);
-+template void JSObject::putByIndexBeyondVectorLengthWithoutAttributes<DoubleShape>(ExecState* exec, unsigned i, JSValue value);
-+template void JSObject::putByIndexBeyondVectorLengthWithoutAttributes<ContiguousShape>(ExecState* exec, unsigned i, JSValue value);
-+
- void JSObject::putByIndexBeyondVectorLengthWithArrayStorage(ExecState* exec, unsigned i, JSValue value, bool shouldThrow, ArrayStorage* storage)
- {
- JSGlobalData& globalData = exec->globalData();
diff --git a/source/l/qt/qtwebkit/qtwebkit.url b/source/l/qt/qtwebkit/qtwebkit.url
deleted file mode 100644
index 4e832e125..000000000
--- a/source/l/qt/qtwebkit/qtwebkit.url
+++ /dev/null
@@ -1 +0,0 @@
-http://download.kde.org/stable/qtwebkit-2.3/2.3.4/src/qtwebkit-2.3.4.tar.gz
diff --git a/source/l/qt/qtwebkit/slack-desc b/source/l/qt/qtwebkit/slack-desc
deleted file mode 100644
index 2971354cf..000000000
--- a/source/l/qt/qtwebkit/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
-# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':'.
-
- |-----handy-ruler------------------------------------------------------|
-qtwebkit: QtWebKit (Qt bindings for the WebKit browser engine)
-qtwebkit:
-qtwebkit: WebKit is an open source web browser engine. WebKit's HTML and
-qtwebkit: JavaScript code began as a branch of the KHTML and KJS libraries from
-qtwebkit: KDE. As part of KDE framework KHTML was based on Qt but during their
-qtwebkit: porting efforts Apple's engineers made WebKit toolkit independent.
-qtwebkit: QtWebKit is a project aiming at porting this fabulous engine back
-qtwebkit: to Qt.
-qtwebkit:
-qtwebkit: Homepage: http://www.qt.io/
-qtwebkit:
diff --git a/source/l/qt/slack-desc b/source/l/qt/slack-desc
deleted file mode 100644
index f8051460f..000000000
--- a/source/l/qt/slack-desc
+++ /dev/null
@@ -1,19 +0,0 @@
-# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
-# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
-# customary to leave one space after the ':'.
-
- |-----handy-ruler------------------------------------------------------|
-qt: qt (a C++ graphical user interface toolkit)
-qt:
-qt: Qt is a complete and well-developed object-oriented framework for
-qt: developing graphical user interface (GUI) applications using C++.
-qt:
-qt: Homepage: http://www.qt.io/
-qt:
-qt:
-qt:
-qt:
-qt: