2009-12-23 13:52:33 +00:00
|
|
|
# the factory macros cause errors
|
|
|
|
kde4_no_enable_final(kwineffects)
|
|
|
|
|
2009-02-05 15:35:38 +00:00
|
|
|
# Uncomment to have the test effects built as well
|
|
|
|
#add_subdirectory( _test )
|
2007-11-02 17:28:21 +00:00
|
|
|
|
2007-04-29 17:35:43 +00:00
|
|
|
# Adds effect plugin with given name. Sources are given after the name
|
2009-02-05 15:35:38 +00:00
|
|
|
macro( KWIN4_ADD_EFFECT name )
|
|
|
|
kde4_add_plugin( kwin4_effect_${name} ${ARGN} )
|
2010-08-11 11:55:26 +00:00
|
|
|
target_link_libraries( kwin4_effect_${name} kwineffects ${KDE4_KDEUI_LIBS} kephal ${KDE4_PLASMA_LIBS} ${X11_Xfixes_LIB} ${X11_Xcursor_LIB})
|
2010-09-14 19:52:44 +00:00
|
|
|
if (X11_Xfixes_FOUND)
|
|
|
|
target_link_libraries(kwin4_effect_${name} ${X11_Xfixes_LIB})
|
|
|
|
endif (X11_Xfixes_FOUND)
|
2009-02-05 15:35:38 +00:00
|
|
|
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 )
|
2007-04-29 17:35:43 +00:00
|
|
|
|
2009-02-05 15:35:38 +00:00
|
|
|
kde4_add_ui_files( kwin4_effect_src ${kwin4_effect_ui} )
|
|
|
|
kde4_add_plugin( kcm_kwin4_effect_${name} ${kwin4_effect_src} )
|
2010-07-24 14:03:11 +00:00
|
|
|
target_link_libraries( kcm_kwin4_effect_${name} kwineffects ${KDE4_KIO_LIBS} ${KDE4_KDEUI_LIBS} kephal )
|
2009-02-05 15:35:38 +00:00
|
|
|
install( TARGETS kcm_kwin4_effect_${name} DESTINATION ${PLUGIN_INSTALL_DIR} )
|
|
|
|
endmacro( KWIN4_ADD_EFFECT_CONFIG )
|
2007-05-28 11:34:12 +00:00
|
|
|
|
2009-02-05 15:35:38 +00:00
|
|
|
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
|
2007-04-29 17:35:43 +00:00
|
|
|
include_directories(
|
2007-06-25 11:03:18 +00:00
|
|
|
${KDEBASE_WORKSPACE_SOURCE_DIR}/kwin/lib
|
2007-04-29 17:35:43 +00:00
|
|
|
)
|
|
|
|
|
2009-02-05 15:35:38 +00:00
|
|
|
# Install the KWin/Effect service type
|
|
|
|
install( FILES kwineffect.desktop DESTINATION ${SERVICETYPES_INSTALL_DIR} )
|
2007-05-22 16:58:10 +00:00
|
|
|
|
2009-02-05 15:35:38 +00:00
|
|
|
# Create initial variables
|
|
|
|
set( kwin4_effect_builtins_sources )
|
|
|
|
set( kwin4_effect_builtins_config_sources configs_builtins.cpp )
|
|
|
|
set( kwin4_effect_include_directories )
|
2007-04-29 17:35:43 +00:00
|
|
|
|
2009-02-05 15:35:38 +00:00
|
|
|
###############################################################################
|
|
|
|
# Built-in effects go here
|
|
|
|
|
|
|
|
# Common effects
|
|
|
|
include( boxswitch/CMakeLists.txt )
|
2010-07-23 19:52:20 +00:00
|
|
|
include( dashboard/CMakeLists.txt )
|
2009-02-05 15:35:38 +00:00
|
|
|
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 )
|
2010-12-08 17:39:36 +00:00
|
|
|
include( resize/CMakeLists.txt )
|
2009-02-05 15:35:38 +00:00
|
|
|
include( scalein/CMakeLists.txt )
|
2010-12-07 20:50:43 +00:00
|
|
|
include( showpaint/CMakeLists.txt )
|
2009-02-05 15:35:38 +00:00
|
|
|
include( slide/CMakeLists.txt )
|
2009-04-15 19:31:20 +00:00
|
|
|
include( slideback/CMakeLists.txt )
|
2009-07-23 19:06:50 +00:00
|
|
|
include( slidingpopups/CMakeLists.txt )
|
2009-02-05 15:35:38 +00:00
|
|
|
include( taskbarthumbnail/CMakeLists.txt )
|
|
|
|
include( thumbnailaside/CMakeLists.txt )
|
2010-11-10 19:21:56 +00:00
|
|
|
include( windowgeometry/CMakeLists.txt )
|
2010-12-08 17:45:23 +00:00
|
|
|
include( zoom/CMakeLists.txt )
|
2010-12-04 11:32:50 +00:00
|
|
|
|
2010-12-04 15:04:37 +00:00
|
|
|
if( NOT KWIN_HAVE_OPENGLES_COMPOSITING )
|
2010-12-04 11:32:50 +00:00
|
|
|
include( logout/CMakeLists.txt )
|
|
|
|
include( shadow/CMakeLists.txt )
|
|
|
|
include( showfps/CMakeLists.txt )
|
2010-12-04 15:04:37 +00:00
|
|
|
endif( NOT KWIN_HAVE_OPENGLES_COMPOSITING )
|
2007-10-21 13:44:40 +00:00
|
|
|
|
2009-02-05 15:35:38 +00:00
|
|
|
# OpenGL-specific effects
|
2010-12-06 20:39:06 +00:00
|
|
|
if( KWIN_HAVE_OPENGL_COMPOSITING )
|
2010-12-12 13:14:22 +00:00
|
|
|
include( coverswitch/CMakeLists.txt )
|
2010-12-18 09:18:54 +00:00
|
|
|
include( cube/CMakeLists.txt )
|
2010-12-12 13:06:46 +00:00
|
|
|
include( flipswitch/CMakeLists.txt )
|
2010-12-06 20:39:06 +00:00
|
|
|
include( glide/CMakeLists.txt )
|
2010-12-12 13:51:56 +00:00
|
|
|
include( mousemark/CMakeLists.txt )
|
2010-12-06 20:39:06 +00:00
|
|
|
include( sheet/CMakeLists.txt )
|
2010-12-08 18:25:15 +00:00
|
|
|
include( snaphelper/CMakeLists.txt )
|
2010-12-08 18:35:38 +00:00
|
|
|
include( trackmouse/CMakeLists.txt )
|
2010-12-06 20:39:06 +00:00
|
|
|
include( wobblywindows/CMakeLists.txt )
|
|
|
|
endif( KWIN_HAVE_OPENGL_COMPOSITING )
|
2010-12-04 15:04:37 +00:00
|
|
|
if( KWIN_HAVE_OPENGL_COMPOSITING AND NOT KWIN_HAVE_OPENGLES_COMPOSITING )
|
2010-03-05 20:44:26 +00:00
|
|
|
include( blur/CMakeLists.txt )
|
2009-02-05 15:35:38 +00:00
|
|
|
include( explosion/CMakeLists.txt )
|
|
|
|
include( invert/CMakeLists.txt )
|
|
|
|
include( lookingglass/CMakeLists.txt )
|
|
|
|
include( magnifier/CMakeLists.txt )
|
2010-07-31 20:55:48 +00:00
|
|
|
include( screenshot/CMakeLists.txt )
|
2009-02-05 15:35:38 +00:00
|
|
|
include( sharpen/CMakeLists.txt )
|
|
|
|
include( snow/CMakeLists.txt )
|
2010-10-16 08:50:38 +00:00
|
|
|
include( startupfeedback/CMakeLists.txt )
|
2010-12-04 15:04:37 +00:00
|
|
|
endif( KWIN_HAVE_OPENGL_COMPOSITING AND NOT KWIN_HAVE_OPENGLES_COMPOSITING )
|
2007-04-29 17:35:43 +00:00
|
|
|
|
2009-02-05 15:35:38 +00:00
|
|
|
###############################################################################
|
2007-04-29 17:35:43 +00:00
|
|
|
|
2009-02-05 15:35:38 +00:00
|
|
|
# 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 )
|