kwin/effects/CMakeLists.txt
Martin Gräßlin cf03487331 Remove Shadow Effect.
The shadow effect is known to be broken since at least 4.5.
It is unfortunately in a state which makes it difficult to maintain
and the architecture has some serious drawbacks. Therefore it is the
best solution to replace the effect with a new and better
implementation. For more information about the new implementation
please see the discussion on KWin mailinglist:
http://lists.kde.org/?l=kwin&m=129607406517609&w=2

This also "fixes" all existing bug reports about the shadow effect.
Most of the bugs will really be fixed when the new shadow system is
implemented, if not it is a new bug and a new report should be created
for it.

Please excuse that we go this unnormal approach to mark bugs as
fixed with code removal.
BUG: 164084
BUG: 160948
BUG: 189241
BUG: 229164
BUG: 258663
BUG: 216709
BUG: 243890
FIXED-IN: 4.7.0
2011-01-30 14:26:58 +01:00

120 lines
4.4 KiB
CMake

# the factory macros cause errors
kde4_no_enable_final(kwineffects)
# Uncomment to have the test effects built as well
#add_subdirectory( _test )
# Adds effect plugin with given name. Sources are given after the name
macro( KWIN4_ADD_EFFECT name )
kde4_add_plugin( kwin4_effect_${name} ${ARGN} )
target_link_libraries( kwin4_effect_${name} kwineffects ${KDE4_KDEUI_LIBS} kephal ${KDE4_PLASMA_LIBS} ${X11_Xfixes_LIB} ${X11_Xcursor_LIB})
if (X11_Xfixes_FOUND)
target_link_libraries(kwin4_effect_${name} ${X11_Xfixes_LIB})
endif (X11_Xfixes_FOUND)
install( TARGETS kwin4_effect_${name} DESTINATION ${PLUGIN_INSTALL_DIR} )
endmacro( KWIN4_ADD_EFFECT )
macro( KWIN4_ADD_EFFECT_CONFIG name )
set( kwin4_effect_ui ) # Initially empty
set( kwin4_effect_src ) # Initially empty
foreach( file ${ARGN} )
if( file MATCHES \\.ui )
set( kwin4_effect_ui ${kwin4_effect_ui} ${file} )
else( file MATCHES \\.ui )
set( kwin4_effect_src ${kwin4_effect_src} ${file} )
endif( file MATCHES \\.ui )
endforeach( file )
kde4_add_ui_files( kwin4_effect_src ${kwin4_effect_ui} )
kde4_add_plugin( kcm_kwin4_effect_${name} ${kwin4_effect_src} )
target_link_libraries( kcm_kwin4_effect_${name} kwineffects ${KDE4_KIO_LIBS} ${KDE4_KDEUI_LIBS} kephal )
install( TARGETS kcm_kwin4_effect_${name} DESTINATION ${PLUGIN_INSTALL_DIR} )
endmacro( KWIN4_ADD_EFFECT_CONFIG )
macro( KWIN4_EFFECT_LINK_XRENDER name )
if( KWIN_HAVE_XRENDER_COMPOSITING )
target_link_libraries( kwin4_effect_${name} ${X11_Xrender_LIB} ${X11_LIBRARIES} kephal )
endif( KWIN_HAVE_XRENDER_COMPOSITING )
endmacro( KWIN4_EFFECT_LINK_XRENDER )
# Make sure we can see our libraries
include_directories(
${KDEBASE_WORKSPACE_SOURCE_DIR}/kwin/lib
)
# Install the KWin/Effect service type
install( FILES kwineffect.desktop DESTINATION ${SERVICETYPES_INSTALL_DIR} )
# Create initial variables
set( kwin4_effect_builtins_sources )
set( kwin4_effect_builtins_config_sources configs_builtins.cpp )
set( kwin4_effect_include_directories )
###############################################################################
# Built-in effects go here
# Common effects
include( boxswitch/CMakeLists.txt )
include( dashboard/CMakeLists.txt )
include( desktopgrid/CMakeLists.txt )
include( dialogparent/CMakeLists.txt )
include( diminactive/CMakeLists.txt )
include( dimscreen/CMakeLists.txt )
include( fade/CMakeLists.txt )
include( fadedesktop/CMakeLists.txt )
include( fallapart/CMakeLists.txt )
include( highlightwindow/CMakeLists.txt )
include( login/CMakeLists.txt )
include( magiclamp/CMakeLists.txt )
include( translucency/CMakeLists.txt )
include( minimizeanimation/CMakeLists.txt )
include( presentwindows/CMakeLists.txt )
include( resize/CMakeLists.txt )
include( scalein/CMakeLists.txt )
include( showfps/CMakeLists.txt )
include( showpaint/CMakeLists.txt )
include( slide/CMakeLists.txt )
include( slideback/CMakeLists.txt )
include( slidingpopups/CMakeLists.txt )
include( taskbarthumbnail/CMakeLists.txt )
include( thumbnailaside/CMakeLists.txt )
include( windowgeometry/CMakeLists.txt )
include( zoom/CMakeLists.txt )
if( NOT KWIN_HAVE_OPENGLES_COMPOSITING )
include( logout/CMakeLists.txt )
endif( NOT KWIN_HAVE_OPENGLES_COMPOSITING )
# OpenGL-specific effects
if( KWIN_HAVE_OPENGL_COMPOSITING )
include( blur/CMakeLists.txt )
include( coverswitch/CMakeLists.txt )
include( cube/CMakeLists.txt )
include( explosion/CMakeLists.txt )
include( flipswitch/CMakeLists.txt )
include( glide/CMakeLists.txt )
include( invert/CMakeLists.txt )
include( lookingglass/CMakeLists.txt )
include( magnifier/CMakeLists.txt )
include( mousemark/CMakeLists.txt )
include( screenshot/CMakeLists.txt )
include( sheet/CMakeLists.txt )
include( snaphelper/CMakeLists.txt )
include( startupfeedback/CMakeLists.txt )
include( trackmouse/CMakeLists.txt )
include( wobblywindows/CMakeLists.txt )
endif( KWIN_HAVE_OPENGL_COMPOSITING )
###############################################################################
# Add the builtins plugin
KWIN4_ADD_EFFECT( builtins ${kwin4_effect_builtins_sources} )
KWIN4_ADD_EFFECT_CONFIG( builtins ${kwin4_effect_builtins_config_sources} )
KWIN4_EFFECT_LINK_XRENDER( builtins )
# Install global data files
install( FILES
_data/circle-edgy.png
_data/circle.png
DESTINATION ${DATA_INSTALL_DIR}/kwin )