CMake: Fix X11 and xkb library usage in the platform projects
This is a prerequisite for building the bundled 3rd party libraries. Because the feature evaluation will be moved into src/CMakeLists.txt, some of the X11 packages were found in the src dir, and then a second time inside the x11-related projects. These qt_find_package calls in the x11 related projects tried to promote the imported targets to global, which failed, because they were created in a different directory scope. To avoid this, the special case qt_find_package calls are removed from the nested projects. Also, fix the mapping of some of the x11 libraries to be correct - xkbcommon_x11 was incorrectly mapped to XKB::XKB instead of the xkb common x11 library - xlib was mapped to xcb, whereas X11 is the correct CMake target Change-Id: I30781b2ecbdd478c98419b14baa0492037e49c61 Reviewed-by: Leander Beernaert <leander.beernaert@qt.io> Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>bb10
parent
8ab59fd8b3
commit
160184d6a5
|
|
@ -36,7 +36,7 @@ qt_extend_target(EglSupport CONDITION QT_FEATURE_egl_x11
|
|||
SOURCES
|
||||
qxlibeglintegration.cpp qxlibeglintegration_p.h
|
||||
LIBRARIES
|
||||
X11::XCB
|
||||
X11::X11
|
||||
)
|
||||
|
||||
qt_extend_target(EglSupport CONDITION NOT QT_FEATURE_egl_x11
|
||||
|
|
|
|||
|
|
@ -39,7 +39,7 @@ qt_extend_target(EglSupport CONDITION QT_FEATURE_egl_x11
|
|||
SOURCES
|
||||
qxlibeglintegration.cpp qxlibeglintegration_p.h
|
||||
LIBRARIES
|
||||
X11::XCB
|
||||
X11::X11
|
||||
)
|
||||
|
||||
qt_extend_target(EglSupport CONDITION NOT QT_FEATURE_egl_x11
|
||||
|
|
|
|||
|
|
@ -14,7 +14,7 @@ qt_add_module(GlxSupport
|
|||
PUBLIC_LIBRARIES
|
||||
Qt::CorePrivate
|
||||
Qt::GuiPrivate
|
||||
X11::XCB
|
||||
X11::X11
|
||||
)
|
||||
|
||||
#### Keys ignored in scope 1:.:.:glxconvenience.pro:<TRUE>:
|
||||
|
|
|
|||
|
|
@ -16,7 +16,7 @@ qt_add_module(GlxSupport
|
|||
PUBLIC_LIBRARIES
|
||||
Qt::CorePrivate
|
||||
Qt::GuiPrivate
|
||||
X11::X11 # special case
|
||||
X11::X11
|
||||
)
|
||||
|
||||
#### Keys ignored in scope 1:.:.:glxconvenience.pro:<TRUE>:
|
||||
|
|
|
|||
|
|
@ -20,6 +20,7 @@ qt_add_plugin(QEglFSX11IntegrationPlugin
|
|||
Qt::EglFSDeviceIntegrationPrivate
|
||||
Qt::Gui
|
||||
Qt::GuiPrivate
|
||||
X11::X11
|
||||
X11::XCB
|
||||
XCB::XCB
|
||||
)
|
||||
|
|
|
|||
|
|
@ -39,6 +39,7 @@ qt_add_module(XcbQpa
|
|||
INCLUDE_DIRECTORIES
|
||||
gl_integrations
|
||||
PUBLIC_LIBRARIES
|
||||
PkgConfig::XKB_COMMON_X11
|
||||
Qt::CorePrivate
|
||||
Qt::EdidSupportPrivate
|
||||
Qt::FontDatabaseSupportPrivate
|
||||
|
|
|
|||
|
|
@ -1,27 +1,5 @@
|
|||
# Generated from xcb.pro.
|
||||
|
||||
# begin special case:
|
||||
qt_find_package(X11_XCB
|
||||
PROVIDED_TARGETS
|
||||
X11::XCB
|
||||
)
|
||||
qt_find_package(X11
|
||||
PROVIDED_TARGETS
|
||||
X11::X11
|
||||
)
|
||||
qt_find_package(XCB)
|
||||
qt_find_package(XKB)
|
||||
qt_find_package(PkgConfig)
|
||||
qt_find_package(WrapFreetype)
|
||||
qt_find_package(GLIB2
|
||||
PROVIDED_TARGETS
|
||||
GLIB2::GLIB2
|
||||
)
|
||||
qt_find_package(XRender PROVIDED_TARGETS PkgConfig::XRender)
|
||||
qt_find_package(XKB_COMMON_X11 PROVIDED_TARGETS PkgConfig::XKB_COMMON_X11)
|
||||
|
||||
# end special case:
|
||||
|
||||
#####################################################################
|
||||
## XcbQpa Module:
|
||||
#####################################################################
|
||||
|
|
@ -61,6 +39,7 @@ qt_add_module(XcbQpa
|
|||
INCLUDE_DIRECTORIES
|
||||
gl_integrations
|
||||
PUBLIC_LIBRARIES
|
||||
PkgConfig::XKB_COMMON_X11
|
||||
Qt::CorePrivate
|
||||
Qt::EdidSupportPrivate
|
||||
Qt::FontDatabaseSupportPrivate
|
||||
|
|
@ -68,7 +47,6 @@ qt_add_module(XcbQpa
|
|||
Qt::ServiceSupportPrivate
|
||||
Qt::ThemeSupportPrivate
|
||||
Qt::XkbCommonSupportPrivate
|
||||
PkgConfig::XKB_COMMON_X11 # special case
|
||||
XCB::ICCCM
|
||||
XCB::IMAGE
|
||||
XCB::KEYSYMS
|
||||
|
|
@ -120,7 +98,12 @@ qt_extend_target(XcbQpa CONDITION QT_FEATURE_draganddrop
|
|||
qt_extend_target(XcbQpa CONDITION QT_FEATURE_xcb_xlib
|
||||
PUBLIC_LIBRARIES
|
||||
X11::XCB
|
||||
X11::X11 # special case
|
||||
# special case begin
|
||||
# 'QMAKE_USE += xcb_xlib' in qmake implies also += xlib (aka X11)
|
||||
# due to "use": "xcb xlib" in src/gui/configure.json.
|
||||
# That's not yet handled by the conversion scripts unfortunately.
|
||||
X11::X11
|
||||
# special case end
|
||||
)
|
||||
|
||||
qt_extend_target(XcbQpa CONDITION QT_FEATURE_xcb_sm
|
||||
|
|
|
|||
|
|
@ -528,9 +528,9 @@ _library_map = [
|
|||
LibraryMapping("xcb_xlib", "X11_XCB", "X11::XCB"),
|
||||
LibraryMapping("xcomposite", "XComposite", "PkgConfig::XComposite"),
|
||||
LibraryMapping("xkbcommon_evdev", "XKB", "XKB::XKB", extra=["0.4.1"]), # see also xkbcommon
|
||||
LibraryMapping("xkbcommon_x11", "XKB", "XKB::XKB", extra=["0.4.1"]), # see also xkbcommon
|
||||
LibraryMapping("xkbcommon_x11", "XKB_COMMON_X11", "PkgConfig::XKB_COMMON_X11", extra=["0.4.1"]),
|
||||
LibraryMapping("xkbcommon", "XKB", "XKB::XKB", extra=["0.4.1"]),
|
||||
LibraryMapping("xlib", "X11", "X11::XCB"), # FIXME: Is this correct?
|
||||
LibraryMapping("xlib", "X11", "X11::X11"),
|
||||
LibraryMapping("xrender", "XRender", "PkgConfig::XRender"),
|
||||
LibraryMapping("zlib", "ZLIB", "ZLIB::ZLIB", extra=["REQUIRED"]),
|
||||
LibraryMapping("zstd", "ZSTD", "ZSTD::ZSTD"),
|
||||
|
|
|
|||
Loading…
Reference in New Issue