Skip to content

Commit 1d5c1ab

Browse files
committed
make desktops/minicli/panels optional
1 parent cfa5d14 commit 1d5c1ab

File tree

4 files changed

+61
-15
lines changed

4 files changed

+61
-15
lines changed

CMakeLists.txt

Lines changed: 42 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,10 @@ cmake_minimum_required( VERSION 2.6 )
22

33
project( kor )
44

5+
option( KOR_DESKTOPS "Build Kor support for desktop background" ON )
6+
option( KOR_MINICLI "Build Kor support for mini command line" ON )
7+
option( KOR_PANELS "Build Kor support for panels" ON )
8+
59
set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules ${CMAKE_MODULE_PATH} )
610

711
find_package( KDE4 REQUIRED )
@@ -25,51 +29,74 @@ configure_file(config.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config.h )
2529

2630
include_directories(
2731
${CMAKE_SOURCE_DIR}
28-
${CMAKE_SOURCE_DIR}/desktop
29-
${CMAKE_SOURCE_DIR}/minicli
30-
${CMAKE_SOURCE_DIR}/panels
3132
${CMAKE_SOURCE_DIR}/utils
3233
${CMAKE_BINARY_DIR}
3334
)
3435

36+
if(KOR_DESKTOPS)
37+
include_directories( ${CMAKE_SOURCE_DIR}/desktop )
38+
endif(KOR_DESKTOPS)
39+
40+
if(KOR_MINICLI)
41+
include_directories( ${CMAKE_SOURCE_DIR}/minicli )
42+
endif(KOR_MINICLI)
43+
44+
if(KOR_PANELS)
45+
include_directories( ${CMAKE_SOURCE_DIR}/panels )
46+
endif(KOR_PANELS)
47+
3548
########### next target ###############
3649

3750
set( kor_SRCS
3851
main.cpp
3952
application.cpp
4053
startupsuspendhandler.cpp
54+
)
55+
56+
if(KOR_DESKTOPS)
57+
set( kor_SRCS ${kor_SRCS}
4158
desktop/desktop.cpp
4259
desktop/plasmawallpaper.cpp
4360
desktop/wallpaper.cpp
61+
utils/x11utils.cpp
62+
)
63+
endif(KOR_PANELS)
64+
65+
if(KOR_MINICLI)
66+
set( kor_SRCS ${kor_SRCS}
4467
minicli/minicli.cpp
4568
minicli/miniclidialog.cpp
4669
minicli/miniclihandler.cpp
70+
)
71+
kde4_add_ui_files( kor_SRCS
72+
minicli/miniclidialog.ui
73+
)
74+
set( kor_KCFGC_FILES ${kor_KCFGC_FILES}
75+
minicli/minicliconfig.kcfgc
76+
minicli/miniclidialogconfig.kcfgc
77+
)
78+
endif(KOR_MINICLI)
79+
80+
if(KOR_PANELS)
81+
set( kor_SRCS ${kor_SRCS}
4782
panels/applet.cpp
4883
panels/panel.cpp
4984
panels/spacer.cpp
5085
panels/clock/clock.cpp
5186
panels/hello/hello.cpp
5287
panels/plasma/plasmaapplet.cpp
53-
utils/x11utils.cpp
5488
)
55-
5689
if(HAVE_NETROOTINFO2_CURRENTDESKTOPFORSCREEN)
5790
set( kor_SRCS ${kor_SRCS}
5891
panels/desktopsonscreens/desktopsonscreens.cpp
5992
)
6093
endif(HAVE_NETROOTINFO2_CURRENTDESKTOPFORSCREEN)
61-
62-
kde4_add_ui_files( kor_SRCS
63-
minicli/miniclidialog.ui
64-
)
65-
66-
set( kor_KCFGC_FILES
67-
minicli/minicliconfig.kcfgc
68-
minicli/miniclidialogconfig.kcfgc
94+
set( kor_KCFGC_FILES ${kor_KCFGC_FILES}
6995
panels/clock/clockconfig.kcfgc
7096
panels/hello/helloconfig.kcfgc
7197
panels/plasma/plasmaappletconfig.kcfgc
7298
)
99+
endif(KOR_PANELS)
73100

74101
kde4_add_kcfg_files( kor_SRCS ${kor_KCFGC_FILES} )
75102
foreach( kcfgc ${kor_KCFGC_FILES} )
@@ -100,6 +127,7 @@ install( FILES korrc DESTINATION ${CONFIG_INSTALL_DIR} )
100127

101128
########### next target ###############
102129

130+
if(KOR_PANELS)
103131
kde4_add_plugin(plasma_containment_korinternal panels/plasma/plasmacontainment.cpp)
104132
if( KDE4_PLASMA_LIBS )
105133
target_link_libraries(plasma_containment_korinternal ${KDE4_PLASMA_LIBS})
@@ -109,3 +137,4 @@ endif( KDE4_PLASMA_LIBS )
109137

110138
install(TARGETS plasma_containment_korinternal DESTINATION ${PLUGIN_INSTALL_DIR})
111139
install(FILES panels/plasma/plasma-containment-korinternal.desktop DESTINATION ${SERVICES_INSTALL_DIR})
140+
endif(KOR_PANELS)

application.cpp

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,24 +15,40 @@
1515
along with this program. If not, see <http://www.gnu.org/licenses/>.
1616
*********************************************************************/
1717

18+
#include <config.h>
19+
1820
#include "application.h"
1921

22+
#ifdef KOR_DESKTOPS
2023
#include "desktop.h"
24+
#endif
25+
#ifdef KOR_MINICLI
2126
#include "minicli.h"
27+
#endif
28+
#ifdef KOR_PANELS
2229
#include "panel.h"
30+
#endif
31+
32+
#include <kconfiggroup.h>
2333

2434
namespace Kor
2535
{
2636

2737
Application::Application()
2838
{
2939
KConfigGroup cfg( KGlobal::config(), "Layout" );
40+
#ifdef KOR_MINICLI
3041
if( cfg.readEntry( "Minicli", true ))
3142
objects.append( new Minicli( this ));
43+
#endif
44+
#ifdef KOR_PANELS
3245
foreach( const QString& panelid, cfg.readEntry( "Panels", QStringList()))
3346
objects.append( new Panel( panelid, this ));
47+
#endif
48+
#ifdef KOR_DESKTOPS
3449
foreach( const QString& desktopid, cfg.readEntry( "Desktops", QStringList()))
3550
objects.append( new Desktop( desktopid, this ));
51+
#endif
3652
setQuitOnLastWindowClosed( false );
3753
}
3854

application.h

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,6 @@
2121
#include <kuniqueapplication.h>
2222
#include <qscopedpointer.h>
2323

24-
#include "minicli.h"
25-
2624
namespace Kor
2725
{
2826

config.h.cmake

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,4 @@
11
#cmakedefine HAVE_NETROOTINFO2_CURRENTDESKTOPFORSCREEN 1
2+
#cmakedefine KOR_DESKTOPS 1
3+
#cmakedefine KOR_MINICLI 1
4+
#cmakedefine KOR_PANELS 1

0 commit comments

Comments
 (0)