CMakeLists.txt 3.82 KB
Newer Older
1
2
3
4
cmake_minimum_required(VERSION 2.8.12)

project(libkdepim)

Laurent Montel's avatar
Laurent Montel committed
5
find_package(ECM 5.19.0 CONFIG REQUIRED)
6
7
8
9
10
11
12
13
14
15
16
set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH})
set(LIBRARY_NAMELINK)
include(GenerateExportHeader)
include(ECMSetupVersion)
include(ECMGenerateHeaders)
include(ECMGeneratePriFile)
include(ECMPackageConfigHelpers)
include(ECMSetupVersion)
include(FeatureSummary)
include(KDEInstallDirs)
include(KDECMakeSettings)
17
include(KDEFrameworkCompilerSettings NO_POLICY_SCOPE)
18
19
20
include(ECMQtDeclareLoggingCategory)
include(ECMAddTests)

Laurent Montel's avatar
Laurent Montel committed
21
set(PIM_VERSION "5.2.40")
Laurent Montel's avatar
Laurent Montel committed
22
set(KF5_VERSION "5.19.0")
Laurent Montel's avatar
Laurent Montel committed
23
set(LIBKDEPIM_LIB_VERSION ${PIM_VERSION})
Laurent Montel's avatar
Laurent Montel committed
24
set(KDEPIMLIBS_LIB_VERSION "5.2.40")
25
set(QT_REQUIRED_VERSION "5.4.0")
Laurent Montel's avatar
Laurent Montel committed
26
27
28
set(KMIME_LIB_VERSION "5.2.40")
set(KLDAP_LIB_VERSION "5.2.40")
set(KCONTACTS_LIB_VERSION "5.2.40")
Laurent Montel's avatar
Laurent Montel committed
29
set(AKONADISEARCH_LIB_VERSION "5.0.42")
Laurent Montel's avatar
Laurent Montel committed
30
set(AKONADI_VERSION "5.2.40")
31

Laurent Montel's avatar
Laurent Montel committed
32
find_package(KF5Akonadi ${AKONADI_VERSION} CONFIG REQUIRED)
33
34
35
36
37
38
39
40
41
42
43
44
45
46
find_package(Qt5 ${QT_REQUIRED_VERSION} CONFIG REQUIRED Widgets Test UiTools DBus Network)
find_package(KF5I18n ${KF5_VERSION} CONFIG REQUIRED)
find_package(KF5Mime ${KMIME_LIB_VERSION} CONFIG REQUIRED)
find_package(KF5KCMUtils ${KF5_VERSION} CONFIG REQUIRED)
find_package(KF5Codecs ${KF5_VERSION} CONFIG REQUIRED)
find_package(KF5Completion ${KF5_VERSION} CONFIG REQUIRED)
find_package(KF5Wallet ${KF5_VERSION} CONFIG REQUIRED)
find_package(KF5ItemViews ${KF5_VERSION} CONFIG REQUIRED)
find_package(KF5IconThemes ${KF5_VERSION} CONFIG REQUIRED)
find_package(KF5ItemViews ${KF5_VERSION} CONFIG REQUIRED)
find_package(KF5Ldap ${KLDAP_LIB_VERSION} CONFIG REQUIRED)
find_package(KF5Contacts ${KCONTACTS_LIB_VERSION} CONFIG REQUIRED)
find_package(KF5AkonadiContact ${KDEPIMLIBS_LIB_VERSION} CONFIG REQUIRED)

Laurent Montel's avatar
Laurent Montel committed
47
find_package(KF5AkonadiSearch ${AKONADISEARCH_LIB_VERSION} CONFIG REQUIRED)
48
49
set_package_properties(KF5AkonadiSearch PROPERTIES DESCRIPTION "The Akonadi Search libraries" URL "http://www.kde.org" TYPE REQUIRED PURPOSE "Provides search capabilities in KMail and Akonadi")

Heiko Becker's avatar
Heiko Becker committed
50
51
52
53
54
find_package(Qt5Designer CONFIG)
set_package_properties(Qt5Designer PROPERTIES
   PURPOSE "Required to build the Qt Designer plugins"
   TYPE OPTIONAL
)
55

Laurent Montel's avatar
Laurent Montel committed
56
ecm_setup_version(${LIBKDEPIM_LIB_VERSION} VARIABLE_PREFIX LIBKDEPIM
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
                        VERSION_HEADER "${CMAKE_CURRENT_BINARY_DIR}/libkdepim_version.h"
                        PACKAGE_VERSION_FILE "${CMAKE_CURRENT_BINARY_DIR}/KF5LibkdepimConfigVersion.cmake"
                        SOVERSION 5
)
remove_definitions( -DQT_NO_CAST_FROM_BYTEARRAY )

########### CMake Config Files ###########
set(CMAKECONFIG_INSTALL_DIR "${KDE_INSTALL_CMAKEPACKAGEDIR}/KF5Libkdepim")

ecm_configure_package_config_file(
  "${CMAKE_CURRENT_SOURCE_DIR}/KF5LibkdepimConfig.cmake.in"
  "${CMAKE_CURRENT_BINARY_DIR}/KF5LibkdepimConfig.cmake"
  INSTALL_DESTINATION  ${CMAKECONFIG_INSTALL_DIR}
)

install(FILES
  "${CMAKE_CURRENT_BINARY_DIR}/KF5LibkdepimConfig.cmake"
  "${CMAKE_CURRENT_BINARY_DIR}/KF5LibkdepimConfigVersion.cmake"
  DESTINATION "${CMAKECONFIG_INSTALL_DIR}"
  COMPONENT Devel
)

ecm_configure_package_config_file(MailTransportDBusServiceConfig.cmake.in
  ${CMAKE_CURRENT_BINARY_DIR}/MailTransportDBusServiceConfig.cmake
  PATH_VARS KDE_INSTALL_DBUSINTERFACEDIR
  INSTALL_DESTINATION "${CMAKECONFIG_INSTALL_PREFIX}/MailTransportDBusService")

install(FILES
  ${CMAKE_CURRENT_BINARY_DIR}/MailTransportDBusServiceConfig.cmake
  DESTINATION "${CMAKECONFIG_INSTALL_PREFIX}/MailTransportDBusService")

install(EXPORT KF5LibkdepimTargets DESTINATION "${CMAKECONFIG_INSTALL_DIR}" FILE KF5LibkdepimTargets.cmake NAMESPACE KF5::)

install(FILES
   ${CMAKE_CURRENT_BINARY_DIR}/libkdepim_version.h
  DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF5} COMPONENT Devel
)



add_subdirectory(src)
if (BUILD_TESTING)
   add_subdirectory(tests)
endif()

install( FILES libkdepim.categories DESTINATION ${KDE_INSTALL_CONFDIR} )

Laurent Montel's avatar
Laurent Montel committed
104
feature_summary(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES)