Add new build option KWIN_MOBILE_EFFECTS

The new build option restricts the building of effects to those
useable for Plasma Active:
* blur
* dialogparent
* fade
* login
* outline
* presentwindows
* slidingpopups
* taskbarthumbnails
* screenshot

Additionally all effect KCMs are excluded from building in the
assumption that when building with this option, KWIN_BUILD_KCMS
is turned off.
CCMAIL: sebas@kde.org
This commit is contained in:
Martin Gräßlin 2011-05-10 18:25:21 +02:00
parent 2573bec755
commit 55bcd2ed10
2 changed files with 51 additions and 39 deletions

View file

@ -44,6 +44,7 @@ endif(OPENGLES_FOUND AND KWIN_HAVE_OPENGLES_COMPOSITING)
OPTION(KWIN_BUILD_DECORATIONS "Enable building of KWin decorations." ON) OPTION(KWIN_BUILD_DECORATIONS "Enable building of KWin decorations." ON)
OPTION(KWIN_BUILD_KCMS "Enable building of KWin configuration modules." ON) OPTION(KWIN_BUILD_KCMS "Enable building of KWin configuration modules." ON)
OPTION(KWIN_MOBILE_EFFECTS "Only build effects relevant for mobile devices" OFF)
# for things that are also used by kwin libraries # for things that are also used by kwin libraries
configure_file(libkwineffects/kwinconfig.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/libkwineffects/kwinconfig.h ) configure_file(libkwineffects/kwinconfig.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/libkwineffects/kwinconfig.h )

View file

