static_fixes.patch raw
1 commit 203148b1ed6d8f4bad8030ef64f0bc4083309010
2 Author: fanquake <fanquake@gmail.com>
3 Date: Sat Oct 4 01:00:25 2025 +0100
4
5 static fixes
6
7 See: https://qt-project.atlassian.net/browse/QTBUG-86287
8 See: https://qt-project.atlassian.net/browse/QTBUG-137004
9
10 diff --git a/cmake/3rdparty/extra-cmake-modules/find-modules/FindXCB.cmake b/cmake/3rdparty/extra-cmake-modules/find-modules/FindXCB.cmake
11 index 26b9bf89633..0c546d09a8b 100644
12 --- a/qtbase/cmake/3rdparty/extra-cmake-modules/find-modules/FindXCB.cmake
13 +++ b/qtbase/cmake/3rdparty/extra-cmake-modules/find-modules/FindXCB.cmake
14 @@ -145,7 +145,7 @@ endforeach()
15 set(XCB_XCB_component_deps)
16 set(XCB_COMPOSITE_component_deps XCB XFIXES)
17 set(XCB_DAMAGE_component_deps XCB XFIXES)
18 -set(XCB_IMAGE_component_deps XCB SHM)
19 +set(XCB_IMAGE_component_deps XCB SHM AUX)
20 set(XCB_RENDERUTIL_component_deps XCB RENDER)
21 set(XCB_XFIXES_component_deps XCB RENDER SHAPE)
22 set(XCB_XVMC_component_deps XCB XV)
23 diff --git a/src/gui/configure.cmake b/src/gui/configure.cmake
24 index 99c517e3581..a2e644f77d9 100644
25 --- a/qtbase/src/gui/configure.cmake
26 +++ b/qtbase/src/gui/configure.cmake
27 @@ -89,10 +89,14 @@ if((X11_SUPPORTED) OR QT_FIND_ALL_PACKAGES_ALWAYS)
28 qt_find_package(XCB 0.3.9 COMPONENTS ICCCM PROVIDED_TARGETS XCB::ICCCM MODULE_NAME gui QMAKE_LIB xcb_icccm)
29 endif()
30 qt_add_qmake_lib_dependency(xcb_icccm xcb)
31 +if((X11_SUPPORTED) OR QT_FIND_ALL_PACKAGES_ALWAYS)
32 + qt_find_package(XCB 0.3.8 COMPONENTS UTIL PROVIDED_TARGETS XCB::UTIL MODULE_NAME gui QMAKE_LIB xcb_util)
33 +endif()
34 +qt_add_qmake_lib_dependency(xcb_util xcb)
35 if((X11_SUPPORTED) OR QT_FIND_ALL_PACKAGES_ALWAYS)
36 qt_find_package(XCB 0.3.9 COMPONENTS IMAGE PROVIDED_TARGETS XCB::IMAGE MODULE_NAME gui QMAKE_LIB xcb_image)
37 endif()
38 -qt_add_qmake_lib_dependency(xcb_image xcb_shm xcb)
39 +qt_add_qmake_lib_dependency(xcb_image xcb_shm xcb_util xcb)
40 if((X11_SUPPORTED) OR QT_FIND_ALL_PACKAGES_ALWAYS)
41 qt_find_package(XCB 0.3.9 COMPONENTS KEYSYMS PROVIDED_TARGETS XCB::KEYSYMS MODULE_NAME gui QMAKE_LIB xcb_keysyms)
42 endif()
43 @@ -515,6 +519,7 @@ qt_config_compile_test(xcb_syslibs
44 LIBRARIES
45 XCB::CURSOR
46 XCB::ICCCM
47 + XCB::UTIL
48 XCB::IMAGE
49 XCB::KEYSYMS
50 XCB::RANDR
51 @@ -530,6 +535,7 @@ qt_config_compile_test(xcb_syslibs
52 "// xkb.h is using a variable called 'explicit', which is a reserved keyword in C++
53 #define explicit dont_use_cxx_explicit
54 #include <xcb/xcb.h>
55 +#include <xcb/xcb_util.h>
56 #include <xcb/xcb_image.h>
57 #include <xcb/xcb_keysyms.h>
58 #include <xcb/xcb_cursor.h>
59 diff --git a/src/plugins/platforms/xcb/CMakeLists.txt b/src/plugins/platforms/xcb/CMakeLists.txt
60 index e8fb442dd43..e964138115c 100644
61 --- a/qtbase/src/plugins/platforms/xcb/CMakeLists.txt
62 +++ b/qtbase/src/plugins/platforms/xcb/CMakeLists.txt
63 @@ -52,6 +52,7 @@ qt_internal_add_module(XcbQpaPrivate
64 Qt::GuiPrivate
65 XCB::CURSOR
66 XCB::ICCCM
67 + XCB::UTIL
68 XCB::IMAGE
69 XCB::KEYSYMS
70 XCB::RANDR
71 --- a/qtbase/src/gui/configure.cmake
72 +++ b/qtbase/src/gui/configure.cmake
73 @@ -531,6 +531,7 @@ qt_config_compile_test(xcb_syslibs
74 XCB::XFIXES
75 XCB::XKB
76 XCB::XCB
77 + X11::Xau
78 CODE
79 "// xkb.h is using a variable called 'explicit', which is a reserved keyword in C++
80 #define explicit dont_use_cxx_explicit
81