kwin/plugins/platforms/drm/CMakeLists.txt
Oleg Chernovskiy 4d46edd7ba
GBM remote access support for KWin
Summary:
Implements a KWayland protocol to pass GBM fd from KWin to KRfb and
addictions to relevant projects from both sides.

Note that this patch does not affect default behaviour of mentioned projects. It can be used
only with KWIN_REMOTE=1 in env from KWin side and with preferredFrameBufferPlugin=gbm in krfbrc from
KRfb side. In all other aspects app behaviour remains unchanged.

Test Plan: Launched KWin in Wayland mode, launched KRfb in it, launched KRDC on a laptop, connected in read-only mode, observed a correctly retrieved desktop with Krfb window

Reviewers: graesslin, davidedmundson, romangg, #kwin

Reviewed By: davidedmundson, romangg, #kwin

Subscribers: kossebau, jgrulich, romangg, ngraham, alexeymin, aacid, kwin, #kwin, davidedmundson, plasma-devel

Tags: #plasma_on_wayland, #kwin

Maniphest Tasks: T5653, T7785

Differential Revision: https://phabricator.kde.org/D1230
2018-03-25 20:18:47 +03:00

38 lines
893 B
CMake

set(DRM_SOURCES
drm_backend.cpp
drm_object.cpp
drm_object_connector.cpp
drm_object_crtc.cpp
drm_object_plane.cpp
drm_output.cpp
drm_buffer.cpp
drm_inputeventfilter.cpp
logging.cpp
scene_qpainter_drm_backend.cpp
screens_drm.cpp
)
if(HAVE_GBM)
set(DRM_SOURCES ${DRM_SOURCES}
egl_gbm_backend.cpp
drm_buffer_gbm.cpp
gbm_surface.cpp
remoteaccess_manager.cpp
)
endif()
include_directories(${CMAKE_SOURCE_DIR}/platformsupport/scenes/opengl)
add_library(KWinWaylandDrmBackend MODULE ${DRM_SOURCES})
target_link_libraries(KWinWaylandDrmBackend kwin Libdrm::Libdrm SceneQPainterBackend SceneOpenGLBackend)
if(HAVE_GBM)
target_link_libraries(KWinWaylandDrmBackend gbm::gbm)
endif()
install(
TARGETS
KWinWaylandDrmBackend
DESTINATION
${PLUGIN_INSTALL_DIR}/org.kde.kwin.waylandbackends/
)