summaryrefslogtreecommitdiffstats
path: root/CMakeLists.txt
blob: c1c568497fdc44856d67f0c6192fd37e2e0d105c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
#################################################
#
#  (C) 2010-2011 Serghei Amelian
#  serghei (DOT) amelian (AT) gmail.com
#
#  Improvements and feedback are welcome
#
#  This file is released under GPL >= 2
#
#################################################

cmake_minimum_required( VERSION 2.6 )


##### general package setup #####################

project( kdepim )
set( PACKAGE kdepim )
set( VERSION "3.5.13" )


##### include essential cmake modules ###########

include( FindPkgConfig )
include( CheckIncludeFile )
include( CheckTypeSize )
include( CheckCSourceCompiles )
include( CheckCXXSourceCompiles )
include( CheckLibraryExists )


##### include our cmake modules #################

set( CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake/modules" )
include( TDEMacros )


##### setup install paths #######################

include( TDESetupPaths )
tde_setup_paths( )


##### optional stuff ############################

option( WITH_ARTS "Enable aRts support" OFF )
option( WITH_SASL "Enable cyrus-sasl support" OFF )
option( WITH_NEWDISTRLISTS "Enable the new distribution lists" ON )
option( WITH_GNOKII "Enable gnokii support" OFF )
option( WITH_EXCHANGE "Enable Microsoft Exchange 2000 support" OFF )

if( NOT WITH_ARTS )
  set( WITHOUT_ARTS 1 )
endif( )

if( WITH_NEWDISTRLISTS )
  set( KDEPIM_NEW_DISTRLISTS 1 )
endif( )


##### user requested modules ####################

option( BUILD_ALL "Build all" OFF )
option( BUILD_LIBKMIME "Build libkmime" ${BUILD_ALL} )
option( BUILD_KTNEF "Build ktnef" ${BUILD_ALL} )
option( BUILD_LIBKCAL "Build libkcal" ${BUILD_ALL} )
option( BUILD_LIBKDEPIM "Build libkdepim" ${BUILD_ALL} )
option( BUILD_LIBKPIMIDENTITIES "Build libkpimidentities" ${BUILD_ALL} )
option( BUILD_LIBKDENETWORK "Build libkdenetwork" ${BUILD_ALL} )
option( BUILD_CERTMANAGER "Build certmanager" ${BUILD_ALL} )
option( BUILD_LIBKPGP "Build libkpgp" ${BUILD_ALL} )
option( BUILD_MIMELIB "Build mimelib" ${BUILD_ALL} )
option( BUILD_LIBKSIEVE "Build libksieve" ${BUILD_ALL} )
option( BUILD_LIBKPIMEXCHANGE "Build libkpimexchange" ${BUILD_ALL} )
option( BUILD_KIOSLAVES "Build kioslaves" ${BUILD_ALL} )
option( BUILD_KMAIL "Build kmail" ${BUILD_ALL} )
option( BUILD_AKREGATOR "Build akregator" ${BUILD_ALL} )
option( BUILD_KALARM "Build kalarm" ${BUILD_ALL} )
option( BUILD_KADDRESSBOOK "Build kaddressbook" ${BUILD_ALL} )
option( BUILD_KORN "Build korn" ${BUILD_ALL} )
option( BUILD_KGANTT "Build kgantt" ${BUILD_ALL} )
option( BUILD_LIBKHOLIDAYS "Build libkholidays" ${BUILD_ALL} )
option( BUILD_KORGANIZER "Build korganizer" ${BUILD_ALL} )


##### configure checks ##########################

include( ConfigureChecks.cmake )


###### global compiler settings #################

add_definitions(
  -DHAVE_CONFIG_H
  ${TQT_CFLAGS_OTHER}
)

set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -include tqt.h" )
set( CMAKE_SHARED_LINKER_FLAGS "-Wl,--no-undefined" )
set( CMAKE_MODULE_LINKER_FLAGS "-Wl,--no-undefined" )


##### activate dependencies #####################

if( BUILD_LIBKCAL OR BUILD_LIBKDEPIM OR BUILD_LIBKPIMIDENTITIES OR BUILD_KIOSLAVES OR BUILD_KMAIL )
  add_subdirectory( libemailfunctions )
endif()


##### kdepim directories ########################

tde_conditional_add_subdirectory( BUILD_LIBKMIME libkmime )
tde_conditional_add_subdirectory( BUILD_KTNEF ktnef )
tde_conditional_add_subdirectory( BUILD_LIBKCAL libkcal )
tde_conditional_add_subdirectory( BUILD_LIBKDEPIM pixmaps )
tde_conditional_add_subdirectory( BUILD_LIBKDEPIM libkdepim )
tde_conditional_add_subdirectory( BUILD_LIBKPIMIDENTITIES libkpimidentities )
tde_conditional_add_subdirectory( BUILD_LIBKDENETWORK libkdenetwork )
tde_conditional_add_subdirectory( BUILD_CERTMANAGER certmanager )
tde_conditional_add_subdirectory( BUILD_LIBKPGP libkpgp )
tde_conditional_add_subdirectory( BUILD_MIMELIB mimelib )
tde_conditional_add_subdirectory( BUILD_LIBKSIEVE libksieve )
tde_conditional_add_subdirectory( BUILD_LIBKPIMEXCHANGE libkpimexchange )
tde_conditional_add_subdirectory( BUILD_KIOSLAVES kioslaves )
tde_conditional_add_subdirectory( BUILD_KMAIL kmail )
tde_conditional_add_subdirectory( BUILD_AKREGATOR akregator )
tde_conditional_add_subdirectory( BUILD_KALARM kalarm )
tde_conditional_add_subdirectory( BUILD_KADDRESSBOOK kaddressbook )
tde_conditional_add_subdirectory( BUILD_KORN korn )
tde_conditional_add_subdirectory( BUILD_KGANTT kgantt )
tde_conditional_add_subdirectory( BUILD_LIBKHOLIDAYS libkholidays )
tde_conditional_add_subdirectory( BUILD_KORGANIZER kdgantt )
tde_conditional_add_subdirectory( BUILD_KORGANIZER korganizer )


##### write configure files #####################

configure_file( config.h.cmake config.h @ONLY )