kwin/plugins/platforms/x11/standalone/CMakeLists.txt
Vlad Zahorodnii ef6fa25d90 platforms/x11: Split out the EGL for X11 backend
EGL for X and EGL for Wayland backends are quite different. The main
motivation behind this change is to prepare the EGL backends for
monitoring vblank events. Things work quite differently depending on
if the EGL backend renders onto a toplevel window or overlay window.
2021-01-06 16:59:29 +00:00

51 lines
1.5 KiB
CMake

set(X11PLATFORM_SOURCES
edge.cpp
effects_mouse_interception_x11_filter.cpp
effects_x11.cpp
eglbackend.cpp
logging.cpp
non_composited_outline.cpp
overlaywindow_x11.cpp
screenedges_filter.cpp
windowselector.cpp
x11_decoration_renderer.cpp
x11_output.cpp
x11_platform.cpp
x11cursor.cpp
x11placeholderoutput.cpp
xfixes_cursor_event_filter.cpp
)
if (X11_Xinput_FOUND)
set(X11PLATFORM_SOURCES ${X11PLATFORM_SOURCES} xinputintegration.cpp)
endif()
if (HAVE_EPOXY_GLX)
set(X11PLATFORM_SOURCES ${X11PLATFORM_SOURCES} glxbackend.cpp glx_context_attribute_builder.cpp)
endif()
include_directories(${CMAKE_SOURCE_DIR}/platformsupport/scenes/opengl)
include_directories(${CMAKE_SOURCE_DIR}/platformsupport/scenes/xrender)
add_library(KWinX11Platform MODULE ${X11PLATFORM_SOURCES})
set_target_properties(KWinX11Platform PROPERTIES LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin/org.kde.kwin.platforms/")
target_link_libraries(KWinX11Platform eglx11common kwin kwinxrenderutils SceneOpenGLBackend Qt5::X11Extras XCB::CURSOR KF5::Crash )
if (X11_Xinput_FOUND)
target_link_libraries(KWinX11Platform ${X11_Xinput_LIB})
endif()
if (KWIN_BUILD_XRENDER_COMPOSITING)
target_sources(KWinX11Platform PRIVATE x11xrenderbackend.cpp)
target_link_libraries(KWinX11Platform SceneXRenderBackend)
endif()
if (HAVE_DL_LIBRARY)
target_link_libraries(KWinX11Platform ${DL_LIBRARY})
endif()
install(
TARGETS
KWinX11Platform
DESTINATION
${PLUGIN_INSTALL_DIR}/org.kde.kwin.platforms/
)