@ -48,37 +48,42 @@ install( FILES kwineffect.desktop DESTINATION ${SERVICETYPES_INSTALL_DIR} )
# Create initial variables # Create initial variables
set( kwin4_effect_builtins_sources ) set( kwin4_effect_builtins_sources )
if( NOT KWIN_MOBILE_EFFECTS )
set( kwin4_effect_builtins_config_sources configs_builtins.cpp ) set( kwin4_effect_builtins_config_sources configs_builtins.cpp )
endif( NOT KWIN_MOBILE_EFFECTS )
set( kwin4_effect_include_directories ) set( kwin4_effect_include_directories )
############################################################################### ###############################################################################
# Built-in effects go here # Built-in effects go here
# Common effects # Common effects
include( dialogparent/CMakeLists.txt )
include( fade/CMakeLists.txt )
include( login/CMakeLists.txt )
include( outline/CMakeLists.txt )
include( presentwindows/CMakeLists.txt )
include( slidingpopups/CMakeLists.txt )
include( taskbarthumbnail/CMakeLists.txt )
# Common effects only relevant to desktop
if( NOT KWIN_MOBILE_EFFECTS )
include( boxswitch/CMakeLists.txt ) include( boxswitch/CMakeLists.txt )
include( dashboard/CMakeLists.txt ) include( dashboard/CMakeLists.txt )
include( desktopgrid/CMakeLists.txt ) include( desktopgrid/CMakeLists.txt )
include( dialogparent/CMakeLists.txt )
include( diminactive/CMakeLists.txt ) include( diminactive/CMakeLists.txt )
include( dimscreen/CMakeLists.txt ) include( dimscreen/CMakeLists.txt )
include( fade/CMakeLists.txt )
include( fadedesktop/CMakeLists.txt ) include( fadedesktop/CMakeLists.txt )
include( fallapart/CMakeLists.txt ) include( fallapart/CMakeLists.txt )
include( highlightwindow/CMakeLists.txt ) include( highlightwindow/CMakeLists.txt )
include( login/CMakeLists.txt )
include( magiclamp/CMakeLists.txt ) include( magiclamp/CMakeLists.txt )
include( translucency/CMakeLists.txt ) include( translucency/CMakeLists.txt )
include( minimizeanimation/CMakeLists.txt ) include( minimizeanimation/CMakeLists.txt )
include( outline/CMakeLists.txt )
include( presentwindows/CMakeLists.txt )
include( resize/CMakeLists.txt ) include( resize/CMakeLists.txt )
include( scalein/CMakeLists.txt ) include( scalein/CMakeLists.txt )
include( showfps/CMakeLists.txt ) include( showfps/CMakeLists.txt )
include( showpaint/CMakeLists.txt ) include( showpaint/CMakeLists.txt )
include( slide/CMakeLists.txt ) include( slide/CMakeLists.txt )
include( slideback/CMakeLists.txt ) include( slideback/CMakeLists.txt )
include( slidingpopups/CMakeLists.txt )
include( taskbarthumbnail/CMakeLists.txt )
include( thumbnailaside/CMakeLists.txt ) include( thumbnailaside/CMakeLists.txt )
include( windowgeometry/CMakeLists.txt ) include( windowgeometry/CMakeLists.txt )
include( zoom/CMakeLists.txt ) include( zoom/CMakeLists.txt )
@ -86,10 +91,14 @@ include( zoom/CMakeLists.txt )
if( NOT KWIN_HAVE_OPENGLES_COMPOSITING ) if( NOT KWIN_HAVE_OPENGLES_COMPOSITING )
include( logout/CMakeLists.txt ) include( logout/CMakeLists.txt )
endif( NOT KWIN_HAVE_OPENGLES_COMPOSITING ) endif( NOT KWIN_HAVE_OPENGLES_COMPOSITING )
endif( NOT KWIN_MOBILE_EFFECTS )
# OpenGL-specific effects # OpenGL-specific effects
if( KWIN_HAVE_OPENGL_COMPOSITING ) if( KWIN_HAVE_OPENGL_COMPOSITING )
include( blur/CMakeLists.txt ) include( blur/CMakeLists.txt )
include( screenshot/CMakeLists.txt )
# OpenGL-specific effects for desktop
if( NOT KWIN_MOBILE_EFFECTS )
include( coverswitch/CMakeLists.txt ) include( coverswitch/CMakeLists.txt )
include( cube/CMakeLists.txt ) include( cube/CMakeLists.txt )
include( explosion/CMakeLists.txt ) include( explosion/CMakeLists.txt )
@ -99,19 +108,21 @@ if( KWIN_HAVE_OPENGL_COMPOSITING )
include( lookingglass/CMakeLists.txt ) include( lookingglass/CMakeLists.txt )
include( magnifier/CMakeLists.txt ) include( magnifier/CMakeLists.txt )
include( mousemark/CMakeLists.txt ) include( mousemark/CMakeLists.txt )
include( screenshot/CMakeLists.txt )
include( sheet/CMakeLists.txt ) include( sheet/CMakeLists.txt )
include( snaphelper/CMakeLists.txt ) include( snaphelper/CMakeLists.txt )
include( startupfeedback/CMakeLists.txt ) include( startupfeedback/CMakeLists.txt )
include( trackmouse/CMakeLists.txt ) include( trackmouse/CMakeLists.txt )
include( wobblywindows/CMakeLists.txt ) include( wobblywindows/CMakeLists.txt )
endif( NOT KWIN_MOBILE_EFFECTS )
endif( KWIN_HAVE_OPENGL_COMPOSITING ) endif( KWIN_HAVE_OPENGL_COMPOSITING )
############################################################################### ###############################################################################
# Add the builtins plugin # Add the builtins plugin
KWIN4_ADD_EFFECT( builtins ${kwin4_effect_builtins_sources} ) KWIN4_ADD_EFFECT( builtins ${kwin4_effect_builtins_sources} )
if( NOT KWIN_MOBILE_EFFECTS )
KWIN4_ADD_EFFECT_CONFIG( builtins ${kwin4_effect_builtins_config_sources} ) KWIN4_ADD_EFFECT_CONFIG( builtins ${kwin4_effect_builtins_config_sources} )
endif( NOT KWIN_MOBILE_EFFECTS )
KWIN4_EFFECT_LINK_XRENDER( builtins ) KWIN4_EFFECT_LINK_XRENDER( builtins )
# Install global data files # Install global data files