2007-04-29 17:35:43 +00:00
|
|
|
########### next target ###############
|
2014-05-07 11:54:36 +00:00
|
|
|
include(ECMSetupVersion)
|
|
|
|
|
2014-08-20 13:43:27 +00:00
|
|
|
ecm_setup_version(${PROJECT_VERSION}
|
2014-05-07 11:54:36 +00:00
|
|
|
VARIABLE_PREFIX KWINEFFECTS
|
|
|
|
VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/kwineffects_version.h"
|
|
|
|
PACKAGE_VERSION_FILE "${CMAKE_CURRENT_BINARY_DIR}/KWinEffectsConfigVersion.cmake"
|
2017-03-18 10:00:30 +00:00
|
|
|
SOVERSION 11
|
2014-05-07 11:54:36 +00:00
|
|
|
)
|
2007-04-29 17:35:43 +00:00
|
|
|
|
2014-03-16 14:31:23 +00:00
|
|
|
### xrenderutils lib ###
|
|
|
|
set(kwin_XRENDERUTILS_SRCS
|
|
|
|
kwinxrenderutils.cpp
|
2015-07-31 10:07:53 +00:00
|
|
|
logging.cpp
|
2014-03-16 14:31:23 +00:00
|
|
|
)
|
|
|
|
|
|
|
|
add_library(kwinxrenderutils SHARED ${kwin_XRENDERUTILS_SRCS})
|
2014-03-16 14:49:21 +00:00
|
|
|
generate_export_header(kwinxrenderutils EXPORT_FILE_NAME kwinxrenderutils_export.h)
|
2014-03-16 14:31:23 +00:00
|
|
|
target_link_libraries(kwinxrenderutils
|
|
|
|
PUBLIC
|
|
|
|
Qt5::Core
|
|
|
|
Qt5::Gui
|
|
|
|
XCB::XCB
|
|
|
|
XCB::XFIXES
|
|
|
|
XCB::RENDER
|
2015-08-31 13:47:01 +00:00
|
|
|
KF5::WaylandServer
|
2014-03-16 14:31:23 +00:00
|
|
|
)
|
|
|
|
|
2014-05-07 11:54:36 +00:00
|
|
|
set_target_properties(kwinxrenderutils PROPERTIES
|
|
|
|
VERSION ${KWINEFFECTS_VERSION_STRING}
|
|
|
|
SOVERSION ${KWINEFFECTS_SOVERSION}
|
|
|
|
)
|
2014-03-16 14:31:23 +00:00
|
|
|
set_target_properties(kwinxrenderutils PROPERTIES OUTPUT_NAME ${KWIN_NAME}xrenderutils)
|
|
|
|
|
|
|
|
install(TARGETS kwinxrenderutils EXPORT kdeworkspaceLibraryTargets ${INSTALL_TARGETS_DEFAULT_ARGS})
|
|
|
|
|
2007-04-29 17:35:43 +00:00
|
|
|
### effects lib ###
|
|
|
|
set(kwin_EFFECTSLIB_SRCS
|
|
|
|
kwineffects.cpp
|
2011-10-19 23:04:52 +00:00
|
|
|
anidata.cpp
|
|
|
|
kwinanimationeffect.cpp
|
2015-07-31 10:07:53 +00:00
|
|
|
logging.cpp
|
2007-04-29 17:35:43 +00:00
|
|
|
)
|
2008-04-10 23:15:44 +00:00
|
|
|
|
2013-02-25 11:05:36 +00:00
|
|
|
set(kwineffects_QT_LIBS
|
2013-08-20 07:10:18 +00:00
|
|
|
Qt5::DBus
|
|
|
|
Qt5::Widgets
|
2013-02-25 11:05:36 +00:00
|
|
|
)
|
|
|
|
|
|
|
|
set(kwineffects_KDE_LIBS
|
2013-12-11 20:41:47 +00:00
|
|
|
KF5::ConfigCore
|
2015-07-07 07:38:08 +00:00
|
|
|
KF5::CoreAddons
|
2014-03-18 13:38:00 +00:00
|
|
|
KF5::WindowSystem
|
2013-02-25 11:05:36 +00:00
|
|
|
)
|
|
|
|
|
|
|
|
set(kwineffects_XCB_LIBS
|
2014-02-25 14:48:39 +00:00
|
|
|
XCB::XCB
|
2011-08-13 14:38:57 +00:00
|
|
|
)
|
2013-02-25 11:05:36 +00:00
|
|
|
|
2013-11-15 12:37:47 +00:00
|
|
|
add_library(kwineffects SHARED ${kwin_EFFECTSLIB_SRCS})
|
2013-12-01 19:45:39 +00:00
|
|
|
generate_export_header(kwineffects EXPORT_FILE_NAME kwineffects_export.h)
|
2013-02-25 11:05:36 +00:00
|
|
|
target_link_libraries(kwineffects
|
2014-03-18 16:53:22 +00:00
|
|
|
PUBLIC
|
2013-02-25 11:05:36 +00:00
|
|
|
${kwineffects_QT_LIBS}
|
|
|
|
${kwineffects_KDE_LIBS}
|
|
|
|
${kwineffects_XCB_LIBS}
|
|
|
|
)
|
2014-03-16 14:31:23 +00:00
|
|
|
if( KWIN_HAVE_XRENDER_COMPOSITING )
|
|
|
|
target_link_libraries(kwineffects PRIVATE kwinxrenderutils XCB::XFIXES)
|
|
|
|
endif()
|
2014-05-07 11:54:36 +00:00
|
|
|
set_target_properties(kwineffects PROPERTIES
|
|
|
|
VERSION ${KWINEFFECTS_VERSION_STRING}
|
|
|
|
SOVERSION ${KWINEFFECTS_SOVERSION}
|
|
|
|
)
|
2012-03-16 07:37:09 +00:00
|
|
|
set_target_properties(kwineffects PROPERTIES OUTPUT_NAME ${KWIN_NAME}effects)
|
2008-04-10 23:15:44 +00:00
|
|
|
|
2008-12-09 21:27:30 +00:00
|
|
|
install(TARGETS kwineffects EXPORT kdeworkspaceLibraryTargets ${INSTALL_TARGETS_DEFAULT_ARGS})
|
2007-04-29 17:35:43 +00:00
|
|
|
|
2011-08-13 14:38:57 +00:00
|
|
|
# kwingl(es)utils library
|
|
|
|
set(kwin_GLUTILSLIB_SRCS
|
|
|
|
kwinglutils.cpp
|
|
|
|
kwingltexture.cpp
|
|
|
|
kwinglutils_funcs.cpp
|
|
|
|
kwinglplatform.cpp
|
2015-07-31 10:07:53 +00:00
|
|
|
logging.cpp
|
2011-08-13 14:38:57 +00:00
|
|
|
)
|
2011-07-17 14:15:07 +00:00
|
|
|
|
2011-08-13 14:38:57 +00:00
|
|
|
macro( KWIN4_ADD_GLUTILS_BACKEND name glinclude )
|
|
|
|
include_directories(${glinclude})
|
2013-11-15 12:37:47 +00:00
|
|
|
add_library(${name} SHARED ${kwin_GLUTILSLIB_SRCS})
|
2014-03-05 10:35:18 +00:00
|
|
|
generate_export_header(${name} BASE_NAME kwinglutils EXPORT_FILE_NAME kwinglutils_export.h)
|
Drop OpenGL based color correction from KWin
Summary:
The feature has always been considered experimental. Unfortunately it is
completely unmaintained and hasn't seen any commits in years. It
requires kolor-manager to function, but that has not seen a release
based on frameworks yet. This makes it difficult to maintain. In fact I
have never been able from the introduction till now to setup a color
corrected system. One needs kolor-manager and oyranos and especially the
latter is hardly available on any linux distribution (e.g. not on the
Debian/Ubuntu systems).
Due to being unmaintained color correction in KWin did not keep up with
recent changes. Neither did it see any updates during the xlib->xcb
port, nor during the Wayland port. Especially the Wayland port with the
rendering changes make it unlikely to function correctly. E.g. Wayland
introduced a proper per-screen rendering, while color correction did a
"fake" per screen rendering. How that is going to work in combination is
something nobody ever tried. Now after the introduction of proper
per-screen rendering the solution would be to port color correction to
the new api, but that never happened.
Color correction also modified the shaders, but a newer shader API got
introduced some time ago. Whether the color correction shader support
that or not, is unknown to me. Also which shader language versions are
supported. I know it was based on 3d texture support, which back on
introduction was partially lacking in OpenGL ES. Nowadays that changed,
but color correction didn't update.
Last but not least it is completely X11 based and there is no work on
how to make it work with Wayland.
Given all the problems, especially the fact that it is unmaintained and
cannot be setup on my system, means to me that the only solution is to
remove it.
I'm open to having it reintroduced in future, but only if the
availability on Linux distributions gets addressed before. As long as
major linux distributions do not ship this feature, it should not be in
KWin. Given that I must say that it was a mistake to add it in the first
place and I need to point out that I was against the merge back then.
Reviewers: #kwin, #plasma
Subscribers: plasma-devel, kwin
Tags: #kwin
Differential Revision: https://phabricator.kde.org/D3402
2016-11-17 14:03:54 +00:00
|
|
|
target_link_libraries(${name} PUBLIC XCB::XCB KF5::CoreAddons KF5::WindowSystem)
|
2014-05-07 11:54:36 +00:00
|
|
|
set_target_properties(${name} PROPERTIES
|
|
|
|
VERSION ${KWINEFFECTS_VERSION_STRING}
|
|
|
|
SOVERSION ${KWINEFFECTS_SOVERSION}
|
|
|
|
)
|
2013-11-10 19:45:23 +00:00
|
|
|
target_link_libraries(${name} PUBLIC ${ARGN})
|
2011-07-17 14:15:07 +00:00
|
|
|
|
2011-08-13 14:38:57 +00:00
|
|
|
install(TARGETS ${name} EXPORT kdeworkspaceLibraryTargets ${INSTALL_TARGETS_DEFAULT_ARGS})
|
2013-02-25 10:44:26 +00:00
|
|
|
endmacro()
|
2011-07-17 14:15:07 +00:00
|
|
|
|
2015-10-30 12:47:37 +00:00
|
|
|
kwin4_add_glutils_backend(kwinglutils ${epoxy_INCLUDE_DIR} ${epoxy_LIBRARY})
|
|
|
|
set_target_properties(kwinglutils PROPERTIES OUTPUT_NAME ${KWIN_NAME}glutils)
|
|
|
|
|
|
|
|
target_link_libraries(kwinglutils PUBLIC ${epoxy_LIBRARY})
|
2007-04-29 17:35:43 +00:00
|
|
|
|
2008-02-01 14:15:16 +00:00
|
|
|
install( FILES
|
|
|
|
kwinglobals.h
|
|
|
|
kwineffects.h
|
2011-10-19 23:04:52 +00:00
|
|
|
kwinanimationeffect.h
|
2011-02-19 08:58:44 +00:00
|
|
|
kwinglplatform.h
|
2008-02-01 14:15:16 +00:00
|
|
|
kwinglutils.h
|
|
|
|
kwinglutils_funcs.h
|
2011-06-22 10:55:04 +00:00
|
|
|
kwingltexture.h
|
2008-05-07 14:43:13 +00:00
|
|
|
kwinxrenderutils.h
|
2008-02-01 14:15:16 +00:00
|
|
|
${CMAKE_CURRENT_BINARY_DIR}/kwinconfig.h
|
2013-12-01 19:45:39 +00:00
|
|
|
${CMAKE_CURRENT_BINARY_DIR}/kwineffects_export.h
|
2013-12-03 09:43:57 +00:00
|
|
|
${CMAKE_CURRENT_BINARY_DIR}/kwinglutils_export.h
|
2014-03-16 14:49:21 +00:00
|
|
|
${CMAKE_CURRENT_BINARY_DIR}/kwinxrenderutils_export.h
|
2008-06-27 06:56:11 +00:00
|
|
|
DESTINATION ${INCLUDE_INSTALL_DIR} COMPONENT Devel)
|