Go to file
Gatis Paeglis 60588e1a5d 3rdparty: remove xcb libs and bump minimal required version to 1.11
With libxcb 1.11 as minimal required version we can:

(a) (Maybe) Enable threaded GL for MESA, see QTBUG-67277.

(b) Avoid performance issues described in QTBUG-46017. Bundled xcb libs don't
    contain the more modern SHM fd passing APIs. The official binaries use
    "-qt-xcb", therefore we were shipping with the performance fix #ifdef-ed out.

(c) Make xcb-xkb a mandatory dependency avoiding issues described in QTBUG-30911.
    Issues that appear when Qt was configure with "-no-xkb -xcb-xlib", but
    X server has the XKB extension.

(d) Drop all, but xcb-xinput sources from src/3rdparty/xcb/, for which
    we need "xcb-xinput >= 1.12". This way we can reduce maintenance
    work. The xcb libraries were origianlly bundled because of lack of availability
    on supported distributions. This is not the case anymore:

    CI for Qt 5.13 has:

      Ubuntu 18.04 - libxcb 1.13
      RHEL 7.4 - libxcb 1.13
      openSUSE 15.0 - libxcb 1.13

    CI for Qt 5.12 has:

      Ubuntu 16.04 - libxcb 1.11
      RHEL 7.4 - libxcb 1.13
      openSUSE 42.3 - libxcb 1.11
      RHEL 6.x - not relevant because it was dropped from supported platforms.

Why 1.11 (released on Aug, 2014), but not 1.13 (released on March 2018)?

Based on what we have in CI for 5.13 and 5.14 we could update to 1.13,
but it means that Qt would require a very recent version of 3rd party
dependency.

[ChangeLog][Configure][X11] The minimal required version of libxcb now is 1.11.

[ChangeLog][Third-Party Code][X11] Removed all bundled XCB libs, with
the exception of xcb-xinput, which is not available on systems with
libxcb 1.11.

[ChangeLog][Configure][X11] Removed -qt-xcb, -system-xcb, -xkb, -xcb-xinput switches.

[ChangeLog][Platform Specific Changes][X11] XKB and XInput2 now are mandatory
dependencies for XCB plugin. XCB-XKB is a part of libxcb 1.11 releases.
XCB-XInput is not part of libxcb 1.11 releases, but Qt builders can use
-bundled-xcb-xinput switch.

Fixes: QTBUG-73862
Fixes: QTBUG-73888
Task-number: QTBUG-67277
Task-number: QTBUG-30939
Change-Id: I4c2bd2a0e667220d32fd1fbfa1419c844f17fcce
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2019-08-27 01:06:40 +02:00
bin syncqt: Fix to work correctly when the line endings are LF in Win-msys 2019-08-15 16:16:06 +09:00
config.tests Say hello to Android multi arch build in one go 2019-08-26 12:59:15 +03:00
dist Merge remote-tracking branch 'origin/5.12' into dev 2019-06-25 13:04:27 +02:00
doc Introduce Q_NAMESPACE_EXPORT 2019-06-28 06:47:29 +02:00
examples Remove usages of deprecated APIs of QWheelEvent 2019-08-23 21:51:43 +02:00
lib
mkspecs Say hello to Android multi arch build in one go 2019-08-26 12:59:15 +03:00
qmake Improve readability of commands in VS project files 2019-08-22 18:15:08 +02:00
src 3rdparty: remove xcb libs and bump minimal required version to 1.11 2019-08-27 01:06:40 +02:00
tests Long live QColorConstants! 2019-08-25 16:31:32 +02:00
util Extract a large format string as a module constant value 2019-08-08 18:04:05 +02:00
.gitattributes
.gitignore qfloat16: Check in the tables to Git 2019-06-03 10:42:53 -07:00
.qmake.conf Require opt-out for using QLinkedList 2019-08-07 20:09:10 +00:00
.tag
config_help.txt 3rdparty: remove xcb libs and bump minimal required version to 1.11 2019-08-27 01:06:40 +02:00
configure Fix typo in configure script 2019-07-24 10:42:16 +09:00
configure.bat Configure: simplify logic 2019-03-14 12:13:58 +00:00
configure.json Merge remote-tracking branch 'origin/5.13' into dev 2019-07-17 10:44:21 +02:00
configure.pri Merge remote-tracking branch 'origin/5.12' into 5.13 2019-08-12 13:23:11 +02:00
header.BSD Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.COMM Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.FDL Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.GPL Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.GPL-EXCEPT Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.LGPL Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.LGPL3 Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.LGPL3-COMM Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.LGPL-NOGPL2 Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.LGPL-ONLY Use placeholder for year in header.* files 2018-04-16 11:02:22 +00:00
header.MIT qsimd: add support for new x86 CPU features 2018-05-05 06:20:07 +00:00
INSTALL INSTALL: Remove outdated reference to Windows CE 2019-02-13 13:01:57 +00:00
LICENSE.FDL
LICENSE.GPL2 Add new license header templates and license files 2016-01-14 20:43:46 +00:00
LICENSE.GPL3 Add new license header templates and license files 2016-01-14 20:43:46 +00:00
LICENSE.GPL3-EXCEPT Add new license header templates and license files 2016-01-14 20:43:46 +00:00
LICENSE.LGPL3 Add new license header templates and license files 2016-01-14 20:43:46 +00:00
LICENSE.LGPLv3 Remove LICENSE.GPLv3, LICENSE.LGPLv21, LGPL_EXCEPTION.txt 2018-04-16 11:02:14 +00:00
LICENSE.QT-LICENSE-AGREEMENT-4.0 Replace commercial preview license with Qt License Agreement 4.0 2018-06-21 11:39:15 +00:00
qtbase.pro nuke configure -host-option 2016-12-13 18:55:59 +00:00
sync.profile CMake: Add support for auto-importing plugins in CMake 2019-08-12 18:23:58 +02:00