KWin/Dependencies

From KDE Community Wiki

Core

Internal linking: kwineffects, kwinglutils, libkdecorations, effects-builtins

Lib Tier Mandatory Build option Comment
X11_X11 XLib REQUIRED - -
Xcursor XLib REQUIRED - -
Xext XLib REQUIRED - Required as workaround to broken sync extension in XCB
ICE XLib REQUIRED - Required for SessionManagement - could change
SM XLib REQUIRED - Required for SessionManagement - could change
XF86VM XLIB OPTIONAL - Used if present
XCB XCB REQUIRED - -
XFIXES XCB REQUIRED - -
DAMAGE XCB REQUIRED - -
COMPOSITE XCB REQUIRED - -
SHAPE XCB REQUIRED - -
SYNC XCB REQUIRED - -
RENDER XCB REQUIRED - -
RANDR XCB REQUIRED - -
KEYSYMS XCB REQUIRED - -
SHM XCB OPTIONAL - Used in Wayland build
XTEST XCB OPTIONAL - Used in Wayland build
OpenGL - OPTIONAL - Either OpenGL or OpenGL ES is required
OpenGLES - OPTIONAL - Either OpenGL or OpenGL ES is required
EGL - OPTIONAL - Required for OpenGL ES, additional functionality with OpenGL
DL - OPTIONAL - Used if present if compiled against OpenGL
WL_CLIENT Wayland OPTIONAL - Used if Wayland and EGL present
WL_EGL Wayland OPTIONAL - Used if Wayland and EGL present
Qt5Concurrent - REQUIRED - -
Qt5DBus - REQUIRED - -
Qt5Quick - REQUIRED - -
Qt5X11Extras - REQUIRED - -
Qt5Script - REQUIRED - -
KConfigCore 1 REQUIRED - -
KCoreAddons 1 REQUIRED - -
KGlobalAccel 1 REQUIRED - -
KCrash 2 REQUIRED - -
KI18n 1 REQUIRED - -
KNotifications 2 REQUIRED - -
KService 3 REQUIRED - -
Plasma 3 REQUIRED - Could move to Plasma integration
KConfigWidgets 3 REQUIRED - -
KWindowSystem 1 REQUIRED - -
KActivities 1 OPTIONAL KWIN_BUILD_ACTIVITIES -

killer

External tool invoked by KWin core

Lib Tier Mandatory Build option Comment
Qt5Widgets - REQUIRED - -
Qt5X11Extras - REQUIRED - -
KAuth 2 REQUIRED - -
KI18n 1 REQUIRED - -
KWidgetsAddons 1 REQUIRED - -

LibKDecorations

Lib Tier Mandatory Build option Comment
Qt5Widgets - REQUIRED - -
KConfigCore 1 REQUIRED - -
KI18n 1 REQUIRED - -
KService 3 REQUIRED - -

LibKWinEffects

effects

Lib Tier Mandatory Build option Comment
XCB XCB REQUIRED - -
XFIXES XCB REQUIRED - -
RENDER XCB REQUIRED - -
Qt5DBus - REQUIRED - For effect configs, should move into dedicated library
Qt5Widgets - REQUIRED - Needed for QGraphicsScale and QGraphicsRotation
Qt5X11Extras - REQUIRED - -
KConfigCore 1 REQUIRED - -

kwinglutils

Lib Tier Mandatory Build option Comment
XCB XCB REQUIRED - needed because kwinglobals is included
OpenGL - OPTIONAL - Either OpenGL or OpenGL ES is required
OpenGLES - OPTIONAL - Either OpenGL or OpenGL ES is required
EGL - OPTIONAL - Required for OpenGL ES, additional functionality with OpenGL
DL - OPTIONAL - Used if present if compiled against OpenGL
Qt5DBus - REQUIRED - Communication with color correction
Qt5X11Extras - REQUIRED - needed because kwinglobals is included

Effects

effects-builtins

Internal linking: kwineffects, kwinglutils

Lib Tier Mandatory Build option Comment
X11_X11 XLib REQUIRED - -
Xcursor XLib REQUIRED - -
XCB XCB REQUIRED - -
XFIXES XCB REQUIRED - -
IMAGE XCB REQUIRED - -
RENDER XCB OPTIONAL KWIN_BUILD_XRENDER_COMPOSITING -
Qt5Concurrent - REQUIRED - -
Qt5DBus - REQUIRED - -
Qt5Quick - REQUIRED - -
Qt5X11Extras - REQUIRED - -
KConfigCore 1 REQUIRED - -
KGlobalAccel 1 REQUIRED - -
KConfigWidgets 3 REQUIRED - -
KI18n 1 REQUIRED - -
KService 3 REQUIRED - -
KWindowSystem 1 REQUIRED - -
Plasma 3 REQUIRED - Could move to Plasma integration
KIconThemes 3 REQUIRED - -

effects configs

Internal Linking: kwineffects

Lib Tier Mandatory Build option Comment
Qt5Widgets - REQUIRED - -
KIOWidgets 3 REQUIRED - -
KI18n 1 REQUIRED - -
KCoreAddons 1 REQUIRED - -
KCompletion 2 REQUIRED - -
KConfigWidgets 3 REQUIRED - -
xmlgui 3 REQUIRED - -